[FFmpeg-trac] #10161(undetermined:new): MXF/FFV1 stream copy transmux discards content
FFmpeg
trac at avcodec.org
Mon Jan 30 11:42:33 EET 2023
#10161: MXF/FFV1 stream copy transmux discards content
-------------------------------------+-------------------------------------
Reporter: Jérôme | Type: defect
Martinez |
Status: new | Priority: normal
Component: | Version:
undetermined | unspecified
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Using a MXF/FFV1 file e.g. from
https://www.digitizationguidelines.gov/guidelines/MXF_app_sampleFiles.html#2022
, a conversion to any format (also again FFV1) is fine (frames are
demuxed, decoded, encoded, muxed) but a pure demux with stream copy
silently discards all frames, the output has the FFV1 header but 0 frame.
Tested with Git 2023-01-29:
{{{
PS > .\ffmpeg.exe -i
RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517.mxf
RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517.avi
ffmpeg version N-109716-g757218564d-20230129 Copyright (c) 2000-2023 the
FFmpeg developers
built with gcc 12.2.0 (crosstool-NG 1.25.0.90_cf9beb1)
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static
--pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64
--target-os=mingw32 --enable-gpl --enable-version3 --disable-debug
--disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2
--enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp
--enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl
--disable-libpulse --enable-libvmaf --disable-libxcb --disable-xlib
--enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth
--enable-chromaprint --enable-libdav1d --enable-libdavs2 --disable-libfdk-
aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme
--enable-libkvazaar --enable-libass --enable-libbluray --enable-libjxl
--enable-libmp3lame --enable-libopus --enable-librist --enable-libssh
--enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2
--disable-libmfx --enable-libvpl --enable-openal --enable-libopencore-
amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg
--enable-libopenmpt --enable-librav1e --enable-librubberband --enable-
schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1
--enable-libtwolame --enable-libuavs3d --disable-libdrm --disable-vaapi
--enable-libvidstab --enable-vulkan --enable-libshaderc --enable-
libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-
libxvid --enable-libzimg --enable-libzvbi --extra-
cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread
--extra-ldexeflags= --extra-libs=-lgomp --extra-version=20230129
libavutil 57. 44.100 / 57. 44.100
libavcodec 59. 59.100 / 59. 59.100
libavformat 59. 36.100 / 59. 36.100
libavdevice 59. 8.101 / 59. 8.101
libavfilter 8. 55.100 / 8. 55.100
libswscale 6. 8.112 / 6. 8.112
libswresample 4. 9.100 / 4. 9.100
libpostproc 56. 7.100 / 56. 7.100
[mxf @ 00000249c1caea00] could not resolve file descriptor strong ref
Last message repeated 17 times
Guessed Channel Layout for Input Stream #0.5 : mono
Input #0, mxf, from
'RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517.mxf':
Metadata:
operational_pattern_ul: 060e2b34.04010101.0d010201.01010900
uid : 0c0fd1ba-b4fa-49f2-a488-6a844a00df0d
product_uid : b658a3f9-280d-463c-9c12-fd6dac6e1213
company_name : Metaglue Corporation
product_name : MXFixer File Wrapper
product_version : V5.2.4(22516)
product_version_num: 5.2.4.22516.1
toolkit_version_num: 2.65.4.22516.1
application_platform: MXFplus(Windows 10 ( build 19044 ) (64-bit))
(with Metaglue Extensions)(BUF) built May 16 2022 11:47:21
modification_date: 2022-05-17T19:43:45.204000Z
generation_uid : b1297cac-eab2-4c76-a0ed-7efd583a3a6a
material_package_umid:
0x060A2B340101010501010D2013000000256C81631F7E4229A6E5AE305A0EB56C
material_package_name: MXFWrap Clip
timecode : 01:00:00:00
Duration: 00:00:19.96, start: 0.000000, bitrate: 312497 kb/s
Stream #0:0: Video: ffv1, yuv422p(bottom first), 1920x1080, SAR 1:1 DAR
16:9, 25 tbr, 25 tbn
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : V1
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream #0:1: Data: none
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : D1
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
data_type : vbi_vanc_smpte_436M
Stream #0:2(eng): Audio: pcm_s24le, 48000 Hz, stereo, s32 (24 bit), 2304
kb/s
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : A1
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream #0:3(spa): Audio: pcm_s24le, 48000 Hz, stereo, s32 (24 bit), 2304
kb/s
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : A2
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream #0:4: Audio: pcm_s24le, 48000 Hz, stereo, s32 (24 bit), 2304 kb/s
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : A3
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream #0:5: Audio: pcm_s16le, 48000 Hz, 1 channels, s16, 768 kb/s
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : A4
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream mapping:
Stream #0:0 -> #0:0 (ffv1 (native) -> mpeg4 (native))
Stream #0:2 -> #0:1 (pcm_s24le (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
Output #0, avi, to
'RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517.avi':
Metadata:
operational_pattern_ul: 060e2b34.04010101.0d010201.01010900
uid : 0c0fd1ba-b4fa-49f2-a488-6a844a00df0d
product_uid : b658a3f9-280d-463c-9c12-fd6dac6e1213
ISMP : 01:00:00:00
material_package_name: MXFWrap Clip
material_package_umid:
0x060A2B340101010501010D2013000000256C81631F7E4229A6E5AE305A0EB56C
product_version_num: 5.2.4.22516.1
toolkit_version_num: 2.65.4.22516.1
application_platform: MXFplus(Windows 10 ( build 19044 ) (64-bit))
(with Metaglue Extensions)(BUF) built May 16 2022 11:47:21
modification_date: 2022-05-17T19:43:45.204000Z
generation_uid : b1297cac-eab2-4c76-a0ed-7efd583a3a6a
ISFT : Lavf59.36.100
Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p(tv, progressive),
1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 25 fps, 25 tbn
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : V1
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
encoder : Lavc59.59.100 mpeg4
Side data:
cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
Stream #0:1(eng): Audio: mp3 (U[0][0][0] / 0x0055), 48000 Hz, stereo,
s32p
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : A1
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
encoder : Lavc59.59.100 libmp3lame
frame= 499 fps= 59 q=31.0 Lsize= 5431kB time=00:00:19.94
bitrate=2230.5kbits/s speed=2.37x
video:5077kB audio:312kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: 0.765648%
PS > .\ffmpeg.exe -i
RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517.mxf -c copy
RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517_c_copy.avi
ffmpeg version N-109716-g757218564d-20230129 Copyright (c) 2000-2023 the
FFmpeg developers
built with gcc 12.2.0 (crosstool-NG 1.25.0.90_cf9beb1)
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static
--pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64
--target-os=mingw32 --enable-gpl --enable-version3 --disable-debug
--disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2
--enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp
--enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl
--disable-libpulse --enable-libvmaf --disable-libxcb --disable-xlib
--enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth
--enable-chromaprint --enable-libdav1d --enable-libdavs2 --disable-libfdk-
aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme
--enable-libkvazaar --enable-libass --enable-libbluray --enable-libjxl
--enable-libmp3lame --enable-libopus --enable-librist --enable-libssh
--enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2
--disable-libmfx --enable-libvpl --enable-openal --enable-libopencore-
amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg
--enable-libopenmpt --enable-librav1e --enable-librubberband --enable-
schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1
--enable-libtwolame --enable-libuavs3d --disable-libdrm --disable-vaapi
--enable-libvidstab --enable-vulkan --enable-libshaderc --enable-
libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-
libxvid --enable-libzimg --enable-libzvbi --extra-
cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread
--extra-ldexeflags= --extra-libs=-lgomp --extra-version=20230129
libavutil 57. 44.100 / 57. 44.100
libavcodec 59. 59.100 / 59. 59.100
libavformat 59. 36.100 / 59. 36.100
libavdevice 59. 8.101 / 59. 8.101
libavfilter 8. 55.100 / 8. 55.100
libswscale 6. 8.112 / 6. 8.112
libswresample 4. 9.100 / 4. 9.100
libpostproc 56. 7.100 / 56. 7.100
[mxf @ 0000028800a7eb00] could not resolve file descriptor strong ref
Last message repeated 17 times
Guessed Channel Layout for Input Stream #0.5 : mono
Input #0, mxf, from
'RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517.mxf':
Metadata:
operational_pattern_ul: 060e2b34.04010101.0d010201.01010900
uid : 0c0fd1ba-b4fa-49f2-a488-6a844a00df0d
product_uid : b658a3f9-280d-463c-9c12-fd6dac6e1213
company_name : Metaglue Corporation
product_name : MXFixer File Wrapper
product_version : V5.2.4(22516)
product_version_num: 5.2.4.22516.1
toolkit_version_num: 2.65.4.22516.1
application_platform: MXFplus(Windows 10 ( build 19044 ) (64-bit))
(with Metaglue Extensions)(BUF) built May 16 2022 11:47:21
modification_date: 2022-05-17T19:43:45.204000Z
generation_uid : b1297cac-eab2-4c76-a0ed-7efd583a3a6a
material_package_umid:
0x060A2B340101010501010D2013000000256C81631F7E4229A6E5AE305A0EB56C
material_package_name: MXFWrap Clip
timecode : 01:00:00:00
Duration: 00:00:19.96, start: 0.000000, bitrate: 312497 kb/s
Stream #0:0: Video: ffv1, yuv422p(bottom first), 1920x1080, SAR 1:1 DAR
16:9, 25 tbr, 25 tbn
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : V1
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream #0:1: Data: none
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : D1
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
data_type : vbi_vanc_smpte_436M
Stream #0:2(eng): Audio: pcm_s24le, 48000 Hz, stereo, s32 (24 bit), 2304
kb/s
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : A1
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream #0:3(spa): Audio: pcm_s24le, 48000 Hz, stereo, s32 (24 bit), 2304
kb/s
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : A2
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream #0:4: Audio: pcm_s24le, 48000 Hz, stereo, s32 (24 bit), 2304 kb/s
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : A3
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream #0:5: Audio: pcm_s16le, 48000 Hz, 1 channels, s16, 768 kb/s
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : A4
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Output #0, avi, to
'RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517_c_copy.avi':
Metadata:
operational_pattern_ul: 060e2b34.04010101.0d010201.01010900
uid : 0c0fd1ba-b4fa-49f2-a488-6a844a00df0d
product_uid : b658a3f9-280d-463c-9c12-fd6dac6e1213
ISMP : 01:00:00:00
material_package_name: MXFWrap Clip
material_package_umid:
0x060A2B340101010501010D2013000000256C81631F7E4229A6E5AE305A0EB56C
product_version_num: 5.2.4.22516.1
toolkit_version_num: 2.65.4.22516.1
application_platform: MXFplus(Windows 10 ( build 19044 ) (64-bit))
(with Metaglue Extensions)(BUF) built May 16 2022 11:47:21
modification_date: 2022-05-17T19:43:45.204000Z
generation_uid : b1297cac-eab2-4c76-a0ed-7efd583a3a6a
ISFT : Lavf59.36.100
Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), yuv422p(bottom first),
1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 25 tbr, 25 tbn
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : V1
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream #0:1(eng): Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz,
stereo, s32 (24 bit), 2304 kb/s
Metadata:
file_package_umid:
0x060A2B340101010501010D20130000002E0B39D1937148F884B4BAD10C1E1663
file_package_name: File Package: SMPTE RPxxx frame wrapping of FFV1
video essence
track_name : A1
reel_umid :
0x060A2B340101010501010D2013000000A7C8CFC27C64497D8FFA2CB623DF3D6F
timecode : 01:00:00:00
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:2 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame= 0 fps=0.0 q=-1.0 Lsize= 5635kB time=00:00:19.92
bitrate=2317.6kbits/s speed=48.7x
video:0kB audio:5614kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: 0.386781%
PS > dir RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517*
Répertoire : C:\Users\jerom\Downloads\RDD48_FFV1_MXF
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 30/01/2023 10:16 5560844
RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517.avi
-a---- 17/05/2022 22:25 779681924
RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517.mxf
-a---- 30/01/2023 10:17 350112
RDD48_LakeJulianP1060231_50i_1920_MKV_FFV1_422_8_ag_20220517_c_copy.avi
}}}
The last file should have a size of 780 MB (copy of the FFV1 frames).
behavior is a bit weird:
- using ` -c:a copy` is fine (video frames are are transcoded; audio
frames are transmuxed)
- using ` -c:v copy` discards video frames and transcode audio (audio
transcode is expected)
- using ` -c copy` discards video frames and transcode audio (audio
transcode is **not** expected)
So audio transmux behavior is also impacted, this is not the case with
e.g. https://samples.ffmpeg.org/MXF/Quantel%20widescreen%20test.mxf (using
` -c copy` does transmux for both video and audio)
--
Ticket URL: <https://trac.ffmpeg.org/ticket/10161>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list