视频处理方法及装置、移动终端和系统与流程

文档序号:15405218发布日期:2018-09-11 19:19阅读:111来源:国知局

本发明涉及计算机领域,特别涉及一种视频处理方法及装置、移动终端和系统。



背景技术:

得益于芯片运算能力和无线通信领域的不断发展,移动终端(智能手机,平板电脑等)已经可以为用户提供越来越丰富的网络服务,其中,视频播放渐渐成为最受移动终端用户欢迎的网络服务之一。

现有技术中,已经存在一种用于为移动终端提供视频的视频处理方法:第一,各服务商向移动终端提供视频时,提前将一部分分辨率较高、数据量较大的视频转码成适合移动终端播放的分辨率较低、数据量较小的视频,比如,服务商可以预先将原始分辨率为1280像素*720像素的视频转码为分辨率为320像素*240像素的视频;第二,低性能的移动终端获取该转码后的视频进行播放,高性能的移动终端可以选择获取转码前或者转码后的视频进行播放;比如低性能的移动终端可以获取分辨率为320像素*240像素的视频进行播放,而高性能的移动终端则可以选择获取分辨率为1280像素*720像素的转码前视频或者分辨率为320像素*240像素的转码后视频进行播放。

在实现本发明的过程中,发明人发现现有技术至少存在以下问题:

首先,使用低性能移动终端的用户只能观看服务商预先转码的那一部分视频,未提前转码的视频则无法观看,视频源覆盖范围窄;其次,为了兼顾不同移动终端的屏幕分辨率、图像处理能力和带宽,提前转码的视频往往具有非常低的分辨率,使得播放效果较差;最后,对于那些使用高性能移动终端的用户,通过无线网络直接播放未转码的视频产生的流量资费过于昂贵。因此,考虑到资费问题,即使是用户使用的移动终端的屏幕分辨率相对较高、图像处理能力相对较强和无线网络带宽相对较宽,也往往无法获得更好的视频体验。



技术实现要素:

为了提高低性能移动终端的视频源覆盖范围,向用户提供更接近用户硬件和带宽能力的视频体验,并在满足使用低性能移动终端的用户要求的同时,为使用高性能移动终端的用户节省流量资费,本发明实施例提供了一种视频播放方法及装置、移动终端和系统。所述技术方案如下:

一方面,提供一种视频处理方法,所述方法包括:

接收移动终端发送的播放视频请求,所述播放视频请求中包括视频原始地址和所述移动终端的性能参数;

根据所述视频原始地址获取原始视频;

根据所述移动终端的性能参数将所述原始视频进行转码,以获得转码后的视频;

将所述转码后的视频提供给所述移动终端,以便所述移动终端播放所述转码后的视频。

所述原始视频包括视频头、至少一帧关键帧和依赖各关键帧的非关键帧。

所述根据所述移动终端的性能参数将所述原始视频进行转码,以获得转码后的视频,具体包括:

将所述原始视频按照所述关键帧分割成至少一个原始画面组,每个原始画面组包括一个关键帧和依赖所述关键帧的非关键帧;

对所述至少一个原始画面组分别进行转码,获得至少一个转码后的画面组。

所述对所述至少一个原始画面组分别进行转码,获得至少一个转码后的画面组,具体包括:

根据所述移动终端的性能参数确定转码参数,所述转码参数包括转码分辨率和刷新率;

根据所述转码分辨率和刷新率对所述至少一个原始画面组分别进行转码,获得至少一个转码后的画面组。

所述移动终端的性能参数包括:屏幕分辨率、图像处理能力参数和带宽参数,所述图像处理能力参数包括:CPU频率参数和GPU频率参数中的至少一种。

所述根据所述移动终端的性能参数确定转码参数,具体包括:

根据所述移动终端的图像处理能力参数和带宽参数计算所述移动终端处理图像的最大码率;

根据所述移动终端屏幕分辨率和所述最大码率确定所述转码分辨率和刷新率。

所述将所述转码后的视频提供给所述移动终端,具体包括:

将所述获得的至少一个转码后的画面组提供给所述移动终端。

所述将所述获得的至少一个转码后的画面组提供给所述移动终端,具体包括:

将当前转码后的画面组提供给所述移动终端;

根据所述移动终端接收所述当前转码后的画面组所用的时间和所述当前转码后的画面组所携带的数据量计算所述移动终端的实时带宽。

