[FFmpeg-devel] [PATCH v1] avformat/utils: Fixes misdetection of zYLx.wav

Limin Wang lance.lmwang at gmail.com
Thu Nov 7 03:30:47 EET 2019


On Wed, Nov 06, 2019 at 08:21:56PM +0100, Carl Eugen Hoyos wrote:
> Am Mi., 6. Nov. 2019 um 12:21 Uhr schrieb Limin Wang <lance.lmwang at gmail.com>:
> >
> > On Wed, Nov 06, 2019 at 11:18:10AM +0100, Carl Eugen Hoyos wrote:
> > > Am Mi., 6. Nov. 2019 um 10:01 Uhr schrieb <lance.lmwang at gmail.com>:
> > > >
> > > > From: Limin Wang <lance.lmwang at gmail.com>
> > > >
> > > > Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> > > > ---
> > > >  libavformat/utils.c | 3 +--
> > > >  1 file changed, 1 insertion(+), 2 deletions(-)
> > > >
> > > > diff --git a/libavformat/utils.c b/libavformat/utils.c
> > > > index 8196442dd1..8381498e2b 100644
> > > > --- a/libavformat/utils.c
> > > > +++ b/libavformat/utils.c
> > > > @@ -367,8 +367,7 @@ static int set_codec_from_probe_data(AVFormatContext *s, AVStream *st,
> > > >                 fmt->name, score);
> > > >          for (i = 0; fmt_id_type[i].name; i++) {
> > > >              if (!strcmp(fmt->name, fmt_id_type[i].name)) {
> > > > -                if (fmt_id_type[i].type != AVMEDIA_TYPE_AUDIO &&
> > > > -                    st->codecpar->sample_rate)
> > > > +                if (st->codecpar->sample_rate)
> > > >                      continue;
> > >
> > > I believe the correct fix is to change the mp3 probe function so that it
> > > does not return a score of 51 for the pcm pattern of ff ff e8 ff ff ff e8 ff...
> >
> > It has been detected as pcm
> 
> There is no pcm detection in FFmpeg (it is hard iiuc), and the content
> does not get detected as pcm but mp3 / mp1.
It's detected as wav and get the pcm codec, but if it's AV_CODEC_ID_PCM_S16LE, it'll request
probe again, see my updated patch. I add a checking to prove it.

> 
> > and have get the valid audio sample rate, why we detect it
> > again here?
> 
> How else can you rule out dca audio?

got it, haven't used dca audio before.

> 
> > I have run fate testing with the patch and haven't find any broken condition.
> 
> fate cannot test for all possible code paths.


> 
> Carl Eugen
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


More information about the ffmpeg-devel mailing list