[FFmpeg-devel] [PATCH] ADTS AAC with ID3v2

Alex Converse alex.converse
Wed Jan 14 15:47:29 CET 2009


On Wed, Jan 14, 2009 at 9:17 AM, Michael Niedermayer <michaelni at gmx.at>wrote:

> On Wed, Jan 14, 2009 at 12:23:00AM -0500, Alex Converse wrote:
> > Hi,
> >
> > The attached patch adds support to the ADTS AAC probe to detect AAC files
> > with ID3v2 tags at a higher level than the MP3 probe and the MPC probe.
> It
> > refactors some id3 detection from mp3.c into id3v2.c.
> >
> [...]
>
> >  #define ID3v1_TAG_SIZE 128
> > -
> >  #define ID3v1_GENRE_MAX 125
> >
> >  static const char * const id3v1_genre_str[ID3v1_GENRE_MAX + 1] = {
>
> cosmetic
>
> [...]
> > @@ -487,7 +472,7 @@ static int mp3_read_header(AVFormatContext *s,
> >      ret = get_buffer(s->pb, buf, ID3v2_HEADER_SIZE);
> >      if (ret != ID3v2_HEADER_SIZE)
> >          return -1;
> > -    if (id3v2_match(buf)) {
> > +    if (ff_id3v2_match(buf)) {
> >          /* parse ID3v2 header */
> >          len = ((buf[6] & 0x7f) << 21) |
> >              ((buf[7] & 0x7f) << 14) |
>
> the split out of (ff_)id3v2_match is ok but should be a seperate patch
> and commit
>
> [...]
> >      }
> > -    if   (first_frames>=3) return AVPROBE_SCORE_MAX/2+1;
> > +    if   (first_frames>=3) return AVPROBE_SCORE_MAX/2+2;
> >      else if(max_frames>500)return AVPROBE_SCORE_MAX/2;
> >      else if(max_frames>=3) return AVPROBE_SCORE_MAX/4;
> >      else if(max_frames>=1) return 1;
>
> why?


Just having an ID3v2 tag gives a score of AVPROBE_SCORE_MAX/2+1 for mp3.

--Alex




More information about the ffmpeg-devel mailing list