avformat_find_stream_info: fallback to timestamps in analyzeduration check in more...
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 8 Jul 2013 00:19:28 +0000 (02:19 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 8 Jul 2013 00:37:24 +0000 (02:37 +0200)
This fixes speex in rtmp
Fixes Ticket2409

the nellymoser in flv case actually needs larger analyzeduration. The code
previously just failed to calculate the duration

If this causes any problems, like premature analyze/probe end, please report!

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/utils.c
tests/fate/filter-audio.mak

index c6aa87b..17dcb25 100644 (file)
@@ -2830,10 +2830,7 @@ int avformat_find_stream_info(AVFormatContext *ic, AVDictionary **options)
                 t = FFMAX(t, av_rescale_q(st->codec_info_nb_frames, av_inv_q(st->avg_frame_rate), AV_TIME_BASE_Q));
 
             if (   t==0
-                && st->codec_info_nb_frames>15
-                && st->codec->codec_type == AVMEDIA_TYPE_VIDEO
-                && (   !strcmp(ic->iformat->name, "mpeg") // this breaks some flvs thus use only for mpegps/ts for now (for ts we have a sample that needs it)
-                    || !strcmp(ic->iformat->name, "mpegts"))
+                && st->codec_info_nb_frames>30
                 && st->info->fps_first_dts != AV_NOPTS_VALUE
                 && st->info->fps_last_dts  != AV_NOPTS_VALUE)
                 t = FFMAX(t, av_rescale_q(st->info->fps_last_dts - st->info->fps_first_dts, st->time_base, AV_TIME_BASE_Q));
index 4593421..944af75 100644 (file)
@@ -27,7 +27,7 @@ fate-filter-asyncts: REF = $(SAMPLES)/nellymoser/nellymoser-discont-async-v2.pcm
 
 FATE_FILTER-$(CONFIG_ARESAMPLE_FILTER) += fate-filter-aresample
 fate-filter-aresample: SRC = $(SAMPLES)/nellymoser/nellymoser-discont.flv
-fate-filter-aresample: CMD = pcm -i $(SRC) -af aresample=min_comp=0.001:min_hard_comp=0.1:first_pts=0
+fate-filter-aresample: CMD = pcm -analyzeduration 10000000 -i $(SRC) -af aresample=min_comp=0.001:min_hard_comp=0.1:first_pts=0
 fate-filter-aresample: CMP = oneoff
 fate-filter-aresample: REF = $(SAMPLES)/nellymoser/nellymoser-discont.pcm