一种投影类型推荐方法、服务器及客户端与流程

文档序号:15521871发布日期:2018-09-25 19:40阅读:204来源:国知局

本发明涉及视频领域,尤其涉及一种投影类型推荐方法、服务器及客户端。



背景技术:

全景视频也称为360度全景视频,全景视频是通过位于中心位置的相机对四周进行360°全景拍摄,用户观看时通过滑动屏幕或转动头部带动头盔来改变观察视角,播放全景视频的画面可以自动随之切换,用户好像身处真实环境中一样。

全景视频的基本制作播放过程可以简单概括为采集编码、内容传输以及解码渲染这三个阶段。采集编码阶段是指服务器通过部署在同一位置的多个镜头同步采集四周不同的画面,并将多个镜头拍摄的内容进行拼接,选择合适的投影类型投影对拼接内容进行投影处理并融合成一幅全景图像,再利用现有编码器对全景图像进行编码。内容传输阶段是指服务器采用媒体传输协议向客户端发送全景视频的过程。解码渲染阶段是指客户端先利用解码器对全景视频进行解码还原得到全景图像,根据投影类型对全景图像进行3d场景重建,再根据用户视角选择3d场景重建后的全景图像上的一部分图像投影呈现给用户。

目前,运动图像专家组(movingpictureexpertsgroup,mpeg)标准组织正在制定中的全景应用格式(omnidirectionalmediaapplicationformat,omaf)标准中已经包括的投影类型有:球形(sphere)、椭球形(squishedsphere)、圆柱体(cylinder)、棱锥体(pyramid)、八面体(octahedron)等。由于不同的投影类型所需要的处理开销不同,导致不同的终端设备可能仅支持某一种或某几种投影类型,因此在全景视频的采集编码阶段,需要服务器提供利用不同的投影类型进行投影处理的视频内容供终端选择。

采用不同的投影类型对同一组视频画面进行拼接投影出来的多个全景视频之间可能存在观看效果上的差异,导致这种差异的因素可能包括内容的复杂度、拍摄的实际场景、视频制作者期望重点突出的内容等等。当服务器提供采用不同投影类型得到的多种全景视频,并且客户端可以支持其中至少两种投影类型时,由于客户端无法提前确定采用各种投影类型得到的全景视频之间的效果差异,可能会选择到效果不太好的投影类型,进而用户无法体验到最佳的观影体验。或者客户端观看采用不同投影类型得到的全景视频的媒体分片之后才能选择效果最佳的投影类型,造成用户体验的大幅度降低。

综上所述,现有的客户端播放全景视频的方案中存在客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。



技术实现要素:

本发明实施例提供了一种投影类型推荐方法、服务器及客户端,用以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。

第一方面,本发明实施例提供的一种投影类型推荐方法,包括:

服务器接收客户端发送的第一请求消息,所述第一请求消息携带全景视频的媒体展示描述mpd文件的标识,mpd文件的标识可以是统一资源标识符uri;

所述服务器根据所述mpd文件的标识,获取mpd文件;其中,所述mpd文件包括至少两种投影类型对应的媒体分片的信息;

所述服务器向所述客户端返回第一响应消息,所述第一响应消息中包括所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。

上述方法中,服务器获知客户端请求获取全景视频的mpd文件后,服务器为客户端提供至少两种投影类型对应的全景视频的媒体分片的信息和推荐投影类型信息,使得客户端可以根据推荐投影类型信息选择效果最佳的投影类型,进而向服务器获取效果最佳的投影类型对应的媒体分片。通过上述方法可以实现服务器向客户端推荐投影类型,因此可以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。通过上述方法,客户端可以基于服务器发送的推荐投影类型信息,直接选择效果最佳的投影类型,避免了现有技术中客户端随机选择投影类型导致用户体验差的问题,同时避免了现有技术中客户端因选择到效果较差的投影类型需要切换不同投影类型的媒体分片所带来的网络开销。

在一种可能的实现方式中,上述方法还包括:

所述服务器接收所述客户端发送的携带媒体分片的标识的第二请求消息,媒体分片的标识可以是统一资源定位符url;

所述服务器向所述客户端发送第二响应消息,所述第二响应消息包括所述媒体分片的标识指示的全景视频的媒体分片。

其中,媒体分片的标识是指客户端根据服务器推荐的投影类型选择的效果最佳的投影类型对应的媒体分片的标识。这样,在服务器向客户端推荐投影类型后,服务器获知客户端请求获取效果最佳的投影类型对应的媒体分片后,向客户端返回最佳的投影类型对应的媒体分片,进而实现服务器向客户端传输媒体分片。

在一种可能的实现方式中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,具体为:

所述推荐投影类型信息用于指示针对所述全景视频向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,

所述推荐投影类型信息用于指示针对所述全景视频的不同时间段分别向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,

所述推荐投影类型信息用于指示针对不同分辨率分别向所述客户端推荐所述至少两种投影类型中的投影类型。

这样,服务器可以向客户端提供多种形式的推荐投影类型信息,进而客户端可以根据多种形式的推荐投影类型信息选择效果最佳的投影类型。

在一种可能的实现方式中,上述方法中的mpd文件可以分为如下两种情况:一种情况为:mpd文件是指现有的mpd文件,现有的mpd文件不包括推荐投影类型信息。

另一种情况为:mpd文件是指在现有的mpd文件的基础上,mpd文件还包括推荐投影类型信息。mpd文件包括的推荐投影类型信息不允许被更新,或者服务器可以利用自身确定的推荐投影类型信息更新mpd文件包括的推荐投影类型信息。

在一种可能的实现方式中,上述方法中可以通过如下两种方式实现,服务器将所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息发送给客户端:

方式一:mpd文件中包括至少两种投影类型对应的媒体分片的信息和推荐投影类型信息,服务器将包括该mpd文件的第一响应消息发送给客户端。

方式二:mpd文件中包括至少两种投影类型对应的媒体分片的信息,服务器将推荐投影类型信息作为第一响应消息的消息参数,然后将携带该消息参数和该mpd文件的第一响应消息发送给客户端。

在一种可能的实现方式中,推荐投影类型信息可以是服务器获取的mpd文件携带的,也可以是由服务器确定的。服务器可以通过如下几种方式确定推荐投影类型信息:

方式一:服务器根据统计数据确定推荐投影类型信息。