所述计算所述移动终端的实时带宽之后,所述方法还包括:

根据所述移动终端的图像处理能力参数和所述移动终端的实时带宽调整转码参数;

根据所述调整后的转码参数对尚未转码的原始画面组分别进行转码。

另一方面,提供一种视频处理装置,所述视频处理装置包括:

接收模块,用于接收移动终端发送的播放视频请求,所述播放视频请求中包括视频原始地址和所述移动终端的性能参数;

获取模块,用于根据所述视频原始地址获取原始视频;

转码模块,用于根据所述移动终端的性能参数将所述原始视频进行转码,以获得转码后的视频;

视频提供模块,用于将所述转码后的视频提供给所述移动终端,以便所述移动终端播放所述转码后的视频。

所述获取模块获取的原始视频包括视频头、至少一帧关键帧和依赖各关键帧的非关键帧。

所述转码模块包括:

分割单元,用于将所述原始视频按照所述关键帧分割成至少一个原始画面组,每个原始画面组包括一个关键帧和依赖所述关键帧的非关键帧;

转码单元,用于对所述至少一个原始画面组分别进行转码,获得至少一个转码后的画面组。

所述视频处理装置还包括:

参数适配模块,用于根据所述移动终端的性能参数确定转码参数,所述转码参数包括转码分辨率和刷新率;

所述转码单元,具体用于根据所述转码分辨率和刷新率对所述至少一个原始画面组分别进行转码,获得至少一个转码后的画面组。

所述移动终端的性能参数包括:屏幕分辨率、图像处理能力参数和带宽参数,所述图像处理能力参数包括:CPU频率参数和GPU频率参数中的至少一种。

所述参数适配模块,具体包括:

码率计算单元,用于根据所述移动终端图像处理能力参数和带宽参数计算所述移动终端处理图像的最大码率;

参数确定单元,用于根据所述移动终端屏幕分辨率和所述码率计算单元计算出的最大码率确定所述转码分辨率和刷新率。

所述视频提供模块,具体用于将所述获得的至少一个转码后的画面组提供给所述移动终端。

所述视频提供模块,具体用于将当前转码后的画面组提供给所述移动终端;

所述视频处理装置还包括:实时带宽计算模块,用于根据所述移动终端接收所述当前转码后的画面组所用的时间和所述当前转码后的画面组所携带的数据量计算所述移动终端的实时带宽。

所述参数适配模块,还用于根据所述移动终端的图像处理能力参数和所述移动终端的实时带宽调整转码参数;

所述转码单元,还用于根据所述参数适配模块调整后的转码参数对尚未转码的原始画面组分别进行转码。

又一方面,还一种移动终端,所述移动终端包括:

请求模块,用于向视频处理装置发送播放视频的请求,所述播放视频请求中包括视频原始地址和所述移动终端参数;

视频接收模块,用于接收所述视频处理装置根据所述播放视频请求中包括的视频原始地址和所述移动终端的性能参数获取并转码所得到至少一个转码后的画面组。

再一方面,还提供一种视频处理系统,所述视频提供系统包括上述视频处理装置和移动终端。

本发明实施例提供的技术方案带来的有益效果是:

通过根据视频原始地址获取原始视频,并将原始视频转码为适合移动终端播放的视频,达到提高低性能移动终端的视频源覆盖率,向用户提供更接近移动终端图像处理和带宽能力的视频体验,在满足使用低性能移动终端的用户要求的同时,还可以为使用高性能移动终端的用户节省流量资费的目的;同时通过在向移动终端提供转码后的视频时获取移动终端实时带宽,并根据实时带宽调整转码参数,达到向用户提供符合移动终端实际带宽的视频体验的目的。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例一提供的视频处理方法的方法流程图;

图2是本发明实施例二提供的视频处理方法的方法流程图;

图3是本发明实施例三提供的视频处理装置的结构方框图;

图4是本发明实施例三提供的视频处理装置的另一种结构方框图;

图5是本发明实施例四提供的移动终端的结构方框图;

图6是本发明实施例五提供的视频处理系统的结构方框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

实施例一

请参考图1,其示出了本发明实施例一提供的视频处理方法的方法流程图,该视频处理方法可以用于为移动终端提供视频服务的服务器中。该视频处理方法流程具体如下:

步骤101,接收移动终端发送的播放视频请求,播放视频请求中包括视频原始地址和移动终端的性能参数;

