[FFmpeg-trac] #11016(undetermined:new): -channel_layout input flag stopped working
FFmpeg
trac at avcodec.org
Thu May 16 23:52:05 EEST 2024
#11016: -channel_layout input flag stopped working
-------------------------------------+-------------------------------------
Reporter: Derek | Type: defect
Prestegard |
Status: new | Priority: normal
Component: | Version: 7.0
undetermined |
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Summary of the bug:
I deal with wacky QuickTime MOVs with lots of different combinations of
audio tracks. Often I need to extract 2 or 6 channels and use the amerge
filter to make a multi-channel track to pass downstream for AAC encoding
etc.
Sometimes the channel layouts of these input files are wrong, and
sometimes they use labels that FFmpeg doesn't understand. So, several
years ago I found that simply adding "-channel_layout mono" prior to the
input file was a nice way to make ffmpeg just treat each channel as "mono"
which avoided chaos downstream with amerge.
However, this seems to have broken recently. I'm on 7.0 (also tried a
recent build from git head) and it doesn't seem to have any effect.
How to reproduce:
{{{
% ffmpeg -channel_layout mono -i sample_24_track_crazy.mov
-filter_complex "[0:18][0:18]amerge=inputs=2[aout]" -map "[aout]" -c:a
pcm_s24le foo.wav
ffmpeg version N-115032-g127e7e4249-gb7debef3cc+1 Copyright (c) 2000-2024
the FFmpeg developers
built with gcc 13.2.0 (Rev6, Built by MSYS2 project)
configuration: --pkg-config=pkgconf --cc='ccache gcc' --cxx='ccache
g++' --ld='ccache g++' --extra-cxxflags=-fpermissive --extra-cflags=-Wno-
int-conversion --disable-autodetect --enable-amf --enable-bzlib --enable-
cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-iconv
--enable-lzma --enable-nvenc --enable-zlib --enable-sdl2 --enable-
ffnvcodec --enable-nvdec --enable-cuda-llvm --enable-libmp3lame --enable-
libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-
libx265 --enable-libdav1d --enable-libaom --disable-debug --enable-libfdk-
aac --enable-fontconfig --enable-libass --enable-libbluray --enable-
libfreetype --enable-libmfx --enable-libmysofa --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libopenjpeg --enable-libsnappy
--enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame
--enable-libvidstab --enable-libvo-amrwbenc --enable-libwebp --enable-
libxml2 --enable-libzimg --enable-libshine --enable-gpl --enable-avisynth
--enable-libxvid --enable-libopenmpt --enable-version3 --enable-librav1e
--enable-libsrt --enable-libgsm --enable-libvmaf --enable-libsvtav1
--enable-decklink --enable-libcdio --enable-libfribidi --enable-librist
--enable-librtmp --enable-librubberband --enable-libzvbi --enable-openal
--enable-libcodec2 --enable-ladspa --enable-libglslang --enable-vulkan
--enable-libplacebo --enable-libjxl --enable-opencl --enable-opengl
--enable-libnpp --enable-openssl --extra-cflags=-DLIBTWOLAME_STATIC
--extra-libs=-lstdc++ --extra-cflags=-DLIBXML_STATIC --extra-libs=-liconv
--disable-w32threads --enable-nonfree --extra-
cflags='-IC:/PROGRA~1/NVIDIA~2/CUDA/v12.4/include' --extra-
ldflags='-LC:/PROGRA~1/NVIDIA~2/CUDA/v12.4/lib/x64' --extra-
cflags=-DAL_LIBTYPE_STATIC --extra-cflags='-IC:/media-
autobuild_suite/local64/include' --extra-cflags='-IC:/media-
autobuild_suite/local64/include/AL'
libavutil 59. 16.101 / 59. 16.101
libavcodec 61. 5.103 / 61. 5.103
libavformat 61. 3.103 / 61. 3.103
libavdevice 61. 2.100 / 61. 2.100
libavfilter 10. 2.101 / 10. 2.101
libswscale 8. 2.100 / 8. 2.100
libswresample 5. 2.100 / 5. 2.100
libpostproc 58. 2.100 / 58. 2.100
[aist#0:2/pcm_s24le @ 000001c76394e340] Guessed Channel Layout: mono
[aist#0:6/pcm_s24le @ 000001c76392a840] Guessed Channel Layout: mono
[aist#0:17/pcm_s24le @ 000001c763951340] Guessed Channel Layout: mono
[aist#0:20/pcm_s24le @ 000001c763950e00] Guessed Channel Layout: mono
[aist#0:21/pcm_s24le @ 000001c763950fc0] Guessed Channel Layout: mono
[aist#0:24/pcm_s24le @ 000001c7639516c0] Guessed Channel Layout: mono
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'sample_24_track_crazy.mov':
Metadata:
major_brand : qt
minor_version : 537134592
compatible_brands: qt
creation_time : 2024-05-16T20:37:59.000000Z
encoder : Telestream Media Framework Local 999999
encoder-eng : Telestream Media Framework Local 999999
com.apple.quicktime.software: Telestream Media Framework Local 999999
timecode : 00:00:00:00
Duration: 00:00:00.88, start: 0.000000, bitrate: 31912 kb/s
Stream #0:0[0x1](eng): Data: none (tmcd / 0x64636D74), 0 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
handler_name : Time Code Media Handler
reel_name : Unnamed
timecode : 00:00:00:00
Stream #0:1[0x2](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
channels (TBC), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:2[0x3](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
mono, s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:3[0x4](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
channels (FLC), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:4[0x5](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
channels (TC), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:5[0x6](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
channels (TC), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:6[0x7](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
mono, s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:7[0x8](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
channels (FR), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:8[0x9](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
channels (SL), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:9[0xa](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, 1
channels (TC), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:10[0xb](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
1 channels (LFE), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:11[0xc](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
1 channels (FR), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:12[0xd](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
mono, s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:13[0xe](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
1 channels (FL), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:14[0xf](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
1 channels (SR), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:15[0x10](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
1 channels (TBR), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:16[0x11](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
1 channels (TBC), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:17[0x12](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
mono, s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:18[0x13](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
1 channels (UNSD), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:19[0x14](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
1 channels (DL), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:20[0x15](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
mono, s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:21[0x16](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
mono, s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:22[0x17](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
mono, s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:23[0x18](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
1 channels (FR), s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
Stream #0:24[0x19](eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz,
mono, s32 (24 bit), 1152 kb/s (default)
Metadata:
creation_time : 2024-05-16T20:37:59.000000Z
vendor_id : [0][0][0][0]
File 'foo.wav' already exists. Overwrite? [y/N] y
Stream mapping:
Stream #0:18 (pcm_s24le) -> amerge
Stream #0:18 (pcm_s24le) -> amerge
amerge:default -> Stream #0:0 (pcm_s24le)
Press [q] to stop, [?] for help
[Parsed_amerge_0 @ 000001c763949140] No channel layout for input 1
[fc#0 @ 000001c7638ffb80] Error while filtering: Cannot allocate memory
[fc#0 @ 000001c7638ffb80] Task finished with error code: -12 (Cannot
allocate memory)
[fc#0 @ 000001c7638ffb80] Terminating thread with return code -12 (Cannot
allocate memory)
[aost#0:0/pcm_s24le @ 000001c76391d140] Could not open encoder before EOF
[aost#0:0/pcm_s24le @ 000001c76391d140] Task finished with error code: -22
(Invalid argument)
[aost#0:0/pcm_s24le @ 000001c76391d140] Terminating thread with return
code -22 (Invalid argument)
[out#0/wav @ 000001c76394eac0] Nothing was written into output file,
because at least one of its streams received no packets.
size= 0KiB time=N/A bitrate=N/A speed=N/A
Conversion failed!
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/11016>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list