CN100499823C - 实现mxf视频文件与pcm音频文件同步播放的方法 - Google Patents

实现mxf视频文件与pcm音频文件同步播放的方法 Download PDF

Info

Publication number
CN100499823C
CN100499823C CN 200610011326 CN200610011326A CN100499823C CN 100499823 C CN100499823 C CN 100499823C CN 200610011326 CN200610011326 CN 200610011326 CN 200610011326 A CN200610011326 A CN 200610011326A CN 100499823 C CN100499823 C CN 100499823C
Authority
CN
China
Prior art keywords
video
audio
file
data
decoder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN 200610011326
Other languages
English (en)
Other versions
CN101022561A (zh
Inventor
孙鹏
曾学文
韩洪波
武蓓
胡建良
陈君
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Acoustics CAS
Original Assignee
Institute of Acoustics CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Acoustics CAS filed Critical Institute of Acoustics CAS
Priority to CN 200610011326 priority Critical patent/CN100499823C/zh
Publication of CN101022561A publication Critical patent/CN101022561A/zh
Application granted granted Critical
Publication of CN100499823C publication Critical patent/CN100499823C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了一种实现MXF视频文件与PCM音频文件同步播放的方法,包括:1)计算视频与音频文件的大小,得到两者大小的比例;2)按照比例向解码器提供视频和音频数据,检查文件是否播放完毕,完毕进入8),否则继续执行;3)检测视频数据是否有图组头信息,如果有,进入4),否则,执行2);4)解析图组头,计算视频相对播放时间;5)计算音频数据的相对播放时间;6)根据视频相对播放时间和音频相对播放时间的差值,判断是否同步,若不同步,执行7),否则,跳到2);7)调整解码器的数据输入,使音视频数据播放保持同步,然后跳到2);8)释放资源,停止播放。本发明方便可靠的实现视频文件与音频文件的同步播放。

Description