其中,移动终端的性能参数包括移动终端的移动终端的图像处理能力参数和带宽参数。

步骤102,根据视频原始地址获取原始视频;

其中,该视频原始地址可以是互联网中的任意视频地址;而根据视频原始地址获取的原始视频大多是为个人电脑提供的,具有分辨率高、数据量较大等特点,通常不适合移动终端直接播放。

步骤103,根据移动终端的性能参数将原始视频进行转码,以获得转码后的视频;

结合移动终端的图像处理能力参数和带宽参数,将分辨率高、数据量较大的原始视频转码成适于移动终端播放的分辨率较低、数据量较小的视频。

步骤104,将转码后的视频提供给移动终端,以便移动终端播放转码后的视频。

将转码后得到的分辨率较低、数据量较小的视频发送给移动终端,以便移动终端能够流畅播放该视频。上述方法可以应用于云端平台。

本实施例一提供的视频处理方法,通过根据视频原始地址获取原始视频,并将原始视频转码为适合移动终端播放的视频,达到提高低性能移动终端的视频源覆盖率,向用户提供更接近移动终端图像处理和带宽能力的视频体验,在满足使用低性能移动终端的用户要求的同时,还可以为使用高性能移动终端的用户节省流量资费的目的。

实施例二

请参考图2,其示出了本发明实施例二提供的一种视频处理方法,该视频处理方法可以应用于位于云端的服务器,该视频处理方法流程具体如下:

步骤201,移动终端向服务器发送播放视频请求,该播放视频请求中携带有该视频原始地址和该移动终端的性能参数;

具体的,移动终端接收用户发出的播放某视频的指令,根据该指令向服务器发送播放该视频的请求;同时,该播放视频请求中携带有该视频的原始地址和移动终端的性能参数。

移动终端的性能参数可以包括移动终端屏幕分辨率、图形处理能力参数和带宽参数;其中,移动终端图形处理能力参数为该移动终端中对图形处理能力影响较大的硬件参数,比如该移动终端的CPU(Central Processing Unit,中央处理器)主频,如果该移动终端还配置有GPU(Graphic Processing Unit,图形处理器),则图形处理能力参数还可以包括GPU主频,对于图形处理能力的具体参数,本实施例不做具体限定;另外,移动终端带宽参数包括该移动终端的网络类型和带宽大小等。

步骤202,服务器根据该视频原始地址获取原始视频;

具体的,服务器接收到移动终端发送的播放视频请求后,根据该播放视频请求中携带的原始视频地址下载并保存该原始视频。

步骤203,服务器将获取的原始视频分割成多个原始画面组;

具体的,服务器下载的原始视频内容中包括视频头,含有特殊标记的关键帧和依赖各关键帧的非关键帧;其中,帧是视频动画中最小单位的单幅影像画面,而关键帧则是视频动画中角色或者物体运动或变化中的关键动作所处的那一帧,比如,某一段视频画面中的角色和物体相同,则可以将该段视频内容中的第一帧作为关键帧,而其他帧则是依赖该关键帧的非关键帧。另外,视频头中包含有该视频时长、内容简介、数据量大小等信息。

服务器可以将原始视频按照关键帧分割组成若干个原始GOP(Group of Pictures,画面组),每个原始GOP都包含有GOP头、一个关键帧和依赖该关键帧的非关键帧,并保存分割生成的一系列原始GOP。

实际应用中,每个原始GOP中可以只包含一个关键帧,也可以包含连续多个关键帧以及依赖这些关键帧的非关键帧,对于每个GOP中包含关键帧的数量,本实施例不做具体限定。

步骤204,服务器将分割出的原始画面组按照该移动终端的性能参数分别进行转码,获得转码后的画面组;

服务器对原始GOP进行转码时,先根据接收到的播放视频请求中携带的该移动终端的性能参数确定一个转码参数,再按照确定的转码参数对原始GOP分别进行转码,生成转码后的GOP组;其中生成的转码后的GOP中同样也包含GOP头、一个或多个关键帧以及依赖这些关键帧的非关键帧;另外,转码参数具体可以包括转码视频的分辨率和刷新率fps(Frames Per Second,每秒钟填充图像的帧数)等。