此方式尤其适用于mpd文件不包括推荐投影类型信息,并且第一请求消息不包括客户端的设备信息的场景。

方式二:客户端向服务器发送的第一请求消息中包括客户端的设备信息,该客户端的设备信息可以包括客户端的设备类型或者客户端支持的投影类型。服务器根据客户端的设备信息确定推荐投影类型信息,包括:

当所述客户端的设备信息包括所述客户端的设备类型时,所述服务器根据系统中不同客户端选择的投影类型的统计数据以及所述客户端的设备类型,确定所述推荐投影类型信息;或者,

当所述客户端的设备信息包括所述客户端支持的投影类型时,所述服务器根据所述客户端支持的投影类型,确定所述推荐投影类型信息。

第二方面,本发明实施例提供的一种投影类型推荐方法,包括:

客户端向服务器发送第一请求消息,所述第一请求消息携带全景视频的媒体展示描述mpd文件的标识;

所述客户端接收所述服务器发送的第一响应消息,所述第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。

上述方法中,客户端向服务器请求获取全景视频的mpd文件后,客户端接收服务器提供的至少两种投影类型对应的全景视频的媒体分片的信息和推荐投影类型信息,使得客户端可以根据推荐投影类型信息选择效果最佳的投影类型,进而向服务器获取效果最佳的投影类型对应的媒体分片。通过上述方法可以实现服务器向客户端推荐投影类型,因此可以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。通过上述方法,客户端可以基于服务器发送的推荐投影类型信息,直接选择效果最佳的投影类型,避免了现有技术中客户端随机选择投影类型导致用户体验差的问题,同时避免了现有技术中客户端因选择到效果较差的投影类型需要切换不同投影类型的媒体分片所带来的网络开销。

在一种可能的实现方式中,上述方法中可以通过如下两种方式实现,客户端接收服务器发送的所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息:

方式一:mpd文件中包括至少两种投影类型对应的媒体分片的信息和推荐投影类型信息,客户端接收服务器发送的包括该mpd文件的第一响应消息。

方式二:mpd文件中包括至少两种投影类型对应的媒体分片的信息,推荐投影类型信息作为第一响应消息的消息参数,客户端接收服务器发送的携带该消息参数和该mpd文件的第一响应消息。

在一种可能的实现方式中,客户端接收服务器发送的第一响应消息后,上述方法还包括:

客户端确定最佳投影类类型,再根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;

所述客户端向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。

这样,在服务器向客户端推荐投影类型后,客户端可以向服务器请求获取效果最佳的投影类型对应的媒体分片,进而客户端接收服务器返回的最佳的投影类型对应的媒体分片,进而实现服务器向客户端传输媒体分片。

在一种可能的实现方式中,可以通过如下两种方式实现客户端确定最佳投影类类型:

方式一:客户端根据客户端的设备信息以及推荐投影类型信息,确定最佳投影类类型。具体包括:

当所述推荐投影类型信息包括所述至少两种投影类型中的一种投影类型,并且所述客户端支持该投影类型时,所述客户端将所述推荐投影类型信息中包含的投影类型确定为所述最佳投影类型;或者,

当所述推荐投影类型信息包括所述至少两种投影类型中的多种投影类型的优先级指示信息时,所述客户端将所述推荐投影类型信息包括的多种投影类型中优先级最高且所述客户端支持的投影类型确定为所述最佳投影类型。

方式一尤其适用于第一请求消息不携带客户端的设备信息的场景。

方式二:客户端向服务器发送的第一请求消息还包括客户端的设备信息,以使服务器根据客户端的设备信息确定推荐投影类型信息。此场景下,客户端根据所述推荐投影类型信息,确定最佳投影类型。

方式二尤其适用于第一请求消息携带客户端的设备信息的场景,此场景下推荐投影类型信息是服务器基于客户端的设备信息确定的,推荐投影类型信息的推荐效果比较准确。客户端可以直接将推荐投影类型信息推荐的一种投影类型或者多种投影类型中优先级最高的投影类型作为最佳投影类型。

第三方面,本发明实施例提供的一种服务器,包括:

接收单元,用于接收客户端发送的第一请求消息,所述第一请求消息携带全景视频的媒体展示描述mpd文件的标识;

处理单元,用于根据所述mpd文件的标识,获取mpd文件;其中,所述mpd文件包括至少两种投影类型对应的媒体分片的信息;

发送单元,用于向所述客户端返回第一响应消息,所述第一响应消息中包括所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。

在一种可能的实现方式中,所述接收单元还用于:接收所述客户端发送的携带媒体分片的标识的第二请求消息;

所述发送单元还用于:向所述客户端发送第二响应消息,所述第二响应消息包括所述媒体分片的标识指示的全景视频的媒体分片。

在一种可能的实现方式中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,具体为:

所述推荐投影类型信息用于指示针对所述全景视频向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,

所述推荐投影类型信息用于指示针对所述全景视频的不同时间段分别向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,

所述推荐投影类型信息用于指示针对不同分辨率分别向所述客户端推荐所述至少两种投影类型中的投影类型。

在一种可能的实现方式中,所述推荐投影类型信息包含在所述mpd文件中。

在一种可能的实现方式中,所述第一请求消息还包括所述客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;

所述处理单元还用于:

在所述发送单元向所述客户端返回第一响应消息之前,当所述客户端的设备信息包括所述客户端的设备类型时,根据系统中不同客户端选择的投影类型的统计数据以及所述客户端的设备类型,确定所述推荐投影类型信息;或者,

在所述发送单元向所述客户端返回第一响应消息之前,当所述客户端的设备信息包括所述客户端支持的投影类型时,根据所述客户端支持的投影类型,确定所述推荐投影类型信息。

在一种可能的实现方式中,所述处理单元还用于:

在所述发送单元向所述客户端返回第一响应消息之前,根据统计数据确定所述推荐投影类型信息。

第四方面,本发明实施例提供的一种客户端,包括:

发送单元,用于向服务器发送第一请求消息,所述第一请求消息携带全景视频的媒体展示描述mpd文件的标识;

接收单元,用于接收所述服务器发送的第一响应消息,所述第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。

在一种可能的实现方式中,所述第一响应消息包括mpd文件,所述推荐投影类型信息包含在所述mpd文件中。

