MXF格式文件详解

目录

 

一、什么是MXF文件?

二、如何播放MXF文件

三、文件结构

四、使用ffmbc生成MXF格式视频

项目主页:http://code.google.com/p/ffmbc/

1. 编码IMX

1.1.命令行格式

1.2.示例

2.编码XDCAMHD422

2.1.命令行格式

2.2.示例


一、什么是MXF文件?

MXF(全称Material Exchange Format)是一种视频/音频容器格式,该格式由SMPTE标准定义,解决了非专业格式出现的问题。目前主要是应用在专业的摄像机中,用来存储视频、音频和其他数据。松下HVX200、佳能XF300 / XF305、索尼XDCAM等许多专业的便携式摄像机都是使用MXF格式。MXF格式与大量的编辑工具(包括Windows Movie Maker/iMovie)、播放器和设备都不兼容。如果您想播放该格式的视频只能转换格式或使用支持该编码格式的播放器。将MXF格式转换为其他流行的视频格式,您可以更加容易地播放和编辑MXF文件,若您是要在安卓手机、iPhone、iPad、iPod等移动设备上使用,最好是将其转换为MP4格式。

MXF是松下、索尼、佳能等专业数码摄像机中常见的视频格式,但在计算机以及移动播放设备的支持率不高。本文将主要介绍什么是MXF文件,MXF文件结构以及使用工具编码生成MXF格式的视频。

二、如何播放MXF文件

MXF格式的普及率不高,甚至有很多人都不知道这种格式,所以支持该视频格式的播放器不多。能打开MXF文件的软件有:

三、文件结构

MXF文件包括三个主体部分:文件头、文件体和文件尾。

文件头提供文件的整体信息,包括用于解码文件中所有视音频数据的解码器列表等。文件体由存储在要素容器中的视音频数据组成,来自不同数据轨(如视频、音频和时码)的要素容器可能交错和分离地存储在文件体中。文件尾用以结束一个MXF文件,包括一些在产生文件头时还不确定的信息,如文件的视音频长度等,文件尾的信息在某些场景中常常被忽略。

MXF文件也可包含一个可选的索引表(Index Table),该索引表可用于将基于采样的索引(如时码)快速换算到对应的要素容器在<spanlang="en-us>">MXF文件中的偏移地址,以实现视音频的快速预览和定位。该索引表可分段存储,可位于基本数据段之前或之后,也可分插到基本数据段中间。

MXF文件的所有数据都采用Key-Length-Value(KLV)进行编码以获得格式的灵活性和可扩展性,KLV编码标准定义在SMPTE 336M中。实际上MXF文件就是若干连续KLV数据包的序列(除了可选的RUN-IN包)。

the key identifies the data, the length specifies the length of the data, and the value is the data itself 

  • Key:16字节的标识符。
  • Length:数据(Value域)长度。BER(basic encoding rules )编码方式,如83 00 00 88。

    它使用可变长的字节来表示非常宽的长度范围,该域总是按MSB(高字节优先)编码,如果第一个字节的bit7为0,那么低7位代表了0~127范围的长度,如果bit7为1,那么低7位代表长度域的字节个数。

  • Value:KLV单元中包含的数据

四、使用ffmbc生成MXF格式视频

ffmbc 全称是 FFMedia Broadcast,是个改版的FFmpeg,有如下功能:

创建可以导入Final Cut Pro, AVID Media Composer, Adobe Premiere中的文件
创建 XDCAM HD422 文件(.mov 或 .mxf)
创建 XDCAM IMX/D-10 文件(.mov 或 .mxf)
创建 AVID DNxHD 文件(.mov)
创建 DVCPROHD 文件(.mov 或 .mxf)
创建 ProRes 422 or 4444 文件(.mov)
转换 V210 文件
转换 HD YUV BT709 到 SD BT601 或者反过来
转换 AVCIntra 50 和AVCIntra  100
转换 MPEG-TS 文件
转换 AVCHD 文件
转换 ProRes 422 和 4444 文件
合并或分离音轨
创建 Quicktime 文件
从 HD 到 SD的颜色转换
 等等。。。

项目主页:http://code.google.com/p/ffmbc/

32位64位下载地址:

https://download.csdn.net/download/u014162133/13117338

1. 编码IMX

编码视频为 IMX 30/50 MXF 或 MOV

1.1.命令行格式

输出Imx30