具体的,根据接收到的播放视频请求中携带的该移动终端的性能参数确定一个转码参数时,可以先通过该移动终端的带宽参数和图形处理能力参数计算该移动终端能够接收并进行图形处理的最大码率,再通过该移动终端屏幕分辨率确定转码的分辨率,最后结合转码的分辨率和该移动终端能够接收并进行图形处理的最大码率确定转码后视频的刷新率;实际应用中,可以将移动终端的屏幕分辨率直接作为转码分辨率,并将根据转码分辨率和最大码率计算刷新率,也可以为转码分辨率和刷新率划分几个档次,根据屏幕分辨率和最大码率确定最接近的转码分辨率和刷新率档次,本实施例不对确定转码参数的方法做具体限定。

步骤205,服务器将转码后的画面组提供给移动终端。

服务器将转码后的GOP依次提供给移动终端,以便移动终端根据转码后的GOP播放该视频。

进一步的,考虑到移动终端接收转码后的视频的实际带宽是可变的,多数情况下达不到带宽参数所显示的理论带宽,服务器向移动终端提供转码后的GOP时,还可以根据移动终端接收转码后的GOP的时间确定该移动终端接收转码后的GOP的实时带宽,并根据该实时带宽重新确定转码参数,以便对尚未转码的原始GOP按照重新确定的转码参数进行转码以适应实际带宽的变化。

具体的,服务器将原始视频按照关键帧分割成若干个原始GOP时,可以对分割出的原始GOP按照播放时间先后顺序进行编号,并且,转码生成的转码后GOP中,也会携带有与其对应的原始GOP相同的编号;当服务器将某个转码后的GOP提供给移动终端时,可以根据移动终端接收该转码后的GOP的时间和该转码后的GOP数据量大小确定该移动终端接收转码后视频的实时带宽,并根据该实时带宽重新确定转码参数,以便于服务器对该转码后的GOP的编号的下一个编号对应的原始GOP按照重新确定的转码参数进行转码。

比如,服务器将编号为3的转码后GOP提供给移动终端,根据移动终端接收该编号为3的转码后GOP的时间和该GOP的GOP头中携带的该GOP数据量确定移动终端的实时带宽,并根据该实时带宽和移动终端图形处理能力参数以及屏幕分辨率重新确定转码参数;服务器再根据重新确定的转码参数对编号为4的原始GOP进行转码,并将转码生成的编号为4的转码后GOP提供给移动终端,如此循环。

实际应用中,服务器也可以每发送多个转码后的GOP确定一次实时带宽,比如,每发送5个或10个转码后的GOP确定一次实时带宽,对此,本实施例不做具体限定。

再进一步的,为了提高对原始视频分割及转码之后存储的命中率,服务器还可以根据视频内容为每个原始视频生成一个唯一的特殊标识;具体的,服务器可以根据原始视频中视频头的前8k内容为该原始视频生成一个特殊字符串作为该原始视频的特殊标识,并将生成的唯一标识添加到分割生成的原始GOP和对原始GOP转码生成的转码后的GOP中;当服务器对原始GOP分别进行转码时,服务器还验证当前待转码的原始GOP中的特殊标记是否为对应于该原始视频的特殊标记,如果是,则执行转码的步骤;当服务器将转码后的GOP提供给移动终端时,服务器还验证当前待提供的转码后的GOP中的特殊标记是否为对应于该原始视频的特殊标记,如果是,则执行提供视频的步骤。

另外,为每个视频生成一个唯一的特殊标识的方式也可以有多种,比如按照原始视频前4k内容或者其他部分内容生成特殊标识,对此,本实施例不做具体限定。

本实施例二提供的视频处理方法,通过根据视频原始地址获取原始视频,并将原始视频转码为适合移动终端播放的视频,达到提高低性能移动终端的视频源覆盖率,向用户提供更接近移动终端图像处理和带宽能力的视频体验,在满足使用低性能移动终端的用户要求的同时,还可以为使用高性能移动终端的用户节省流量资费的目的;同时通过在向移动终端提供转码后的视频时获取移动终端实时带宽,并根据实时带宽调整转码参数,达到向用户提供符合移动终端实际带宽的视频体验的目的。

实施例三

请参考图3,其示出了一种视频处理装置,该视频处理装置可以是应用于云端平台的服务器,该视频处理装置包括:接收模块301、获取模块302、转码模块303和视频提供模块304。

接收模块301用于接收移动终端发送的播放视频请求,播放视频请求中包括视频原始地址和移动终端的性能参数;

获取模块302用于根据视频原始地址获取原始视频;

