提高VR视频播放流畅度的方法、装置、系统和机顶盒与流程

文档序号:20679931发布日期:2020-05-08 18:17阅读:444来源:国知局
提高VR视频播放流畅度的方法、装置、系统和机顶盒与流程

本公开涉及智慧家庭技术领域,尤其涉及一种提高vr视频播放流畅度的方法、装置、系统和机顶盒。



背景技术:

解决用户的眩晕感是当前vr(virtualreality,虚拟现实)技术研究的热点。当vr视频采用在线传输方式时,如果设备的处理能力不足或数据传输速率/时延产生抖动,会影响vr视频的下一帧画面的显示,如画面帧出现丢失或卡顿达到一定程度,会造成画面的抖动,从而使用户很快产生眩晕感,影响用户的业务使用。

vr视频与普通的二维视频不同,不仅是3d球面的视频,且随着用户视角的变化前后两帧的画面差别有可能会很大,传统的利用前一帧进行插帧处理的方法不适用于vr视频播放。



技术实现要素:

本公开要解决的一个技术问题是提供了一种提高vr视频播放流畅度的方法、装置、系统和机顶盒,能够提高vr视频播放的流畅性。

根据本公开一方面,提出一种提高虚拟现实vr视频播放流畅度的方法,包括:接收显示设备发送的用户视角变动参数;基于用户视角变动参数和当前视角vr画面帧生成预判画面帧;若预定时间内没有接收到服务器返回的下一帧vr画面数据,则将预判画面帧插入到当前视角vr画面帧的下一帧位置;将包含预判画面帧的下一帧返回至显示设备进行显示。

可选地,用户视角变动参数包括分辨率、水平变化角、俯仰变化角、视场角;基于分辨率、水平变化角、俯仰变化角、视场角和当前视角vr画面帧生成预判画面帧。

可选地,基于分辨率、水平变化角、俯仰变化角、视场角和当前视角vr画面帧,利用本地图形处理器gpu生成预判画面帧。

可选地,该方法还包括:接收显示设备发送的下一帧vr画面请求,并向服务器发起下一帧vr画面请求;若预定时间内没有接收到服务器返回的下一帧vr画面数据,则根据下一帧vr画面请求获取对应的预判画面帧,并将预判画面帧插入到当前视角vr画面帧的下一帧位置。

根据本公开的另一方面,还提出一种提高虚拟现实vr视频播放流畅度的装置,包括:参数接收单元,用于接收显示设备发送的用户视角变动参数;预判帧生成单元,用于基于用户视角变动参数和当前视角vr画面帧生成预判画面帧;预判帧插入单元,用于若预定时间内没有接收到服务器返回的下一帧vr画面数据,则将预判画面帧插入到当前视角vr画面帧的下一帧位置;画面帧发送单元,用于将包含预判画面帧的下一帧返回至显示设备进行显示。

可选地,用户视角变动参数包括分辨率、水平变化角、俯仰变化角、视场角;预判帧生成单元用于基于分辨率、水平变化角、俯仰变化角、视场角和当前视角vr画面帧生成预判画面帧。

可选地,预判帧生成单元用于基于分辨率、水平变化角、俯仰变化角、视场角和当前视角vr画面帧,利用本地图形处理器gpu生成预判画面帧。

可选地,该装置还包括:vr画面请求单元,用于接收显示设备发送的下一帧vr画面请求,并向服务器发起下一帧vr画面请求;预判帧插入单元用于若预定时间内没有接收到服务器返回的下一帧vr画面数据,则根据下一帧vr画面请求获取对应的预判画面帧,并将预判画面帧插入到当前视角vr画面帧的下一帧位置。

根据本公开的另一方面,还提出一种提高虚拟现实vr视频播放流畅度的装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器的指令执行如上述的提高vr视频播放流畅度的方法。

根据本公开的另一方面,还提出一种机顶盒,包括上述的提高虚拟现实vr视频播放流畅度的装置。

根据本公开的另一方面,还提出一种提高虚拟现实vr视频播放流畅度的系统,包括:显示设备,用于向机顶盒发送用户视角变动参数,以及接收机顶盒返回的包含预判画面帧的下一帧,并进行画面显示;机顶盒;以及服务器,用于向机顶盒返回下一帧vr画面数据。

根据本公开的另一方面,还提出一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现上述的提高虚拟现实vr视频播放流畅度的方法的步骤。

与现有技术相比,本公开利用已有当前视角vr画面帧及对用户视角变化的预判,生成预判画面帧,当网络传输出现丢帧或帧延迟到达时,可以将预判画面帧插入到当前视角vr画面帧的下一帧位置,并在显示设备进行显示,能够解决帧丢失与帧延迟造成的画面抖动问题,从而提高了vr视频播放的流畅性。