在一种可能的实现方式中,所述客户端还包括处理单元,用于根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类类型;根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;

所述发送单元还用于:向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。

在一种可能的实现方式中,所述处理单元根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类型时,具体用于:

当所述推荐投影类型信息包括所述至少两种投影类型中的一种投影类型,并且所述客户端支持该投影类型时,将所述推荐投影类型信息中包含的投影类型确定为所述最佳投影类型;或者,

当所述推荐投影类型信息包括所述至少两种投影类型中的多种投影类型的优先级指示信息时,将所述推荐投影类型信息包括的多种投影类型中优先级最高且所述客户端支持的投影类型确定为所述最佳投影类型。

在一种可能的实现方式中,所述第一请求消息中还包括客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;

所述客户端还包括处理单元,用于根据所述推荐投影类型信息,确定最佳投影类型;根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;

所述发送单元还用于:向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。

第五方面,本发明实施例提供的一种服务器,包括存储器、处理器以及通信接口;其中,

所述存储器用于存储计算机可读程序;

所述处理器通过运行所述存储器中的程序,以完成第一方面及第一方面中任一可能的实现方式提供的方法;

所述通信接口用于在所述处理器的控制下接收和发送数据。

第六方面,本发明实施例提供的一种客户端,包括存储器、处理器以及通信接口;其中,

所述存储器用于存储计算机可读程序;

所述处理器通过运行所述存储器中的程序,以完成第二方面及第二方面中任一可能的实现方式提供的方法;

所述通信接口用于在所述处理器的控制下接收和发送数据。

附图说明

图1为本发明实施例提供的一种网络架构示意图;

图2为现有技术中mpd文件的内容结构示意图;

图3为本发明实施例提供的一种服务器的结构示意图;

图4为本发明实施例提供的一种客户端的结构示意图;

图5为本发明实施例提供的一种投影类型推荐方法的流程示意图;

图6为本发明实施例提供的另一种服务器的结构示意图;

图7为本发明实施例提供的另一种客户端的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。

本发明实施例提供一种投影类型推荐方法、服务器及客户端,用以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。其中,方法和装置是基于同一发明构思的,由于方法及装置解决问题的原理相似,因此装置与方法的实施可以相互参见,重复之处不再赘述。

本发明实施例提供的技术方案涉及的网络架构如图1所示,包括服务器101和客户端102。服务器与客户端相对应,为用户提供本地服务的程序,本发明实施例涉及的客户端具有为用户播放全景视频功能,客户端上运行全景视频播放器,该播放器可以是安装在客户端上的一个应用,也可以是浏览器上的一个页面。客户端可以是无线终端设备,也可以是有线终端设备。无线终端设备可以是具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端设备可以经无线接入网(radioaccessnetwork,ran)与一个或多个核心网进行通信,无线终端设备可以是移动终端设备,如移动电话(或称为“蜂窝”电话)和具有移动终端设备的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。有线终端设备可以是有线电视机、有线计算机等。服务器是指提供计算服务的设备,服务器可响应客户端的服务请求,服务器具有承担服务并且保障服务的功能,本发明实施例涉及的服务器具有为客户端提供全景视频的功能。服务器的构成和通用的计算机架构类似,通常包括吹起、硬盘、内存、系统总线等,在处理能力、可靠性、稳定性、安全性、可扩展性、可管理性等方面要求较高,例如,服务器可以为个人电脑(personalcomputer,pc)服务器。客户端与服务器之间的通信支持通用的全景视频的媒体传输协议,例如实时传输协议(real-timeprotocol,rtp)、实时流协议(real-timestreamingprotocol,rtsp)、超文本传送协议(hypertexttransferprotocol,http)、http动态自适应流(dynamicadaptivestreamingoverhttp,dash)媒体协议、http直播流流(httplivestreaming,hls)媒体协议等。

本发明实施例涉及全景视频传输场景,具体涉及在客户端向服务器请求传输全景视频之前服务器为客户端推荐投影类型的场景。

全景视频也称为360度全景视频,全景视频是通过位于中心位置的相机对四周进行360°全景拍摄,用户观看时通过滑动屏幕或转动头部带动头盔来改变观察视角,播放全景视频的画面可以自动随之切换,用户好像身处真实环境中一样。

全景视频的基本制作播放过程可以简单概括为采集编码、内容传输以及解码渲染这三个阶段。采集编码阶段是指服务器通过部署在同一位置的多个镜头同步采集四周不同的画面,并将多个镜头拍摄的内容进行拼接,选择合适的投影类型投影对拼接内容进行投影处理并融合成一幅全景图像,再利用现有编码器对全景图像进行编码。内容传输阶段是指服务器采用媒体传输协议向客户端发送全景视频的过程。解码渲染阶段是指客户端先利用解码器对全景视频进行解码还原得到全景图像,根据投影类型对全景图像进行3d场景重建,再根据用户视角选择3d场景重建后的全景图像上的一部分图像投影呈现给用户。

目前,运动图像专家组(movingpictureexpertsgroup,mpeg)标准组织正在制定中的全景应用格式(omnidirectionalmediaapplicationformat,omaf)标准中已经包括的投影类型有:球形(sphere)、椭球形(squishedsphere)、圆柱体(cylinder)、棱锥体(pyramid)、八面体(octahedron)等。随着全景视频技术的发展,投影类型可能不仅限于本发明实施例中提到的投影类型。

本发明实施例涉及的服务器和客户端可以基于dash技术,也可以基于其他技术。以基于dash技术为例,dash技术主要是为了解决不同视频分发商使用不同的http流媒体技术造成的部署和接收机制上的繁冗问题。dash技术的主要特点是客户端可以根据网络状况如下载速度、缓存多少等,选择合适码率的媒体分片,媒体分发商根据客户端的选择,通过http协议将媒体分片发送到客户端,以保证用户的观看体验。

现有的dash标准主要规范了媒体展现描述(mediapresentationdescription,mpd)文件和媒体分片(segment)的格式。现有的mpd文件的内容结构如图2所示,mpd文件分为时间段(period)、适应集(adaptationset)、描述(representation)、分片(segment)共4个层次。一个mpd文件由一个或多个连续的period组成,一个period表示一个媒体时间段,有起始时间和结束时间;一个period包含一个或多个adaptationset,每个adaptationset通常对应着一种媒体成分,如音频、视频、字幕等。以视频的mpd文件为例,一个视频的adaptationset通常包括多个representation,不同representation对应不同的码率、分辨率等其它特征,同一个adaptationset包含的多个representation之间能够进行动态自适应切换;每个representation由一个或多个媒体分片组成,分媒体片是mpd的基本单元,客户端可以通过mpd文件中的媒体分片的统一资源定位符(uniformresourcelocator,url)向服务器获取和处理媒体分片以实现流媒体服务。