转码模块303用于根据移动终端的性能参数将原始视频进行转码,以获得转码后的视频;

视频提供模块304用于将转码后的视频提供给移动终端,以便移动终端播放转码后的视频。

获取模块302获取的原始视频包括视频头、至少一帧关键帧和依赖各关键帧的非关键帧。

转码模块303包括:分割单元303a和转码单元303b;

分割单元303a用于将原始视频按照关键帧分割成至少一个原始画面组,每个原始画面组包括一个关键帧和依赖关键帧的非关键帧;

转码单元303b用于对至少一个原始画面组分别进行转码,获得至少一个转码后的画面组。

该视频处理装置还包括:

参数适配模块305用于根据移动终端的性能参数确定转码参数,转码参数包括转码分辨率和刷新率;

转码单元303b具体用于根据转码分辨率和刷新率对至少一个原始画面组分别进行转码,获得至少一个转码后的画面组。

移动终端的性能参数包括:屏幕分辨率、图像处理能力参数和带宽参数,图像处理能力参数包括:CPU频率参数和GPU频率参数中的至少一种。

参数适配模块305具体包括:码率计算单元305a和参数确定单元305b;

码率计算单元305a用于根据移动终端图像处理能力参数和带宽参数计算移动终端处理图像的最大码率;

参数确定单元305b用于根据移动终端屏幕分辨率和码率计算单元计算出的最大码率确定转码分辨率和刷新率。

视频提供模块304具体用于将获得的至少一个转码后的画面组提供给移动终端。

视频提供模块304具体用于将当前转码后的画面组提供给移动终端;

请参见图4,优选的,该视频处理装置还可以包括:实时带宽计算模块306;

实时带宽计算模块306用于根据移动终端接收当前转码后的画面组所用的时间和当前转码后的画面组所携带的数据量计算移动终端的实时带宽。

参数适配模块305还用于根据移动终端的图像处理能力参数和移动终端的实时带宽调整转码参数;

转码单元303b还用于根据参数适配模块调整后的转码参数对尚未转码的原始画面组分别进行转码。

本实施例提供的视频处理装置,通过根据视频原始地址获取原始视频,并将原始视频转码为适合移动终端播放的视频,达到提高低性能移动终端的视频源覆盖率,向用户提供更接近移动终端图像处理和带宽能力的视频体验,在满足使用低性能移动终端的用户要求的同时,还可以为使用高性能移动终端的用户节省流量资费的目的;同时通过在向移动终端提供转码后的视频时获取移动终端实时带宽,并根据实时带宽调整转码参数,达到向用户提供符合移动终端实际带宽的视频体验的目的。

实施例五

参考图5,其示出了一种移动终端,该移动终端包括:请求模块401和视频接收模块402;

请求模块401用于向视频处理装置发送播放视频的请求,该播放视频请求中包括视频原始地址和该移动终端的性能参数;

视频接收模块402用于接收视频处理装置根据播放视频请求中包括的视频原始地址和移动终端的性能参数获取并转码所得到至少一个转码后的画面组。

本实施例提供的移动装置,通过向视频处理装置发送视频原始地址和该移动终端的性能参数,以便视频处理装置根据视频原始地址获取原始视频,并将原始视频转码为适合移动终端播放的视频,达到提高低性能移动终端的视频源覆盖率,向用户提供更接近移动终端图像处理和带宽能力的视频体验,在满足使用低性能移动终端的用户要求的同时,还可以为使用高性能移动终端的用户节省流量资费的目的。

实施例六

参考图6,其示出了一种视频处理系统,该系统包括实施例四所示的视频处理装置30和实施例五所示的移动终端40。

本实施例提供的视频提供系统,通过根据视频原始地址获取原始视频,并将原始视频转码为适合移动终端播放的视频,达到提高低性能移动终端的视频源覆盖率,向用户提供更接近移动终端图像处理和带宽能力的视频体验,在满足使用低性能移动终端的用户要求的同时,还可以为使用高性能移动终端的用户节省流量资费的目的;同时通过在向移动终端提供转码后的视频时获取移动终端实时带宽,并根据实时带宽调整转码参数,达到向用户提供符合移动终端实际带宽的视频体验的目的。

需要说明的是:上述实施例提供的一种视频处理装置在对原始视频进行处理并向移动终端提供视频时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的一种视频处理装置与一种视频处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1