[FFmpeg-devel] [PATCH] [1/2] move id3v2 parsing code from mp3.c to the id3v2.h and id3v2.c, take 3
Michael Niedermayer
michaelni
Thu Jun 11 00:04:08 CEST 2009
On Wed, Jun 10, 2009 at 10:01:48PM +0200, Patrick Dehne wrote:
> Michael Niedermayer <michaelni at gmx.at> writes:
>
> > On Wed, Jun 10, 2009 at 03:54:02PM +0200, Patrick Dehne wrote:
> >> Michael Niedermayer <michaelni at gmx.at> writes:
> >>
> >> > On Tue, Jun 09, 2009 at 11:57:24PM +0200, Patrick Dehne wrote:
> >> >> id3v2.c | 146 ++++++++++++++++++++++++++++++++
> >> >> id3v2.h | 143 ++++++++++++++++++++++++++++++++
> >> >> mp3.c | 284 ----------------------------------------------------------------
> >> >> 3 files changed, 289 insertions(+), 284 deletions(-)
> >> >> 5da35d281da6c56aa9dc5ec6b91f1e6b484841cf 1_adtsaac_parse_id3v2.patch
> >> >> Index: libavformat/id3v2.c
> >> >> ===================================================================
> >> >> --- libavformat/id3v2.c (revision 19140)
> >> >> +++ libavformat/id3v2.c (working copy)
> >> >> @@ -20,6 +20,7 @@
> >> >> */
> >> >>
> >> >> #include "id3v2.h"
> >> >> +#include "libavutil/avstring.h"
> >> >>
> >> >> int ff_id3v2_match(const uint8_t *buf)
> >> >> {
> >> >> @@ -45,3 +46,148 @@
> >> >> len += ID3v2_HEADER_SIZE;
> >> >> return len;
> >> >> }
> >> >> +
> >> >> +static unsigned int id3v2_get_size(ByteIOContext *s, int len)
> >> >
> >> > the id3v2 prefix is redundant for static functions in a file named
> >> > id3v2
> >>
> >> fixed
> >>
> >> > [...]
> >> >> Index: libavformat/id3v2.h
> >> >> ===================================================================
> >> >> --- libavformat/id3v2.h (revision 19140)
> >> >> +++ libavformat/id3v2.h (working copy)
> >> >> @@ -23,10 +23,147 @@
> >> >> #define AVFORMAT_ID3V2_H
> >> >>
> >> >> #include <stdint.h>
> >> >> +#include "avformat.h"
> >> >>
> >> >> #define ID3v2_HEADER_SIZE 10
> >> >>
> >> >> +#define ID3v1_TAG_SIZE 128
> >> >> +
> >> >> +#define ID3v1_GENRE_MAX 125
> >> >
> >> > ID3v1 does not belong in a file named id3v2
> >>
> >> fixed
> >>
> >> >> /**
> >> >> + * ID3v1 genres
> >> >> + */
> >> >> +static const char * const id3v1_genre_str[ID3v1_GENRE_MAX + 1] = {
> >> >
> >> > tables dont belong in headers that are possibly included from
> >> > multipe places
> >>
> >> fixed
> >>
> >> > [...]
> >> >> @@ -39,4 +176,10 @@
> >> >> */
> >> >> int ff_id3v2_tag_len(const uint8_t *buf);
> >> >>
> >> >> +/**
> >> >> + * ID3v2 parser
> >> >> + * Handles ID3v2.2, 2.3 and 2.4.
> >> >> + */
> >> >> +void id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t flags);
> >> >
> >> > needs ff prefix
> >>
> >> fixed
> >>
> >> Patrick
> >>
> >
> >> Makefile | 2
> >> id3v1.c | 151 +++++++++++++++++++++++++++++++++
> >> id3v1.h | 34 +++++++
> >> id3v2.c | 147 ++++++++++++++++++++++++++++++++
> >> id3v2.h | 7 +
> >> mp3.c | 287 ---------------------------------------------------------------
> >> 6 files changed, 342 insertions(+), 286 deletions(-)
> >> 7574889932ceca1b7803c39bc5fc80f7a15fc9c8 1_adtsaac_parse_id3v2.patch
> >> Index: libavformat/id3v1.c
> >> ===================================================================
> >> --- libavformat/id3v1.c (revision 0)
> >> +++ libavformat/id3v1.c (revision 0)
> >> @@ -0,0 +1,151 @@
> >> +/*
> >> + * ID3v1 header parser
> >> + * Copyright (c) 2003 Fabrice Bellard
> >> + *
> >> + * This file is part of FFmpeg.
> >> + *
> >> + * FFmpeg is free software; you can redistribute it and/or
> >> + * modify it under the terms of the GNU Lesser General Public
> >> + * License as published by the Free Software Foundation; either
> >> + * version 2.1 of the License, or (at your option) any later version.
> >> + *
> >> + * FFmpeg is distributed in the hope that it will be useful,
> >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> >> + * Lesser General Public License for more details.
> >> + *
> >> + * You should have received a copy of the GNU Lesser General Public
> >> + * License along with FFmpeg; if not, write to the Free Software
> >> + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
> >> + */
> >> +
> >> +#include "id3v1.h"
> >> +
> >> +const char *id3v1_genre_str[ID3v1_GENRE_MAX + 1] = {
> >
> > all non static symbols need a ff_ prefix
>
> fixed
>
> > [...]
> >> +};
> >> \ No newline at end of file
> >
> > there should be a newline at the end i think
>
> fixed
>
> Patrick
> Makefile | 2
> id3v1.c | 151 ++++++++++++++++++++++++++++++++
> id3v1.h | 35 +++++++
> id3v2.c | 147 +++++++++++++++++++++++++++++++
> id3v2.h | 7 +
> mp3.c | 291 ---------------------------------------------------------------
> 6 files changed, 345 insertions(+), 288 deletions(-)
> cca831e6a2177b845afd9ccb4015467e4100a829 1_adtsaac_parse_id3v2.patch
looks ok
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
In a rich man's house there is no place to spit but his face.
-- Diogenes of Sinope
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20090611/3f0abb58/attachment.pgp>
More information about the ffmpeg-devel
mailing list