ffmbc -i < file > -target imx30 < file.mxf | file.mov >

 输出Imx50

ffmbc -i < file > -target imx50 < file.mxf | file.mov >

注意:在MXF中,XDCAM要求至少为4声道。所以如果输入文件的音频流小于4声道,输出文件依然会被标记为4声道。

Target命令支持以下格式:"vcd", "svcd", "dvd", "dvcam", "dvcpro", "dvcpro50", "dvcprohd", "imx30", "imx50", "xdcamhd422"

1.2.示例

命令(转码为IMX30,MXF格式):

ffmbc -i test.flv -target imx30 test.mxf

转码前文件格式:

概要
完整名称                                     : E:\test\test.flv
文件格式                                     : Flash Video
文件大小                                     : 2.24 MiB
长度                                       : 30秒 0ms
平均混合码率                                   : 627 Kbps


视频
文件格式                                     : Sorenson Spark
编码设置ID                                   : 2
长度                                       : 30秒 0ms
码率                                       : 562 Kbps
画面宽度                                     : 320像素
画面高度                                     : 180像素
画面比例                                     : 16:9
帧率模式                                     : 恒定
帧率                                       : 25.000 fps
位深度                                      : 8位
bits/(pixel*frame)(数据密度)                 : 0.390
大小                                       : 2.01 MiB (90%)


音频
文件格式                                     : MPEG Audio
格式版本                                     : Version 1
格式简介                                     : Layer 3
模式                                       : Joint stereo
扩展模式                                     : MS Stereo
编码设置ID                                   : 2
编码设置ID/提示信息                              : MP3
长度                                       : 29秒 858ms
码率模式                                     : CBR
码率                                       : 32.0 Kbps
声道                                       : 2声道
采样率                                      : 44.1 KHz
压缩模式                                     : 有损压缩
大小                                       : 117 KiB (5%)
编码函数库                                    : LAME3.98

转码后MXF文件格式(IMX30):

概要
完整名称                                     : E:\test\test.mxf
文件格式                                     : MXF
Format_Commercial_IfAny                  : IMX 30
格式简介                                     : OP-1a
格式设置                                     : Closed / Complete
文件大小                                     : 152 MiB
长度                                       : 30秒 0ms
平均混合码率                                   : 42.6 Mbps
编码日期                                     : 2014-07-23 02:56:14.000
编码程序                                     : FFmbc OP1a Muxer 53.6.0
编码函数库                                    : FFmbc OP1a Muxer 53.6.0


视频
ID                                       : 2
文件格式                                     : MPEG Video
Format_Commercial_IfAny                  : IMX 30
格式版本                                     : Version 2
格式简介                                     : 4:2:2@Main
格式设置, BVOP                               : 否
格式设置, Matrix                             : 默认
格式设置, GOP                                : N=1
Format_Settings_Wrapping                 : Frame (D-10)
编码设置ID                                   : 0D01030102010501-0401020201020105
长度                                       : 30秒 0ms
码率                                       : 30.3 Mbps
最大码率                                     : 30.0 Mbps
画面宽度                                     : 720像素
画面高度                                     : 576像素
原始高度                                     : 608像素
画面比例                                     : 16:9
帧率                                       : 25.000 fps
标准                                       : Component
色彩空间                                     : YUV
色度抽样                                     : 4:2:2
位深度                                      : 8位
扫描方式                                     : 隔行扫描
扫描顺序                                     : 奇数场(前场TFF)优先
压缩模式                                     : 有损压缩
bits/(pixel*frame)(数据密度)                 : 2.923
TimeCode_FirstFrame                      : 00:00:00:00
TimeCode_Source                          : Group of pictures header
大小                                       : 108 MiB (71%)
颜色初选                                     : BT.601 PAL
传输特质                                     : BT.709
矩阵系数                                     : BT.601


音频
ID                                       : 3
文件格式                                     : PCM
格式设置, Endianness                         : Little
Format_Settings_Wrapping                 : Frame (D-10)
编码设置ID                                   : 0D01030102010501
长度                                       : 30秒 0ms
码率模式                                     : CBR
码率                                       : 12.3 Mbps
声道                                       : 4声道
采样率                                      : 48.0 KHz
位深度                                      : 16位
大小                                       : 43.9 MiB (29%)


其它 #1
ID                                       : 1
Type                                     : Time code
文件格式                                     : MXF TC
TimeCode_FirstFrame                      : 00:00:00:00
TimeCode_Settings                        : Striped