实现MXF视频文件与PCM音频文件同步播放的方法
技术领域
本发明涉及数字电影播放系统,特别涉及采用MXF视频文件格式及PCM音频文件格式的数字电影播放系统。
背景技术
随着计算机技术的不断发展,各行各业迎来了数字化的进程。随着各种音视频编码技术的不断成熟,数字电影的产生成为必然。数字电影摆脱了对胶片介质的依赖,使电影的放映与普及更加灵活方便。信息安全科学的飞速发展,也为数字电影版权保护等提供了保证。目前,我国正准备建立庞大的数字电影放映院线。
MXF(Material Exchange Format,素材交换格式)是专业MPEG论坛(Pro-MPEGForum)制定和推广的一个开放的文件格式,目标是解决节目制作系统中不同环节的设备间视/音频节目素材和相关数据及其元数据的交换。MXF是音/视频元数据的打包结构,文件本体可以是多种视/音频格式,包括元数据。MXF对于任何素材和节目单元(数字音/视频、附加数据或元数据)的传输,不必考虑其格式和内容,将这些节目单元作为一个实体,简单地放入文件包内,通过网络传输,并且可以通过文件名检索源文件。MXF符合SMPTE 336M KLV数据编码协议,为目前电影行业所广泛使用。
PCM(Pulse Code Modulation)音频文件是原始的音频采样数据流构成的文件。它包含的音频数据未经任何压缩,为此不存在任何专利、版权问题,也是PC的一种标准音频格式。
鉴于MXF文件的广泛性及PCM文件的无版权特点,国家广电总局针对数字电影的规范指导性文件规定:数字电影的视频文件采用MXF文件格式,其内部打包的视频数据采用MPEG-2(ISO13818)编码的基本流(ES),音频则使用PCM文件,内部数据为无压缩的PCM数据流。
MXF文件中的ES视频流与PCM文件中的PCM音频流均不含可直接用于同步的时戳信息,这就给音视频文件分别播放时的同步问题造成困难。
发明内容
为了克服MXF文件中的ES视频流与PCM文件中的PCM音频流不包含时戳信息,无法同步音视频播放的问题,本发明提供了一种能够实现MXF视频文件与PCM音频文件同步播放的方法。
为了实现上述目的,本发明提供一种实现MXF视频文件与PCM音频文件同步播放的方法,包括:
1)、计算MXF视频文件与PCM音频文件的大小,得到视频文件大小和音频文件大小的比例Tv:a
2)、按照Tv:a:1的比例向音视频解码器提供视频数据和音频数据,在每次向视频解码器输送数据时,检查文件是否播放完毕,如果文件播放完毕,则释放资源,停止播放,如果文件未播放完毕,则继续执行;
3)、检测当前送入解码器的视频数据是否含有图组头信息,如果有,则进入步骤4)检测音视频播放是否同步,如果没有图组头信息,重新执行步骤2);
4)、解析送入解码器的视频数据的图组头,由当前的图组头的信息,得到已经送入解码器的视频帧的总数量,根据视频帧的总数量计算视频相对播放时间Tvideo
5)、利用当前已经送入音频解码器的音频数据的比特数,计算得到当前已经送入解码器的音频数据的相对播放时间Taudio
6)、求步骤4)得到的视频相对播放时间Tvideo和步骤5)得到的音频相对播放时间Taudio的差值,判断音视频是否同步,若两者差值的绝对值ΔT=|Tvideo-Taudio|超过了阀值,则认为音视频不同步,由步骤7)实现音视频的同步调节,若音视频同步,跳转到步骤2);
7)、调整解码器的数据输入,加快落后一方的数据输入速度,直至音视频数据的播放保持同步,然后跳转到步骤2)。
上述技术方案中,在所述的步骤4)中,所述的视频相对播放时间Tvideo用已读取的帧的数量除以视频播放时的解码速率得到,所述的视频播放时的解码速率由视频文件的视频序列头中解析得到,所述的已读取的帧的数量通过解析图组头中的time_code的值得到。
上述技术方案中,在所述的步骤5)中,所述的音频数据的相对播放时间Taudio根据PCM音频文件的采样率Fpcm、量化阶数B、当前调度给音频解码器的PCM数据量Caudio以及音频文件的声道数量Nchanncl得到:
Taudio=8×Caudio÷(Nchannel×B×Fpcm)。
上述技术方案中,在所述的步骤6)中,所述的阀值为0.08秒。
上述技术方案中,在所述的步骤7)中,在调节音视频数据的输入速度时,为了减少调节的频率,可以进行适当的超调,如果视频播放速度超过了音频播放速度,则增加音频数据的输入速度,直至音频输入速度超前视频输入速度一定值,如果音频播放速度超过了视频播放速度,则增加视频数据的输入速度,直至视频输入速度超前音频输入速度一定值,所述值取0.06秒。
本发明针对数字电影所采用的MXF视频文件与PCM音频文件难以同步播放的问题,通过特定的MXF打包方案及时间抽取、调整算法的设计,方便可靠的实现了MXF视频文件与PCM音频文件的同步播放。
附图说明
图1为本发明的实现MXF视频文件与PCM音频文件同步播放的方法的流程图。
具体实施方式
下面结合附图和具体实施方式,对本发明的实现MXF视频文件与PCM音频文件同步播放的方法作进一步的说明。
在对本发明的方法进行说明之前,首先对MXF中的打包方式进行说明。在本发明中,MXF素材格式采用KLV(Key Length Value)方式打包,打包后的数据包的格式如表1所示,其中的K表示包的标识(ID),L表示包的长度,V表示包的负载,即包中的内容。为了视频时间信息提取的需要,把V定义成MPEG-2编码的基本流(Es)数据的一个图组的数据,该图组的数据可能经过加密,但解密后V的头部即为一个图组头。
表1
 
K L V
本发明的实现MXF视频文件与PCM音频文件同步播放的方法具体包括以下步骤。
步骤10、计算视频文件和音频文件的大小,分别用Cvideo和Caudi。表示,得到视频文件大小和音频文件大小的比例:Tv:a=Cvideo÷Caudio
步骤20、按照Tv:a:1的比例向音视频解码器提供视频数据和音频数据,在每次向视频解码器输送数据时,检查文件是否播放完毕,如果文件播放完毕,则进入步骤80,否则继续执行。
步骤30、检测当前送入解码器的视频数据是否含有图组头信息,如果有,则进入步骤40检测音视频播放是否同步,否则,循环执行步骤20。
步骤40、解析送入音视频解码器的视频数据的图组头,由当前的图组头的信息,得到已经送入解码器的视频帧的总数量,根据视频帧的总数量计算视频相对播放时间Tvideo
由于MXF格式的视频数据中没有时间戳,也没有其他的用于解码时用的时间信息,因此在本发明中,从视频文件的视频序列头中解析出视频播放时的解码帧率,设为Fframe,只要可以实时得到当前读取文件的帧的数量Cframe,两者相除即可以得到已经调度给视频解码器的数据的相对播放时间Tvideo=Cframe÷Fframe。本步骤中,关键在于如何得到当前读取文件的帧的数量,根据MPEG-2系统流的语法结构可以有两种方法:
方法1、分析即将送入视频解码器的视频数据,利用帧标识码来匹配扫描视频数据,一旦发现一个帧标识码,则当前调度给视频解码器的帧的计数变量加一。但这样做的时间复杂度非常大,大概是0(n),会严重影响视频播放的质量,使得视频播放不连续。也可以根据单帧大小做一个统计,进行优化,但是其复杂度仍然为0(n/m)。其中,n为当前送入解码器的数据的字节数,m是相对n比较小的数,经粗略计算不会大于5,因此时间复杂度仍然过大,影响视频播放质量,故不足取。
本实施例采用第二种获取当前读取文件帧数量的方法,该方法与MXF打包方案结合,利用MXF的KLV中L值,得到每一个KLV的头部,也就得到了每一个V域的头部,而按照MXF打包方案,每个V域的头部也恰好是图组的头部。图组头的语法结构如表格2所示,图组头中有数域time_code,time_code的语法结构如表格3所示。在MPEG-2标准定义了其中各值域的具体含义。
表2  图组头
 
