视音频同步的监测方法及系统,以及视音频播出系统
技术领域
本发明涉及广播电视技术领域,具体涉及一种视音频同步的监测方法及系统,以及视音频播出系统。
背景技术
视音频同步指的是视频播出过程中视频和音频同步,也就是说播放的声音要和当前显示画面的时间偏差控制在极小范围内,在电视播出系统转播演播室信号时,比如歌唱类节目,选手的嘴型、唱词与实际的声音送达不一致,这时间差异只要人能感知,都将产生非常差的一种体验。
正常情况下,视频通过帧率(Frame Rate)描述一秒视频的帧数,音频通过采样率(Sample Rate)描述一秒音频播放的采样样本个数,这样一来,理论上可以通过简单的计算就能知道一帧和一个采样样本的播放时间,两项对应,各自控制其速率,可以互不干涉的保证同步的播放。
然而,实际情况没有那么理想。为了解决视音频同步的问题,技术上人们引入了DTS(Decode time stamp解码时间戳)、PTS(Presentation time stamp显示时间戳)、SCR(System Clock Reference系统时钟参考)和STC(System time clock系统时钟)四个参数共同处理,在编码、解码的多个环节,共同来保证其一致性。
但实际的播放、传输环节,有太多的因素,会导致产生视音频的不同步。由此,还需要进一步加强对视音频同步在播放和传输过程中的监测。
发明内容
本发明要解决的技术问题在于,提供一种改进的视音频同步的监测方法及系统,以便于更及时地发现视音频不同步的问题。
根据本发明的一方面,提供多个图像帧多个图像帧多个图像帧多个图像帧多个图像帧一种视音频同步的监测方法,包括:
在资料准备阶段,根据视频数据的一个或多个图像帧生成水印信息,将所述水印信息嵌入到音频数据中,整合视频数据和音频数据得到视音频流;
在资料准备阶段之后的传输路径上,设置多个检测点,在每个检测点截取视音频流,检测截取到的视音频流中的水印信息,如果检测到水印信息,则获得被检测到的水印信息对应的图像帧,并根据所述对应的图像帧生成新的水印信息,将被检测到的水印信息和新的水印信息比较,如果相符合,确定视音频满足同步要求,否则,确定视音频不满足同步要求。
优选地,生成水印信息包括以下步骤:
根据所述一个或多个图像帧生成图像特征值;以及
根据所述图像特征值生成相应的水印信息。
优选地,根据所述图像特征值生成一唯一数值作为所述水印信息。
优选地,所述图像特征值为颜色特征、纹理特征和形状特征其中至少一种特征构成的特征值。
优选地,所述将所述水印信息嵌入到所述音频数据中包括:
采用变换域的水印嵌入方式,进行水印嵌入。
优选地,根据同步机制获得被检测到的水印信息对应的图像帧,所述同步机制为时间戳同步机制。
优选地,所述监测方法还包括:获得和所述对应的图像帧在时间上位于设定时间阈值内的多个图像帧,并根据其中的一个或多个图像帧计算多个新的水印信息,将新的水印信息分别和被检测到的水印信息比较,当被检测到的水印信息和其中的一个新的水印信息相符合时,确定水印信息和图像帧的同步差异值,当被检测到的水印信息和其中的任意一个新的水印信息都不符合时,确定视音频的同步差异大于设定时间阈值。
优选地,所述设定时间范围为1秒。
优选地,所述整合视频数据和音频数据至少包括以下步骤中的一种:
根据视频数据和音频数据进行视音频格式编码和格式转换;
根据视频数据和音频数据进行编码压缩;
根据视频数据和音频数据进行信号调制。
根据本发明实施例的另一方面,提供一种视音频同步的监测系统,包括:
资料准备装置,用于根据视频数据中的一个或多个图像帧生成水印信息,将所述水印信息嵌入到所述音频数据中,并整合视频数据和音频数据得到视音频流;
检测装置,设置在视音频流的传输路径的多个检测点上,在每个检测点截取视音频流,检测截取到的视音频流中的水印信息,如果检测到水印信息,则获得被检测到的水印信息对应的图像帧,并根据所述对应的图像帧生成新的水印信息,将被检测到的水印信息和新的水印信息比较,如果相符合,确定视频和音频数据满足同步要求,当被检测到的水印信息和其中的任意一个新的水印信息都不符合时,确定视音频的同步差异大于设定时间阈值。
优选地,所述资料准备装置包括:
音视频分离模块,用于从视音频源信号分离出音频数据和视频数据;
第一水印生成模块,用于在所述视频数据中选择一个或多个图像帧,生成水印信息;
水印嵌入模块,用于所述水印信息嵌入到音频数据中;
整合模块,用于整合视频数据和音频数据得到视音频流;
所述检测装置包括:
视音频接收模块,用于视音频流之后的传输路径上,实时截取视音频流,并从截取到的视音频流中分离出音频数据和视频数据;
水印检测模块,用于检测音频数据中的水印信息;
第二水印生成模块,用于获得被检测到的对应的图像帧,并根据所述对应的图像帧生成新的水印信息;
比较确定模块,用于将被检测到的水印信息和新的水印信息比较,如果相符合,确定视音频满足同步要求,否则,确定视音频不满足同步要求。
优选地,所述第一水印生成模块和所述第二水印生成模块均包括以下步骤:
根据所述一个或多个图像帧生成图像特征值;以及
根据所述图像特征值生成相应的水印信息。
优选地,所述图像特征值为颜色特征、纹理特征和形状特征其中至少一种特征构成的特征值。
优选地,所述监测系统还包括:
同步差异量化模块,用于获得多个和所述对应的图像帧在时间上位于设定时间阈值内的图像帧,并根据其中的一个或多个图像帧计算多个新的水印信息,将新的水印信息分别和被检测到的水印信息比较,当被检测到的水印信息和一个新的水印信息相符时,确定水印信息和图像帧的同步差异值,当被检测到的水印信息和其中的任意一个新的水印信息都不符合时,确定视音频的同步差异大于设定时间阈值。
根据本发明实施例的再一方面,提供一种视音频播出系统,包括:
资料整备服务器,用于接收和处理视音频源信号,根据视频数据的一个或多个图像帧生成水印信息,并将所述水印信息嵌入到音频数据中;
视频服务器,用于将视频数据和音频数据调制成SDI信号播出;
传输服务器,用于接收SDI信号,从中获得视频数据和音频数据,将视频数据和音频数据进行压缩编码生成TS流输出;
终端,用于通过有线网接收TS流进行显示;
检测服务器,用于在视频服务器、传输服务器、有线网和终端之间设置多个检测点,在每个检测点截取SDI信号或TS流,检测其中的水印信息,如果检测到水印信息,则获得被检测到的水印信息所在音频帧的对应的图像帧,并根据所述对应的图像帧生成新的水印信息,将被检测到的水印信息和新的水印信息比较,确定视音频是否同步。
在本发明实施例中,针对资料准备阶段之后的视音频处理和播放过程中产生的视音频不同步问题,通过在传输路径上设置多个检测点,在多个检测点监测视音频数据是否同步,从而确定视音频不同步产生的时间点。进一步地,在不同阶段根据一个或多个图像帧生成水印信息并进行比较,以确定视音频是否同步,为视音频同步监测提供了新的方案。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1和2为现有技术中数字音频水印的原理性结构框图;
图3是本发明实施例的视频和音频同步的监测方法的流程图;
图4是本发明实施例的将视频水印嵌入到音频中的示意图;
图5是本发明实施例的视频和音频同步的监测系统的资料准备装置50的示意图;
图6是本发明实施例的视频和音频同步的监测系统的监测装置60的示意图;
图7是本发明实施例的数字电视系统的结构图。
具体实施方式
以下将参照附图更详细地描述本发明的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。
数字音频水印,英文名称为Digital Audio watermarking,这一技术的产生,来源于版权保护的诉求。该技术将具有特定意义的信息嵌入到原始音频中,同时又不显著的影响其质量。图1和2为现有技术中数字音频水印的原理性结构框图。参考图1和2,在编码阶段,载体对象12根据水印嵌入算法11将水印信息15和密钥14嵌入到载体对象中,生成水印载体对象13。在解码阶段,通过水印提取算法21从水印载体对象13中提取水印信息15和密钥14。
随着大量的相关研究,产生了相当多的嵌入和提取音频信号中的水印数据的技术,嵌入的信息内容从最开始时仅嵌入版权信息、序列号、文本等内容用于版权保护,发展到嵌入提示音、嵌入特征码以应用于多屏互动等。
在本发明实施例中,沿用数字音频水印技术的原理,在资料准备阶段,在音频数据中嵌入基于图像帧生成的数字水印,在播出和传输过程中,设置检测点,在检测点处接收视频数据和音频数据,从音频数据中提取预先设置的数字水印,并基于当前同步的图像帧生成新的数字水印,将预先设置的数字水印和新生成的数字水印比较以判断当前的视频和音频是否同步。其中,帧是影像动画中最小单位的单幅影像画面,相当于电影胶片上的一格镜头。图像帧就是一副静止的画面,连续的多个图像帧就形成动画。通常说的帧数,简单地说,就是在1秒钟时间里传输的图片的个数,也可以理解为图形处理器每秒钟能够刷新几次,通常用帧率fps(Frames Per Second)表示。fps越大,表示画面越流畅。
图3是本发明实施例的视频和音频同步的监测方法的流程图。
在步骤S301中,在资料准备阶段,根据视频数据的一个或多个图像帧生成水印信息,将水印信息嵌入到音频数据中,整合视频数据和音频数据得到视音频流。
视音频的资料准备基本包括两种方式,一种是对已有的视音频源信号进行拆包和解码并生成视音频数据的过程,另一种是基于视音频素材制作视音频文件的过程。不论是那种方式,都可以从中得到视频数据和音频数据。在步骤S301中,基于一个图像帧或多个图像帧生成水印信息,并将水印信息嵌入到音频数据的相应位置。音频数据的相应位置例如可以由原始时间戳确定。如果本步骤采用一个图像帧生成水印信息,将水印信息插入到该图像帧对应的音频帧内,如果采用多个图像帧生成水印信息,将水印信息插入到该图像帧的首个图像帧或末尾图像帧对应的音频帧内。在本步骤中所述的整合视频数据和音频数据是一个比较宽泛的概念,可以包含例如按照视音频的文件格式对原始数据进行编码和转码,采用编码压缩算法例如H.264等对各种视音频文件进行编码压缩,以及对各种视音频文件进行信号调制等等。在整合步骤中,如果下一个步骤是进入播放环节,一般还需要采用同步机制例如采用新的时间戳实现视音频同步。
在步骤S302中,在资料准备阶段之后的传输路径上,设置多个检测点,在每个检测点截取视音频流,检测音频数据中的水印信息,如果检测到水印信息,则获得被检测到的水印信息对应的图像帧,并根据对应的图像帧生成新的水印信息,将被检测到的水印信息和新的水印信息比较,如果相符合,确定视音频满足同步要求,否则,确定视音频不满足同步要求。
步骤S302接收步骤S301输出的整合后的视音频流。通过对整合后的视音频流的传输路径上设置检测点,可以定时例如5秒钟一次截取视音频流。基于该截取到的视音频数据,从中获得视频数据和音频数据,不断地检测音频数据的水印信息,一旦检测到水印信息,则根据同步机制获得检测到的水印信息对应的多个图像帧,基于多个图像帧生成新的水印信息,比较从音频数据中检测到的水印信息和新生成的水印信息,以确定是否同步。如果根据同步机制无法获得检测到的水印信息对应的图像帧(例如,该图像帧被损坏或者丢失),则优选的方式是获得在时间上相邻的图像帧生成新的水印信息。
在本发明实施例中,针对资料准备阶段之后的视音频处理和播放过程中产生的视音频不同步问题,通过在传输路径上设置多个检测点,在检测点处接收视音频流,根据图像帧生成新的水印信息,并将其和原始的水印信息比较以确定视音频是否同步。通过多个检测点能够确定何处引入视音频不同步,而通过生成水印信息比较能够精确地判断视音频不同步的时间点。
图4是本发明实施例的将视频水印嵌入到音频中的示意图。在图4中,31表示图像帧,32表示图像特征值,33表示插入到音频数据中的水印信息。
图像帧的图像特征值有多种,一般可考虑采用三大特征(颜色、纹理和形状特征)的任意一种用于描述。
相应地,颜色特征提取与匹配方法有:颜色直方图、颜色集、颜色聚合向量、颜色相关图、颜色矩等;纹理特征提取与匹配方法有:统计方法、几何法、模型法等;形状特征提取与匹配方法:边界特征法、傅里叶形状描述法、几何参数法等。
在本发明中,可以基于任意一个图像帧生成水印信息并进行比较。但是如果只基于一个图像帧的水印信息进行比对,可能由于图像的特征值不是唯一的导致由此生成的水印信息也不是唯一的。因此可采用的一种方式是获得一段时间上(例如1秒内)的多个图像帧,基于该多个图像帧生成多个水印信息,将多个水印信息的每个水印信息和原始的水印信息进行反复比对来确定是否同步。
在本发明中,也可以根据多个图像帧生成一个水印信息并进行比较,这时无论是原始的水印信息还是新生成的水印信息,都需要基于多个图像帧生成。通过这种方式生成的水印信息基本上能够保证是唯一的,因此,可一次比较确定是否同步。
同时,为考虑信号在多次编解码和长距离传输后产生劣化,影响特征值的准确性,算法的选取需要具备一定的兼容性和鲁棒性。在本发明中,优选灰度直方图算法来实现图像特征值的计算。
灰度直方图是关于灰度级分布的函数,是对图像中灰度级分布的统计。灰度直方图是将数字图像中的所有像素,按照灰度值的大小,统计其出现的频率。灰度直方图是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图像中某种灰度出现的频率。
设灰度级数为n,则设直方图一维数组为hist[n],
{hist[x]=Count(i,j),i=0......width,j=0......height,n=0......n
为保证灰度直方图所描述的特征值嵌入音频水印的快速和高效,在本发明中优选通过CRC算法对特征值进行处理,将上述直方图的特征值转变为16位数值。
CRC算法:
1)CRC寄存器组初始化为全"0"(0x0000)。(注意:CRC寄存器组初始化全为1时,最后CRC应取反。)
2)CRC寄存器组向左移8位,并保存到CRC寄存器组。
3)原CRC寄存器组高8位(右移8位)与数据字节进行异或运算,得出一个指向值表的索引。
4)索引所指的表值与CRC寄存器组做异或运算。
5)数据指针加1,如果数据没有全部处理完,则重复步骤2)。
6)得出CRC。
在音频水印中嵌入数字水印的方式多种多样,以信号的基本性质区分,分为时域与变换域的水印嵌入。而一般来说在时域添加水印的方式鲁棒性过低或引入噪声过大,所以本发明中优选采用变换域的水印嵌入方式,以DFT(离散小波变换)算法,进行水印嵌入:
1)选取待插入水印的音频段为t;
2)计算t的频谱:DFT(t);
3)选择频谱中一段频率的系数替换为水印序列的频谱分量,则添加水印之后的音频数据为:I(t)=IDFT(DFT(t)[i,j]+水印)i,j为描述音频中的最低/最高频率系数。
综上,根据直方图数据,采用CRC算法和变换域的水印嵌入方式,降低了水印技术对音频数据的修改程度,基本不会对原始音频数据的质量产生明显的影响。当然本发明实施例并不局限于上述的CRC算法和DFT算法。其他能够生成唯一数值用于标识图像特征值以及其他能够水印嵌入的算法,均可以用于本发明实施例。
图5是本发明实施例的视频和音频同步的监测系统的资料准备装置50的示意图。
图6是本发明实施例的视频和音频同步的监测系统的监测装置60的示意图。
参考图5和图6,本发明的视音频同步的监测系统包括资料装准备装置50和监测装置60。但是,应该理解,资料准备装置和监测装置是软件上划分的功能模块,他们可以部署在同一台服务器上。当然也可以部署在不同的服务器上。
资料准备装置50用于根据视频数据的一个或多个图像帧生成水印信息,并将水印信息嵌入到音频数据中,并整合视频数据和音频数据得到视音频流。
检测装置60设置在视音频流的传输路径的多个检测点上,在每个检测点截取视音频流,检测其中的水印信息,如果检测到水印信息,则根据同步机制获得被检测到的水印信息对应的图像帧,并根据对应的图像帧生成新的水印信息,将被检测到的水印信息和新的水印信息比较,如果相符合,确定视频和音频满足同步要求,否则,确定视频和音频不满足同步要求。
如图5所示,所述资料准备装置包括音视频分离模块501、第一水印生成模块502、水印嵌入模块503和整合模块4。
音视频分离模块501用于从视音频源信号分离出音频数据和视频数据。
第一水印生成模块502用于在视频数据中选择一个或多个图像帧,生成水印信息。
水印嵌入模块503用于水印信息嵌入到音频数据中。
整合模块4用于整合视频数据和音频数据得到视音频流。
如图6所示,检测装置60包括视音频接收模块601、水印检测模块602、第二水印生成模块603和比较确定模块604。
视音频接收模块601,用于视音频流之后的传输路径上,实时截取并处理视音频流,并从中分离音频数据和视频数据。
水印检测模块602,用于检测音频数据中的水印信息。
第二水印生成模块603,用于根据同步机制获得被检测到的对应的图像帧,并根据对应的图像帧生成新的水印信息。
比较确定模块604用于将被检测到的水印信息和新的水印信息比较,如果相符合,确定视音频满足同步要求,否则,确定视音频不满足同步要求。
在优选的实施例中,上述监测系统还包括同步差异量化模块。该模块根据同步机制获得多个和对应的图像帧在时间上位于设定时间阈值内的图像帧,并根据其中的一个或多个图像帧计算多个新的水印信息,将新的水印信息分别和被检测到的水印信息比较,当被检测到的水印信息和一个新的水印信息相符时,确定水印信息和图像帧的同步差异值,否则确定视频和音频不满足同步要求。
下文中以一个示例进一步澄清本实施例。例如,被检测到的水印信息对应的图像帧的时间戳为20s,但是该图像帧的水印信息和被检测到的水印信息不符,则可以认为视音频数据不同步。然后,以1秒为基准,找到和时间戳20s相差一秒之内的所有图像帧例如60个(之前30个和之后30个),假设之前1/30秒处有个图像帧和被检测到的水印信息相符,则量化同步差异值为1/30秒。当然,如果在1秒内的所有的图像帧的水印信息都和原始水印信息不符,则认为视频和音频同步差异值超过2秒。这种情况下,再继续监测意义不大,必须进行视音频的调整。
图7是本发明实施例的视音频播出系统的结构图。包括资料整备服务器701、视频服务器702、传输服务器703、有线网、终端705和检测服务器704。
如图7所示,资料整备服务器701负责接收和处理视音频源信号,根据视频数据的一个或多个图像帧生成水印信息,并将水印信息嵌入到音频数据中,最终输出视音频文件。视频服务器702用于根据视音频文件调制成SDI信号(serial digital interface信号)播出。传输服务器703用于接收SDI信号,从中获得视频数据和音频数据,将视频数据和音频数据进行压缩编码生成TS流输出。终端705用于通过有线网接收TS流进行显示。TS(TransportStream),TS流是一种DVD的文件格式,MPEG2-TS格式的特点就是要求从视频流的任一片段开始都是可以独立解码的。
在视音频文件经由视频服务器702、传输服务器703以及有线网传输到终端的过程中,由于种种原因可能引入视音频不同步,例如由于视音频文件中的时间戳设置错误引入视音频不同步,或者,在进入有线网前,由于播出链路中的视音频数据的单独处理(如响度控制)延时等引入视音频不同步,或者在有线网传输过程中由于数据丢失引入视音频不同步,等等。由此,在图7的实施例中,在传输路径上设置多个检测点,采用检测服务器704检测视音频不同步的问题。检测服务器704在每个检测点截取视音频流,检测音频数据中的水印信息,如果检测到水印信息,则根据所述同步机制获得被检测到的水印信息所在音频帧的对应的图像帧,并根据对应的图像帧生成新的水印信息,将被检测到的水印信息和新的水印信息比较,确定视音频是否同步。
在本实施例中,通过在不同的检测点设置检测服务器,能够测量从资料准备到编码到传输的各环节中,那个环节引入了视音频不同步,并量化不同步的具体偏差值。对于在视频服务器702和传输服务器703之间的检测点,针对每个频道的播出设备(例如播出)引入的视音频不同步可以进行量化检测,并可以及时在资料整备环节或播放环节进行调整。对于后续两个检测点,通过长时间的抽样(抽频道,每周一次),形成偏差值报表,用于后续的播出质量监测报告。
依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明的保护范围应当以本发明权利要求所界定的范围为准。