其它 #2
Type                                     : Time code
文件格式                                     : SMPTE TC
混合模式                                     : SDTI
TimeCode_FirstFrame                      : 00:00:00:00

2.编码XDCAMHD422

将视频编译为 XDCAMHD422 MXF或MOV
隔行编码:-target 前面添加-tff 或 -bff

ffmbc -i < file > -target xdcamhd422 < file.mxf >

注意:XDCAM要求至少2个单声道。使用-newaudio 和 -map_audio_channel.

举个例子,如下命令将一个立体声的视频转换为两个单声道的视频:

ffmbc -i < file > -target xdcamhd422 -an < file.mxf > -acodec pcm_s24le -ar 48000 -newaudio -acodec pcm_s24le -ar 48000 -newaudio -map_audio_channel 0:1:0:0:1:0 -map_audio_channel 0:1:1:0:2:0

2.1.命令行格式

ffmbc -i < file > -target xdcamhd422 -vtag < tag > < file.mov >

tag有如下选项:
* "xd54" XDCAM HD422 720p24 CBR
* "xd59" XDCAM HD422 720p60 CBR
* "xd5a" XDCAM HD422 720p50 CBR
* "xd5b" XDCAM HD422 1080i60 CBR
* "xd5c" XDCAM HD422 1080i50 CBR
* "xd5d" XDCAM HD422 1080p24 CBR
* "xd5e" XDCAM HD422 1080p25 CBR
* "xd5f" XDCAM HD422 1080p30 CBR

2.2.示例

命令

ffmbc -i test.flv -s 1280x720 -ac 1 -target xdcamhd422 test_xdcamhd422.mxf

注:
1.只支持单声道,如果输入文件为多声道,则会出现如下错误提示:

Error, target xdcamhd422 only supports mono audio tracks

可以通过添加-ac 1,将输入文件转换为单声道。
2.只支持输入为1920x1080或者1280x720格式,其他分辨率不支持。如果输入文件为其他分辨率,则会出现如下错误提示:

Error, target xdcamhd422 only supports 1920x1080 or 1280x720 resolutions

可以通过分辨率变换,将输入文件分辨率转换为1920x1080或者1280x720。

转码前文件格式:

概要
完整名称                                     : E:\test\test.flv
文件格式                                     : Flash Video
文件大小                                     : 2.24 MiB
长度                                       : 30秒 0ms
平均混合码率                                   : 627 Kbps


视频
文件格式                                     : Sorenson Spark
编码设置ID                                   : 2
长度                                       : 30秒 0ms
码率                                       : 562 Kbps
画面宽度                                     : 320像素
画面高度                                     : 180像素
画面比例                                     : 16:9
帧率模式                                     : 恒定
帧率                                       : 25.000 fps
位深度                                      : 8位
bits/(pixel*frame)(数据密度)                 : 0.390
大小                                       : 2.01 MiB (90%)


音频
文件格式                                     : MPEG Audio
格式版本                                     : Version 1
格式简介                                     : Layer 3
模式                                       : Joint stereo
扩展模式                                     : MS Stereo
编码设置ID                                   : 2
编码设置ID/提示信息                              : MP3
长度                                       : 29秒 858ms
码率模式                                     : CBR
码率                                       : 32.0 Kbps
声道                                       : 2声道
采样率                                      : 44.1 KHz
压缩模式                                     : 有损压缩
大小                                       : 117 KiB (5%)
编码函数库                                    : LAME3.98

转码后文件格式:

概要
完整名称                                     : E:\test\test_xdcamhd422.mxf
文件格式                                     : MXF
Format_Commercial_IfAny                  : XDCAM HD422
格式简介                                     : OP-1a
格式设置                                     : Closed / Complete
文件大小                                     : 182 MiB
长度                                       : 30秒 0ms
平均混合码率                                   : 51.0 Mbps
编码日期                                     : 2014-07-23 03:23:12.000
编码程序                                     : FFmbc OP1a Muxer 53.6.0
编码函数库                                    : FFmbc OP1a Muxer 53.6.0


