如何使用FFMPEG将自定义元数据添加到MXF ?



我正在尝试将自定义元数据添加到FFMPEG中的MXF。我可以获得要执行的语法,然后在命令输出期间列出我的元数据,但是当我稍后在文件上运行FFMPEG以检查元数据不存在时。只有material_package_name会被保留。这在MXF中是不可能的吗?

命令:

ffmpeg -i Test.mp4 -vf scale=1920:1080 -an -metadata project="TEST PROJECT" -metadata comment="Test Comment" -metadata artist="Test" -metadata material_package_name="TEST VID CLIP" -b:v 36M -f mxf_opatom "TEST_VID_CLIP.mxf"

命令输出:

Output #0, mxf_opatom, to 'TEST_VID_CLIP.mxf':
Metadata:
major_brand     : mp42
minor_version   : 0
compatible_brands: mp42mp41
project         : TEST PROJECT
comment         : Test Comment
artist          : Test
material_package_name: TEST VID CLIP
encoder         : Lavf58.76.100
Stream #0:0(eng): Video: dnxhd (DNXHD), yuv422p(tv, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 36000 kb/s, 24 fps, 24 tbn (default)
Metadata:
creation_time   : 2021-07-01T17:19:54.000000Z
handler_name    : ?Mainconcept Video Media Handler
vendor_id       : [0][0][0][0]
encoder         : Lavc58.134.100 dnxhd

检查文件的输出:

ffmpeg -i TEST_VID_CLIP.mxf 
Input #0, mxf, from 'TEST_VID_CLIP.mxf':
Metadata:
operational_pattern_ul: 060e2b34.04010102.0d010201.10030000
uid             : adab4424-2f25-4dc7-92ff-29bd000c0000
generation_uid  : adab4424-2f25-4dc7-92ff-29bd000c0001
company_name    : FFmpeg
product_name    : OPAtom Muxer
product_version_num: 58.76.100.0.0
product_version : 58.76.100
application_platform: Lavf (darwin)
product_uid     : adab4424-2f25-4dc7-92ff-29bd000c0002
toolkit_version_num: 58.76.100.0.0
material_package_umid: 0x060A2B340101010501010D00136428C052947134A46428C00052947134A46400
material_package_name: TEST VID CLIP
timecode        : 00:00:00:00
Duration: 00:01:05.71, start: 0.000000, bitrate: 36176 kb/s
Stream #0:0: Video: dnxhd (DNXHD), yuv422p(tv, bt709/unknown/unknown, progressive), 1920x1080, SAR 1:1 DAR 16:9, 24 fps, 24 tbr, 24 tbn, 24 tbc
Metadata:
file_package_umid: 0x060A2B340101010501010D00136428C052947134A46428C00052947134A46401
At least one output file must be specified

解决方法是使用comment_前缀:

ffmpeg -i Test.mp4 -vf scale=1920:1080 -an -metadata comment_project="TEST PROJECT" -metadata comment_="Test Comment" -metadata comment_artist="Artist" -metadata material_package_name="TEST VID CLIP" -b:v 36M -f mxf_opatom "TEST_VID_CLIP.mxf"
  • 至少要求FFmpeg 4.2.
  • IRT D-10不允许用户评论,所以这将不适用于mxf_d10,但它将适用于mxf和mxf_opatom。

最新更新