在全景视频传输场景中,客户端首先向服务器获取全景视频的mpd文件,它是一个元数据文件,提供了客户端如何访问全景视频的媒体分片的信息。由于不同的投影类型所需要的处理开销不同,导致不同的终端设备可能仅支持某一种或某几种投影类型,因此需要提供至少两种投影类型对应的全景视频供客户端选择,这至少两种投影类型是指制作全景视频时所采用的投影类型,这样全景视频的mpd文件应包括至少两种投影类型对应的全景视频的媒体分片的信息。

采用不同的投影类型对同一组视频画面进行拼接投影出来的多个全景视频之间可能存在观看效果上的差异,导致这种差异的因素可能包括内容的复杂度、拍摄的实际场景、视频制作者期望重点突出的内容等等。当服务器提供采用不同投影类型得到的多种全景视频,并且客户端可以支持其中至少两种投影类型时,现有技术中,由于客户端无法提前确定采用各种投影类型得到的全景视频之间的效果差异,可能会选择到效果不太好的投影类型,进而用户无法体验到最佳的观影体验。或者客户端观看采用不同投影类型得到的全景视频的媒体分片之后才能选择效果最佳的投影类型,造成用户体验的大幅度降低。

基于现有技术存在的上述问题,本发明实施例提供一种投影类型推荐方法、服务器及客户端。下面通过具体实施例详细说明本发明实施例提供的技术方案,需要说明的是,实施例的展示顺序仅代表实施例的先后顺序,并不代表实施例所提供的技术方案的优劣。

实施例一

本发明实施例提供了一种服务器,参阅图3所示,该服务器所在的主机300包括:至少一个处理器301、存储器302和通信接口303;所述至少一个处理器301、所述存储器302和所述通信接口303均通过总线304连接;

所述存储器302,用于存储计算机执行指令。

所述至少一个处理器301,用于执行所述存储器302存储的计算机执行指令,使得所述主机300通过所述通信接口303与客户端所在的主机进行数据交互来执行本发明实施例提供的一种投影类型推荐方法。其中,

所述至少一个处理器301读取存储器302中的程序,执行下列过程:

所述至少一个处理器301,用于通过所述通信接口303接收客户端发送的第一请求消息,所述第一请求消息携带全景视频的mpd文件的标识;

所述至少一个处理器301,还用于根据所述mpd文件的标识,获取mpd文件;其中,所述mpd文件包括至少两种投影类型对应的媒体分片的信息;

所述至少一个处理器301,还用于通过所述通信接口303向所述客户端返回第一响应消息,所述第一响应消息中包括所述至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。

在一种可能的实现方式中,所述至少一个处理器301,还用于:

通过所述通信接口303接收所述客户端发送的携带媒体分片的标识的第二请求消息;

通过所述通信接口303向所述客户端发送第二响应消息,所述第二响应消息包括所述媒体分片的标识指示的全景视频的媒体分片。

在一种可能的实现方式中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,具体为:

所述推荐投影类型信息用于指示针对所述全景视频向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,

所述推荐投影类型信息用于指示针对所述全景视频的不同时间段分别向所述客户端推荐所述至少两种投影类型中的投影类型;和/或,

所述推荐投影类型信息用于指示针对不同分辨率分别向所述客户端推荐所述至少两种投影类型中的投影类型。

在一种可能的实现方式中,所述推荐投影类型信息包含在所述mpd文件中。

在一种可能的实现方式中,所述第一请求消息还包括所述客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;

在所述服务器向所述客户端返回第一响应消息之前,所述方法还包括:

当所述客户端的设备信息包括所述客户端的设备类型时,所述服务器根据系统中不同客户端选择的投影类型的统计数据以及所述客户端的设备类型,确定所述推荐投影类型信息;或者,

当所述客户端的设备信息包括所述客户端支持的投影类型时,所述服务器根据所述客户端支持的投影类型,确定所述推荐投影类型信息。

在一种可能的实现方式中,所述至少一个处理器301在通过所述通信接口303向所述客户端返回第一响应消息之前,还用于:

根据统计数据确定所述推荐投影类型信息。

本实施例中,所述至少一个处理器301,可以包括不同类型的处理器301,或者包括相同类型的处理器301;处理器301可以是以下的任一种:中央处理器(centralprocessingunit,cpu)、微处理器、现场可编程门阵列(fieldprogrammablegatearray,fpga)、专用处理器等具有计算处理能力的器件。一种可选实施方式,所述至少一个处理器301还可以集成为众核处理器。

所述存储器302可以是以下的任一种或任一种组合:随机存取存储器(randomaccessmemory,ram)、只读存储器(readonlymemory,rom)、非易失性存储器(non-volatilememory,nvm)、固态硬盘(solidstatedrives,ssd)、机械硬盘、磁盘、磁盘整列等存储介质。

所述通信接口303用于主机300与其他设备(例如客户端所在的主机)进行数据交互。通信接口303可以是以下的任一种或任一种组合:网络接口(例如以太网接口)、无线网卡等具有网络接入功能的器件。

所述总线304可以包括地址总线、数据总线、控制总线等,为便于表示,图3用一条粗线表示该总线。所述总线304可以是以下的任一种或任一种组合:工业标准体系结构(industrystandardarchitecture,isa)总线、外设组件互连标准(peripheralcomponentinterconnect,pci)总线、扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等有线数据传输的器件。

本发明实施例提供了一种客户端,参阅图4所示,该客户端所在的主机400包括:至少一个处理器401、存储器402和通信接口403;所述至少一个处理器401、所述存储器402和所述通信接口403均通过总线404连接;

所述存储器402,用于存储计算机执行指令。

所述至少一个处理器401,用于执行所述存储器402存储的计算机执行指令,使得所述主机400通过所述通信接口403与客户端所在的主机进行数据交互来执行本发明实施例提供的一种投影类型推荐方法。其中,

