Muxing audio-only MXF
Hi, is there a way to mux an mxf file only containing a pcm audio stream? When I try I get this: ffmpeg -i /Users/krueger/lesspain/samples/software/compressor/compressor4_1080_25p_apple_devices_best_compat_2s.m4v -vn -c:a pcm_s16le ~/tmp/ffmpeg_pcm16_rewrap.mxf ffmpeg version git-2017-06-12-358ddb4 Copyright (c) 2000-2017 the FFmpeg developers built with Apple LLVM version 6.0 (clang-600.0.57) (based on LLVM 3.5svn) configuration: --enable-shared --disable-static --disable-doc --disable-devices --enable-indev=lavfi --prefix=/Users/teamcity/buildAgent/work/3b1b1b1b725f407e/build/ffmpeg --install-name-dir='@rpath' --extra-cflags=-I/Users/teamcity/buildAgent/work/3b1b1b1b725f407e/build/libmp3lame/include/ --extra-ldflags=-L/Users/teamcity/buildAgent/work/3b1b1b1b725f407e/build/libmp3lame/lib/ --extra-cflags=-I/Users/teamcity/buildAgent/work/3b1b1b1b725f407e/build/libogg/include/ --extra-ldflags=-L/Users/teamcity/buildAgent/work/3b1b1b1b725f407e/build/libogg/lib/ --extra-cflags=-I/Users/teamcity/buildAgent/work/3b1b1b1b725f407e/build/libvorbis/include/ --extra-ldflags=-L/Users/teamcity/buildAgent/work/3b1b1b1b725f407e/build/libvorbis/lib/ --extra-ldflags='-Wl,-rpath,@loader_path/../lib' --enable-libvorbis --enable-libvpx --enable-libmp3lame --enable-libopenh264 --enable-libfreetype libavutil 55. 63.100 / 55. 63.100 libavcodec 57. 98.100 / 57. 98.100 libavformat 57. 73.100 / 57. 73.100 libavdevice 57. 7.100 / 57. 7.100 libavfilter 6. 91.100 / 6. 91.100 libswscale 4. 7.101 / 4. 7.101 libswresample 2. 8.100 / 2. 8.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Users/krueger/lesspain/samples/software/compressor/compressor4_1080_25p_apple_devices_best_compat_2s.m4v': Metadata: major_brand : M4V minor_version : 1 compatible_brands: M4V M4A mp42isom creation_time : 2015-09-15T08:19:57.000000Z Duration: 00:00:02.00, start: 0.000000, bitrate: 3881 kb/s Stream #0:0(deu): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 63 kb/s (default) Metadata: creation_time : 2015-09-15T08:19:57.000000Z handler_name : Core Media Audio Stream #0:1(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, smpte170m/smpte170m/bt709, progressive), 960x540 [SAR 1:1 DAR 16:9], 3807 kb/s, 25 fps, 25 tbr, 25 tbn, 50 tbc (default) Metadata: creation_time : 2015-09-15T08:19:57.000000Z handler_name : Core Media Video Stream mapping: Stream #0:0 -> #0:0 (aac (native) -> pcm_s16le (native)) Press [q] to stop, [?] for help [mxf @ 0x7f8ccd803200] there must be exactly one video stream and it must be the first one Could not write header for output file #0 (incorrect codec parameters ?): Operation not permitted Error initializing output stream 0:0 -- Conversion failed! Is this a conscious limitation of the muxer or am I missing a command line option? Thanks, Robert
Hi, On Thu, Nov 30, 2017 at 3:46 PM, Robert Krüger <krueger@lesspain.software> wrote:
Hi,
is there a way to mux an mxf file only containing a pcm audio stream? When
You could try using the op-atom muxer as it looks like your command is defaulting to op1a. Add -f mxf_opatom to your command line. ffmpeg -i /Users/krueger/lesspain/samples/software/compressor/compressor4_1080_25p_apple_devices_best_compat_2s.m4v -vn -c:a pcm_s16le -f mxf_opatom ~/tmp/ffmpeg_pcm16_rewrap.mxf [...]
Is this a conscious limitation of the muxer or am I missing a command line option?
It looks like it. The reasons why I suggested trying OP-Atom is that this seems to be performing a specific check for OP1a. Best, Kieran.
On Thu, Nov 30, 2017 at 4:38 PM, Kieran O Leary <kieran.o.leary@gmail.com> wrote:
Hi,
On Thu, Nov 30, 2017 at 3:46 PM, Robert Krüger <krueger@lesspain.software> wrote:
Hi,
is there a way to mux an mxf file only containing a pcm audio stream? When
You could try using the op-atom muxer as it looks like your command is defaulting to op1a. Add -f mxf_opatom to your command line. ffmpeg -i /Users/krueger/lesspain/samples/software/compressor/compressor4_1080_25p_apple_devices_best_compat_2s.m4v -vn -c:a pcm_s16le -f mxf_opatom ~/tmp/ffmpeg_pcm16_rewrap.mxf
[...]
Is this a conscious limitation of the muxer or am I missing a command line option?
It looks like it. The reasons why I suggested trying OP-Atom is that this seems to be performing a specific check for OP1a.
Best,
Kieran.
Eek, I meant to link to the line of code where this check seems to occur: https://github.com/FFmpeg/FFmpeg/blob/master/libavformat/mxfenc.c#L2151
Hi Kieran, On Thu, Nov 30, 2017 at 5:39 PM, Kieran O Leary <kieran.o.leary@gmail.com> wrote:
Hi,
On Thu, Nov 30, 2017 at 3:46 PM, Robert Krüger <krueger@lesspain.software> wrote:
Hi,
is there a way to mux an mxf file only containing a pcm audio stream? When
You could try using the op-atom muxer as it looks like your command is defaulting to op1a. Add -f mxf_opatom to your command line. ffmpeg -i /Users/krueger/lesspain/samples/software/compressor/ compressor4_1080_25p_apple_devices_best_compat_2s.m4v -vn -c:a pcm_s16le -f mxf_opatom ~/tmp/ffmpeg_pcm16_rewrap.mxf
[...]
Is this a conscious limitation of the muxer or am I missing a command
On Thu, Nov 30, 2017 at 4:38 PM, Kieran O Leary <kieran.o.leary@gmail.com> wrote: line
option?
It looks like it. The reasons why I suggested trying OP-Atom is that this seems to be performing a specific check for OP1a.
Best,
Kieran.
Eek, I meant to link to the line of code where this check seems to occur: https://github.com/FFmpeg/FFmpeg/blob/master/ libavformat/mxfenc.c#L2151
perfect, that worked, thanks a lot! The only thing I had to do is to convert the audio to single-channel "[mxf_opatom @ 0x7feb4e009a00] MXF OPAtom only supports single channel audio". Cheers, Robert
Am Freitag, 1. Dezember 2017 schrieb Robert Krüger :
Hi Kieran,
On Thu, Nov 30, 2017 at 5:39 PM, Kieran O Leary <kieran.o.leary@gmail.com <javascript:;>> wrote:
Hi,
On Thu, Nov 30, 2017 at 3:46 PM, Robert Krüger <krueger@lesspain.software> wrote:
Hi,
is there a way to mux an mxf file only containing a pcm audio stream? When
You could try using the op-atom muxer as it looks like your command is defaulting to op1a. Add -f mxf_opatom to your command line. ffmpeg -i /Users/krueger/lesspain/samples/software/compressor/ compressor4_1080_25p_apple_devices_best_compat_2s.m4v -vn -c:a pcm_s16le -f mxf_opatom ~/tmp/ffmpeg_pcm16_rewrap.mxf
[...]
Is this a conscious limitation of the muxer or am I missing a command
On Thu, Nov 30, 2017 at 4:38 PM, Kieran O Leary <kieran.o.leary@gmail.com <javascript:;>> wrote: line
option?
It looks like it. The reasons why I suggested trying OP-Atom is that this seems to be performing a specific check for OP1a.
Which is wrong, btw. There is a spec for MXF_OP1a_AES3 to wrap the respective audio without a picture essence. I would guess MCA labels will have to be provided though, and also the audio samples would have to be formatted to AES, which ffmpeg afaik currently doesn't do. Best, Erik
Hi Erik, On Fri, Dec 1, 2017 at 12:25 PM, Erik Dobberkau <erik.dobberkau@gmail.com> wrote:
Am Freitag, 1. Dezember 2017 schrieb Robert Krüger :
Hi Kieran,
On Thu, Nov 30, 2017 at 5:39 PM, Kieran O Leary < kieran.o.leary@gmail.com <javascript:;>> wrote:
Hi,
On Thu, Nov 30, 2017 at 3:46 PM, Robert Krüger <krueger@lesspain.software> wrote:
Hi,
is there a way to mux an mxf file only containing a pcm audio stream? When
You could try using the op-atom muxer as it looks like your command is defaulting to op1a. Add -f mxf_opatom to your command line. ffmpeg -i /Users/krueger/lesspain/samples/software/compressor/ compressor4_1080_25p_apple_devices_best_compat_2s.m4v -vn -c:a pcm_s16le -f mxf_opatom ~/tmp/ffmpeg_pcm16_rewrap.mxf
[...]
Is this a conscious limitation of the muxer or am I missing a
command
On Thu, Nov 30, 2017 at 4:38 PM, Kieran O Leary <kieran.o.leary@gmail.com <javascript:;>> wrote: line
option?
It looks like it. The reasons why I suggested trying OP-Atom is that this seems to be performing a specific check for OP1a.
Which is wrong, btw. There is a spec for MXF_OP1a_AES3 to wrap the respective audio without a picture essence. I would guess MCA labels will have to be provided though, and also the audio samples would have to be formatted to AES, which ffmpeg afaik currently doesn't do.
Best, Erik
tanks a lot for the additional info! In my case, it's fine for my limited scope of application where I need to generate audio-only MXF files that just need to be decodable by ffmpeg for internal testing purposes, so I'm still OK with what it does now but I will keep that in mind for later when we might want to do more with it. Best, Robert
2017-12-01 14:03 GMT+01:00 Robert Krüger <krueger@lesspain.software>:
In my case, it's fine for my limited scope of application where I need to generate audio-only MXF files that just need to be decodable by ffmpeg for internal testing purposes
(Not knowing what your exact use-case is) You are using the only file format supported by FFmpeg that is to some degree experimental and the only one that has known issues (from the top of my head). Carl Eugen
participants (4)
-
Carl Eugen Hoyos -
Erik Dobberkau -
Kieran O Leary -
Robert Krüger