29 #include "libavutil/avstring.h"
30 #include "libavutil/intreadwrite.h"
316 "eng",
"fra",
"ger",
"ita",
"dut",
"sve",
"spa",
"dan",
"por",
"nor",
317 "heb",
"jpn",
"ara",
"fin",
"gre",
"ice",
"mlt",
"tur",
"hr ",
"chi",
318 "urd",
"hin",
"tha",
"kor",
"lit",
"pol",
"hun",
"est",
"lav",
"",
319 "fo ",
"",
"rus",
"chi",
"",
"iri",
"alb",
"ron",
"ces",
"slk",
320 "slv",
"yid",
"sr ",
"mac",
"bul",
"ukr",
"bel",
"uzb",
"kaz",
"aze",
322 "aze",
"arm",
"geo",
"mol",
"kir",
"tgk",
"tuk",
"mon",
"",
"pus",
323 "kur",
"kas",
"snd",
"tib",
"nep",
"san",
"mar",
"ben",
"asm",
"guj",
324 "pa ",
"ori",
"mal",
"kan",
"tam",
"tel",
"",
"bur",
"khm",
"lao",
326 "vie",
"ind",
"tgl",
"may",
"may",
"amh",
"tir",
"orm",
"som",
"swa",
328 "",
"run",
"",
"mlg",
"epo",
"",
"",
"",
"",
"",
330 "",
"",
"",
"",
"",
"",
"",
"",
"",
"",
331 "",
"",
"",
"",
"",
"",
"",
"",
"",
"",
332 "",
"",
"",
"",
"",
"",
"",
"",
"wel",
"baq",
333 "cat",
"lat",
"que",
"grn",
"aym",
"tat",
"uig",
"dzo",
"jav"
352 for (i = 0; i < 3; i++) {
369 if (code >= 0x400 && code != 0x7fff) {
370 for (i = 2; i >= 0; i--) {
371 to[i] = 0x60 + (code & 0x1f);
391 len = (len << 7) | (c & 0x7f);
403 av_dlog(fc,
"MPEG4 description: tag=0x%02x len=%d\n", *tag, len);
435 int object_type_id =
avio_r8(pb);
442 av_dlog(fc,
"esds object type id 0x%02x\n", object_type_id);
445 av_dlog(fc,
"Specific MPEG4 header len=%d\n", len);
446 if (!len || (uint64_t)len > (1<<30))
465 av_dlog(fc,
"mp4a config channels %d obj %d ext obj %d "
int ff_mov_iso639_to_lang(const char lang[4], int mp4)
static const AVCodecTag mp4_audio_types[]
void ff_mp4_parse_es_descr(AVIOContext *pb, int *es_id)
AVCodecContext * codec
Codec context associated with this stream.
av_dlog(ac->avr,"%d samples - audio_convert: %s to %s (%s)\n", len, av_get_sample_fmt_name(ac->in_fmt), av_get_sample_fmt_name(ac->out_fmt), use_generic?ac->func_descr_generic:ac->func_descr)
mpeg audio layer common tables.
uint8_t * extradata
some codecs need / can use extradata like Huffman tables.
static const char mov_mdhd_language_map[][4]
const AVCodecTag ff_codec_movvideo_tags[]
const uint16_t avpriv_mpa_freq_tab[3]
int ff_mp4_read_dec_config_descr(AVFormatContext *fc, AVStream *st, AVIOContext *pb)
void av_free(void *ptr)
Free a memory block which has been allocated with av_malloc(z)() or av_realloc(). ...
int ff_mp4_read_descr_len(AVIOContext *pb)
#define MP4DecSpecificDescrTag
preferred ID for decoding MPEG audio layer 1, 2 or 3
const AVCodecTag ff_mp4_obj_type[]
const AVCodecTag ff_codec_movsubtitle_tags[]
#define FF_INPUT_BUFFER_PADDING_SIZE
Required number of additionally allocated bytes at the end of the input bitstream for decoding...
#define FF_ARRAY_ELEMS(a)
preferred ID for MPEG-1/2 video decoding
int ff_mov_lang_to_iso639(unsigned code, char to[4])
FAKE codec to indicate a MPEG-4 Systems stream (only used by libavformat)
const AVCodecTag ff_codec_movaudio_tags[]
int sample_rate
samples per second
#define MKTAG(a, b, c, d)
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 * av_mallocz(size_t size) av_malloc_attrib 1(1)
Allocate a block of size bytes with alignment suitable for all memory accesses (including vectors if ...