所述至少一个处理器401读取存储器402中的程序,执行下列过程:

所述至少一个处理器401,用于通过所述通信接口403向服务器发送第一请求消息,所述第一请求消息携带全景视频的mpd文件的标识;

所述至少一个处理器401,还用于通过所述通信接口403接收所述服务器发送的第一响应消息,所述第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,所述推荐投影类型信息用于指示所述至少两种投影类型中推荐给所述客户端的投影类型,包括所述至少两种投影类型中的一种投影类型或者所述至少两种投影类型中的多种投影类型的优先级指示信息。

在一种可能的实现方式中,所述第一响应消息包括mpd文件,所述推荐投影类型信息包含在所述mpd文件中。

在一种可能的实现方式中,所述至少一个处理器401还用于:

根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类类型;

根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;

通过所述通信接口403向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。

在一种可能的实现方式中,所述至少一个处理器401根据客户端的设备信息以及所述推荐投影类型信息,确定最佳投影类类型时,具体用于:

当所述推荐投影类型信息包括所述至少两种投影类型中的一种投影类型,并且所述客户端支持该投影类型时,将所述推荐投影类型信息中包含的投影类型确定为所述最佳投影类型;或者,

当所述推荐投影类型信息包括所述至少两种投影类型中的多种投影类型的优先级指示信息时,将所述推荐投影类型信息包括的多种投影类型中优先级最高且所述客户端支持的投影类型确定为所述最佳投影类型。

在一种可能的实现方式中,所述第一请求消息中还包括客户端的设备信息,所述客户端的设备信息包括所述客户端的设备类型或者所述客户端支持的投影类型;所述至少一个处理器401还用于:

根据所述推荐投影类型信息,确定最佳投影类型;

根据所述最佳投影类型对应在所述至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;

通过所述通信接口403向所述服务器发送第二请求消息,所述第二请求消息中包括所述媒体分片的标识。

本实施例中,所述至少一个处理器401,可以包括不同类型的处理器401,或者包括相同类型的处理器401;处理器401可以是以下的任一种:cpu、arm处理器、fpga、专用处理器等具有计算处理能力的器件。一种可选实施方式,所述至少一个处理器401还可以集成为众核处理器。

所述存储器402可以是以下的任一种或任一种组合:ram、rom、nvm、ssd、机械硬盘、磁盘、磁盘整列等存储介质。

所述通信接口403用于主机400与其他设备(例如服务器所在的主机)进行数据交互。通信接口403可以是以下的任一种或任一种组合:网络接口(例如以太网接口)、无线网卡等具有网络接入功能的器件。

所述总线404可以包括地址总线、数据总线、控制总线等,为便于表示,图4用一条粗线表示该总线。所述总线404可以是以下的任一种或任一种组合:isa总线、pci总线、eisa总线等有线数据传输的器件。

本发明实施例提供的服务器和客户端可以实现服务器向客户端推荐投影类型,通过服务器为客户端提供至少两种投影类型对应的全景视频的媒体分片的信息和推荐投影类型信息,使得客户端可以根据推荐投影类型信息选择效果最佳的投影类型,进而向服务器获取效果最佳的投影类型对应的媒体分片。通过本发明实施例可以用以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。本发明实施例中,客户端可以基于服务器发送的推荐投影类型信息,直接选择效果最佳的投影类型,避免了现有技术中客户端随机选择投影类型导致用户体验差的问题,同时避免了现有技术中客户端因选择到效果较差的投影类型需要切换不同投影类型的媒体分片所带来的网络开销。

实施例二

本发明实施例提供了一种投影类型推荐方法,如图5所示,该方法中服务器与客户端的交互流程如下:

s501、客户端向服务器发送第一请求消息,该第一请求消息携带全景视频的mpd文件的标识。

s501中,mpd文件的标识用于服务器获取该mpd文件的标识指示的mpd文件。mpd文件的标识可以是统一资源标识符(uniformresourceidetifier,uri),以uri是http://example.com/mpd为例,第一请求消息包括如下内容:

gethttp://example.com/mpdhttp/1.1

host:media.com

connection:keep-alive

本实施例的s501中客户端向服务器发送的第一请求消息中还可以包括客户端的设备信息,该客户端的设备信息可以包括客户端的设备类型或者客户端支持的投影类型,客户端的设备类型可以为客户端所在终端的类型、处理器的型号、芯片的型号等信息。使得服务器可以根据客户端的设备信息确定推荐投影类型信息,服务器根据客户端的设备信息确定推荐投影类型信息的方法会在下文中详细描述。

示例性的,第一请求消息包括客户端的设备信息时,第一请求消息包括如下内容:

gethttp://example.com/mpdhttp/1.1

host:media.com

connection:keep-alive

support-projection:cube、cylinder

上述第一请求消息中support-projection:cube、cylinder表示客户端的设备信息,即表示客户端支持的投影类型为cube和cylinder。

需要说明的是,上述第一请求消息仅为示例性说明,本实施例中的第一请求消息除包括mpd文件的标识之外,还可以包括其他参数,此处不再一一赘述。

s502、服务器根据mpd文件的标识,获取mpd文件。

s502中,mpd文件包括至少两种投影类型对应的媒体分片的信息,该至少两种投影类型可以是指制作全景视频时所采用的投影类型。因此mpd文件包括至少两种投影类型对应的媒体分片的信息可以理解为,mpd文件包括采用至少两种投影类型中的每种投影类型制作的全景视频的媒体分片的信息。

其中,投影类型包括但不限于球形、椭球形、圆柱体、棱锥体、八面体等。一种投影类型对应的媒体分片的信息可以用于确定该投影类型对应的媒体分片的标识,该媒体分片的标识可用于客户端请求获取该媒体分片的标识指示的全景视频的媒体分片,例如媒体分片的标识可以是该媒体分片的统一资源定位符(uniformresourcelocator,url)。示例性的,一种投影类型对应的媒体分片的信息可以包括:投影类型以及该投影类型对应的媒体分片的url、媒体类型、编码类型、视频帧率、码率、分辨率等。本实施例中,mpd文件包括的投影类型对应的媒体分片的信息可以由服务器或者第三方提供。

本实施例中,mpd文件可以分为如下两种情况:

一种情况为:本实施例中的mpd文件是指现有的mpd文件。示例性的,现有的mpd文件的内容结构可参见如图2所示,现有的mpd文件不包括推荐投影类型信息。

另一种情况为:本实施例中的mpd文件是指在现有的mpd文件的基础上,mpd文件还包括推荐投影类型信息。

示例性的,包括推荐投影类型信息的mpd文件的内容如下:

上述包括推荐投影类型信息的mpd文件中部分属性的描述如下表一所示:

表一

上述表一中,adaptationset@projection表示projection作为adaptationset的属性,即projection为该adaptionset下媒体分片所采用的投影类型。推荐投影类型信息recommendedprojection除了可以作为mpd的元素或属性之外,针对全景视频的不同时间段period,推荐投影类型信息可以作为period的属性,表示不同period中推荐的投影类型。本实施例中并不限定推荐投影类型信息在mpd中所处的层级,即推荐投影类型信息可以作为mpd、period、adaptationset以及representation中任意一个层级的属性。同样地,projection除了如表一中作为adaptionset的属性以外,还可以作为representation或者subrepresentation的属性。

上述两种情况中,推荐投影类型信息用于指示全景视频对应的至少两种投影类型中推荐给客户端的投影类型。下文中会对推荐投影类型信息做详细描述。

s503、服务器向客户端返回第一响应消息,该第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息。

本实施例中,推荐投影类型信息用于指示全景视频对应的至少两种投影类型中推荐给客户端的投影类型,包括该至少两种投影类型中的一种投影类型或者该至少两种投影类型中的多种投影类型的优先级指示信息。

其中,推荐投影类型信息包括一种投影类型时,表示服务器向客户端推荐采用该投影类型对应的全景视频,客户端播放该投影类型对应的全景视频的效果较佳。

推荐投影类型信息包括多种投影类型的优先级指示信息时,表示推荐投影类型信息包括多种投影类型,并且指示该多种投影类型中每种投影类型被推荐的优先级。例如,推荐投影类型信息中包括的多种投影类型的优先级指示信息为球形、椭球形、圆柱体,表示服务器向客户端推荐球形、椭球形和圆柱体分别对应的全景视频,并且推荐这三种投影类型的优先级按照球形、椭球形、圆柱体的顺序依次增强或减弱。又例如,推荐投影类型信息中通过多种投影类型的推荐值来指示多种投影类型的优先级指示信息,比如球形、椭球形、圆柱体对应的推荐值分别为1、2、3,表示这三种投影类型的优先级为球形、椭球形、圆柱体。

示例性的,推荐投影类型信息中通过多种投影类型的推荐值来指示多种投影类型的优先级指示信息时,mpd文件的内容如下:

上述mpd文件的内容中,projection="cube",recommended=“2”>、projection="cylinder",recommended=“3”>、projection="sphere",recommended=“1”>表示立方体cube、圆柱体cylinder、球体sphere的推荐值分别为2、3、1。

本实施例中,推荐投影类型信息可以与全景视频的媒体信息相结合,例如媒体信息可以为分辨率、媒体类型、编码类型、视频帧率等。以推荐投影类型信息与全景视频的分辨率相结合为例,推荐投影类型信息中推荐的投影类型包括球形、椭球形、圆柱体,当全景视频的分辨率为1000000比特/秒时,球形、椭球形、圆柱体对应的推荐值分别为1、2、3;当全景视频的分辨率为500000比特/秒时,球形、椭球形、圆柱体对应的推荐值分别为3、1、2。

示例性的,推荐投影类型信息与全景视频的分辨率相结合时,mpd文件的内容如下:

通过上述mpd文件的内容可知,对于立方体cube,当分辨率bandwidth="1000000"时,cube的推荐值为2,当分辨率bandwidth="500000"时,cube的推荐值为4。

本实施例中,推荐投影类型信息可以用于指示针对全景视频向客户端推荐全景视频对应的至少两种投影类型中的投影类型,也可以用于指示针对全景视频的不同时间段分别向客户端推荐全景视频对应的至少两种投影类型中的投影类型,还可以用于指示针对不同分辨率分别向客户端推荐全景视频对应的至少两种投影类型中的投影类型。

本实施例中并不限定确定推荐投影类型信息的方式,可以由全景视频的导演或者制作方在全景视频的拍摄或制作过程中确定推荐投影类型信息,也可以是由全景视频的内容提供方确定推荐投影类型信息,还可以是服务器或第三方通过统计数据确定推荐投影类型信息。

s503中第一响应消息是指用于响应第一请求消息的消息。本实施例中可以通过如下两种方式实现s503服务器向客户端返回第一响应消息:

方式一:mpd文件中包括至少两种投影类型对应的媒体分片的信息和推荐投影类型信息,服务器将包括该mpd文件的第一响应消息发送给客户端。

方式一,mpd文件中包括的推荐投影类型信息可以是,服务器获取mpd文件时投影类型信息已经包含在该mpd文件中,服务器将获取的mpd文件直接携带在第一响应消息中。

mpd文件中包括的推荐投影类型信息也可以是,服务器获取mpd文件时该mpd文件不包括投影类型信息,服务器将自身确定的投影类型信息携带在该mpd文件中,然后将该mpd文件携带在第一响应消息中。

mpd文件中包括的推荐投影类型信息还可以是,服务器获取mpd文件时投影类型信息已经包含在该mpd文件中,服务器自身确定推荐投影类型信息,然后利用自身确定的推荐投影类型信息更新包含于mpd文件中的推荐投影类型信息,将更新后的mpd文件携带在第一响应消息中。

方式二:mpd文件中包括至少两种投影类型对应的媒体分片的信息,服务器将推荐投影类型信息作为第一响应消息的消息参数,然后将携带该消息参数和该mpd文件的第一响应消息发送给客户端。

方式二中,服务器获取mpd文件后,自身确定推荐投影类型信息。

本实施例中,服务器可以通过如下方式确定推荐投影类型信息:

方式一:mpd文件中包含投影类型信息,服务器根据mpd文件确定推荐投影类型信息。

方式二:服务器根据统计数据确定推荐投影类型信息。

假设,统计数据包括客户端选择不同投影类型作为最佳投影类型的概率,例如统计数据中客户端选择球形、椭球形、圆柱体作为最佳投影类型的概率分别为50%、35%、15%,服务器可以根据该统计数据将球形作为推荐投影类型信息中推荐给客户端的投影类型。

