Mercurial > libavformat.hg
diff raw.c @ 5046:b4b0df2c408b libavformat
Add support for id3 tag parsing for ADTS AAC streams
Patch by Patrick Dehne ( patrick mysonicweb com )
author | superdump |
---|---|
date | Fri, 19 Jun 2009 14:36:47 +0000 |
parents | 62d8279280a8 |
children | fcb33a4b62d3 |
line wrap: on
line diff
--- a/raw.c Fri Jun 19 14:03:35 2009 +0000 +++ b/raw.c Fri Jun 19 14:36:47 2009 +0000 @@ -27,6 +27,7 @@ #include "avformat.h" #include "raw.h" #include "id3v2.h" +#include "id3v1.h" /* simple formats */ @@ -625,6 +626,26 @@ else if(max_frames>=1) return 1; else return 0; } + +static int adts_aac_read_header(AVFormatContext *s, + AVFormatParameters *ap) +{ + AVStream *st; + + st = av_new_stream(s, 0); + if (!st) + return AVERROR(ENOMEM); + + st->codec->codec_type = CODEC_TYPE_AUDIO; + st->codec->codec_id = s->iformat->value; + st->need_parsing = AVSTREAM_PARSE_FULL; + + ff_id3v1_read(s); + ff_id3v2_read(s); + + return 0; +} + #endif /* Note: Do not forget to add new entries to the Makefile as well. */ @@ -635,7 +656,7 @@ NULL_IF_CONFIG_SMALL("raw ADTS AAC"), 0, adts_aac_probe, - audio_read_header, + adts_aac_read_header, ff_raw_read_partial_packet, .flags= AVFMT_GENERIC_INDEX, .extensions = "aac",