X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Faacdec.c;h=2aedd5d1d71795d0f208d9904345877c5b8a3d7c;hb=ccc10acb5b941973acab49d64459bb110cc0a529;hp=0dc1c5ce0ffc2adcc42ee2cdcad08499eac76501;hpb=2912e87a6c9264d556734e2bf94a99c64cf9b102;p=ffmpeg diff --git a/libavformat/aacdec.c b/libavformat/aacdec.c index 0dc1c5ce0ff..2aedd5d1d71 100644 --- a/libavformat/aacdec.c +++ b/libavformat/aacdec.c @@ -22,6 +22,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" +#include "internal.h" #include "rawdec.h" #include "id3v1.h" @@ -44,7 +45,7 @@ static int adts_aac_probe(AVProbeData *p) uint32_t header = AV_RB16(buf2); if((header&0xFFF6) != 0xFFF0) break; - fsize = (AV_RB32(buf2+3)>>13) & 0x8FFF; + fsize = (AV_RB32(buf2 + 3) >> 13) & 0x1FFF; if(fsize < 7) break; buf2 += fsize; @@ -60,35 +61,33 @@ static int adts_aac_probe(AVProbeData *p) else return 0; } -static int adts_aac_read_header(AVFormatContext *s, - AVFormatParameters *ap) +static int adts_aac_read_header(AVFormatContext *s) { AVStream *st; - st = av_new_stream(s, 0); + st = avformat_new_stream(s, NULL); if (!st) return AVERROR(ENOMEM); st->codec->codec_type = AVMEDIA_TYPE_AUDIO; - st->codec->codec_id = s->iformat->value; + st->codec->codec_id = s->iformat->raw_codec_id; st->need_parsing = AVSTREAM_PARSE_FULL; ff_id3v1_read(s); //LCM of all possible ADTS sample rates - av_set_pts_info(st, 64, 1, 28224000); + avpriv_set_pts_info(st, 64, 1, 28224000); return 0; } AVInputFormat ff_aac_demuxer = { - "aac", - NULL_IF_CONFIG_SMALL("raw ADTS AAC"), - 0, - adts_aac_probe, - adts_aac_read_header, - ff_raw_read_partial_packet, - .flags= AVFMT_GENERIC_INDEX, - .extensions = "aac", - .value = CODEC_ID_AAC, + .name = "aac", + .long_name = NULL_IF_CONFIG_SMALL("raw ADTS AAC"), + .read_probe = adts_aac_probe, + .read_header = adts_aac_read_header, + .read_packet = ff_raw_read_partial_packet, + .flags = AVFMT_GENERIC_INDEX, + .extensions = "aac", + .raw_codec_id = CODEC_ID_AAC, };