Group_of_picture_header 位数
Group_start_code 32(0X000001B8)
Time_code 25
表3  time_code值表
 
Time_code 值域 位数
Drop_frame_flag 0/1 1
Time_code_hours 0~23 5
Time_code_minutes 0~59 6
Market_bit 1 1
Time_code_seconds 0~59 6
Time_code_pictures 0~59 6
通过解析time_code的值可以知道到当前图组头以前的视频数据所含有的帧的数量。
Cframe=((time_code_hours×60+time_code_minutes)×60
+time_code_seconds)×Fframe+time_code_pictures
-Cframe_start
上式中Cframe_start为第一个图组头解析得到的Cframe的值。一般影片的编码规则都是Cframe_start=0。
经验证,该算法时间复杂度低,不考虑MXF解析的复杂度,它基本上复杂度为零。使用中也不影响影片的正常播放。
步骤50、利用当前已经送入音频解码器的音频数据的比特数,计算得到当前已经送入音频解码器的音频数据的相对播放时间Taudio
PCM文件的数据组织结构比较简单,只需要知道PCM文件的采样率Fpcm,量化阶数B、当前调度给音频解码器的PCM数据量Caudio以及音频文件的声道数量Nchannel,即可算得音频数据的相对播放时间Taudio
Taudio=8×Caudio÷(Nchannel×B×Fpcm)。
步骤60、计算步骤40得到的视频相对播放时间Tvide。和步骤50得到的音频相对播放时间Taudio的差值,按照音视频同步的标准判断音视频是否同步,若两者差值的绝对值ΔT=|Tvideo-Taudio|超过了0.08秒,则由步骤70实现音视频的同步调节,否则,跳转到步骤20。
在本步骤中,音视频播放的同步要求用感知服务质量(P-QoS)来表达,感知服务质量决定于媒体及其应用。为了描述同步要求,实现相关的控制机制,需要定义一些P-QoS参数。这些参数包括单个媒体流相邻媒体单元所经历的时延抖动(delay jitter)以及音频和视频的相关媒体单元的时间差即偏移(skew)。人体对抖动和偏移的感知测量结果表明,如果抖动和偏移限制在一个合适的范围内,那么媒体是同步的。研究表明,对于音频或TV品质的视频,若媒体内时延抖动小于0.01秒,则音频或视频播放处于同步状态,否则是处于失步状态。对于音频和与其相关的视频同时播放时,当媒体间偏移在-0.08s到+0.08之间时,多数观众都不会感到偏移的存在,这个区域是同步区域。当偏移在-0.14s到+0.16秒之外时,几乎所有观众都对播映不满意,这一区域为不同步区域。在同步区域和不同步区域之间还存在两个临界区域,当偏移在临界区域时,观众离播放点越近,播映的视频信号和音频信号的分辨率越高,则越容易感觉到偏移。因此在本步骤中将音视频是否同步的标准设定为0.08s,当调度给音视频解码器的媒体数据的理论播放时间差Tv_a=|Tvideo-Taudio|大于0.08s时,说明播放没有同步,需要进行对音视频数据的调度进行调节。
步骤70、调整音视频解码器的数据输入,加快落后一方的媒体的数据输入,直至音视频数据的播放保持同步,然后跳转到步骤20。
根据MPEG-2编码标准,基本流(ES)的各帧大小不同。因此按照音视频文件的大小比例来调度音视频解码器时,必然会发生音视频不同步的现象,而且一旦发生,都有一定的趋势,比如一段足够小的时间内,音频比视频越来越快或者越来越慢。一旦检测到音视频不同步,为了减少需要马上进行调节的概率,可以进行适当的超调。如果视频(音频)播放速度超过了音频(视频)播放速度,以致出现明显的音视频不同步,则调节音视频数据调度,增加音频(视频)数据的输入,直至音频(视频)超前视频(音频)一定值,该值可以取0.06秒。
步骤80、释放资源,退出程序。

