#3217 closed defect (fixed)
ac3 muxer does not force single stream
Reported by: | Selur | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | avformat |
Version: | git-master | Keywords: | ac3 |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | yes | |
Analyzed by developer: | no |
Description
Trying to fix a positive delay in an ac3 stream I stumbled over the problem, that as soon as I use '-map 0:1' (to make sure the correct audio stream is used) the output is broken.
call 1 (broken output):
ffmpeg -y -threads 8 -analyzeduration 100M -probesize 100M -i "H:\Output\cut.m2ts" -map 0:1 -vn -filter_complex "aevalsrc=0:0:0:0:0:0::d=0.138:sample_rate=48000[silence];[silence][0:a]concat=n=2:v=0:a=1[out]" -map [out] -c:a ac3 -ab 384000 -map_metadata -1 "H:\Output\broken.ac3"
output 1:
ffmpeg version N-58961-g3af9d82 Copyright (c) 2000-2013 the FFmpeg developers built on Dec 10 2013 22:26:27 with gcc 4.8.2 (rev0, Built by MinGW-W64 project) configuration: --arch=x86_64 --prefix=/local64 --extra-cflags='-DPTW32_STATIC_LIB -DLIBTWOLAME_STATIC' --extra-libs='-lxml2 -lz -liconv -lws2_32 -lstdc++ -lpng -lm -lpthread -lwsock32' --disable-debug --enable-gpl --enable-version3 --enable-postproc --enable-w32threads --enable-runtime-cpudetect --enable-memalign-hack --disable-shared --enable-static --enable-avfilter --enable-bzlib --enable-zlib --enable-librtmp --enable-gnutls --enable-avisynth --enable-frei0r --enable-filter=frei0r --enable-libbluray --enable-libcaca --enable-libopenjpeg --enable-fontconfig --enable-libfreetype --enable-libass --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-libschroedinger --enable-libsoxr --enable-libtwolame --enable-libutvideo --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvo-aacenc --enable-libopus --enable-libvidstab --enable-libvpx --enable-libxavs --enable-libx264 --enable-libxvid --enable-libzvbi libavutil 52. 58.100 / 52. 58.100 libavcodec 55. 45.100 / 55. 45.100 libavformat 55. 22.100 / 55. 22.100 libavdevice 55. 5.102 / 55. 5.102 libavfilter 3. 92.100 / 3. 92.100 libswscale 2. 5.101 / 2. 5.101 libswresample 0. 17.104 / 0. 17.104 libpostproc 52. 3.100 / 52. 3.100 [h264 @ 000000000075cd80] SEI type 1 size 56 truncated at 53 [h264 @ 000000000075cd80] mmco: unref short failure Last message repeated 1 times [h264 @ 000000000075cd80] number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one [h264 @ 000000000075cd80] SEI type 1 size 56 truncated at 53 Last message repeated 38 times Input #0, mpegts, from 'H:\Output\cut.m2ts': Duration: 00:00:30.11, start: 4292.050000, bitrate: 7719 kb/s Program 1 Stream #0:0[0x1011]: Video: h264 (High) (HDMV / 0x564D4448), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0:1[0x1100]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 384 kb/s [Parsed_aevalsrc_0 @ 0000000006bc05e0] This syntax is deprecated. Use '|' to separate the list items. Output #0, ac3, to 'H:\Output\broken.ac3': Metadata: encoder : Lavf55.22.100 Stream #0:0: Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s Stream #0:1: Audio: ac3, 48000 Hz, 5.1, fltp, 384 kb/s Stream mapping: Stream #0:1 (ac3) -> concat:in1:a0 (graph 0) Stream #0:1 -> #0:0 (ac3 -> ac3) concat (graph 0) -> Stream #0:1 (ac3) Press [q] to stop, [?] for help size= 2828kB time=00:00:30.23 bitrate= 766.1kbits/s video:0kB audio:2828kB subtitle:0 global headers:0kB muxing overhead 0.000000%
call 2 (working output):
ffmpeg -y -threads 8 -analyzeduration 100M -probesize 100M -i "H:\Output\cut.m2ts" -vn -filter_complex "aevalsrc=0:0:0:0:0:0::d=0.138:sample_rate=48000[silence];[silence][0:a]concat=n=2:v=0:a=1[out]" -map [out] -c:a ac3 -ab 384000 -map_metadata -1 "H:\Output\working.ac3"
output 2:
ffmpeg version N-58961-g3af9d82 Copyright (c) 2000-2013 the FFmpeg developers built on Dec 10 2013 22:26:27 with gcc 4.8.2 (rev0, Built by MinGW-W64 project) configuration: --arch=x86_64 --prefix=/local64 --extra-cflags='-DPTW32_STATIC_LIB -DLIBTWOLAME_STATIC' --extra-libs='-lxml2 -lz -liconv -lws2_32 -lstdc++ -lpng -lm -lpthread -lwsock32' --disable-debug --enable-gpl --enable-version3 --enable-postproc --enable-w32threads --enable-runtime-cpudetect --enable-memalign-hack --disable-shared --enable-static --enable-avfilter --enable-bzlib --enable-zlib --enable-librtmp --enable-gnutls --enable-avisynth --enable-frei0r --enable-filter=frei0r --enable-libbluray --enable-libcaca --enable-libopenjpeg --enable-fontconfig --enable-libfreetype --enable-libass --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-libschroedinger --enable-libsoxr --enable-libtwolame --enable-libutvideo --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvo-aacenc --enable-libopus --enable-libvidstab --enable-libvpx --enable-libxavs --enable-libx264 --enable-libxvid --enable-libzvbi libavutil 52. 58.100 / 52. 58.100 libavcodec 55. 45.100 / 55. 45.100 libavformat 55. 22.100 / 55. 22.100 libavdevice 55. 5.102 / 55. 5.102 libavfilter 3. 92.100 / 3. 92.100 libswscale 2. 5.101 / 2. 5.101 libswresample 0. 17.104 / 0. 17.104 libpostproc 52. 3.100 / 52. 3.100 [h264 @ 000000000078cc40] SEI type 1 size 56 truncated at 53 [h264 @ 000000000078cc40] mmco: unref short failure Last message repeated 1 times [h264 @ 000000000078cc40] number of reference frames (0+4) exceeds max (3; probably corrupt input), discarding one [h264 @ 000000000078cc40] SEI type 1 size 56 truncated at 53 Last message repeated 38 times Input #0, mpegts, from 'H:\Output\cut.m2ts': Duration: 00:00:30.11, start: 4292.050000, bitrate: 7719 kb/s Program 1 Stream #0:0[0x1011]: Video: h264 (High) (HDMV / 0x564D4448), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0:1[0x1100]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 384 kb/s [Parsed_aevalsrc_0 @ 000000000078d560] This syntax is deprecated. Use '|' to separate the list items. Output #0, ac3, to 'H:\Output\working.ac3': Metadata: encoder : Lavf55.22.100 Stream #0:0: Audio: ac3, 48000 Hz, 5.1, fltp, 384 kb/s Stream mapping: Stream #0:1 (ac3) -> concat:in1:a0 concat -> Stream #0:0 (ac3) Press [q] to stop, [?] for help size= 1418kB time=00:00:30.23 bitrate= 384.1kbits/s video:0kB audio:1418kB subtitle:0 global headers:0kB muxing overhead 0.000000% }} Problem: "call 1" produces a broken output, where as "call 2" works fine. The only difference between these calls is the "-map 0:1" part, which often is required to select the correct audio stream which should be processed. Uploaded the source and the two outputs to: http://www.embedupload.com/?d=8GIXBAL0NC
Change History (3)
comment:1 by , 11 years ago
Component: | FFmpeg → avformat |
---|---|
Keywords: | ac3 added |
Reproduced by developer: | set |
Status: | new → open |
Summary: | Audio filter produce broken output when used with '-map' → ac3 muxer does not force single stream |
comment:2 by , 11 years ago
Resolution: | → fixed |
---|---|
Status: | open → closed |
Should be fixed in 945a440d - thank you for the report!
Note:
See TracTickets
for help on using tickets.
Patch sent.