通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。

附图说明

构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。

参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:

图1为本公开提高vr视频播放流畅度的方法的一个实施例的流程示意图。

图2为本公开提高vr视频播放流畅度的方法的另一个实施例的流程示意图。

图3为本公开提高vr视频播放流畅度的装置的一个实施例的结构示意图。

图4为本公开提高vr视频播放流畅度的装置的另一个实施例的结构示意图。

图5为本公开提高vr视频播放流畅度的装置的再一个实施例的结构示意图。

图6为本公开提高vr视频播放流畅度的装置的又一个实施例的结构示意图。

图7为本公开提高vr视频播放流畅度的系统的一个实施例的结构示意图。

具体实施方式

现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。

在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。

图1为本公开提高vr视频播放流畅度的方法的一个实施例的流程示意图。该实施例可以由提高vr视频播放流畅度的装置执行,该装置具体可以为机顶盒。

在步骤110,接收显示设备发送的用户视角变动参数。其中,显示设备例如为头戴式显示器,头戴式显示器检测到用户视角变动后,将分辨率、水平变化角、俯仰变化角、视场角等用户视角变动参数发送给机顶盒。

在步骤120,基于用户视角变动参数和当前视角vr画面帧生成预判画面帧。例如,基于分辨率、水平变化角、俯仰变化角、视场角和当前视角vr画面帧生成预判画面帧。

在步骤130,若预定时间内没有接收到服务器返回的下一帧vr画面数据,则将预判画面帧插入到当前视角vr画面帧的下一帧位置。

在步骤140,将包含预判画面帧的下一帧返回至显示设备进行显示。

在该实施例中,利用已有当前视角vr画面帧及对用户视角变化的预判,生成预判画面帧,当网络传输出现丢帧或帧延迟到达时,可以将预判画面帧插入到当前视角vr画面帧的下一帧位置,并在显示设备进行显示,能够解决帧丢失与帧延迟造成的画面抖动问题,从而实现用户侧画面流畅播放。

图2为本公开提高vr视频播放流畅度的方法的另一个实施例的流程示意图。

在步骤210,头戴式显示器检测到用户视角变动。

在步骤220,头戴式显示器将用户视角变动参数发送至机顶盒,并向机顶盒发送下一帧vr画面请求。

在步骤230,机顶盒向服务器发起下一帧vr画面请求,并启动接收时延计算器。

在步骤240,机顶盒基于用户视角变动参数和当前视角vr画面帧,利用本地gpu(graphicsprocessingunit,图形处理器)渲染生成预判画面帧,并将预判画面帧保存在缓存区。

在步骤250,机顶盒判断时延计算器是否超时,若没有,则继续执行步骤计时,否则,执行步骤260。若没有超时,则机顶盒继续等待服务器返回下一帧vr画面数据。

在步骤260,在缓存区取出预判画面帧,并将预判画面帧插入到当前视角vr画面帧的下一帧位置。若超时,则说明出现了网络传输质量变动引起的视频画面卡顿、丢帧的问题,可以根据下一帧vr画面请求在缓存区获取对应的预判画面帧,并将预判画面帧插入到当前视角vr画面帧的下一帧位置。

在步骤270,机顶盒将包含预判画面帧的下一帧返回至头戴式显示器进行显示。

在该实施例中,机顶盒利用本地gpu能力,以及用户视角变动参数和当前视角vr画面帧计算出下一帧数据作为预判画面帧,若在规定时间没有收到服务器传输的数据,则将预判画面帧插入到当前视角vr画面帧的下一帧位置,并在头戴式显示器进行显示,因此,能够解决由于网络传输质量变动引起的视频画面卡顿、丢帧的问题,提高了vr视频播放的流畅性,提升用户体验。

图3为本公开提高vr视频播放流畅度的装置的一个实施例的结构示意图。该装置包括参数接收单元310、预判帧生成单元320、预判帧插入单元330和画面帧发送单元340。

参数接收单元310用于接收显示设备发送的用户视角变动参数。其中,显示设备例如为头戴式显示器,头戴式显示器检测到用户视角变动后,将分辨率、水平变化角、俯仰变化角、视场角等用户视角变动参数发送给参数接收单元310。

预判帧生成单元320用于基于用户视角变动参数和当前视角vr画面帧生成预判画面帧。例如,基于分辨率、水平变化角、俯仰变化角、视场角和当前视角vr画面帧生成预判画面帧。

预判帧插入单元330用于若预定时间内没有接收到服务器返回的下一帧vr画面数据,则将预判画面帧插入到当前视角vr画面帧的下一帧位置。