方式三:s501中客户端向服务器发送的第一请求消息中包括客户端的设备信息,该客户端的设备信息可以包括客户端的设备类型或者客户端支持的投影类型,客户端的设备类型可以为客户端所在终端的类型、处理器的型号、芯片的型号等信息。服务器根据客户端的设备信息确定推荐投影类型信息,具体包括:

当客户端的设备信息包括客户端支持的投影类型时,服务器从全景视频对应的至少两种投影类型中选择客户端支持的投影类型作为推荐投影类型信息中推荐给客户端的投影类型。其中,若客户端支持全景视频对应的至少两种投影类型中的一种投影类型,则服务器将客户端支持的该投影类型作为推荐投影类型信息推荐给客户端;若客户端支持全景视频对应的至少两种投影类型中的多种投影类型,则服务器可将客户端支持的该多种投影类型的优先级信息作为推荐投影类型信息。

当客户端的设备信息包括客户端的设备类型时,服务器根据系统中不同客户端选择的投影类型的统计数据和客户端的设备类型,确定客户端的设备类型对应的投影类型,再从全景视频对应的至少两种投影类型中选择客户端的设备类型对应的投影类型作为推荐投影类型信息中推荐给客户端的投影类型。

其中,系统中不同客户端选择的投影类型的统计数据可以包括设备类型与投影类型的对应关系,该对应关系可以是服务器根据统计数据分析设置的。具体包括:服务器统计系统中不同客户端选择投影类型的相关操作及观看信息,服务器通过分析总结可以得出具有相同设备类型的客户端选择的投影类型,进而确定并维护设备类型与投影类型的对应关系。服务器统计客户端选择投影类型的相关操作及观看信息时,可以通过统计相同设备类型的客户端选择某种投影类型的次数、观看时长以及切换投影类型的概率等来确定。

例如,设备类型为a的客户端观看某全景视频时大多选择的投影类型为立方体,并且极少切换到其他投影类型,而选择圆柱体观看该全景视频时,总是很快关闭或者切换成其他投影类型;此时针对该全景视频,将设备类型为a的客户端对应的最佳投影类型设置为立方体,或者将设备类型为a的客户端对应的最佳投影类型设置为立方体和球体,但立方体的推荐优先级高于球体的推荐优先级。

本实施例中,通过上述方法可以实现服务器向客户端推荐投影类型。上述方法还可以包括如下步骤,以实现服务器向客户端传输全景视频的媒体分片:

s504、客户端接收到服务器返回的第一响应消息之后,客户端向服务器发送第二请求消息,该第二请求消息中包括媒体分片的标识;

s505、服务器向客户端发送第二响应消息,第二响应消息包括媒体分片的标识指示的全景视频的媒体分片。

本实施例中,可以通过如下方式实现客户端确定s504中的媒体分片的标识:

方式一:客户端根据客户端的设备信息以及推荐投影类型信息,确定最佳投影类类型;然后客户端根据最佳投影类型对应在至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识。

其中,当推荐投影类型信息包括全景视频对应的至少两种投影类型中的一种投影类型,并且客户端支持该投影类型时,客户端将推荐投影类型信息中包含的投影类型确定为最佳投影类型;或者,

当推荐投影类型信息包括至少两种投影类型中的多种投影类型的优先级指示信息时,客户端将推荐投影类型信息包括的多种投影类型中优先级最高且客户端支持的投影类型确定为最佳投影类型。

方式一尤其适用于第一请求消息不携带客户端的设备信息的场景。

方式二:客户端根据推荐投影类型信息,确定最佳投影类型;然后客户端根据最佳投影类型对应在至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识。

方式二尤其适用于第一请求消息携带客户端的设备信息的场景,此场景下推荐投影类型信息是服务器基于客户端的设备信息确定的,推荐投影类型信息的推荐效果比较准确。客户端可以直接将推荐投影类型信息推荐的一种投影类型或者多种投影类型中优先级最高的投影类型作为最佳投影类型。

上述两种方式中,如果客户端不支持推荐投影类型信息中推荐的投影类型时,客户端可以从自身支持的投影类型中选择一种投影类型作为最佳投影类型。例如客户端可以结合全景视频的处理开销、所需带宽等因素选择最佳投影类型。

如果推荐投影类型信息中推荐的投影类型与全景视频的媒体信息相结合,则客户端在选择最佳投影类型时还应考虑自身支持的媒体信息。以推荐投影类型信息中推荐的投影类型与全景视频的分辨率相结合为例,推荐投影类型信息中推荐的投影类型包括球形、椭球形、圆柱体,当全景视频的分辨率为1000000比特/秒时,球形、椭球形、圆柱体对应的推荐值分别为1、2、3(推荐值越小表示推荐的优先级越高);当全景视频的分辨率为width="640"height="480"时,球形、椭球形、圆柱体对应的推荐值分别为3、1、2。在客户端支持的投影类型为球形和椭球形,并且客户端根据设备能力以及当前带宽等确定选择的分辨率为width="640"height="480"的情况下,客户端根据上述推荐投影类型信息选择的最佳投影类型为椭球形。

上述两种方式中,客户端根据最佳投影类型对应在至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识,具体包括:

由于至少两种投影类型中包括最佳投影类型,因此至少两种投影类型对应的媒体分片的信息包括最佳投影类型对应的媒体分片的信息。最佳投影类型对应的媒体分片的信息可以确定最佳投影类型对应的媒体分片的标识,客户端向服务器发送的第二请求消息中携带的媒体分片的标识为最佳投影类型对应的媒体分片的标识,以实现客户端向服务器请求获取最佳投影类型对应的媒体分片的标识指示的全景视频的媒体分片。

例如,至少两种投影类型对应的媒体分片的信息包括球形、椭球形、圆柱体分别对应的全景视频的媒体分片的信息,在客户端选择的最佳投影类型为球形的情况下,客户端从至少两种投影类型对应的媒体分片的信息中获得球形对应的媒体分片的信息。假设球形对应的媒体分片的信息包括球形对应的媒体分片的url,或者通过球形对应的媒体分片的信息可以确定球形对应的媒体分片的url,客户端将球形对应的媒体分片的url携带在第二请求消息中。