视频
ID                                       : 2
文件格式                                     : MPEG Video
Format_Commercial_IfAny                  : XDCAM HD422
格式版本                                     : Version 2
格式简介                                     : 4:2:2@High
格式设置, BVOP                               : 是
格式设置, Matrix                             : 默认
格式设置, GOP                                : M=3, N=12
Format_Settings_Wrapping                 : Frame
编码设置ID                                   : 0D01030102046001-0401020201040300
长度                                       : 30秒 0ms
码率                                       : 50.0 Mbps
画面宽度                                     : 1 280像素
画面高度                                     : 720像素
画面比例                                     : 16:9
帧率                                       : 25.000 fps
标准                                       : Component
色彩空间                                     : YUV
色度抽样                                     : 4:2:2
位深度                                      : 8位
扫描方式                                     : 逐行扫描
压缩模式                                     : 有损压缩
bits/(pixel*frame)(数据密度)                 : 2.170
TimeCode_FirstFrame                      : 00:00:00:00
TimeCode_Source                          : Group of pictures header
大小                                       : 179 MiB (98%)
颜色初选                                     : BT.709
传输特质                                     : BT.709
矩阵系数                                     : BT.709


音频
ID                                       : 3
文件格式                                     : PCM
格式设置, Endianness                         : Little
Format_Settings_Wrapping                 : Frame (AES)
编码设置ID                                   : 0D01030102060300
长度                                       : 30秒 0ms
码率模式                                     : CBR
码率                                       : 768 Kbps
声道                                       : 1声道
采样率                                      : 48.0 KHz
位深度                                      : 16位
大小                                       : 2.75 MiB (2%)


其它 #1
ID                                       : 1
Type                                     : Time code
文件格式                                     : MXF TC
TimeCode_FirstFrame                      : 00:00:00:00
TimeCode_Settings                        : Striped


其它 #2
Type                                     : Time code
文件格式                                     : SMPTE TC
混合模式                                     : SDTI
TimeCode_FirstFrame                      : 00:00:00:00

参考文章:

https://code.google.com/archive/p/ffmbc/

https://www.thinbug.com/q/19263601

https://blog.csdn.net/leixiaohua1020/article/details/19020203

 

Pavtube MXF MultiMixer 1.2 中文注册版,全面的工具集 MXF 格式转换器,MXF 格式多音轨/通道保护者和混频器。它能够导入和导出 MXF 格式的视频文件,多音轨/频道以及混合多音轨/频道合并为一个。它还有助于转换的MXF视频文件通过iDevices支持的视频格式,Android设备,Windows设备,高清媒体播放器,游戏机,以及输出格式自由编辑在诸如的Avid Media Composer的,索尼拉斯维加斯和Adobe premiere编辑程序,等等。 内置的视频编辑器提供丰富的编辑功能让您通过调整得到源MXF格式的视频短片,切断影响视觉上的享受,通过裁剪,插入字幕的黑网吧,加入特殊的视频效果,等等。 Pavtube MXF MultiMixer 主要特点: 一个全功能强大的转换工具 1,输出可观的视频格式 Pavtube MXF多仓能够将MXF格式视频格式,如MKV,MP4,AVI,MPEG,WMV,FLV,SWF,F4V,MOV,VOB等。 在多台设备2免费播放 由于能够输出各种视频格式,转换后的MXF格式的视频都可以用iDevices,Android设备,Windows设备,高清媒体播放器,游戏机等设备的支持 3,转码MXF编辑程序 这个程序可以帮助转码的MXF为可编辑的格式编辑软件(如:AVID媒体作曲家时,Adobe Premiere,索尼拉斯维加斯)。 维护和混合MXF格式多音轨/频道 1,多轨道保存 进口多轨MXF格式和输出的MKV/ MP4/ MOV格式,多音轨/频道广播,进一步的编辑和播放。 2,混合MXF格式多音轨/频道 可以混合使用MXF多音轨/声道音频转换为一个或出口多音轨格式的视频前,保持多音轨的信息。 体验神奇的3D效果 1,2D到3D转换 2D转换为MXF格式的3D视频格式MKV/ MP4/ MOV/ WMV/ AVI侧面并排,顶底,或浮雕3D效果。 2,3D到3D转换 享受3D MXF格式的视频文件,与真正的影院娱乐的家庭影院。 调整设置个性化的MXF 1,自定义MXF格式的视频 调整参数,如视频大小,比特率和帧速率的MXF格式的视频文件,以获得更好的视觉和音频效果 2,拆分MXF格式的视频 分割的MXF视频转换成按剪辑数量,持续时间和文件大小的几个片段。 Pavtube MXF MultiMixer截图:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值