![](/upload/img/20220409/83fhmwrxw.jpg)
1.本发明涉及音视频录制技术领域,尤其涉及一种画面同步录制方法、装置、系统及计算机存储介质。
背景技术:
2.在监控室及会议室的会议场景中,有时需要将显示墙大屏的整个播放画面录制为视频,并记录到存储磁盘中,在后续查看会议记录时将录制的视频再在显示墙大屏上播放,即视频回放。由于显示墙大屏由多个显示屏拼接而成,在进行视频录制时,通常采用多个录制节点,每个录制节点用于录制对应显示屏的画面,而在回放视频时,通过将各录制节点所录制的画面进行拼接,形成完整的画面后进行播放。
3.若各拼接画面不同步,会影响整墙画面回放效果,因此,为达到更好的视频回放效果,有必要提供使得各拼接画面同步的录制方法。
技术实现要素:
4.本发明提供了一种画面同步录制方法、装置、系统及计算机存储介质,解决了视频回放所要求的多拼接画面同步的技术问题。
5.本发明第一方面提供一种画面同步录制方法,应用于录播服务器,包括:
6.接收用于录制目标显示墙画面的各录制节点的音视频码流;所述音视频码流包括多个视频帧以及每个视频帧的标识信息,所述标识信息包括时间戳、帧类型以及在所在音视频码流中的码流字节偏移地址;其中各所述录制节点之间设置ntp时间同步;
7.对各所述录制节点的视频帧的时间戳进行比对,根据比对结果对各所述视频帧进行画面归类,包括:将首次接收的视频帧作为当前的基准视频帧,若后续接收到的视频帧的时间戳与当前的基准视频帧的时间戳的差值不大于时间戳误差阈值,将所述后续接收到的视频帧与当前的基准视频帧归为同一画面,并以当前的基准视频帧的时间戳作为对应的画面时间戳,否则,以第一个与当前的基准视频帧的时间戳的差值大于时间戳误差阈值的视频帧作为新的基准视频帧,将其时间戳与后续接收的视频帧的时间戳进行比对,直至完成所有视频帧的画面归类;
8.记录每一画面时间戳下的画面信息至数据库,所述画面信息包括当前画面时间戳下各视频帧的ip地址、帧类型以及码流字节偏移地址;
9.接收到回放指令时,根据画面时间戳的时间先后顺序从所述数据库中依次读取对应的画面信息。
10.根据本发明第一方面的一种能够实现的方式中,所述视频帧对应的帧类型不包括b帧。
11.根据本发明第一方面的一种能够实现的方式中,所述方法还包括:
12.向各录制节点发送音视频码流请求。
13.本发明第二方面提供一种画面同步录制装置,包括:
14.存储器,用于存储指令;其中,所述指令为可实现如上任意一项能够实现的方式所述的画面同步录制方法的指令;
15.处理器,用于执行所述存储器中的指令。
16.本发明第三方面提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任意一项能够实现的方式所述的画面同步录制方法。
17.本发明第四方面提供一种画面同步录制装置,包括:
18.接收模块,用于接收用于录制目标显示墙画面的各录制节点的音视频码流;所述音视频码流包括多个视频帧以及每个视频帧的标识信息,所述标识信息包括时间戳、帧类型以及在所在音视频码流中的码流字节偏移地址;其中各所述录制节点之间设置ntp时间同步;
19.处理模块,用于对各所述录制节点的视频帧的时间戳进行比对,根据比对结果对各所述视频帧进行画面归类,包括:将首次接收的视频帧作为当前的基准视频帧,若后续接收到的视频帧的时间戳与当前的基准视频帧的时间戳的差值不大于时间戳误差阈值,将所述后续接收到的视频帧与当前的基准视频帧归为同一画面,并以当前的基准视频帧的时间戳作为对应的画面时间戳,否则,以第一个与当前的基准视频帧的时间戳的差值大于时间戳误差阈值的视频帧作为新的基准视频帧,将其时间戳与后续接收的视频帧的时间戳进行比对,直至完成所有视频帧的画面归类;
20.记录模块,用于记录每一画面时间戳下的画面信息至数据库,所述画面信息包括当前画面时间戳下各视频帧的ip地址、帧类型以及码流字节偏移地址;
21.回放模块,用于在接收到回放指令时,根据画面时间戳的时间先后顺序从所述数据库中依次读取对应的画面信息。根据本发明第四方面的一种能够实现的方式中,所述视频帧对应的帧类型不包括b帧。
22.根据本发明第四方面的一种能够实现的方式中,所述装置还包括:
23.请求发送模块,用于向各录制节点发送音视频码流请求。
24.本发明第五方面提供一种画面同步录制系统,所述系统包括:
25.多个录制节点,用于录制目标显示墙画面;
26.录播服务器,用于接收各所述录制节点的音视频码流;所述音视频码流包括多个视频帧以及每个视频帧的标识信息,所述标识信息包括时间戳、帧类型以及在所在音视频码流中的码流字节偏移地址;其中各所述录制节点之间设置ntp时间同步;对各所述录制节点的视频帧的时间戳进行比对,根据比对结果对各所述视频帧进行画面归类,包括:将首次接收的视频帧作为当前的基准视频帧,若后续接收到的视频帧的时间戳与当前的基准视频帧的时间戳的差值不大于时间戳误差阈值,将所述后续接收到的视频帧与当前的基准视频帧归为同一画面,并以当前的基准视频帧的时间戳作为对应的画面时间戳,否则,以第一个与当前的基准视频帧的时间戳的差值大于时间戳误差阈值的视频帧作为新的基准视频帧,将其时间戳与后续接收的视频帧的时间戳进行比对,直至完成所有视频帧的画面归类;记录每一画面时间戳下的画面信息至数据库,所述画面信息包括当前画面时间戳下各视频帧的ip地址、帧类型以及码流字节偏移地址;以及,接收到回放指令时,根据画面时间戳的时间先后顺序从所述数据库中依次读取对应的画面信息。
27.根据本发明第五方面的一种能够实现的方式中,所述视频帧对应的帧类型不包括b帧。
28.根据本发明第五方面的一种能够实现的方式中,所述录播服务器还用于:
29.向各录制节点发送音视频码流请求。
30.从以上技术方案可以看出,本发明具有以下优点:
31.本发明将接收的多路音视频码流中的视频帧进行比对,其中,若后续接收的视频帧与当前的基准视频帧的时间戳差值不大于时间戳误差阈值,则将各视频帧归为同一画面,并以当前基准视频帧的时间戳作为该画面的画面时间戳;并记录各画面时间戳下的画面信息到数据库,进而在需要回放视频时根据画面时间戳的时间先后顺序从所述数据库中依次读取对应的画面信息;本发明在视频的录制过程中即实现不同视频帧的同步存储,在进行视频回放时只需要根据数据库所存储好的画面信息进行回放,能够有效解决视频回放所要求的多拼接画面同步的技术问题。
附图说明
32.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
33.图1为本发明一个可选实施例提供的一种画面同步录制方法的流程图;
34.图2为本发明一个可选实施例提供的一种画面同步录制装置的结构示意图。
35.附图说明:
36.1-接收模块;2-处理模块;3-记录模块;4-回放模块。
具体实施方式
37.本发明实施例提供了一种画面同步录制方法、装置、系统及计算机存储介质,用于解决视频回放所要求的多拼接画面同步的技术问题。
38.为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
39.本发明提供了一种画面同步录制方法,该方法应用于录播服务器。
40.请参阅图1,图1示出了本发明实施例提供的一种画面同步录制方法的流程图。
41.本发明实施例提供的方法,包括步骤s1-s4。
42.步骤s1,接收用于录制目标显示墙画面的各录制节点的音视频码流;所述音视频码流包括多个视频帧以及每个视频帧的标识信息,所述标识信息包括时间戳、帧类型以及在所在音视频码流中的码流字节偏移地址;其中各所述录制节点之间设置ntp时间同步。
43.其中,各录制节点在发送音视频码流时,音频数据与视频数据分开发送。
44.在一种能够实现的方式中,所述视频帧对应的帧类型不包括b帧。
45.mpeg/h.26x编码技术将画面的帧类型分为i帧、p帧、b帧三种。其中,i帧是内部编码帧,p帧是前向预测帧,b帧是双向内插帧。简单地讲,i帧是一个完整的画面,是每个画面组的第一个帧,而p帧和b帧记录的是相对于i帧的变化,p帧由在它前面的p帧或i帧进行预测。本发明实施例,视频帧的帧类型仅为p帧或i帧。具体实施中,可以设置特定的传输协议,使得录制节点根据该传输协议发送音视频数据,该传输协议中视频帧的类型只有i帧和p帧。
46.步骤s2,对各所述录制节点的视频帧的时间戳进行比对,根据比对结果对各所述视频帧进行画面归类,包括:将首次接收的视频帧作为当前的基准视频帧,若后续接收到的视频帧的时间戳与当前的基准视频帧的时间戳的差值不大于时间戳误差阈值,将所述后续接收到的视频帧与当前的基准视频帧归为同一画面,并以当前的基准视频帧的时间戳作为对应的画面时间戳,否则,以第一个与当前的基准视频帧的时间戳的差值大于时间戳误差阈值的视频帧作为新的基准视频帧,将其时间戳与后续接收的视频帧的时间戳进行比对,直至完成所有视频帧的画面归类。
47.其中,可以根据实际需要自定义时间戳误差阈值,这样提供了更大的灵活性。为最优化视频画面的同步效果,作为优选,设置时间戳误差阈值为帧间隔的1/3。例如视频码流的帧率为30/秒,则帧间隔为33毫秒,则时间戳误差阈值最优选时设为11毫秒。由于录制节点经过了ntp时间同步,一般时间戳的误差可控制在1~3毫秒内。
48.为更好地阐述步骤s2,以陆续接收到的n个视频帧为例,设该n个视频帧为x1,x2,x3,x4,x5,
…
,xn,相应的时间戳为t1,t2,t3,t4,t5,
…
,tn,时间戳误差阈值为δt,执行步骤s2时:
49.以x1作为基准视频帧,计算|t1-t2|,若|t1-t2|≤δt,计算|t1-t3|,若|t1-t3|≤δt,计算|t1-t4|,若|t1-t4|》δt,则将视频帧x1、x2、x3归为同一画面,并以t1为该同一画面的画面时间戳,以视频帧x4作为新的基准视频帧,将视频帧x4与后续接收的视频帧x5,
…
,xn进行比对,以此类推。
50.步骤s3,记录每一画面时间戳下的画面信息至数据库,所述画面信息包括当前画面时间戳下各视频帧的ip地址、帧类型以及码流字节偏移地址。
51.其中,步骤s3可在进行画面归类时同步完成。
52.经过步骤s3,数据库中存储的数据形式可如下表所示:
[0053][0054]
步骤s4,接收到回放指令时,根据画面时间戳的时间先后顺序从所述数据库中依
次读取对应的画面信息。
[0055]
例如,当数据库中存储的数据形式如上述表格所示时,回放过程中只需要根据画面编号,读取同一个画面编号下的画面信息进行回放即可。
[0056]
在一种能够实现的方式中,所述方法还包括:
[0057]
向各录制节点发送音视频码流请求。
[0058]
本发明还提供一种画面同步录制装置,包括:
[0059]
存储器,用于存储指令;其中,所述指令为可实现如上任意一项能够实现的方式所述的画面同步录制方法的指令;
[0060]
处理器,用于执行所述存储器中的指令。
[0061]
本发明还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任意一项能够实现的方式所述的画面同步录制方法。
[0062]
本发明还提供了一种画面同步录制装置。
[0063]
请参阅图2,图2示出了本发明实施例提供的一种画面同步录制装置的结构示意图。
[0064]
本发明实施例的画面同步录制装置,包括:
[0065]
接收模块1,用于接收用于录制目标显示墙画面的各录制节点的音视频码流;所述音视频码流包括多个视频帧以及每个视频帧的标识信息,所述标识信息包括时间戳、帧类型以及在所在音视频码流中的码流字节偏移地址;其中各所述录制节点之间设置ntp时间同步;
[0066]
处理模块2,用于对各所述录制节点的视频帧的时间戳进行比对,根据比对结果对各所述视频帧进行画面归类,包括:将首次接收的视频帧作为当前的基准视频帧,若后续接收到的视频帧的时间戳与当前的基准视频帧的时间戳的差值不大于时间戳误差阈值,将所述后续接收到的视频帧与当前的基准视频帧归为同一画面,并以当前的基准视频帧的时间戳作为对应的画面时间戳,否则,以第一个与当前的基准视频帧的时间戳的差值大于时间戳误差阈值的视频帧作为新的基准视频帧,将其时间戳与后续接收的视频帧的时间戳进行比对,直至完成所有视频帧的画面归类;
[0067]
记录模块3,用于记录每一画面时间戳下的画面信息至数据库,所述画面信息包括当前画面时间戳下各视频帧的ip地址、帧类型以及码流字节偏移地址;
[0068]
回放模块4,用于接收到回放指令时,根据画面时间戳的时间先后顺序从所述数据库中依次读取对应的画面信息。
[0069]
在一种能够实现的方式中,所述视频帧对应的帧类型不包括b帧。
[0070]
在一种能够实现的方式中,所述装置还包括:
[0071]
请求发送模块,用于向各录制节点发送音视频码流请求。
[0072]
本发明还提供了一种画面同步录制系统。
[0073]
本发明实施例的画面同步录制系统,包括:
[0074]
多个录制节点,用于录制目标显示墙画面;
[0075]
录播服务器,用于接收各所述录制节点的音视频码流;所述音视频码流包括多个视频帧以及每个视频帧的标识信息,所述标识信息包括时间戳、帧类型以及在所在音视频
码流中的码流字节偏移地址;其中各所述录制节点之间设置ntp时间同步;对各所述录制节点的视频帧的时间戳进行比对,根据比对结果对各所述视频帧进行画面归类,包括:将首次接收的视频帧作为当前的基准视频帧,若后续接收到的视频帧的时间戳与当前的基准视频帧的时间戳的差值不大于时间戳误差阈值,将所述后续接收到的视频帧与当前的基准视频帧归为同一画面,并以当前的基准视频帧的时间戳作为对应的画面时间戳,否则,以第一个与当前的基准视频帧的时间戳的差值大于时间戳误差阈值的视频帧作为新的基准视频帧,将其时间戳与后续接收的视频帧的时间戳进行比对,直至完成所有视频帧的画面归类;记录每一画面时间戳下的画面信息至数据库,所述画面信息包括当前画面时间戳下各视频帧的ip地址、帧类型以及码流字节偏移地址;以及,接收到回放指令时,根据画面时间戳的时间先后顺序从所述数据库中依次读取对应的画面信息。
[0076]
在一种能够实现的方式中,所述视频帧对应的帧类型不包括b帧。
[0077]
在一种能够实现的方式中,所述录播服务器还用于:
[0078]
向各录制节点发送音视频码流请求。
[0079]
本发明上述实施例,将接收的多路音视频码流中的视频帧进行比对,根据比对结果对各所述视频帧进行画面归类,包括:将首次接收的视频帧作为当前的基准视频帧,若后续接收到的视频帧的时间戳与当前的基准视频帧的时间戳的差值不大于时间戳误差阈值,将所述后续接收到的视频帧与当前的基准视频帧归为同一画面,并以当前的基准视频帧的时间戳作为对应的画面时间戳,否则,以第一个与当前的基准视频帧的时间戳的差值大于时间戳误差阈值的视频帧作为新的基准视频帧,将其时间戳与后续接收的视频帧的时间戳进行比对,直至完成所有视频帧的画面归类;本发明实施例,还记录各画面时间戳下的画面信息到数据库,进而在需要回放视频时根据画面时间戳的时间先后顺序从所述数据库中依次读取对应的画面信息;本发明在视频的录制过程中即实现不同视频帧的同步存储,在进行视频回放时只需要根据数据库所存储好的画面信息进行回放,能够有效解决视频回放所要求的多拼接画面同步的技术问题。
[0080]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0081]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0082]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0083]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0084]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0085]
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些
本文用于企业家、创业者技术爱好者查询,结果仅供参考。