CN111031032A - 云端视频转码方法及装置、解码方法及装置、及电子设备 - Google Patents
云端视频转码方法及装置、解码方法及装置、及电子设备 Download PDFInfo
- Publication number
- CN111031032A CN111031032A CN201911270511.4A CN201911270511A CN111031032A CN 111031032 A CN111031032 A CN 111031032A CN 201911270511 A CN201911270511 A CN 201911270511A CN 111031032 A CN111031032 A CN 111031032A
- Authority
- CN
- China
- Prior art keywords
- background
- target
- video
- data
- encoding
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明实施例提供一种云端视频转码方法及装置、解码方法及装置、及电子设备,方法包括:接收于用户端的视频请求,提取对应视频的背景信息以及目标前景的编码区域;基于所述背景时长,对所述相同背景的代表帧图像进行第一编码,得到第一背景编码数据,对所述其余帧图像进行第二编码,得到第二背景编码数据,所述第二编码的压缩率大于第一编码的压缩率;对所述目标前景的编码区域进行第三编码,得到目标前景数据,所述第三编码的压缩率小于等于所述第一编码的压缩率;将所述第一背景数据、第二背景数据以及目标前景数据进行合并为目标视频文件,并将所述目标视频文件发送到用户端。可以减少目标视频文件的数据量,提高较低传输码率的目标视频文件。
Description
技术领域
本发明涉及音视频处理技术领域,尤其涉及一种云端视频转码方法及装置、解码方法及装置、及电子设备。
背景技术
视频播放是当今互联网的一种热门应用,用户可以通过各种终端来访问云端服务器,并通过下载或边下边播的方式对云端服务器存储的视频文件进行播放,以观看视频文件中的内容。在下载后播放的方式中,是用户向云端服务器进行请求,从而从云端服务器上将对应能播放的视频数据完整地下载到终端,然后通过终端进行解码和编码,将下载的视频数据编码成终端技术的格式,在终端上加载视频文件进行播放。在边下边播的方式中,用户可以一边从云端服务器上下载视频数据到终端,一边在终端上进行实时解码和编码,将下载的视频数据实时地编码成终端支持的格式,从而加载视频进行播放。
这两种播放方式中,由于终端的异构性,均需要终端将视频数据解码和再编码成终端支持的视频播放格式之后再播放,这个过程称之为转码,而视频文件转码需要占用大量的终端资源,从而会导致视频播放启动时间延长,在转码过程中,还存在丢失数据的情况。
因此,基于云端的转码技术被提出来,用户向云端服务器进行请求,云端服务器器根据对视频进行转码,以转码得到对应终端支持的视频播放的视频文件,通过网络传输转文传输到终端,而终端只需要进行数据包解码即可对视频文件进行播放。但视频文件的传输受终端与云端的网络状态影响,可能导致实际带宽达不到视频文件所需要的传输码率,从而使得用户在终端观看视频时,视频出现卡顿,降低用户观看体验。
发明内容
本发明实施例提供一种云端视频转码方法,能够降低视频文件所需要的传输码率,提高用户的观看体验。
第一方面,本发明实施例提供一种云端视频转码方法,包括:
检测待转码视频中的背景信息以及目标前景信息,所述背景信息包括相同背景在所述待转码视频中的背景时长,所述目标前景信息包括目标前景的位置;
基于所述目标前景的位置,在所述目标前景的外周添加预设余量的背景掩码,得到目标前景的编码区域,所述编码区域包括目标前景以及预设余量的背景;
接收于用户端的视频请求,提取对应视频的背景信息以及目标前景的编码区域;
基于所述背景时长,对所述相同背景的代表帧图像进行第一编码,得到第一背景编码数据,对所述其余帧图像进行第二编码,得到第二背景编码数据,所述第二编码的压缩率大于第一编码的压缩率;
对所述目标前景的编码区域进行第三编码,得到目标前景数据,所述第三编码的压缩率小于等于所述第一编码的压缩率;
将所述第一背景数据、第二背景数据以及目标前景数据进行合并为目标视频文件,并将所述目标视频文件发送到用户端。
第二方面,本发明实施例提供一种视频解码方法,包括:
接收如第一方面中转码的目标视频文件;
解码所述目标视频文件,并对解码后的第一背景数据、第二背景数据以及前景数据进行对齐。
第三方面,本发明实施例提供一种云端视频转码装置,包括:
检测模块,用于检测待转码视频中的背景信息以及目标前景信息,所述背景信息包括相同背景在所述待转码视频中的背景时长,所述目标前景信息包括目标前景的位置;
掩码模块,用于基于所述目标前景的位置,在所述目标前景的外周添加预设余量的背景掩码,得到目标前景的编码区域,所述编码区域包括目标前景以及预设余量的背景;
提取模块,用于接收于用户端的视频请求,提取对应视频的背景信息以及目标前景的编码区域;
第一编码模块,用于基于所述背景时长,对所述相同背景的代表帧图像进行第一编码,得到第一背景编码数据,对所述其余帧图像进行第二编码,得到第二背景编码数据,所述第二编码的压缩率大于第一编码的压缩率;
第二编码模块,用于对所述目标前景的编码区域进行第三编码,得到目标前景数据,所述第三编码的压缩率小于等于所述第一编码的压缩率;
传输模块,用于将所述第一背景数据、第二背景数据以及目标前景数据合并为目标视频文件,并将所述目标视频文件发送到用户端。
第四方面,本发明实施例提供一种视频解码装置,包括:
接收模块,用于接收如第三方面中云端视频转码装置传输的目标视频文件;
解码模块,用于解码所述目标视频文件,并对解码后的第一背景数据、第二背景数据以及前景数据进行对齐。
第五方面,本发明实施例提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明实施例提供的云端视频转码方法中的步骤,或所述处理器执行所述计算机程序时实现如本发明实施例提供的视频解码方法中的步骤。
第六方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例提供的云端视频转码方法中的步骤,或所述计算机程序被处理器执行时实现本发明实施例提供的视频解码方法中的步骤。
本发明实施例中,通过检测待转码视频中的背景信息以及目标前景信息,所述背景信息包括相同背景在所述待转码视频中的背景时长,所述目标前景信息包括目标前景的位置;基于所述目标前景的位置,在所述目标前景的外周添加预设余量的背景掩码,得到目标前景的编码区域,所述编码区域包括目标前景以及预设余量的背景;接收于用户端的视频请求,提取对应视频的背景信息以及目标前景的编码区域;基于所述背景时长,对所述相同背景的代表帧图像进行第一编码,得到第一背景编码数据,对所述其余帧图像进行第二编码,得到第二背景编码数据,所述第二编码的压缩率大于第一编码的压缩率;对所述目标前景的编码区域进行第三编码,得到目标前景数据,所述第三编码的压缩率小于等于所述第一编码的压缩率;将所述第一背景数据、第二背景数据以及目标前景数据进行合并为目标视频文件,并将所述目标视频文件发送到用户端。由于将背景分别进行压缩率小的第一编码以及压缩率大的第二编码,使得到编码后的背景数据量减小,以降低视频文件所需要的传输码率,从而使视频文件的可以适应更低的网络带宽,减少了卡顿现象,提高了用户的观看体验。另外,由于预先对背景和前景进行分离,在获取到用户的视频请求时,可以直接提取背景和前景进行编码,提高了云端视频转码的速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种云端视频转码方法的流程示意图;
图2是本发明实施例提供的一种视频解码方法的流程示意图;
图3是本发明实施例提供的一种云端视频转码装置的结构示意图;
图4是本发明实施例提供的一种传输模块306的结构示意图;
图5是本发明实施例提供的另一种传输模块306的结构示意图;
图6是本发明实施例提供的另一种云端视频转码装置的结构示意图;
图7是本发明实施例提供的一种视频解码装置的结构示意图;
图8是本发明实施例提供的另一种视频解码装置的结构示意图;
图9是本发明实施例提供的一种电子设备基本结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
请参见图1,图1是本发明实施例提供的一种云端视频转码方法的流程示意图,如图1所示,包括以下步骤:
101、检测待转码视频中的背景信息以及目标前景信息。
上述背景信息包括相同背景在所述待转码视频中的背景时长,上述目标前景信息包括目标前景的位置。
其中,上述的待转码视频为存储在云端服务器中的源视频,上述的检测待转码视频中的背景信息以及目标前景信息可以是检测待转码视频中每一帧图像里的背景信息以及目标前景信息。
上述对待转码视频中的背景信息以及目标前景信息可以采用检测与跟踪算法进行检测,通过目标检测算法,提取出帧图像中的目标前景以及该目标前景所在帧图像中的位置,从而得到目标前景信息。具体的,目标前景信息包括目标前景的标识、目标前景所在帧位置、目标前景所在帧图像中的位置以及目标前景的大小。同样的,通过目标检测算法,提取出帧图像中非目标特征作为背景,并提取多个帧图像中的背景进行融合,得到背景的代表帧图像。
上述对待转码视频中的背景信息以及目标前景信息可以是采用高斯混合模型(GMM)对帧图像进行图像背景建模,其中,前景指的是假设背景为静止的情况下,任何有意义的运动物体即为前景。在通过高斯混合模型进行背景时,可以从当前帧图像中提取前景,使得背景更接近当前视频帧图像的背景。即可以利用当前帧图像和视频序列中的当前背景帧图像进行加权平均来更新背景。具体的,可以使用k个高斯模型来表征帧图像中各个像素点的特征,在新一帧图像获得后,更新混合高斯模型,用当前图像中的每个像素点与混合高斯模型匹配,如果成功则判断该像素点为背景点,否则为前景点。采用高斯混合模型对帧图像进行图像背景建模,当背景图像发生变化时,会自动重建新的背景图像。将高斯混合模型对图像背景建模的建模结果作为背景的代表帧图像,将高斯混合模型提取到前景作为目标前景。上述的目标前景可以是一个或多个。
在一个视频中,会存在多个背景,每个背景都有对应的背景时长,因此,一个视频中,可以提取多个背景的代表帧图像,每个代表帧图像都代表一段背景,不同的代表帧图像,代表不同的背景。背景时长用于表示该背景被使用的时间。
上述目标前景的位置指的是目标前景在帧图像中的像素区域,可以通过像素点坐标进行表示。在检测出目标前景后,可以对目标前景进行分割,得到目标前景在帧图像中的具体位置。上述目标前景的标识可以是该目标前景具体名称或编号,上述目标前景所在帧位置指的是该目标前景在视频中的第几帧中,可以通过每帧图像的时间戳进行确定,上述的目标前景所在帧图像中的位置指的是该目标前景在对应帧图像中的二维空间位置,可以通过图像分割进行计算,上述目标前景的大小指的该目标前景在对应帧图像中的二维空间形状,可以通过图像分割进行计算。
102、基于目标前景的位置,在目标前景的外周添加预设余量的背景掩码,得到目标前景的编码区域。
其中,上述编码区域包括目标前景以及预设余量的背景。
上述的目标前景的位置指的目标前景在当前帧图像中的二维空间位置,可以通过图像分割算法得到该目标前景在当前帧图像中的二维空间位置以及二维空间形状。也可以通过高斯混合模型对目标前景的二维空间位置以及二维空间形状进行计算。
根据目标前景在当前帧图像中的位置以及大小形状,在当前帧图像中,为该目标前景的外周进行背景掩码。具体的,将目标前景外周的背景进行掩码,使背景对应的所有像素点通过一个掩码值来进行表示,即通过掩码使得背景为一个颜色,从而使前景被凸显出来。进一步的,上述预设余量的背景可以理解为掩码背景与目标前景轮廓之间的背景,具体可以基于目标前景在当前帧图像中的位置以及大小形状,创建一个形状与该目标前景相同,大于该目标前景预设像素尺寸的轮廓,该轮廓与目标前景具有相同的中心点,对该轮廓外的背景进行掩码,得到目标前景以及包围该目标前景一周的部分背景,该部分背景作为预设余量的背景,预设的余量与预设像素尺寸的轮廓与该目标前景的像素尺寸之差。该轮廓也可以通过生长法进行生成,即在目标前景的轮廓基础上进行生长算法,向外生成一个大于目标前景轮廓的轮廓。
在一种可能的实施例中,当前帧图像中具有多个目标前景时,计算多个目标前景之间的最小像素距离,当存在两个或以上的目标前景之间的最小像素距离小于预设距离时,将该两个或以上的目标前景进行合并,对合并后的目标前景进行背景掩码,并留出预设余量的背景在合并后的目标前景与掩码后的背景之间。
通过对目标前景进行背景掩码,使得目标前景的外周也具有部分的背景信息,从而得到目标前景的编码区域。在对目标前景进行编码时,对该目标前景编码区域进行编码即可,不用对所有的背景也进行编码,这样,就可以把背景与前景分开进行编码。
上述的背景信息以及目标前景的编码区域长时间存放在云端服务器中,并建立与源视频标识的映射。在用户向云端服务器进行视频进行请求时,会携带有视频标识,该视频标识指向云端服务器中对应的源视频标识,该源视频标识与源视频存在映射关系,可以通过该源视频标识索引出对应的源视频。在本发明实施例中,可以通过该源视频标识索引出对应的背景信息以及目标前景信息进行转码合并,而不需要索引出源视频进行转码。
103、接收于用户端的视频请求,提取对应视频的背景信息以及目标前景的编码区域。
其中,上述的视频请求中携带有视频标识以及用户端参数。上述的视频标识可以是视频名称对应的字段。上述的终端参数可以是用户端播放视频所需要的格式、分辨率、传输码率、帧率等。
上述的用户端播放视频所需要的格式可以有AVI、wma、rmvb、rm、flash(主要是在web网页上进行播放)、mp4、mid、pal(主要是用于电视播放)以及3GP等,其中,AVI格式的视频文件一般比较大,但其清晰最高;rmvb、wma格式的视频文件清晰度中等;rm格式的视频文件清晰度稍微差些;而flash、mp4、mid、3GP格式的视频文件清晰度最差,一般适合网络播放与移动媒体设备播放用的。
上述的分辨率可以是用户端本身适配的屏幕分辨率,也可以是用户自行选择的分辨率,在此情况下,用户自行选择的分辨率若小于用户端本身适配的屏幕分辨率,则在用户终端上会显示出黑色边框区域;或用户自行选择的分辨率若大于用户端本身适配的屏幕分辨率,则在用户终端上会显示不出视频的边缘区域。
上述的帧率可以是用户端播放器默认的帧率,一般而言,在每秒24帧以上,可以让用户观看到连续流畅的视频。
上述的传输码率是指的视频文件在单位时间内传输数据的大小,受传输时的带宽影响,即如果是1M的宽带,在网上只能看不超过1024kbps的视频,超过1024kbps的视频只能等视频缓冲才能流畅的观看。
用户通过用户端选取想要看的视频,用户端则根据用户的选择,将用户选取的视频标识以及用户端本身的终端参数打包成数据包,发送到云端服务器上进行视频的请求。
上述的视频标识为视频名称,将视频请求中的视频名称字段与云端务器中的源视频对应的视频标识字段进行匹配,以匹配出与视频请求中的视频名称字段相同的源视频的视频标识字段。
若在云端服务器中匹配到与视频请求中的视频名称字段相同的源视频标识字段,则说明云端服务器中存在对应于视频请求的源视频。进一步的,源视频被拆分为背景信息以及目标前景的编码区域,因此,根据视频名称字段相同的源视频标识字段,可以查找到所请求视频的前景信息以及目标前景的编码区域并提取,然后,通过对前景信息以及目标前景的编码区域分别进行转码并合并,可得到所请求的目标视频文件。
104、基于背景时长,对相同背景的代表帧图像进行第一编码,得到第一背景编码数据,对其余帧图像进行第二编码,得到第二背景编码数据。
其中,上述第二编码的压缩率大于第一编码的压缩率。
在该步骤中,上述的背景时长通过步骤101进行获取,上述的背景时长指的该背景持续在多少帧图像中出现,由于帧率的确定,比如每秒24帧,当有一个背景持续在240帧图像中出现,则可以得到背景时长为10秒,当然,以帧为时长单位进行计算的话,该背景时长为240帧。
在一个视频中,会存在多个背景,每个背景都有对应的背景时长,因此,一个视频中,可以提取多个背景的代表帧图像,每个代表帧图像都代表一段背景,不同的代表帧图像,代表不同的背景。背景时长用于表示该背景被使用的时间。比如,在一个视频中,背景有森林1、森林2两个背景,森林1的背景时长为360帧,森林2的背景时长为180帧,森林1与森林2为连续出现的背景,通过高斯混合模型对森林1以及森林2的背景进行建模,分别得到背景的代表帧图像1、代表帧图像2,代表帧图像1为森林1的背景,代表帧图像为森林2的背景,代表帧图像1可以代表森林1中对应360帧图像中的背景图像,代表帧图像2可以代表森林2中对应180帧图像中的背景图像。一个相同背景可以只有一个代表帧图像,在视频文件传输码率大于实际网络带宽时,对背景的编码可以只编码代表帧图像作为背景,其余帧图像中的背景可以使用对齐符号代替,在用户端进行解码时,通过对齐符号将解码的代表帧图像对齐到其余帧图像中作为背景。在视频文件传输码率小于实际网络带宽时,可以对其余帧图像中的背景也进行编码,具体的,可以通过图像分割算法将其余帧图像中的背景与目标前景的编码区域进行分割,得到对应的背景图像。对代表帧图像以及其余帧图像通过不同的编码方式进行编码,比如,在森林1对应的360帧图像中,代表帧图像占第一帧的背景编码量,通过第一编码方式进行编码,得到第一背景数据,其余359帧图像占剩余359帧的背景编码量,通过第二编码方式进行编码,得到第二背景数据。第一编码方式可以无损采样编码或低损采样编码,第二编码方式可以是中损采样编码,也可以解释为第二编码的压缩率大于第一编码方式的压缩率,使得到代表帧图像保留原来清晰度或清晰度稍稍下降,其余帧图像清晰度下降程度高于代表帧图像。
105、对目标前景的编码区域进行第三编码,得到目标前景数据。
其中,第三编码的压缩率小于等于上述第一编码的压缩率。
上述的第三编码方式可以与上述第一编码方式相同,第三编码方式与第一编码方式都可以是基于无损采样的编码方式,保留原图像的清晰度。
106、将第一背景数据、第二背景数据以及目标前景数据进行合并为目标视频文件,并将目标视频文件发送到用户端。
云端服务器在编码得到第一背景数据、第二背景数据以及目标前景数据后,对第一背景数据、第二背景数据以及目标前景数据进行合并成为目标视频文件,通过云端服务器与用户端的通讯协议将该目标视频文件发送到用户端。
其中,第一背景数据中包括有对齐信息,第二背景数据具有最高丢弃优先级,在数据传输过程中,如遇网络拥堵或网络带宽下降时,会优先丢弃第二背景数据对应的数据包,此时,用户端对目标视频进行解码时,可以通过第一背景数据中的对齐信息,将第一背景数据对齐到第二背景数据中。上述的对齐信息包括对齐符,以及对齐位置,上述的对齐位置指的是在视频中的帧位置,比如,背景森林1有360帧的长度,则将森林1的第一背景数据对齐到该360帧所在帧位置上作为该360帧图像的背景。
上述的合并可以理解是通过传输协议规范对第一背景数据、第二背景数据以及第三背景数据打包为符合传输协议规范的数据包。
在一种可能的实施例中,视频请求中携带有用户端的实际网络带宽,云端服务器提取该视频请求中用户端的实际网络带宽。
计算目标视频文件所需要的传输码率,传输码率的计算由目标视频文件的数据量÷目标视频文件的时长得到,即每秒传输多少数据。在计算得到目标视频文件所需要的传输码率后,判断目标视频文件所需要的传输码率是否大于实际网络带宽,
若目标视频文件所需要的传输码率不大于实际网络带宽,则对第一背景数据、第二背景数据以及目标前景数据进行合并,得到目标视频文件。
若目标视频文件所需要的传输码率大于实际网络带宽,则丢弃第二背景数据。在目标视频文件所需要的传输码率大于实际网络带宽时,该目标视频文件在传输的过程中,用户播放该视频文件的话,则会出现卡顿的情况。因此,可以对第一背景数据添加对齐信息,以使用户端根据对齐信息解码第一背景数据并维持显示;以及将添加时长信息的第一背景数据与目标前景数据进行合并,得到目标视频文件。从而丢弃对第二背景数据,即只合并第一背景数据与目标前景数据。在此情况下,由于少了第二背景数据的数据量,目标视频文件所需要的传输码率会降低。
在一种可能的实施例中,云端服务器在视频文件传输过程中,会实时获取用户端的实际网络带宽,并判断该实际网络带宽是否稳定,可以理解为判断该实际网络带宽是否会发生下降的情况。
若实际网络带宽下降到低于目标视频文件的传输码率,则会在传输队列中进行丢包,即丢弃数据。第二背景数据具有最高的丢弃优先权,即当实际网络带宽下降到低于目标视频文件的传输码率时,则会在传输队列中将部分或全部的第二背景数据进行丢弃,使得云端服务器只对目标视频文件中的第一背景数据以及目标前景数据对应的数据包进行传输。同时,第一背景数据包括对齐信息。
当下降低的实际网络带宽恢复到视频文件的传输码率时,则会停止在传输队列中的丢弃第二背景数据的操作。
本发明实施例中,通过检测待转码视频中的背景信息以及目标前景信息,所述背景信息包括相同背景在所述待转码视频中的背景时长,所述目标前景信息包括目标前景的位置;基于所述目标前景的位置,在所述目标前景的外周添加预设余量的背景掩码,得到目标前景的编码区域,所述编码区域包括目标前景以及预设余量的背景;接收于用户端的视频请求,提取对应视频的背景信息以及目标前景的编码区域;基于所述背景时长,对所述相同背景的代表帧图像进行第一编码,得到第一背景编码数据,对所述其余帧图像进行第二编码,得到第二背景编码数据,所述第二编码的压缩率大于第一编码的压缩率;对所述目标前景的编码区域进行第三编码,得到目标前景数据,所述第三编码的压缩率小于等于所述第一编码的压缩率;将所述第一背景数据、第二背景数据以及目标前景数据进行合并为目标视频文件,并将所述目标视频文件发送到用户端。由于将背景分别进行压缩率小的第一编码以及压缩率大的第二编码,使得到编码后的背景数据量减小,可以降低视频文件所需要的传输码率,从而使视频文件的可以适应更低的网络带宽,减少了卡顿现象,提高了用户的观看体验。另外,由于预先对背景和前景进行分离,在获取到用户的视频请求时,可以直接提取背景和前景进行编码,提高了云端视频转码的速度。
需要说明的是,本发明实施例提供的云端视频转码方法可以应用于云端视频转码设备,例如:服务器、手机、计算机等可以进行云端视频转码的设备。
实施例二
请参见图2,图2是本发明实施例提供的一种视频解码方法的示意图,该视频解码方法应用于用户端,如图2所示,该方法包括:
201、获取云端服务器发送的目标视频文件。
上述的目标视频文件为实施例一中在云端服务器中进行转码的目标视频文件。上述的目标视频在实际网络带宽大于目标视频文件所需要的传输码率的情况下,包括第一背景数据、第二背景数据以及目标前景数据。上述的目标视频在实际网络带宽小于目标视频文件所需要的传输码率的情况下,包括第一背景数据以及目标前景数据。
202、判断云端服务器发送的目标视频文件的实际传输码率与视频请求中目标视频文件所需的传输码率是否符合。
上述的视频请求为用户端向云端服务器发送的视频请求,该请求携带有视频标识以及用户端参数。上述的视频标识可以是视频名称对应的字段。上述的终端参数可以是用户端播放视频所需要的格式、分辨率、传输码率、帧率等。
视频请求中目标视频文件所需的传输码率为第一背景数据、第二背景数据以及目标前景数据对应的数据量所需要的传输码率。当目标视频文件的实际传输码率与视频请求中目标视频文件所需的传输码率符合(相同),则说明目标视频文件中包含有第一背景数据、第二背景数据以及目标前景数据。当目标视频文件的实际传输码率小于视频请求中目标视频文件所需的传输码率,则说明目标视频文件中包含有第一背景数据以及目标前景数据。
203、若目标视频文件的实际传输码率与视频请求中目标视频文件所需的传输码率符合,则解码目标视频文件,并对解码后的第一背景数据、第二背景数据以及前景数据进行对齐。
204、若目标视频文件的实际传输码率小于视频请求中目标视频文件所需的传输码率,则解码第一背景数据以及前景数据,并根据第一背景数据中的对齐信息以及背景时长,将第一背景数据与前景数据进行对齐。
上述的对齐是将同一帧图像中的背景数据与前景数据进行对齐,以使用户端播放目标视频文件,可以将同一帧图像中的背景数据与前景数据进行展示,避免背景与前景播放不同的现象。比如,在目标视频文件中,没有第二背景数据时,将第一背景数据对齐到每一帧图像中与目标前景数据进行融合后,再进行播放展示。
上述的对齐可以根据第一背景数据中的对齐信息进行对齐,上述的对齐信息包括对齐符,以及对齐位置,上述的对齐位置指的是在视频中的帧位置,比如,背景森林1有360帧的长度,则将森林1的第一背景数据对齐到该360帧所在帧位置上作为该360帧图像的背景。
在本发明实施例中,通过对目标视频文件进行解码,并对背景数据以及前景数据进行对齐,使目标视频文件可以云端服务器中进行分开转码,从而可以在降低目标视频文件总数据量的同时保证目标前景的播放画质。由于在目标视频文件中将背景分别进行压缩率小的第一编码以及压缩率大的第二编码,使得到编码后的背景数据量减小,可以降低视频文件所需要的传输码率,从而使视频文件的可以适应更低的网络带宽,减少了卡顿现象,提高了用户的观看体验。
实施例三
请参见图3,图3是本发明实施例提供的一种云端视频转码装置的结构示意图,如图3所示,该装置包括:
检测模块301,用于检测待转码视频中的背景信息以及目标前景信息,所述背景信息包括相同背景在所述待转码视频中的背景时长,所述目标前景信息包括目标前景的位置;
掩码模块302,用于基于所述目标前景的位置,在所述目标前景的外周添加预设余量的背景掩码,得到目标前景的编码区域,所述编码区域包括目标前景以及预设余量的背景;
提取模块303,用于接收于用户端的视频请求,提取对应视频的背景信息以及目标前景的编码区域;
第一编码模块304,用于基于所述背景时长,对所述相同背景的代表帧图像进行第一编码,得到第一背景编码数据,对所述其余帧图像进行第二编码,得到第二背景编码数据,所述第二编码的压缩率大于第一编码的压缩率;
第二编码模块305,用于对所述目标前景的编码区域进行第三编码,得到目标前景数据,所述第三编码的压缩率大于等于所述第一编码的压缩率;
传输模块306,用于将所述第一背景数据、第二背景数据以及目标前景数据合并为目标视频文件,并将所述目标视频文件发送到用户端。
可选的,如图4所示,所述视频请求包括用户端的实际网络带宽,所述传输模块306,包括:
提取单元3061,用于提取所述用户端的视频请求中的实际网络带宽;
判断单元3062,用于计算目标视频文件所需要的传输码率,并判断所述目标视频文件所需要的传输码率是否大于所述实际网络带宽;
第一合并单元3063,用于若所述目标视频文件所需要的传输码率不大于所述实际网络带宽,对所述第一背景数据、第二背景数据以及目标前景数据进行合并,得到目标视频文件。
可选的,如图5所示,所述传输模块306还包括:
丢弃单元3064,用于若所述目标视频文件所需要的传输码率大于所述实际网络带宽,则丢弃所述第二背景数据;
添加单元3065,用于对所述第一背景数据添加对齐信息,以使用户端根据所述对齐信息解码所述第一背景数据并维持显示;以及
第二合并单元3066,用于将所述添加时长信息的第一背景数据与所述目标前景数据进行合并,得到目标视频文件。
可选的,如图6所示,所述第二背景数据配置有最高丢弃优先度,所述装置还包括:
判断模块307,用于在视频文件传输过程中,实时获取用户端的实际网络带宽,判断所述实际网络带宽是否稳定;
丢弃模块308,用于若所述实际网络带宽下降到低于所述视频文件的传输码率,则在传输队列中实时丢弃所述第二背景数据;
停止模块309,用于当下降的实际网络带宽恢复到所述视频文件的传输码率时,则停止在传输队列中的丢弃所述第二背景数据。
需要说明的是,本发明实施例提供的云端视频转码装置可以应用于云端视频转码设备,例如:服务器、手机、计算机等可以进行云端视频转码的设备。
本发明实施例提供的云端视频转码装置能够实现图1的方法实施例中的各个实施方式,以及相应有益效果,为避免重复,这里不再赘述。
实施例四
请参见图7,图7是本发明实施例提供的一种视频解码装置的结构示意图,如图7所示,该装置包括:
接收模块701,用于接收如实施例三中所述云端视频转码装置传输的目标视频文件;
第一解码模块702,用于解码所述目标视频文件,并对解码后的第一背景数据、第二背景数据以及前景数据进行对齐。
可选的,如图8所示,所述装置还包括:
判断模块703,用于判断所述目标视频文件的实际传输码率与视频请求中所请求的传输码率是否符合;
第二解码模块704,用于若所述目标视频的实际传输码率小于视频请求中所请求的传输码率,则解码所述第一背景数据以及前景数据,并根据第一背景数据中的对齐信息以及背景时长,将第一背景数据与前景数据进行对齐。
需要说明的是,本发明实施例提供的视频解码装置可以应用于视频解码设备,例如:服务器、手机、计算机等可以进行视频解码的设备。
本发明实施例提供的视频解码装置能够实现图2的方法实施例中的各个实施方式,以及相应有益效果,为避免重复,这里不再赘述。
实施例五
如图9所示,为解决上述技术问题,本发明实施例还提供电子设备。具体请参阅图9,图9为本实施例电子设备基本结构框图。
电子设备900包括通过系统总线相互通信连接存储器901、处理器902、网络接口903。需要指出的是,图中仅示出了具有组件901-903的电子设备900,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable GateArray,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
电子设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。电子设备可以与客户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
存储器901至少包括一种类型的可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器901可以是电子设备90的内部存储单元,例如该电子设备900的硬盘或内存。在另一些实施例中,存储器901也可以是电子设备900的外部存储设备,例如该电子设备900上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器901还可以既包括电子设备900的内部存储单元也包括其外部存储设备。本实施例中,存储器901通常用于存储安装于电子设备900的操作系统和各类应用软件,例如一种云端视频转码方法或视频解码方法的程序代码等。此外,存储器901还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器902在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器902通常用于控制电子设备900的总体操作。本实施例中,处理器902用于运行存储器901中存储的程序代码或者处理数据,例如运行一种云端视频转码方法或视频解码方法的程序代码。
网络接口903可包括无线网络接口或有线网络接口,该网络接口903通常用于在电子设备900与其他电子设备之间建立通信连接。
本发明还提供了另一种实施方式,即提供一种计算机可读存储介质,计算机可读存储介质存储有一种云端视频转码或视频解码程序,上述一种云端视频转码或视频解码程序可被至少一个处理器执行,以使至少一个处理器执行如上述的一种云端视频转码方法或视频解码方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例的云端视频转码方法或视频解码方法。
本发明的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本发明的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (10)
1.一种云端视频转码方法,其特征在于,包括:
检测待转码视频中的背景信息以及目标前景信息,所述背景信息包括相同背景在所述待转码视频中的背景时长,所述目标前景信息包括目标前景的位置;
基于所述目标前景的位置,在所述目标前景的外周添加预设余量的背景掩码,得到目标前景的编码区域,所述编码区域包括目标前景以及预设余量的背景;
接收于用户端的视频请求,提取对应视频的背景信息以及目标前景的编码区域;
基于所述背景时长,对所述相同背景的代表帧图像进行第一编码,得到第一背景编码数据,对所述其余帧图像进行第二编码,得到第二背景编码数据,所述第二编码的压缩率大于第一编码的压缩率;
对所述目标前景的编码区域进行第三编码,得到目标前景数据,所述第三编码的压缩率小于等于所述第一编码的压缩率;
将所述第一背景数据、第二背景数据以及目标前景数据进行合并为目标视频文件,并将所述目标视频文件发送到用户端。
2.如权利要求1所述的视频编码方法,其特征在于,所述视频请求包括用户端的实际网络带宽,所述将所述第一背景数据、第二背景数据以及目标前景数据进行合并为目标视频文件,包括:
提取所述用户端的视频请求中的实际网络带宽;
计算目标视频文件所需要的传输码率,并判断所述目标视频文件所需要的传输码率是否大于所述实际网络带宽;
若所述目标视频文件所需要的传输码率不大于所述实际网络带宽,对所述第一背景数据、第二背景数据以及目标前景数据进行合并,得到目标视频文件。
3.如权利要求2所述的视频编码方法,其特征在于,所述方法还包括:
若所述目标视频文件所需要的传输码率大于所述实际网络带宽,则丢弃所述第二背景数据;
对所述第一背景数据添加对齐信息,以使用户端根据所述对齐信息解码所述第一背景数据并维持显示;以及
将所述添加时长信息的第一背景数据与所述目标前景数据进行合并,得到目标视频文件。
4.如权利要求1所述的云端视频转码方法,其特征在于,所述第二背景数据配置有最高丢弃优先度,所述方法还包括:
在视频文件传输过程中,实时获取用户端的实际网络带宽,判断所述实际网络带宽是否稳定;
若所述实际网络带宽下降到低于所述视频文件的传输码率,则在传输队列中实时丢弃所述第二背景数据;
当下降的实际网络带宽恢复到所述视频文件的传输码率时,则停止在传输队列中的丢弃所述第二背景数据。
5.一种视频解码方法,其特征在于,所述方法包括:
接收如权利要求1中转码的目标视频文件;
解码所述目标视频文件,并对解码后的第一背景数据、第二背景数据以及前景数据进行对齐。
6.如权利要求5所述的视频解码方法,其特征在于,所述方法还包括:
判断所述目标视频文件的实际传输码率与视频请求中所请求的传输码率是否符合;
若所述目标视频的实际传输码率小于视频请求中所请求的传输码率,则解码所述第一背景数据以及前景数据,并根据第一背景数据中的对齐信息以及背景时长,将第一背景数据与前景数据进行对齐。
7.一种云端视频转码装置,其特征在于,所述装置包括:
检测模块,用于检测待转码视频中的背景信息以及目标前景信息,所述背景信息包括相同背景在所述待转码视频中的背景时长,所述目标前景信息包括目标前景的位置;
掩码模块,用于基于所述目标前景的位置,在所述目标前景的外周添加预设余量的背景掩码,得到目标前景的编码区域,所述编码区域包括目标前景以及预设余量的背景;
提取模块,用于接收于用户端的视频请求,提取对应视频的背景信息以及目标前景的编码区域;
第一编码模块,用于基于所述背景时长,对所述相同背景的代表帧图像进行第一编码,得到第一背景编码数据,对所述其余帧图像进行第二编码,得到第二背景编码数据,所述第二编码的压缩率大于第一编码的压缩率;
第二编码模块,用于对所述目标前景的编码区域进行第三编码,得到目标前景数据,所述第三编码的压缩率大于等于所述第一编码的压缩率;
传输模块,用于将所述第一背景数据、第二背景数据以及目标前景数据合并为目标视频文件,并将所述目标视频文件发送到用户端。
8.一种视频解码装置,其特征在于,所述装置包括:
接收模块,用于接收如权利要求7中云端视频转码装置传输的目标视频文件;
解码模块,用于解码所述目标视频文件,并对解码后的第一背景数据、第二背景数据以及前景数据进行对齐。
9.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的云端视频转码方法中的步骤,或所述处理器执行所述计算机程序时实现如权利要求6或7所述的视频解码方法中的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的云端视频转码方法中的步骤,或所述计算机程序被处理器执行时实现如权利要求6或7所述的视频解码方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911270511.4A CN111031032A (zh) | 2019-12-12 | 2019-12-12 | 云端视频转码方法及装置、解码方法及装置、及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911270511.4A CN111031032A (zh) | 2019-12-12 | 2019-12-12 | 云端视频转码方法及装置、解码方法及装置、及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111031032A true CN111031032A (zh) | 2020-04-17 |
Family
ID=70208845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911270511.4A Pending CN111031032A (zh) | 2019-12-12 | 2019-12-12 | 云端视频转码方法及装置、解码方法及装置、及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111031032A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112235600A (zh) * | 2020-09-09 | 2021-01-15 | 北京旷视科技有限公司 | 视频数据及视频业务请求的处理方法、装置及系统 |
CN112995713A (zh) * | 2021-03-02 | 2021-06-18 | 广州酷狗计算机科技有限公司 | 视频处理方法、装置、计算机设备及存储介质 |
CN114845119A (zh) * | 2022-07-04 | 2022-08-02 | 光谷技术有限公司 | 一种物联网关验证及压缩系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130072299A1 (en) * | 2011-09-16 | 2013-03-21 | Sony Computer Entertainment Inc. | Three-dimensional motion mapping for cloud gaming |
CN103024445A (zh) * | 2012-12-13 | 2013-04-03 | 北京百度网讯科技有限公司 | 云端的视频转码方法和云服务器 |
CN103179402A (zh) * | 2013-03-19 | 2013-06-26 | 中国科学院半导体研究所 | 一种视频压缩编码与解码方法及其装置 |
CN106973306A (zh) * | 2017-02-14 | 2017-07-21 | 北京时间股份有限公司 | 分布式转码方法、装置及系统 |
CN110381316A (zh) * | 2019-07-17 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 一种视频传输控制方法、装置、设备及存储介质 |
-
2019
- 2019-12-12 CN CN201911270511.4A patent/CN111031032A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130072299A1 (en) * | 2011-09-16 | 2013-03-21 | Sony Computer Entertainment Inc. | Three-dimensional motion mapping for cloud gaming |
CN103024445A (zh) * | 2012-12-13 | 2013-04-03 | 北京百度网讯科技有限公司 | 云端的视频转码方法和云服务器 |
CN103179402A (zh) * | 2013-03-19 | 2013-06-26 | 中国科学院半导体研究所 | 一种视频压缩编码与解码方法及其装置 |
CN106973306A (zh) * | 2017-02-14 | 2017-07-21 | 北京时间股份有限公司 | 分布式转码方法、装置及系统 |
CN110381316A (zh) * | 2019-07-17 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 一种视频传输控制方法、装置、设备及存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112235600A (zh) * | 2020-09-09 | 2021-01-15 | 北京旷视科技有限公司 | 视频数据及视频业务请求的处理方法、装置及系统 |
CN112235600B (zh) * | 2020-09-09 | 2022-04-22 | 北京旷视科技有限公司 | 视频数据及视频业务请求的处理方法、装置及系统 |
CN112995713A (zh) * | 2021-03-02 | 2021-06-18 | 广州酷狗计算机科技有限公司 | 视频处理方法、装置、计算机设备及存储介质 |
CN114845119A (zh) * | 2022-07-04 | 2022-08-02 | 光谷技术有限公司 | 一种物联网关验证及压缩系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11863801B2 (en) | Method and device for generating live streaming video data and method and device for playing live streaming video | |
CN111954052B (zh) | 显示弹幕信息的方法、计算机设备及可读存储介质 | |
CN112653700B (zh) | 一种基于webrtc网页视频通信的方法 | |
CN111031032A (zh) | 云端视频转码方法及装置、解码方法及装置、及电子设备 | |
CN111954053B (zh) | 获取蒙版帧数据的方法、计算机设备及可读存储介质 | |
CN107634930B (zh) | 一种媒体数据的获取方法和装置 | |
CN111416989A (zh) | 视频直播方法、系统及电子设备 | |
CN111954060B (zh) | 弹幕蒙版的渲染方法、计算机设备及可读存储介质 | |
US20170180746A1 (en) | Video transcoding method and electronic apparatus | |
CN109299326B (zh) | 视频推荐方法及装置、系统、电子设备以及存储介质 | |
CN108848082B (zh) | 数据处理方法、装置、存储介质及计算机设备 | |
US11451858B2 (en) | Method and system of processing information flow and method of displaying comment information | |
US20210014558A1 (en) | Media Information Processing Method, Related Device, and Computer Storage Medium | |
CN111093094A (zh) | 视频转码方法、装置、系统及电子设备及可读存储介质 | |
CN114679607B (zh) | 一种视频帧率控制方法、装置、电子设备及存储介质 | |
CN111970565A (zh) | 视频数据处理方法、装置、电子设备及存储介质 | |
CN116600169A (zh) | 媒体文件的预加载方法、装置、电子设备及存储介质 | |
CN112492324A (zh) | 数据处理方法及系统 | |
CN113079386A (zh) | 一种视频在线播放方法、装置、电子设备及存储介质 | |
WO2023226504A1 (zh) | 一种媒体数据处理方法、装置、设备以及可读存储介质 | |
CN116668741A (zh) | 云桌面的显示方法、图像显示方法、设备和存储介质 | |
CN113068059B (zh) | 视频直播方法、装置、设备及存储介质 | |
CN105491400B (zh) | 一种视频流下载方法及其设备 | |
CN110855619B (zh) | 播放音视频数据的处理方法、装置、存储介质及终端设备 | |
CN116962742A (zh) | 网络直播的视频图像数据传输方法、装置及直播系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200417 |
|
RJ01 | Rejection of invention patent application after publication |