2 * This file is part of Libav.
4 * Libav is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * Libav is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with Libav; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21 * common internal api header.
24 #ifndef AVCODEC_INTERNAL_H
25 #define AVCODEC_INTERNAL_H
30 struct AVCodecDefault {
36 * Determine whether pix_fmt is a hardware accelerated format.
38 int ff_is_hwaccel_pix_fmt(enum PixelFormat pix_fmt);
41 * Return the hardware accelerated codec for codec codec_id and
42 * pixel format pix_fmt.
44 * @param codec_id the codec to match
45 * @param pix_fmt the pixel format to match
46 * @return the hardware accelerated codec, or NULL if none was found.
48 AVHWAccel *ff_find_hwaccel(enum CodecID codec_id, enum PixelFormat pix_fmt);
51 * Return the index into tab at which {a,b} match elements {[0],[1]} of tab.
52 * If there is no such matching pair then size is returned.
54 int ff_match_2uint16(const uint16_t (*tab)[2], int size, int a, int b);
56 unsigned int avpriv_toupper4(unsigned int x);
58 #endif /* AVCODEC_INTERNAL_H */