[FFmpeg-devel] acrossfade duration accuracy
Paul B Mahol
onemda at gmail.com
Mon Nov 23 10:40:24 CET 2015
On 11/23/15, Ryan Williams <ryan at ryanwilliams.id.au> wrote:
> I am getting an unexpected number of samples in the output of the
> 'acrossfade' filter.
> In the following example I would expect acrossfade.wav to contain 72,000
> samples but it only contains 70,976 samples.
> Am I doing something wrong?
>
> [root at ryan ff]# ffmpeg \
> -y \
> -vn \
> -filter_complex " \
> aevalsrc='exprs=sin(440*2*PI*t):s=8000', atrim='duration=5' [a0]; \
> aevalsrc='exprs=sin(440*2*PI*t):s=8000', atrim='duration=5' [a1]; \
> aevalsrc='exprs=sin(440*2*PI*t):s=8000', atrim='duration=5' [a2]; \
> aevalsrc='exprs=sin(440*2*PI*t):s=8000', atrim='duration=5' [a3]; \
> [a0][a1] concat='n=2:v=0:a=1' [output1]; \
> [a2][a3] acrossfade='ns=8000' [output2] \
> " \
> -map '[output1]' concat.wav \
> -map '[output2]' acrossfade.wav
>
> ffmpeg version 2.8.2-static http://johnvansickle.com/ffmpeg/ Copyright (c)
> 2000-2015 the FFmpeg developers
> built with gcc 5.2.1 (Debian 5.2.1-23) 20151028
> configuration: --enable-gpl --enable-version3 --disable-shared
> --disable-debug --enable-runtime-cpudetect --enable-libmp3lame
> --enable-libx264 --enable-libx265 --enable-libwebp --enable-libspeex
> --enable-libvorbis --enable-libvpx --enable-libfreetype --enable-fontconfig
> --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb
> --enable-libtheora --enable-libvo-aacenc --enable-libvo-amrwbenc
> --enable-gray --enable-libopenjpeg --enable-libopus --enable-libass
> --enable-gnutls --enable-libvidstab --enable-libsoxr --enable-frei0r
> --enable-libfribidi --disable-indev=sndio --disable-outdev=sndio --cc=gcc
> libavutil 54. 31.100 / 54. 31.100
> libavcodec 56. 60.100 / 56. 60.100
> libavformat 56. 40.101 / 56. 40.101
> libavdevice 56. 4.100 / 56. 4.100
> libavfilter 5. 40.101 / 5. 40.101
> libswscale 3. 1.101 / 3. 1.101
> libswresample 1. 2.101 / 1. 2.101
> libpostproc 53. 3.100 / 53. 3.100
> Output #0, wav, to 'concat.wav':
> Metadata:
> ISFT : Lavf56.40.101
> Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 8000 Hz, mono,
> s16, 128 kb/s (default)
> Metadata:
> encoder : Lavc56.60.100 pcm_s16le
> Output #1, wav, to 'acrossfade.wav':
> Metadata:
> ISFT : Lavf56.40.101
> Stream #1:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 8000 Hz, mono,
> s16, 128 kb/s (default)
> Metadata:
> encoder : Lavc56.60.100 pcm_s16le
> Stream mapping:
> concat -> Stream #0:0 (pcm_s16le)
> acrossfade -> Stream #1:0 (pcm_s16le)
> Press [q] to stop, [?] for help
> size= 156kB time=00:00:10.00 bitrate= 128.1kbits/s
> video:0kB audio:295kB subtitle:0kB other streams:0kB global headers:0kB
> muxing overhead: unknown
>
> [root at ryan ff]# sox --info -s concat.wav
> 80000
>
> [root at ryan ff]# sox --info -s acrossfade.wav
> 70976
You can get same info and more with astats filter.
Issue should be fixed, thanks for reporting.
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
More information about the ffmpeg-devel
mailing list