本发明实施例提供的一种投影类型推荐方法中,通过服务器为客户端提供至少两种投影类型对应的全景视频的媒体分片的信息和推荐投影类型信息,使得客户端可以根据推荐投影类型信息选择效果最佳的投影类型,进而向服务器获取效果最佳的投影类型对应的媒体分片。通过本发明实施例提供的方法可以用以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。本发明实施例中,客户端可以基于服务器发送的推荐投影类型信息,直接选择效果最佳的投影类型,避免了现有技术中客户端随机选择投影类型导致用户体验差的问题,同时避免了现有技术中客户端因选择到效果较差的投影类型需要切换不同投影类型的媒体分片所带来的网络开销。

实施例三

基于以上实施例,本发明实施例还提供了一种服务器,该服务器可以是与图3所示的服务器相同的设备,可以采用实施例二中服务器侧执行的方法。参阅图6所示,本发明实施例提供的一种服务器600包括:接收单元601、处理单元602和发送单元603。其中,

接收单元601,用于接收客户端发送的第一请求消息,该第一请求消息携带全景视频的媒体展示描述mpd文件的标识;

处理单元602,用于根据mpd文件的标识,获取mpd文件;其中,mpd文件包括至少两种投影类型对应的媒体分片的信息;

发送单元603,用于向客户端返回第一响应消息,该第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,推荐投影类型信息用于指示至少两种投影类型中推荐给客户端的投影类型,包括至少两种投影类型中的一种投影类型或者至少两种投影类型中的多种投影类型的优先级指示信息。

在一种可能的实现方式中,接收单元601还用于:接收客户端发送的携带媒体分片的标识的第二请求消息;

发送单元603还用于:向客户端发送第二响应消息,第二响应消息包括媒体分片的标识指示的全景视频的媒体分片。

在一种可能的实现方式中,推荐投影类型信息用于指示至少两种投影类型中推荐给客户端的投影类型,具体为:

推荐投影类型信息用于指示针对全景视频向客户端推荐至少两种投影类型中的投影类型;和/或,

推荐投影类型信息用于指示针对全景视频的不同时间段分别向客户端推荐至少两种投影类型中的投影类型;和/或,

推荐投影类型信息用于指示针对不同分辨率分别向客户端推荐至少两种投影类型中的投影类型。

在一种可能的实现方式中,推荐投影类型信息包含在mpd文件中。

在一种可能的实现方式中,第一请求消息还包括客户端的设备信息,客户端的设备信息包括客户端的设备类型或者客户端支持的投影类型;

处理单元602还用于:

在发送单元603向客户端返回第一响应消息之前,当客户端的设备信息包括客户端的设备类型时,根据系统中不同客户端选择的投影类型的统计数据以及客户端的设备类型,确定推荐投影类型信息;或者,

在发送单元603向客户端返回第一响应消息之前,当客户端的设备信息包括客户端支持的投影类型时,根据客户端支持的投影类型,确定推荐投影类型信息。

在一种可能的实现方式中,处理单元602还用于:

在发送单元603向客户端返回第一响应消息之前,根据统计数据确定推荐投影类型信息。

上述各个单元的功能可参见实施例二客户端侧执行的方法,此处不再赘述。

基于以上实施例,本发明实施例还提供了一种客户端,该客户端可以是与图4所示的客户端相同的设备,可以采用实施例二中客户端侧执行的方法。参阅图7所示,本发明实施例提供的一种客户端700包括:发送单元701和接收单元702。其中,

发送单元701,用于向服务器发送第一请求消息,该第一请求消息携带全景视频的媒体展示描述mpd文件的标识;

接收单元702,用于接收服务器发送的第一响应消息,该第一响应消息中包括至少两种投影类型对应的媒体分片的信息以及推荐投影类型信息;其中,推荐投影类型信息用于指示至少两种投影类型中推荐给客户端700的投影类型,包括至少两种投影类型中的一种投影类型或者至少两种投影类型中的多种投影类型的优先级指示信息。

在一种可能的实现方式中,第一响应消息包括mpd文件,推荐投影类型信息包含在mpd文件中。

在一种可能的实现方式中,客户端700还包括处理单元703,用于根据客户端700的设备信息以及推荐投影类型信息,确定最佳投影类类型;根据最佳投影类型对应在至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;

发送单元701还用于:向服务器发送第二请求消息,第二请求消息中包括媒体分片的标识。

在一种可能的实现方式中,处理单元703根据客户端700的设备信息以及推荐投影类型信息,确定最佳投影类型时,具体用于:

当推荐投影类型信息包括至少两种投影类型中的一种投影类型,并且客户端700支持该投影类型时,将推荐投影类型信息中包含的投影类型确定为最佳投影类型;或者,

当推荐投影类型信息包括至少两种投影类型中的多种投影类型的优先级指示信息时,将推荐投影类型信息包括的多种投影类型中优先级最高且客户端700支持的投影类型确定为最佳投影类型。

在一种可能的实现方式中,第一请求消息中还包括客户端700的设备信息,客户端700的设备信息包括客户端700的设备类型或者客户端700支持的投影类型;

处理单元703用于:根据推荐投影类型信息,确定最佳投影类型;根据最佳投影类型对应在至少两种投影类型对应的媒体分片的信息,确定媒体分片的标识;

发送单元701还用于:向服务器发送第二请求消息,第二请求消息中包括媒体分片的标识。

上述各个单元的功能可参见实施例二客户端侧执行的方法,此处不再赘述。

需要说明的是,本发明实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

本发明实施例提供的服务器和客户端可以实现服务器向客户端推荐投影类型,通过服务器为客户端提供至少两种投影类型对应的全景视频的媒体分片的信息和推荐投影类型信息,使得客户端可以根据推荐投影类型信息选择效果最佳的投影类型,进而向服务器获取效果最佳的投影类型对应的媒体分片。通过本发明实施例可以用以解决现有的客户端播放全景视频的方案中存在的客户端无法选择效果最佳的投影类型对应的全景视频进行播放,导致用户体验差的问题。本发明实施例中,客户端可以基于服务器发送的推荐投影类型信息,直接选择效果最佳的投影类型,避免了现有技术中客户端随机选择投影类型导致用户体验差的问题,同时避免了现有技术中客户端因选择到效果较差的投影类型需要切换不同投影类型的媒体分片所带来的网络开销。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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