[MPlayer-dev-eng] [PATCH] lavf demuxer: always overwrite codec_tag for PCM formats
Roberto Togni
rxt at rtogni.it
Sun Jan 13 19:15:21 CET 2008
On Sun, 13 Jan 2008 19:03:21 +0100
Reimar Döffinger <Reimar.Doeffinger at stud.uni-karlsruhe.de> wrote:
> Hello,
> On Sun, Jan 13, 2008 at 06:40:21PM +0100, Roberto Togni wrote:
> > Index: demux_lavf.c
> > ===================================================================
> > --- demux_lavf.c (revision 25730)
> > +++ demux_lavf.c (working copy)
> > @@ -92,9 +92,6 @@
> > { CODEC_ID_MUSEPACK7, MKTAG('M', 'P', 'C', ' ')},
> > { CODEC_ID_MUSEPACK8, MKTAG('M', 'P', 'C', '8')},
> > { CODEC_ID_NELLYMOSER, MKTAG('N', 'E', 'L', 'L')},
> > - { CODEC_ID_PCM_S24BE, MKTAG('i', 'n', '2', '4')},
> > - { CODEC_ID_PCM_S16BE, MKTAG('t', 'w', 'o', 's')},
> > - { CODEC_ID_PCM_S8, MKTAG('t', 'w', 'o', 's')},
> > { CODEC_ID_ROQ_DPCM, MKTAG('R', 'o', 'Q', 'A')},
> > { CODEC_ID_SHORTEN, MKTAG('s', 'h', 'r', 'n')},
> > { CODEC_ID_TTA, MKTAG('T', 'T', 'A', '1')},
> > @@ -128,6 +125,17 @@
> >
> > const struct AVCodecTag *mp_bmp_taglists[] = {codec_bmp_tags, mp_bmp_tags, 0};
> >
> > +static const AVCodecTag mp_pcm_tags[] = {
> > + { CODEC_ID_PCM_S8, MKTAG('t', 'w', 'o', 's')},
> > + { CODEC_ID_PCM_U8, 0},
> > + { CODEC_ID_PCM_S16BE, MKTAG('t', 'w', 'o', 's')},
> > + { CODEC_ID_PCM_S16LE, 0},
> > + { CODEC_ID_PCM_S24BE, MKTAG('i', 'n', '2', '4')},
> > + { 0, 0 },
> > +};
> > +
> > +const struct AVCodecTag *mp_pcm_taglists[] = {mp_pcm_tags, 0};
> > +
>
> IMHO it should be before the mp_bmp_tags, not after.
> In addition I'd propose a name more like mp_wav_override_tags or some
> such. Or just always override codec_tag, though that means a bit of a
> loss of information (do some lavc codecs still have checks against
> codec_tag or were they all removed?).
>
IIUC always override will prevent MPlayer to play codecs with a known
codec tag (eg. from an avi file) but not supported by lavc.
Ciao,
Roberto
--
Better is the enemy of good enough.
More information about the MPlayer-dev-eng
mailing list