335 "eng",
"fra",
"ger",
"ita",
"dut",
"sve",
"spa",
"dan",
"por",
"nor",
336 "heb",
"jpn",
"ara",
"fin",
"gre",
"ice",
"mlt",
"tur",
"hr ",
"chi",
337 "urd",
"hin",
"tha",
"kor",
"lit",
"pol",
"hun",
"est",
"lav",
"",
338 "fo ",
"",
"rus",
"chi",
"",
"iri",
"alb",
"ron",
"ces",
"slk",
339 "slv",
"yid",
"sr ",
"mac",
"bul",
"ukr",
"bel",
"uzb",
"kaz",
"aze",
341 "aze",
"arm",
"geo",
"mol",
"kir",
"tgk",
"tuk",
"mon",
"",
"pus",
342 "kur",
"kas",
"snd",
"tib",
"nep",
"san",
"mar",
"ben",
"asm",
"guj",
343 "pa ",
"ori",
"mal",
"kan",
"tam",
"tel",
"",
"bur",
"khm",
"lao",
345 "vie",
"ind",
"tgl",
"may",
"may",
"amh",
"tir",
"orm",
"som",
"swa",
347 "",
"run",
"",
"mlg",
"epo",
"",
"",
"",
"",
"",
349 "",
"",
"",
"",
"",
"",
"",
"",
"",
"",
350 "",
"",
"",
"",
"",
"",
"",
"",
"",
"",
351 "",
"",
"",
"",
"",
"",
"",
"",
"wel",
"baq",
352 "cat",
"lat",
"que",
"grn",
"aym",
"tat",
"uig",
"dzo",
"jav"
371 for (i = 0; i < 3; i++) {
388 if (code >= 0x400 && code != 0x7fff) {
389 for (i = 2; i >= 0; i--) {
390 to[i] = 0x60 + (code & 0x1f);
410 len = (len << 7) | (c & 0x7f);
457 int object_type_id =
avio_r8(pb);
479 if (!len || (uint64_t)len > (1<<30))
550 if (layout_tag == 0) {
556 if (layout_tag == 0x10000) {
580 uint32_t layout_tag = 0;
582 for (layouts = mov_channel_layout; layouts->
channel_layout; layouts++)
int ff_mov_iso639_to_lang(const char lang[4], int mp4)
static const AVCodecTag mp4_audio_types[]
#define AV_CH_LAYOUT_7POINT1
#define AVERROR_INVALIDDATA
Invalid data found when processing input.
void ff_mp4_parse_es_descr(AVIOContext *pb, int *es_id)
#define AV_LOG_WARNING
Something somehow does not look correct.
#define AV_CH_LAYOUT_SURROUND
static const MovChannelLayout mov_channel_layout[]
#define AV_CH_LAYOUT_4POINT0
int64_t avio_skip(AVIOContext *s, int64_t offset)
Skip given number of bytes forward.
#define AV_CH_LAYOUT_STEREO
unsigned int avio_rb16(AVIOContext *s)
#define AV_CH_LAYOUT_5POINT0
mpeg audio layer common tables.
static const char mov_mdhd_language_map[][4]
const struct AVCodecTag * avformat_get_mov_audio_tags(void)
const AVCodecTag ff_codec_movvideo_tags[]
#define AV_LOG_TRACE
Extremely verbose debugging, useful for libav* development.
unsigned int avio_rb32(AVIOContext *s)
const uint16_t avpriv_mpa_freq_tab[3]
uint8_t * extradata
some codecs need / can use extradata like Huffman tables.
#define AV_CH_LOW_FREQUENCY
const struct AVCodecTag * avformat_get_mov_video_tags(void)
#define AV_CH_LAYOUT_5POINT1
int ff_mp4_read_dec_config_descr(AVFormatContext *fc, AVStream *st, AVIOContext *pb)
AVCodecID
Identify the syntax and semantics of the bitstream.
int ff_mp4_read_descr_len(AVIOContext *pb)
#define MP4DecSpecificDescrTag
int avcodec_is_open(AVCodecContext *s)
#define AV_LOG_DEBUG
Stuff which is only useful for libav* developers.
preferred ID for decoding MPEG audio layer 1, 2 or 3
int rc_max_rate
maximum bitrate
#define AV_CH_LAYOUT_QUAD
const AVCodecTag ff_mp4_obj_type[]
const AVCodecTag ff_codec_movsubtitle_tags[]
uint64_t channel_layout
Audio channel layout.
int avio_r8(AVIOContext *s)
AVCodecContext * codec
Codec context associated with this stream.
static const uint16_t fc[]
int bit_rate
the average bitrate
unsigned int avio_rb24(AVIOContext *s)
#define AV_CH_LAYOUT_STEREO_DOWNMIX
#define AV_CH_LAYOUT_5POINT1_BACK
preferred ID for MPEG-1/2 video decoding
int ff_mov_read_chan(AVFormatContext *s, AVIOContext *pb, AVStream *st, int64_t size)
Read 'chan' tag from the input stream.
#define FF_ARRAY_ELEMS(a)
int ff_mov_lang_to_iso639(unsigned code, char to[4])
FAKE codec to indicate a MPEG-4 Systems stream (only used by libavformat)
attribute_deprecated void av_log_ask_for_sample(void *avc, const char *msg,...) av_printf_format(2
Log a generic warning message asking for a sample.
const AVCodecTag ff_codec_movaudio_tags[]
int sample_rate
samples per second
AVIOContext * pb
I/O context.
main external API structure.
#define AV_CH_LAYOUT_5POINT0_BACK
enum MovChannelLayoutTag * layouts
#define AV_CH_LAYOUT_7POINT1_WIDE
void ff_mov_write_chan(AVIOContext *pb, int64_t channel_layout)
int ff_mp4_read_descr(AVFormatContext *fc, AVIOContext *pb, int *tag)
int avpriv_mpeg4audio_get_config(MPEG4AudioConfig *c, const uint8_t *buf, int bit_size, int sync_extension)
Parse MPEG-4 systems extradata to retrieve audio configuration.
as in Berlin toast format
int channels
number of audio channels
void avio_wb32(AVIOContext *s, unsigned int val)
#define AV_CH_LAYOUT_MONO
#define MKTAG(a, b, c, d)