Opened 7 years ago
Last modified 6 years ago
#6693 new defect
MXF (AVC-I or DNXH) file created by ffmpeg could not be recognized by Davinci Resolve 14
Reported by: | Patrick Dung | Owned by: | |
---|---|---|---|
Priority: | minor | Component: | avformat |
Version: | git-master | Keywords: | mxf |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
Summary of the bug:
FFmpeg produce AVC-Intra MXF that could not be recognized in Davinci Resolve 14.
The file produced by ffmbc could be recognized in Resolve 14.
How to reproduce:
ffmpeg -i P1160144.MOV -vb 100M -vcodec libx264 -an -pix_fmt yuv422p10le -x264-params avcintra-class=100 -intra avc-intra-ffmpeg.mxf
ffmbc -i P1160144.MOV -vb 100M -vcodec libx264 -an -pix_fmt yuv422p10le -target avcintra100 -intra avc-intra-ffmbc.mxf
Note it is the same case for DNXHD MXF.
ffmpeg version N-87359-g67da268 Copyright (c) 2000-2017 the FFmpeg developers
built with clang version 3.9.1 (tags/RELEASE_391/final)
Change History (10)
comment:1 by , 7 years ago
Component: | ffmpeg → avformat |
---|---|
Keywords: | mxf added |
Priority: | normal → minor |
Version: | unspecified → git-master |
follow-up: 3 comment:2 by , 7 years ago
Using MXFDump, I validated an MXF file created with ffmpeg and it reports footer partition is not defined at offset 0x1200, a file created with ffmbc does not fail for this validation.
D:\mxflib>MXFDump.exe --mxf-validate avc-i_1080i_2997_ffmpeg_an.mxf
MXFDump : KLV validation - passed.
MXFDump : local set validation - passed.
MXFDump : Warning : FooterPartition not defined - expected 0xd8e000, (following Body key at offset 0x1200).
MXFDump : MXF validation - passed.
MXFDump : Encountered 1 warnings.
avc-i_1080i_2997_ffmpeg_an.mxf:
[ K = Body ( 0000000000001200 )
06.0e.2b.34.02.05.01.01.0d.01.02.01.01.03.04.00, L = 104 (68), LL = 1 ]
Major Version = 0001
Minor Version = 0002
KAGSize = 00000200
ThisPartition = 0000000000001200
PreviousPartition = 0000000000000000
FooterPartition = 0000000000000000
avci_1080i_2997-ffmbc_an.mxf:
[ K = Body ( 0000000000001200 )
06.0e.2b.34.02.05.01.01.0d.01.02.01.01.03.04.00, L = 104 (68), LL = 4 ]
Major Version = 0001
Minor Version = 0002
KAGSize = 00000200
ThisPartition = 0000000000001200
PreviousPartition = 0000000000000000
FooterPartition = 0000000000d8e000
follow-up: 4 comment:3 by , 7 years ago
Replying to chrisj:
Using MXFDump, I validated an MXF file created with ffmpeg and it reports footer partition is not defined at offset 0x1200, a file created with ffmbc does not fail for this validation.
Can you confirm that this is the reason Davinci Resolve fails to open the file created with FFmpeg?
follow-up: 5 comment:4 by , 7 years ago
Replying to cehoyos:
Can you confirm that this is the reason Davinci Resolve fails to open the file created with FFmpeg?
I tried to get clarification, but no luck so far, a user suggested to use bmxlib to wrap MXF instead of FFmpeg.
I also noticed in the Davinci error logs, the application was erroring on CDCIEssenceDescriptor, VerticalSubsampling which is missing from the FFmpeg MXF file, so that could be the true issue. That metadata is present in MXF files exported by FCPX & Adobe Media Encoder which import into Davinci.
comment:5 by , 7 years ago
Replying to chrisj:
Replying to cehoyos:
Can you confirm that this is the reason Davinci Resolve fails to open the file created with FFmpeg?
I tried to get clarification
This ticket is about an incompatibility with Davinci Resolve. You claim that the reason for this incompatibility is a missing footer partition (you would have opened a new ticket if you just wanted to report that a validation tool reports a missing footer partition in mxf files created with FFmpeg). To verify, you could use a hex editor to edit an mxf file working with Davinci Resolve so that it reports the same footer partition issue with the validation tool and test if it still works with Davinci Resolve.
comment:7 by , 6 years ago
Replying to cehoyos:
Is this still reproducible?
I did a brief test with a recent ffmpeg-git (this week).
Davinci 14 can import the mxf file generated by ffmpeg, but the playback is blank in Davinci resolve.
Feel free to find out what the issue is and explain it here, do not post code here or on the development mailing list that was written for ffmbc!