Claims (5)

1、一种实现MXF视频文件与PCM音频文件同步播放的方法,包括:
1)、计算MXF视频文件与PCM音频文件的大小,得到视频文件大小和音频文件大小的比例Tv:a
2)、按照Tv:a:1的比例向音视频解码器提供视频数据和音频数据,在每次向视频解码器输送数据时,检查文件是否播放完毕,如果文件播放完毕,则释放资源,停止播放,如果文件未播放完毕,则继续执行;
3)、检测当前送入解码器的视频数据是否含有图组头信息,如果有,则进入步骤4)检测音视频播放是否同步,如果没有图组头信息,重新执行步骤2);
4)、解析送入解码器的视频数据的图组头,由当前的图组头的信息,得到已经送入解码器的视频帧的总数量,根据视频帧的总数量计算视频相对播放时间Tvideo
5)、利用当前已经送入音频解码器的音频数据的比特数,计算得到当前已经送入解码器的音频数据的相对播放时间Taudio
6)、求步骤4)得到的视频相对播放时间Tvideo和步骤5)得到的音频相对播放时间Taudio的差值,判断音视频是否同步,若两者差值的绝对值ΔT=|Tvideo-Taudio|超过了阀值,则认为音视频不同步,由步骤7)实现音视频的同步调节,若音视频同步,跳转到步骤2);
7)、调整解码器的数据输入,加快落后一方的数据输入速度,直至音视频数据的播放保持同步,然后跳转到步骤2)。
2、根据权利要求1所述的实现MXF视频文件与PCM音频文件同步播放的方法,其特征在于,在所述的步骤4)中,所述的视频相对播放时间Tvideo用已读取的帧的数量除以视频播放时的解码速率得到,所述的视频播放时的解码速率由视频文件的视频序列头中解析得到,所述的已读取的帧的数量通过解析图组头中的time_code的值得到。
3、根据权利要求1所述的实现MXF视频文件与PCM音频文件同步播放的方法,其特征在于,在所述的步骤5)中,所述的音频数据的相对播放时间Taudio根据PCM音频文件的采样率Fpcm、量化阶数B、当前调度给音频解码器的PCM数据量Caudio以及音频文件的声道数量Nchannel得到:
Taudio=8×Caudio÷(Nchannel×B×Fpcm)。
4、根据权利要求1所述的实现MXF视频文件与PCM音频文件同步播放的方法,其特征在于,在所述的步骤6)中,所述的阀值为0.08秒。
5、根据权利要求1所述的实现MXF视频文件与PCM音频文件同步播放的方法,其特征在于,在所述的步骤7)中,如果视频播放速度超过了音频播放速度,则增加音频数据的输入速度,直至音频输入速度超前视频输入速度一定值,如果音频播放速度超过了视频播放速度,则增加视频数据的输入速度,直至视频输入速度超前音频输入速度一定值,所述值取0.06秒。
CN 200610011326 2006-02-15 2006-02-15 实现mxf视频文件与pcm音频文件同步播放的方法 Expired - Fee Related CN100499823C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200610011326 CN100499823C (zh) 2006-02-15 2006-02-15 实现mxf视频文件与pcm音频文件同步播放的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200610011326 CN100499823C (zh) 2006-02-15 2006-02-15 实现mxf视频文件与pcm音频文件同步播放的方法

Publications (2)

Publication Number Publication Date
CN101022561A CN101022561A (zh) 2007-08-22
CN100499823C true CN100499823C (zh) 2009-06-10

Family

ID=38710189

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200610011326 Expired - Fee Related CN100499823C (zh) 2006-02-15 2006-02-15 实现mxf视频文件与pcm音频文件同步播放的方法

Country Status (1)

