码流转换系统及方法、码流识别单元和方案确定单元 【技术领域】
本发明实施例涉及视频技术领域,尤其涉及一种码流转换系统及方法、码流识别单元和方案确定单元。
背景技术
随着数字视频技术的快速发展,各种数字视频压缩国际标准的制定和推广,使得视频在获得极高压缩比的同时也获得了较高的视频质量,因而数字视频广播(DVB)、数字视频光盘(DVD)、数字摄像机、远程教学、在线点播和视频会议等也获得了广泛的应用。为了适应不同的应用场合,国际标准化组织制定了多种视频编码标准,例如H.263用于可视电话和视频会议等场合,运动图像专家组(Motion Picture Experts Group,MPEG)-2用于数字视频广播、高清晰度数字电视(HDTV)和DVD等场合,MPEG-4用于网络流式视频应用,H.264/高级视频编码(Advanced Video Coding,AVC)可以提供更高的压缩比和更好的图像质量。
近几年,随着立体视频技术的发展,相关的国际标准正在讨论和制定中,其扩展特性H.264/可升级视频编码(Scalable Video Coding,SVC)可以提供不同质量的视频,即将制定完成的H.264/多视频编码(Multi Video Coding,MVC)将提供多视点视频的压缩标准;随着数字视频应用的普及,要求视频数据格式随着应用环境不同而采用不同编码标准的要求变得越来越迫切,对于许多实时应用,通常要求视频数据在各种编码格式之间实现动态实时转换,例如立体视频和传统的平面视频之间的相互转换也将成为需求的重点,将视频数据由一种编码格式转换成另一种编码格式的技术是视频转码技术,执行视频转码操作的设备就是视频转码器,视频转码包含两个方面的含义,一方面是在同一视频编码标准内部进行转换,例如不同码率之间的转换,不同分辨率之间的转换等,另一方面是不同视频压缩标准之间的转换,即将一种标准压缩的视频数据转换成另一种视频压缩标准的视频数据。
视频转码技术的基本原则是在环境和处理能力受限的情况下,在码流转换的质量和复杂度之间的最佳折衷,实现的关键是对压缩视频码流中的压缩数据进行复用,避免重新编码带来的复杂运算。随着立体视频技术的发展和标准的逐渐成熟,立体视频和平面视频之间的转换必将成为应用领域的一个重要技术。现有的许多转码技术都是在普通的平面视频之间进行转换,例如MPEG-2码流与MPEG-4码流之间的转换,MPEG-4与H.263、H.264之间的转换,这些技术都非常好地解决了平面视频压缩标准之间的转换问题;但现有视频转码技术无法进行立体视频与平面视频之间的转换。
【发明内容】
本发明实施例提供一种码流转换系统及方法、码流识别单元和方案确定单元,以实现立体视频与平面视频之间的自动转换,从而实现立体视频码流和普通平面码流之间的互通。
本发明实施例提供了一种码流转换系统,该系统包括:
码流识别单元,用于对读取的待转换的原始码流进行解析;
方案确定单元,用于根据目标码流格式和解析后的原始码流格式确定转码方案;
计算单元,用于根据所述转码方案对所述解析后的原始码流格式进行解码、编码计算,完成码流转换;
其中,当所述原始码流格式为平面视频码流格式时,所述目标码流格式为立体视频码流格式;当所述原始码流格式为立体视频码流格式时,所述目标码流格式为平面视频码流格式。
上述码流转换系统,通过码流识别单元对原始码流进行解析,通过方案确定单元根据目标码流格式和解析后的码流格式确定转码方案,从而可以实现立体视频码流和平面视频码流间的互相转换。
本发明实施例提供了一种码流识别单元,该码流识别单元包括:
读取模块,用于读取待转换的原始码流,所述原始码流包括立体视频码流;
解析模块,用于对所述原始码流进行解析。
上述码流识别单元,通过对原始码流进行解析,为实现立体视频码流和平面频码流间的互相转换作好了准备。
本发明实施例提供了一种方案确定单元,该方案确定单元包括:
接收模块,用于接收目标码流格式和解析后的原始码流格式,其中,当所述原始码流格式为平面视频码流格式时,所述目标码流格式为立体视频码流格式;当所述原始码流格式为立体视频码流格式时,所述目标码流格式为平面视频码流格式;
确定模块,用于根据所述目标码流格式和所述解析后的原始码流格式确定转码方案。
上述方案确定单元,根据解析后的原始码流格式和目标码流格式确定转码方案,为实现立体视频码流和平面频码流间的互相转换作好了准备。
本发明实施例还提供了一种码流转换方法,该方法包括:
接收目标码流格式和解析后的原始码流格式;
根据所述目标码流格式和所述解析后的原始码流格式确定转码方案并根据所述转码方案对所述解析后的原始码流格式进行解码、编码,完成码流转换;
其中,当所述原始码流格式为平面视频码流格式时,所述目标码流格式为立体视频码流格式;当所述原始码流格式为立体视频码流格式时,所述目标码流格式为平面视频码流格式。
上述码流转换方法,通过根据解析后原始码流格式和目标码流格式确定转码方案,从而可以实现立体视频码流和平面视频码流间的互相转换。
下面通过附图和实施例,对本发明实施例的技术方案做进一步的详细描述。
【附图说明】
图1为本发明码流转换系统实施例的结构示意图;
图2为本发明码流识别单元实施例的结构示意图;
图3为本发明方案确定单元实施例的结构示意图;
图4为本发明码流转换方法实施例一地流程图;
图5为本发明码流转换方法实施例二的流程图;
图6为本发明码流转换方法实施例三的流程图;
图7为本发明码流转换方法实施例四的流程图;
图8为本发明码流转换方法实施例五的流程图;
图9为本发明码流转换方法实施例六的流程图;
图10为本发明码流转换方法实施例七的流程图;
图11为本发明码流转换方法实施例八的流程图。
【具体实施方式】
如图1所示,为本发明码流转换系统实施例的结构示意图,该系统包括:码流识别单元2,用于对读取的待转换的原始码流进行解析;方案确定单元3,用于根据上述目标码流格式和解析后的原始码流格式确定转码方案;计算单元4,用于根据所述转码方案对上述解析后的原始码流格式进行解码、编码计算,完成码流转换;其中,当上述原始码流格式为平面视频码流格式时,上述目标码流格式为立体视频码流格式;当上述原始码流格式为立体视频码流格式时,上述目标码流格式为平面视频码流格式。
其中,上述码流转换系统可以包括:输入单元1,用于接收待转换的原始码流并保存,上述原始码流包括立体视频码流和平面视频码流;另外,上述码流转换系统还可以包括:输出单元5,用于输出计算单元4码流转换后的码流。
上述系统通过输入单元接收待转换的原始码流,通过码流识别单元对上述原始码流进行解析,通过方案确定单元根据目标码流格式和解析后的原始码流格式确定方案,通过计算单元完成码流的转换,最后通过输出单元输出转换后的码流;从而较好地实现了立体视频码流和平面视频码流间的互相转换。
如图2所示,为本发明码流识别单元实施例的结构示意图,该码流识别单元包括:读取模块21,用于读取待转换的原始码流,上述原始码流包括立体视频码流或平面视频码流;解析模块22,用于对上述原始码流进行解析。
当原始码流为立体视频码流时,读取模块可以读取待转换得立体视频码流;当原始码流为平面视频码流时,读取模块可以读取待转换得平面视频码流,解析模块用于对读取后的码流进行解析。
上述码流识别单元,通过对原始码流进行解析,为实现立体视频码流和平面频码流间的互相转换作好了准备。
如图3所示,为本发明方案确定单元实施例的结构示意图,该方案确定单元包括:接收模块31,用于接收目标码流格式和解析后的原始码流格式,其中,当上述原始码流格式为平面视频码流格式时,上述目标码流格式为立体视频码流格式;当上述原始码流格式为立体视频码流格式时,上述目标码流格式为平面视频码流格式;确定模块32,用于根据上述目标码流格式和上述解析后的原始码流格式确定转码方案。
当原始码流为立体视频码流,目标码流为平面视频码流时,上述确定模块根据解析后的立体视频码流格式和平面视频码流格式确定转码方案;当原始码流为平面视频码流,目标码流为立体视频码流时,上述确定模块根据解析后的平面视频码流格式和立体视频码流格式确定转码方案。
上述方案确定单元,根据目标码流格式和解析后的原始码流格式确定转码方案,为实现立体视频码流和平面频码流间的互相转换作好了准备。
如图4所示,为本发明码流转换方法实施例一的流程图,该方法包括:
步骤101、接收待转换的原始码流并保存;
该步骤为可选步骤,输入单元接收待转换的原始码流并保存,此处原始码流可以包括立体视频码流、平面视频码流等;
步骤102、读取待转换的原始码流;
码流识别单元读取待转换的原始码流;
步骤103、对上述原始码流进行解析并发送,以便根据目标码流格式和解析后的码流格式确定转码方案;
码流识别单元对上述原始码流进行解析并发送至方案确定单元,以便方案确定单元根据目标码流格式和解析后的码流格式确定转码方案;该步骤包括:当原始码流为立体视频码流,目标码流为平面视频码流时,对立体视频码流进行解析,并根据解析后的立体视频码流格式和平面视频码流格式确定转码方案;当原始码流为平面视频码流,目标码流为立体视频码流时,对平面视频码流进行解析,并根据解析后的平面视频码流格式和立体视频码流格式确定转码方案;上述立体视频码流格式可以为基本码流和视差信息,上述平面视频码流格式可以为基本码流;上述立体视频码流格式也可以为由基本码流和视差信息拼成的帧,上述平面视频码流格式也可以为基本码流;上述平面视频码流格式还可以为基本码流,上述立体视频码流格式还可以为左右通道视频帧交织生成的新视频帧,上述三种情况只是对平面视频码流格式和立体视频码流格式的举例,但不限于上述三种情况;
步骤104、根据上述转码方案进行解码、编码计算,完成码流转换;
该步骤为可选步骤,由计算单元根据上述转码方案完成解码、编码计算;
步骤105、输出转换后的码流。
该步骤为可选步骤,由输出单元输出转换后的码流。
上述码流转换方法,通过对原始码流进行解析以确定转码方案,从而可以实现立体视频码流和平面视频码流间的互相转换。
如图5所示,为本发明码流转换方法实施例二的流程图,该方法包括:
步骤201、对读取的待转换的原始码流进行解析;
该步骤为可选步骤,首先由输入单元接收待转换的原始码流并保存,然后由码流识别单元读取上述原始码流,并对上述原始码流进行解析;
步骤202、接收目标码流格式和解析后的原始码流格式;
方案确定单元接收目标码流格式和解析后的原始码流格式;
步骤203、根据上述目标码流格式和解析后的原始码流格式确定转码方案并发送;
方案确定单元根据目标码流格式和解析后的原始码流格式确定转码方案;该步骤包括:当原始码流为立体视频码流,目标码流为平面视频码流时,对立体视频码流进行解析,并根据解析后的立体视频码流格式和平面视频码流格式确定转码方案;当原始码流为平面视频码流,目标码流为立体视频码流时,对平面视频码流进行解析,并根据解析后的平面视频码流格式和立体视频码流格式确定转码方案;将上述转码方案发送至计算单元;
步骤204、根据上述转码方案进行解码、编码计算,完成码流转换;
该步骤为可选步骤,由计算单元根据上述转码方案完成解码、编码计算;
步骤205、输出转换后的码流。
该步骤为可选步骤,由输出单元输出转换后的码流。
上述码流转换方法,通过根据解析后原始码流格式和目标码流格式确定转码方案,从而可以实现立体视频码流和平面视频码流间的互相转换。
如图6所示,为本发明码流转换方法实施例三的流程图,该实施例是将按照H.264/AVC格式编码的双目立体视频码流转换成普通的H.264码流,其中,双目立体视频码流包括两部分视频数据:左通道平面视频数据和右通道视频数据相对与左通道视频数据的深度/视差信息,深度/视差信息的获取可以通过在左右通道视频帧之间进行立体匹配得到或者由深度摄像机直接摄取,双目立体视频码流由左通道视频数据作为普通视频数据按照H.264/AVC标准编码成基本码流,与基本码流每一视频帧对应的视差信息按照普通灰度图像帧编码到补充增强信息(Supplemental Enhancement Information,SEI)信息中,SEI信息附加在基本码流的每一帧前构成的,该方法包括:
步骤301、接收待转换的原始双目立体视频码流;
输入单元接收待转换的原始双目立体视频码流;
步骤302、对上述原始双目立体视频码流进行解析并发送;
码流识别单元从输入单元读取输入的原始双目立体视频码流,并解析上述码流,得到码流格式为基本码流+SEI类型,将将解析后的原始双目立体视频码流发送给方案确定单元;
步骤303、根据解析后的原始双目立体视频码流和H.264码流格式,确定转码方案;
方案确定单元读取该单元的两个输入:原始码流格式(基本码流+SEI)和目标码流格式(基本码流),确定转码方案为直接去掉码流中的SEI信息,同时修改部分参数;
步骤304、根据上述转码方案,进行解码、编码计算;
计算单元根据转码方案选择单元确定的转码方案,读取输入数据单元中的码流数据包,判断出当前数据包是否为SEI信息,如果是,则直接抛弃,否则,不作任何处理,直接通过输出数据单元输出;
步骤305、输出计算后的码流。
输出单元从计算单元得到去掉SEI信息的码流后直接输出。
采用上述码流转换方法,可以较好地将包含基本码流和视差信息的立体视频码流转换成包含基本码流的平面视频码流。
与本发明码流转换方法实施例三相对应,可以将平面视频码流转换成立体视频码流,如图7所示,为本发明码流转换方法实施例四的流程图,当输入的待转换原始码流为普通的H.264/AVC码流,目标码流为双目立体视频码流,要求按照H.264/AVC标准进行编码,深度/视差信息按照普通的灰度图编码到SEI信息中,该方法包括:
步骤401、接收待转换的平面视频码流;
输入单元接收部分待转换的原始普通H.264/AVC格式的视频码流;
步骤402、对读取的平面视频码流进行解析并发送;
码流识别单元从输入单元读取输入的原始码流,解析上述原始码流,得到为H.264/AVC格式的码流,并将解析后的码流发送给方案确定单元;
步骤403、根据解析后的平面码流格式和目标码流格式确定转码方案;
上述目标码流格式为立体视频码流格式,方案确定单元读取该单元的两个输入:平面码流格式(H.264/AVC格式)和立体视频码流格式(基本码流+SEI),确定转码方案为解析平面码流的视频帧,进行区域分割,获取深度信息,然后将深度信息按照普通灰度图编码到SEI信息附加到码流中;
步骤404、根据上述转码方案进行解码、编码计算;
计算单元根据方案确定单元确定的转码方案,读取输入单元中的码流数据包,解析出视频帧,然后进行区域分割,附加深度信息,深度信息编码到SEI信息中,并打包成网络抽象层(NAL)结构;
步骤405、输出打包后的码流。
输出单元从计算单元得到打包后的码流后直接输出。
采用上述码流转换方法,可以较好地将包含基本码流的平面视频码流转换成包含基本码流和视差信息的立体视频码流。
如图8所示,为本发明码流转换方法实施例五的流程图,该实施例中原始码流为立体视频码流,目标码流为普通平面码流,立体视频码流格式为H.264格式,其中左通道视频帧和对应的深度/视差信息拼成一大帧,按照H.264/AVC标准编码;普通平面视频为只包含左通道数据的基本H.264/AVC码流,该方法包括:
步骤501、接收待转换的原始立体视频码流;
输入单元接收部分待转换的原始立体视频码流;
步骤502、对原始立体视频码流进行解析;
码流识别单元从输入单元读取待转换的原始立体视频码流,并对该码流进行解析,解析出码流结构为每一帧都包含了左通道视频帧和对应的视差信息,并且左通道视频帧和视差信息按照不同的片(SLICE)进行组织;
步骤503、根据解析后的原始立体视频码流格式和目标码流格式确定转码方案;
方案确定单元从码流识别单元得到原始码流格式,确定转码方案为对于原始码流中每个视频帧中的每个SLICE,如果该SLICE对应的视频帧为左通道视频帧,则不作任何处理直接放入输出数据接口;如果对应的是深度/视差信息,则直接抛弃;
步骤504、根据上述转码方案进行解码、编码计算;
计算单元按照方案确定单元确定的转码方案,解析码流中每个视频帧NAL的SLICE序号,如果对应的是左通道视频帧,则不作任何处理,直接放入输出单元;如果对应的是深度/视差信息,则直接抛弃;
步骤505、输出转换后的码流。
输出单元将转换后的码流直接输出。
采用上述码流转换方法,可以较好地将包含由基本码流和视差信息拼成数据帧的立体视频码流转换成包含基本码流的平面视频码流。
与本发明码流转换方法实施例五相对应,可以将平面视频码流转换成立体视频码流,如图9所示,为本发明码流转换方法实施例六的流程图,本实施例中待转换的码流为普通的平面码流,目标码流为按照H.264/AVC标准编码的拼帧结构的立体视频码流,该方法包括:
步骤601、接收待转换的平面视频码流;
输入单元接收部分待转换的平面视频码流;
步骤602、对上述平面视频码流进行解析;
码流识别单元从输入单元读取待转换的原始按照H.264/AVC标准编码的普通平面视频码流,解析上述码流,并解析出码流结构;
步骤603、根据解析后的平面视频码流和目标视频码流确定转码方案;
方案确定单元从码流识别单元得到解析后的平面视频码流格式,根据上述平面视频码流格式和立体视频码流格式确定转码方案为对于平面视频码流中每个视频帧;
步骤604、根据转码方案进行解码、编码计算;
计算单元按照方案确定单元确定的转码方案,解析码流中每个视频帧,进行解码、区域分割,获取深度信息,并将上述深度信息按照新的SLICE进行编码、打包,完成码流转换;
步骤605、输出转码后的码流。
输出单元将转换后的码流直接输出。
采用上述码流转换方法,可以较好地将包含基本码流的平面视频码流转换成包含由基本码流和视差信息拼成数据帧的立体视频码流。
如图10所示,为本发明码流转换方法实施例七的流程图,在该实施例中,待转换的码流为立体视频码流,立体视频码流格式为双目立体视频码流,每一帧结构为左右通道视频帧交织结合成新的视频帧;目标码流为普通平面码流,编码标准可以为已知的任一标准,该方法包括:
步骤701、接收待转换的原始立体视频码流;
输入单元接收部分待转换的原始立体视频码流;
步骤702、对原始立体视频码流进行解析;
码流识别单元从输入单元读取待转换的原始立体视频码流后,解析上述码流,并解析出码流结构为交织结构;
步骤703、根据解析后的原始立体视频码流格式和目标码流格式确定转码方案;
方案确定单元从码流识别单元得到原始码流格式和目标码流格式,确定转码方案为对于原始立体视频码流中的每个视频帧;
步骤704、根据转码方案进行解码、编码计算;
计算单元按照转码方案对于原始立体视频码流中每个视频帧进行解码,提取出其中一个通道的视频帧,进行重新编码;
步骤705、输出转换后的码流。
输出单元将转换后的码流直接输出。
采用上述码流转换方法,可以较好地将由左右通道视频帧交织结合成新的视频帧的立体视频码流转换成普通平面视频码流。
与本发明码流转换方法实施例七相对应,可以将平面视频码流转换成立体视频码流,如图11所示,为本发明码流转换方法实施例八的流程图,该实施例中,待转换得码流位普通平面视频码流,目标码流为立体视频码流,该方法包括:
步骤801、接收待转换的一个通道普通平面视频码流;
输入单元接收部分待转换的一个通道普通平面视频码流;
步骤802、对上述普通平面视频码流进行解析;
码流识别单元从输入单元读取待转换的原始普通平面视频码流,解析上述码流,并解析出码流结构;
步骤803、根据解析后的普通平面视频码流格式和目标码流格式确定转码方案;
方案确定单元根据目标码流格式和解析后的普通平面视频码流格式,确定转码方案为对于原始码流中每个视频帧;
步骤804、根据上述转码方案进行解码、编码计算;
计算单元按照方案确定单元确定的转码方案,解析码流中的每个视频帧,进行区域分割,获取深度信息,并将其转换为视差信息;然后重构出另一通道对应的视频帧,交织组成新的视频帧,并进行编码,完成码流转换;
步骤805、输出转换后的码流。
输出单元将转换后的码流直接输出。
采用上述码流转换方法,可以较好地将普通平面视频码流转换成由左右通道视频帧交织结合成新的视频帧的立体视频码流。
通过上述码流转换方法实施例可以看出:采用本发明提供的技术方案可以较好地将各种形式的立体视频码流转换成平面视频码流,相应地,也可以将平面视频码流转换成各种形式的立体视频码流。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。