画面帧发送单元340用于将包含预判画面帧的下一帧返回至显示设备进行显示。

在该实施例中,利用已有当前视角vr画面帧及对用户视角变化的预判,生成预判画面帧,当网络传输出现丢帧或帧延迟到达时,可以将预判画面帧插入到当前视角vr画面帧的下一帧位置,并在显示设备进行显示,能够解决帧丢失与帧延迟造成的画面抖动问题,从而实现用户侧画面流畅播放。

图4为本公开提高vr视频播放流畅度的装置的另一个实施例的结构示意图。该装置包括参数接收单元410、vr画面请求单元420、预判帧生成单元430、预判帧插入单元440和画面帧发送单元450。

参数接收单元410用于接收头戴式显示器发送的用户视角变动参数。

vr画面请求单元420用于接收头戴式显示器发送的下一帧vr画面请求。其中,装置可以向服务器发起下一帧vr画面请求,并启动接收时延计算器。

预判帧生成单元430用于基于用户视角变动参数和当前视角vr画面帧,利用本地gpu渲染生成预判画面帧,并将预判画面帧保存在缓存区。

预判帧插入单元440用于若预定时间内没有接收到服务器返回的下一帧vr画面数据,则根据下一帧vr画面请求获取对应的预判画面帧,并将预判画面帧插入到当前视角vr画面帧的下一帧位置。

画面帧发送单元450用于将包含预判画面帧的下一帧返回至头戴式显示器进行显示。

在该实施例中,利用本地gpu能力,以及用户视角变动参数和当前视角vr画面帧计算出下一帧数据作为预判画面帧,若在规定时间没有收到服务器传输的数据,则将预判画面帧插入到当前视角vr画面帧的下一帧位置,并在头戴式显示器进行显示,因此,能够解决由于网络传输质量变动引起的视频画面卡顿、丢帧的问题,提高了vr视频播放的流畅性,提升用户体验。

图5为本公开提高vr视频播放流畅度的装置的再一个实施例的结构示意图。该装置包括存储器510和处理器520。其中:存储器510可以是磁盘、闪存或其它任何非易失性存储介质。存储器510用于存储图1、2所对应实施例中的指令。处理器520耦接至存储器510,可以作为一个或多个集成电路来实施,例如微处理器或微控制器。该处理器520用于执行存储器中存储的指令。

在一个实施例中,还可以如图6所示,该装置600包括存储器610和处理器620。处理器620通过bus总线630耦合至存储器610。该装置600还可以通过存储接口640连接至外部存储装置650以便调用外部数据,还可以通过网络接口660连接至网络或者另外一台计算机系统(未标出),此处不再进行详细介绍。

在该实施例中,通过存储器存储数据指令,再通过处理器处理上述指令,提高vr视频流播放的流畅性,解决视频播放卡顿与眩晕的问题。

在本公开的另一个实施例中,保护一种机顶盒,该机顶盒包括上述的提高vr视频播放流畅度的装置。

图7为本公开提高vr视频播放流畅度的系统的一个实施例的结构示意图。该系统包括显示设备710、机顶盒720和服务器730。机顶盒720的功能已在上述实施例中进行了详细介绍,此处不再进一步阐述。

显示设备710例如为头戴式显示器,能够检测到用户视角变动,并将用户视角变动参数发送至机顶盒720,并向机顶盒720发送下一帧vr画面请求。显示设备710还用于接收机顶盒720返回的包含预判画面帧的下一帧,并进行画面显示。

机顶盒720向服务器730发起下一帧vr画面请求,基于用户视角变动参数和当前视角vr画面帧,利用本地gpu渲染生成预判画面帧,并将预判画面帧保存在缓存区,若预定时间内没有收到服务器730返回的下一帧vr画面数据,则在缓存区取出预判画面帧,并将预判画面帧插入到当前视角vr画面帧的下一帧位置,同时将包含预判画面帧的下一帧返回至显示设备710进行显示。

服务器730能够接收机顶盒720发送的下一帧vr画面请求,并向机顶盒720返回下一帧vr画面数据。

在该实施例中,机顶盒利用已有当前视角vr画面帧及对用户视角变化的预判,生成预判画面帧,当网络传输出现丢帧或帧延迟到达时,可以将预判画面帧插入到当前视角vr画面帧的下一帧位置,并在显示设备进行显示,能够提高用户侧画面播放的流畅性。

在另一个实施例中,一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现图1、2所对应实施例中的方法的步骤。本领域内的技术人员应明白,本公开的实施例可提供为方法、装置、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

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

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

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

至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。

虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员应该理解,可在不脱离本公开的范围和精神的情况下,对以上实施例进行修改。本公开的范围由所附权利要求来限定。

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