[FFmpeg-trac] #1450(undetermined:new): ffmpeg does not terminate after end of input (asyncts used)
FFmpeg
trac at avcodec.org
Fri Jun 15 13:27:59 CEST 2012
#1450: ffmpeg does not terminate after end of input (asyncts used)
-------------------------------------+-------------------------------------
Reporter: lvm | Type: defect
Status: new | Priority: normal
Component: | Version:
undetermined | unspecified
Keywords: libfaac, | Blocked By:
asyncts | Reproduced by developer: 0
Blocking: |
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Hello.
I have an issue when using "asyncts" audio filter:
ffmpeg command line
{{{
ffmpeg -i /tmp/flv.flv -vn -af asyncts=compensate=1 -acodec libfaac -f
mpegts -y /tmp/xxx.ts
}}}
{{{
ffmpeg -i /tmp/flv.flv -vn -af asyncts=compensate=1 -acodec libfaac -f
mpegts -y /tmp/xxx.ts
ffmpeg version 0.11 Copyright (c) 2000-2012 the FFmpeg developers
built on Jan 19 2012 07:34:53 with gcc 4.6.2
configuration: --shlibdir=/usr/lib64 --prefix=/usr
--mandir=/usr/share/man --libdir=/usr/lib64 --enable-shared --disable-
static --enable-debug --disable-stripping --extra-cflags='-O2 -g -m64
-fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables
-fasynchronous-unwind-tables -fPIC -I/usr/include/gsm' --enable-gpl
--enable-x11grab --enable-version3 --enable-pthreads --enable-libfaac
--enable-nonfree --enable-avfilter --enable-libpulse --enable-libvpx
--enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-
libspeex --enable-libxvid --enable-libx264 --enable-libschroedinger
--enable-libgsm --enable-libopencore-amrnb --enable-libopencore-amrwb
--enable-postproc --enable-libdc1394 --enable-librtmp --enable-libfreetype
libavutil 51. 54.100 / 51. 54.100
libavcodec 54. 23.100 / 54. 23.100
libavformat 54. 6.100 / 54. 6.100
libavdevice 54. 0.100 / 54. 0.100
libavfilter 2. 77.100 / 2. 77.100
libswscale 2. 1.100 / 2. 1.100
libswresample 0. 15.100 / 0. 15.100
libpostproc 52. 0.100 / 52. 0.100
Input #0, flv, from '/tmp/flv.flv':
Metadata:
encoder : Lavf54.6.100
Duration: 00:03:46.82, start: 0.000000, bitrate: 3265 kb/s
Stream #0:0: Video: flv1, yuv420p, 1280x720, 200 kb/s, 50 tbr, 1k tbn,
1k tbc
Stream #0:1: Audio: mp3, 44100 Hz, stereo, s16, 128 kb/s
[AVAudioResampleContext @ 0x64d4c0] Using s16p as internal sample format
[mpegts @ 0x62db60] muxrate VBR, pcr every 4 pkts, sdt every 200, pat/pmt
every 40 pkts
Output #0, mpegts, to '/tmp/xxx.ts':
Metadata:
encoder : Lavf54.6.100
Stream #0:0: Audio: aac, 44100 Hz, stereo, s16, 128 kb/s
Stream mapping:
Stream #0:1 -> #0:0 (mp3 -> libfaac)
Press [q] to stop, [?] for help
Error in av_buffersink_get_buffer_ref(): Invalid argument
size= 1612kB time=00:01:31.92 bitrate= 143.7kbits/s
}}}
Everything seems to be OK until source runs out of data (EOF and
connnection close are tested) or user decides to abort ffmpeg execution
(hits ctrl+c).
In both cases ffmpeg does not terminate and starts to produce huge amount
of messages (thousands per second) to stderr:
{{{
...
[mpegts @ 0x62db60] Audio timestamp 20310724 < 20313155 invalid, cliping
[libfaac @ 0x62e320] Que input is backward in time
[mpegts @ 0x62db60] Audio timestamp 20310720 < 20313156 invalid, cliping
[libfaac @ 0x62e320] Que input is backward in time
[mpegts @ 0x62db60] Audio timestamp 20310716 < 20313157 invalid, cliping
[libfaac @ 0x62e320] Que input is backward in time
[mpegts @ 0x62db60] Audio timestamp 20310712 < 20313158 invalid, cliping
[mpegts @ 0x62db60] Audio timestamp 20310708 < 20313159 invalid, cliping
[libfaac @ 0x62e320] Que input is backward in time
[mpegts @ 0x62db60] Audio timestamp 20310704 < 20313160 invalid, cliping
[libfaac @ 0x62e320] Que input is backward in time
[mpegts @ 0x62db60] Audio timestamp 20310700 < 20313161 invalid, cliping
[libfaac @ 0x62e320] Que input is backward in time
...
}}}
until kill or ctrl+c is issued by user.
Problem occurs only when asyncts filter is used:
{{{
# ffmpeg -i /tmp/flv.flv -vn -acodec libfaac -f mpegts -y /tmp/xxx.ts
ffmpeg version 0.11 Copyright (c) 2000-2012 the FFmpeg developers
built on Jan 19 2012 07:34:53 with gcc 4.6.2
configuration: --shlibdir=/usr/lib64 --prefix=/usr
--mandir=/usr/share/man --libdir=/usr/lib64 --enable-shared --disable-
static --enable-debug --disable-stripping --extra-cflags='-O2 -g -m64
-fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables
-fasynchronous-unwind-tables -fPIC -I/usr/include/gsm' --enable-gpl
--enable-x11grab --enable-version3 --enable-pthreads --enable-libfaac
--enable-nonfree --enable-avfilter --enable-libpulse --enable-libvpx
--enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-
libspeex --enable-libxvid --enable-libx264 --enable-libschroedinger
--enable-libgsm --enable-libopencore-amrnb --enable-libopencore-amrwb
--enable-postproc --enable-libdc1394 --enable-librtmp --enable-libfreetype
libavutil 51. 54.100 / 51. 54.100
libavcodec 54. 23.100 / 54. 23.100
libavformat 54. 6.100 / 54. 6.100
libavdevice 54. 0.100 / 54. 0.100
libavfilter 2. 77.100 / 2. 77.100
libswscale 2. 1.100 / 2. 1.100
libswresample 0. 15.100 / 0. 15.100
libpostproc 52. 0.100 / 52. 0.100
Input #0, flv, from '/tmp/flv.flv':
Metadata:
encoder : Lavf54.6.100
Duration: 00:03:46.82, start: 0.000000, bitrate: 3265 kb/s
Stream #0:0: Video: flv1, yuv420p, 1280x720, 200 kb/s, 50 tbr, 1k tbn,
1k tbc
Stream #0:1: Audio: mp3, 44100 Hz, stereo, s16, 128 kb/s
[mpegts @ 0x62db60] muxrate VBR, pcr every 4 pkts, sdt every 200, pat/pmt
every 40 pkts
Output #0, mpegts, to '/tmp/xxx.ts':
Metadata:
encoder : Lavf54.6.100
Stream #0:0: Audio: aac, 44100 Hz, stereo, s16, 128 kb/s
Stream mapping:
Stream #0:1 -> #0:0 (mp3 -> libfaac)
Press [q] to stop, [?] for help
size= 3964kB time=00:03:45.74 bitrate= 143.8kbits/s
video:0kB audio:3526kB global headers:0kB muxing overhead 12.399394%
}}}
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/1450>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list