Country Link
CN (1) CN100499823C (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102110459B (zh) * 2009-12-24 2013-01-16 Tcl集团股份有限公司 一种播放终端及其多媒体文件的播放方法和装置
CN102215429B (zh) * 2010-04-01 2013-04-17 安凯(广州)微电子技术有限公司 一种用于移动电视的录制方法
CN102857747B (zh) * 2011-06-27 2015-02-25 北大方正集团有限公司 局部重编码方法和装置
CN104902317A (zh) * 2015-05-27 2015-09-09 青岛海信电器股份有限公司 音视频同步方法及装置
CN106686438B (zh) * 2016-12-29 2019-12-13 北京奇艺世纪科技有限公司 一种跨设备的音频图像同步播放的方法、装置及系统
CN107580264A (zh) * 2017-08-29 2018-01-12 青岛海信电器股份有限公司 多媒体资源播放处理方法及装置
CN107371053B (zh) * 2017-08-31 2020-10-23 北京鹏润鸿途科技股份有限公司 音频视频流对比分析方法及装置
CN109600564B (zh) * 2018-08-01 2020-06-02 北京微播视界科技有限公司 用于确定时间戳的方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1436001A (zh) * 2002-01-28 2003-08-13 北京华诺信息技术有限公司 解码系统中实现视频与音频同步的方法
CN1545248A (zh) * 2003-11-12 2004-11-10 中兴通讯股份有限公司 承载控制分离网络中录音通知的编号和解析方法
US20050002402A1 (en) * 2003-05-19 2005-01-06 Sony Corporation And Sony Electronics Inc. Real-time transport protocol
CN1598767A (zh) * 2004-09-15 2005-03-23 萧学文 在brew平台上同步播放音频视频的方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1436001A (zh) * 2002-01-28 2003-08-13 北京华诺信息技术有限公司 解码系统中实现视频与音频同步的方法
US20050002402A1 (en) * 2003-05-19 2005-01-06 Sony Corporation And Sony Electronics Inc. Real-time transport protocol
CN1545248A (zh) * 2003-11-12 2004-11-10 中兴通讯股份有限公司 承载控制分离网络中录音通知的编号和解析方法
CN1598767A (zh) * 2004-09-15 2005-03-23 萧学文 在brew平台上同步播放音频视频的方法及系统

Also Published As

Publication number Publication date
CN101022561A (zh) 2007-08-22

Similar Documents

Publication Publication Date Title
CN100499823C (zh) 实现mxf视频文件与pcm音频文件同步播放的方法
US7738767B2 (en) Method, apparatus and program for recording and playing back content data, method, apparatus and program for playing back content data, and method, apparatus and program for recording content data
KR101786050B1 (ko) 데이터 전송 방법 및 장치
KR101750049B1 (ko) 적응적인 스트리밍 방법 및 장치
KR101883579B1 (ko) 미디어 스트림들 간의 타임라인 정보를 상관시키기 위한 시스템 및 방법
KR101727050B1 (ko) 미디어 세그먼트 송수신 방법 및 그를 이용한 송수신 장치
JP4990762B2 (ja) インターネットプロトコルに用いるストリーミングオーディオとストリーミングビデオとの同期保持
KR101927145B1 (ko) 다른 네트워크들을 통해 수신된 콘텐츠의 렌더링을 동기화하기 위한 디코더 및 이러한 디코더에서의 방법
KR101837687B1 (ko) 콘텐트의 품질을 결정하는 복수의 인자에 기초한 적응적인 스트리밍 방법 및 장치
KR101737084B1 (ko) 메인 콘텐트에 다른 콘텐트를 삽입하여 스트리밍하는 방법 및 장치
EP2752023B1 (en) Method to match input and output timestamps in a video encoder and advertisement inserter
US20100135646A1 (en) Storage/playback method and apparatus for mpeg-2 transport stream based on iso base media file format
US20190058929A1 (en) System and method for synchronizing metadata with audiovisual content
US11622163B2 (en) System and method for synchronizing metadata with audiovisual content
EP1585336A1 (en) Transcoding system and method for maintaining timing parameters before and after performing transcoding process
US20080002776A1 (en) Media Content and Enhancement Data Delivery
US8966103B2 (en) Methods and system for processing time-based content
KR20110053177A (ko) 부분화에 기초한 적응적인 스트리밍 방법 및 장치
KR20120119790A (ko) 미디어 데이터 전송 방법 및 장치와 미디어 데이터 수신 방법 및 장치
US20130271657A1 (en) Receiving apparatus for providing hybrid service, and hybrid service providing method thereof
CN106792154B (zh) 视频播放器的跳帧同步系统及其控制方法
Le Feuvre et al. MPEG-DASH for low latency and hybrid streaming services
US20100091188A1 (en) Synchronization of secondary decoded media streams with a primary media stream
Law et al. Universal CMAF Container for Efficient Cross-Format Low-Latency Delivery
KR0181082B1 (ko) 엠펙 시스템의 피티에스 부호화장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090610

Termination date: 20190215

CF01 Termination of patent right due to non-payment of annual fee