通信装置、生成数据大小控制方法和程序与流程

文档序号:18518517发布日期:2019-08-24 09:37阅读:169来源:国知局
通信装置、生成数据大小控制方法和程序与流程

本发明涉及通信装置、生成数据大小控制方法和程序。



背景技术:

近年来,戴在头上并允许在人眼前视觉欣赏视频的头戴式显示器(hmd)已经变得流行。在这些hmd中,一些通过电缆与运行包括视频游戏程序的程序的娱乐装置连接,hmd接收并显示由娱乐装置产生的视频。

在连接娱乐装置的hmd中,一些被配置为根据用户头部的移动来改变所显示的视频。这些hmd配备有例如运动传感器和相机。利用其运动传感器和相机,hmd生成感测数据,诸如表示运动传感器的检测结果和由相机捕获的图像的数据,所生成的感测数据被发送到娱乐装置。在接收到感测数据时,娱乐装置基于感测数据生成视频,并将所生成的视频发送到hmd。反过来,hmd显示所接收的视频,允许用户在视觉上欣赏正根据用户头部的移动而改变的视频。



技术实现要素:

技术问题

发明人已经考虑将根据wi-fi(注册商标)或类似标准的半双工无线通信信道包括在娱乐装置和hmd之间的通信信道中。在半双工无线通信中,从发送侧的装置(以下称为通信装置)到接收侧的装置(以下称为通信伙伴装置)的数据传输与从通信伙伴装置到通信装置的数据传输交替。在上面的示例中,从娱乐装置到hmd的视频数据传输与从hmd到娱乐装置的感测数据传输交替。

由通信伙伴装置使用的数据,诸如表示上述娱乐装置生成的视频的数据,应该优选地具有尽可能高的质量。例如,要在以上述方式使用的hmd上显示的视频应该优选地具有最高可能的质量。因此,每单位时间生成的数据的大小,诸如构成由娱乐装置生成的视频的数据,应该尽可能大。

另一方面,在诸如上述要求即时性的通信中,重要的是使往返通信所需的时间接近预定的目标时间,甚至通过减少每单位时间生成的数据的大小,以最小化用户的不适感。

本发明的一个目的是提供通信装置、生成数据大小控制方法和程序,用于在半双工无线通信配置中使往返通信所需的时间满足预定目标时间。

问题的解决方案

在解决上述问题时,根据本发明,提供了一种用于执行与通信伙伴装置的半双工无线通信的通信装置。通信装置包括:发送部分,被配置为将由数据生成部分生成的数据发送到通信伙伴装置;接收部分,被配置为接收从通信伙伴装置发送的数据;时间标识部分,被配置为标识通信装置和通信伙伴装置之间的往返半双工无线通信所需的时间;以及生成控制部分,被配置为基于所标识的时间、往返通信中与通信伙伴装置交换的数据的大小以及往返通信的预定目标时间来控制数据生成部分每单位时间要生成的数据的大小。

在本发明的一种模式中,接收部分接收从通信伙伴装置发送的感测数据。数据生成部分生成视频数据。生成控制部分控制视频数据的质量。

在本发明的另一模式中,通信装置还包括比特率确定部分,被配置为根据所标识的时间、往返通信中与通信伙伴装置交换的数据的大小以及往返通信的预定目标时间来确定允许后续往返通信中从通信装置到通信伙伴装置的数据传输的比特率。生成控制部分根据所确定的比特率来控制数据生成部分每单位时间生成的数据的大小。

在上述模式中,在允许往返通信中从通信装置到通信伙伴装置的数据传输的比特率低于阈值的情况下,发送部分可以向通信伙伴装置发送指令,以减小在后续往返通信中每单位时间要发送的数据的大小。

此外,阈值可以反映通信装置和通信伙伴装置之间的距离或通信伙伴装置相对于通信装置的方向。

根据本发明,还提供了一种用于执行与通信伙伴装置的半双工无线通信的通信装置。该通信装置包括:接收部分,被配置为从通信伙伴装置接收由数据生成部分生成的数据;发送部分,被配置为将数据发送到通信伙伴装置。通信伙伴装置包括:时间标识部分,被配置为标识通信装置和通信伙伴装置之间的往返半双工无线通信所需的时间;以及生成控制部分,被配置为基于所标识的时间、往返通信中与通信伙伴装置交换的数据的大小以及往返通信的预定目标时间来控制数据生成部分每单位时间要生成的数据的大小。

此外,根据本发明,提供了一种生成数据大小控制方法,包括以下步骤:将由数据生成部分生成的数据发送到通信伙伴装置;接收从通信伙伴装置发送的数据;标识通信装置和通信伙伴装置之间的往返半双工无线通信所需的时间;以及基于所标识的时间、往返通信中与通信伙伴装置交换的数据的大小以及往返通信的预定目标时间来控制数据生成部分每单位时间要生成的数据的大小。

此外,根据本发明,提供了一种使计算机执行过程的程序,该过程包括:标识通信装置和通信伙伴装置之间的往返半双工无线通信所需的时间,该通信装置通过半双工无线通信向通信伙伴装置发送由数据生成部分生成的数据,该通信伙伴装置向通信装置发送数据;以及基于所标识的时间、往返通信中与通信伙伴装置交换的数据的大小以及往返通信的预定目标时间来控制数据生成部分每单位时间要生成的数据的大小。

附图说明

图1是描绘作为本发明的实施例的娱乐系统的典型整体配置的示意图。

图2a是描绘本发明的实施例的头戴式显示器的典型配置的示意图。

图2b是描绘本发明实施例的娱乐装置的典型配置的示意图。

图2c是描绘本发明的实施例的中继装置的典型配置的示意图。

图3是示意性地描绘在中继装置和hmd之间如何发生半双工无线通信的示例的示意图。

图4是描绘由本发明的实施例的头戴式显示器、娱乐装置和中继装置实现的典型功能的功能框图。

图5是描绘由本发明的实施例的中继装置执行的处理流程的第一示例的流程图。

图6是描绘由本发明的实施例的中继装置执行的处理流程的第二示例的流程图。

具体实施方式

下面参考附图描述本发明的一个实施例。

图1是描绘作为本发明的一个实施例的娱乐系统10的典型整体配置的示意图。图2a是描绘该实施例的头戴式显示器(hmd)12的典型配置的示意图。图2b是描绘该实施例的娱乐装置14的典型配置的示意图。图2c是描绘该实施例的中继装置16的典型配置的示意图。

如图1所示,体现本发明的娱乐系统10包括hmd12、娱乐装置14、中继装置16、显示器18、相机/麦克风单元20和控制器22。

如图2a所示,该实施例的hmd12包括:处理器30、存储部分32、通信部分34、输入/输出部分36、显示部分38、传感器部分40、音频输出部分42和相机部分44。

处理器30是程序控制的设备,诸如根据例如安装在hmd12中的程序运作的微处理器。可替代地,hmd12可以包括代替处理器30的能够实现由处理器30运行的过程的控制电路。

存储部分32是诸如只读存储器(rom)或随机存取存储器(ram)的存储元件。存储部分32存储要由处理器30运行的程序等。

通信部分34是诸如无线局域网(lan)模块的通信接口。在该实施例中,如图1所示,通信部分34置于hmd12的前顶部上。

输入/输出部分36是诸如高清晰度多媒体接口(hdmi)(注册商标)端口、通用串行总线(usb)端口或辅助(aux)端口的输入/输出端口。

显示部分38置于hmd12的前侧。例如,这是诸如液晶显示器或电致发光(el)显示器的显示器,其显示由娱乐装置14产生的视频等。显示部分38容纳在hmd12的外壳中。显示部分38可以接收例如由娱乐装置14输出并由中继装置16重复的视频信号,以便输出由视频信号表示的视频。该实施例的显示部分38被配置为以呈现三维图像的方式显示右眼图像和左眼图像。可替代地,显示部分38可以不配置为显示三维图像,并且可以仅显示二维图像。

传感器部分40包括诸如例如能够检测加速度和角速度的运动传感器的传感器。传感器部40以预定的采样率向处理器30输出检测结果,诸如hmd12的旋转量和位移。

音频输出部分42包括置于用户耳朵附近的诸如听筒或耳机的扬声器,扬声器输出例如由娱乐装置14生成的音频数据所表示的声音。音频输出部分42接收由娱乐装置14输出并由中继装置16重复的音频信号,以便输出由音频信号表示的声音。

相机部分44包括诸如以预定的帧速率捕获佩戴hmd12的用户的周围环境的图像的数码相机的相机。如图1所示,该实施例的相机部分44具有置于显示部分38顶部的两个相机,以捕获显示部分38前方的图像。以这种方式布置,该实施例的相机部分44能够捕获佩戴hmd12的用户的前方的图像。此外,该实施例的相机部分44用作配备有用于捕获左眼图像并生成右眼图像的镜头的立体相机。

该实施例的娱乐装置14是诸如游戏控制台、数字多功能盘(dvd)播放器或蓝光(注册商标)播放器之类的计算机。例如,该实施例的娱乐装置14通过运行所存储的视频游戏程序或通过再现记录在光盘上的内容来产生视频和声音。然后,该实施例的娱乐装置14通过中继装置16将表示所生成的图像的视频信号和表示所生成的声音的音频信号输出到hmd12和显示器18。

该实施例的娱乐装置14包括例如处理器50、存储部分52、通信部分54和输入/输出部分56,如图2b所示。

处理器50是程序控制的设备,诸如例如根据存储在娱乐装置14中的程序运作的中央处理单元(cpu)。该实施例的处理器50包括图形处理单元(gpu),其基于图形命令和从cpu提供的数据在帧缓冲器中渲染图像。可替代地,娱乐装置14可以包括代替处理器50的能够实现由处理器50运行的过程的控制电路。

存储部分52是诸如例如rom或ram或硬盘驱动器的存储元件。存储部分52存储要由处理器50运行的程序等。此外,本实施例的存储部分52提供其中由gpu渲染图像的帧缓冲区。

通信部分54是诸如无线lan模块的通信接口。

输入/输出部分56是诸如hdmi端口或usb端口的输入/输出端口。

该实施例的中继装置16是重复从娱乐装置14输出的视频和音频信号并将重复的信号输出到hmd12和显示器18的计算机。

该实施例的中继装置16包括例如处理器60、存储部分62、通信部分64和输入/输出部分66,如图2c所示。

处理器60是程序控制的设备,诸如例如根据安装在中继装置16中的程序运作的微处理器。可替代地,中继装置16可以包括代替处理器60的能够实现由处理器60运行的过程的控制电路。

存储部分62是诸如rom或ram的存储元件。存储部分62存储要由处理器60运行的程序等。

通信部分64是诸如无线lan模块的通信接口。在该实施例中,如图1所示,通信部分64置于中继装置16的前方。

输入/输出部分66是诸如hdmi端口或usb端口的输入/输出端口。

该实施例的显示器18例如是液晶显示器,其显示由从娱乐装置14输出的视频信号表示的视频等。

本实施例的相机/麦克风单元20包括相机20a,该相机20a向娱乐装置14输出表示相机/麦克风单元20的周围环境看起来如何的数据,诸如目标对象的捕获图像。此外,该实施例的相机20a构成立体相机。该实施例的相机/麦克风单元20还包括麦克风20b,该麦克风20b收集环境声音、将所收集的声音转换为音频数据,并将音频数据输出到娱乐装置14。

hmd12和中继装置16能够例如通过无线通信彼此交换数据。娱乐装置14和中继装置16例如通过hdmi线缆或usb线缆互连。中继装置16和显示器18例如通过hdmi线缆互连。娱乐装置14和相机/麦克风单元20例如通过aux线缆互连。

该实施例的控制器22是用于在娱乐装置14上执行输入操作的操作输入装置。用户可以通过按下其箭头键或按钮或通过倾斜其操作杆来在控制器22上执行各种输入操作。在该实施例中,控制器22将与输入操作相关联的输入数据输出到娱乐装置14。该实施例的控制器22配备有usb端口。当通过usb线缆与娱乐装置14连接时,控制器22以有线方式将输入数据输出到娱乐装置14。该实施例的控制器22还配备有例如将输入数据无线地输出到娱乐装置14的无线通信模块。

该实施例的娱乐装置14执行例如包括视频游戏程序的程序。然后,娱乐装置14生成视频,诸如反映正在进行的程序的运行状态的三维虚拟空间的视频。例如,视频呈现了在从虚拟空间中建立的视点观看的方向上事物看起来如何。通过中继装置16将表示由娱乐装置14生成的视频的视频数据从娱乐装置14发送到hmd12。

同样在该实施例中,hmd12生成感测数据。这里的感测数据包括例如指示传感器部分40检测加速度和角速度的结果的数据和由相机部分44捕获的图像。经由中继装置16,将由hmd12生成的感测数据发送到娱乐装置14。

娱乐装置14生成反映从hmd12接收的感测数据的视频。娱乐装置14根据从hmd12接收的感测数据,在虚拟空间中改变例如视点的位置和从视点起的视线。然后,娱乐装置14在将视频发送到hmd12之前,生成呈现从改变的视点的位置在变化的视线中事物看起来如何的视频。在接收到视频时,hmd12使显示部分38显示视频。以这种方式,实施例使显示在显示部分38上的视频根据用户头部的移动而改变。

在该实施例中,根据例如wi-fi(注册商标)或类似标准的半双工无线通信发生在中继装置16和hmd12之间。图3示意性地描绘了在中继装置16和hmd12之间的半双工无线通信期间发生的事情的示例。

在该实施例中,如图3所示,从中继装置16到hmd12的视频数据传输与从hmd12到中继装置16的感测数据传输交替。如图3所示,中继装置16首先将报头,然后是视频数据发送到hmd12。在接收到视频数据时,hmd12将报头,然后是感测数据发送到中继装置16。附带地,在中继装置16和hmd12之间可以发生除了上述数据之外的数据诸如控制数据的通信。

同样在该实施例中,如图3所示,中继装置16能够标识从中继装置16发送视频数据的报头的时间直到中继装置16接收到在往返通信的另一方接收到视频数据时返回的整个感测数据的时间段(即往返时间)。在下面的描述中,该时间段将称为时间t_rt。

同样在该实施例中,如图3所示,中继装置16能够识别从中继装置16发送视频数据的报头的时间直到在完成视频数据接收时从hmd12接收到感测数据的报头的时间段。该时间段大致对应于将视频数据从中继装置16发送到hmd所需的时间。在下文中,该时间段将称为时间t_ph。

此外,该实施例具有为往返半双工无线通信建立的预定目标时间。在下文中,该目标时间将称为targettransfertime。

由hmd12使用的数据,诸如本实施例的视频数据,应该优选地具有尽可能高的质量。因此,娱乐装置14每单位时间生成的数据的大小应该尽可能地大。另一方面,在诸如本实施例要求即时性的通信中,重要的是使往返时间接近时间targettransfertime,甚至通过减少每单位时间生成的数据的大小,以最小化用户的不适感。例如,最小化构成要在hmd12上显示的视频的每个帧图像的延迟是重要的。

考虑到以上几点,该实施例以使得时间t_rt尽可能低于时间targettransfertime的方式控制娱乐装置14每单位时间生成的数据的大小,如下所述。

以下是对该实施例的娱乐系统10的功能以及由此执行的主要是为了控制娱乐装置14每单位时间生成的数据的大小的过程的进一步描述。

图4是描绘由该实施例的hmd12、娱乐装置14和中继装置16实现的典型功能的功能框图。应注意,并非图4中描绘的所有功能都需要由本实施例的娱乐系统10实现,而且也可以实现不同于图4中功能的功能。

如图4所示,该实施例的娱乐装置14在功能上包括例如视频数据生成部分70、视频数据发送部分72、生成控制接收部分74和感测数据接收部分76。视频数据生成部分70主要使用处理器50来实现。视频数据发送部分72、生成控制接收部分74和感测数据接收部分76主要使用输入/输出部分56来实现。

上述功能也可以通过处理器50来实现,该处理器50运行安装在作为计算机的娱乐装置14中并且包括对应于这些功能的命令的程序。可以借助于诸如例如光盘、磁盘、磁带、磁光盘或闪存的计算机可读信息存储介质或经由互联网将程序提供给娱乐装置14。

还如图4所示,该实施例的中继装置16在功能上包括例如目标时间信息存储部分80、视频数据接收部分82、视频数据缓冲器84、视频数据发送部分86、感测数据接收部分88、感测数据发送部分90、所需时间标识部分92、比特率确定部分94、数据大小确定部分96和生成控制部分98。目标时间信息存储部分80和视频数据缓冲器84主要使用存储部分62来实现。视频数据接收部分82和感测数据发送部分90主要使用输入/输出部分66来实现。视频数据发送部分86和感测数据接收部分88主要使用通信部分64来实现。所需时间标识部分92、比特率确定部分94和数据大小确定部分96主要使用处理器60来实现。生成控制部分98主要使用处理器60和输入/输出部分66来实现。

上述功能也可以由处理器60来实现,该处理器60运行安装在作为计算机的中继装置16中并且包括对应于这些功能的命令的程序。可以借助于诸如例如光盘、磁盘、磁带、磁光盘或闪存的计算机可读信息存储介质或经由互联网将程序提供给中继装置16。

还如图4所示,该实施例的hmd12在功能上包括例如视频数据接收部分100、显示控制部分102、感测数据生成部分104、感测数据缓冲器106和感测数据发送部分108。视频数据接收部分100和感测数据发送部分108主要使用通信部分34来实现。显示控制部分102主要使用处理器30和显示部分38来实现。感测数据生成部分104主要使用处理器30、传感器部分40和相机部分44来实现。感测数据缓冲器106主要使用存储部分32来实现。

上述功能也可以由处理器30来实现,该处理器30运行安装在作为计算机的hmd12中并且包括对应于这些功能的命令的程序。可以借助于诸如例如光盘、磁盘、磁带、磁光盘或闪存的计算机可读信息存储介质或经由互联网将程序提供给hmd12。

该实施例的视频数据生成部分70生成例如表示要在hmd12的显示部分38上显示的视频的视频数据。

该实施例的视频数据发送部分72将例如由视频数据生成部分70生成的视频数据发送到中继装置16。

该实施例的生成控制接收部分74接收例如从中继装置16发送的生成控制信息。这里,生成控制信息是指例如指示每单位时间要生成的数据的大小的信息。控制视频数据生成部分70,以根据生成控制接收部分74接收的生成控制信息,生成每单位时间由生成控制信息指示的大小的数据。

该实施例的感测数据接收部分76接收例如诸如指示hmd12的传感器部分40的检测结果的数据以及由相机部分44从中继装置16捕获的图像的感测数据。该实施例的视频数据生成部分70生成反映由感测数据接收部分76接收的感测数据的视频数据。

该实施例的目标时间信息存储部分80存储例如其中设置了上述目标时间targettransfertime的值的目标时间信息。

该实施例的视频数据接收部分82接收例如从娱乐装置14发送的视频数据。

该实施例的视频数据缓冲器84存储例如由视频数据接收部分82接收的视频数据。

该实施例的视频数据发送部分86将例如存储在视频数据缓冲器84中的视频数据发送到hmd12。

该实施例的感测数据接收部分88从hmd12接收例如上述感测数据。

该实施例的感测数据发送部分90将例如由感测数据接收部分88接收的感测数据发送到娱乐装置14。

该实施例的所需时间标识部分92标识例如在中继装置16和hmd12之间完成往返半双工无线通信所需的时间t_rt。

该实施例的比特率确定部分94确定例如允许从中继装置16到hmd12的数据传输的比特率。在这种情况下,可以例如根据所标识的时间t_rt、在中继装置16和hmd12之间的往返通信中在它们之间交换的数据的大小以及往返通信的预定目标时间targettransfertime来确定比特率。此外,比特率确定部分94可以确定允许从hmd12到中继装置16的数据传输的比特率。稍后将详细讨论用于确定比特率的方法。在下面的描述中,允许从中继装置16到hmd12的数据传输的比特率的值将称为payloadbitrate_ptoh。在下文中,允许从hmd到中继装置16的数据传输的比特率的值将称为payloadbitrate_htop。

此外,比特率确定部分94可以保持根据娱乐装置14和中继装置16的规格指示允许从中继装置16到hmd12的数据传输的比特率的最大值和最小值的信息。此外,比特率确定部分94可以保持根据hmd12的规格指示允许从hmd12到中继装置16的数据传输的比特率的最大值和最小值的信息。在下面的描述中,允许从中继装置16到hmd12的数据传输的比特率的最大值和最小值将分别称为tp_ptoh_reqmax和tp_ptoh_reqmin。在下文中,允许从hmd12到中继装置16的数据传输的比特率的最大值和最小值将分别称为tp_htop_reqmax和tp_htop_reqmin。

该实施例的数据大小确定部分96确定例如在中继装置16和hmd12之间的后续往返无线通信中要从中继装置16发送到hmd12的数据的大小。在这种情况下,可以根据由比特率确定部分94确定的比特率并基于例如预定目标时间targettransfertime来确定在后续往返无线通信中从中继装置16发送到hmd12的数据的大小。此外,数据大小确定部分96可以确定在后续往返无线通信中要从hmd12发送到中继装置16的数据的大小。在下面的描述中,在往返无线通信中要从中继装置16发送到hmd12的数据的大小可以称为transsize_ptoh。在下文中,在后续往返无线通信中要从hmd12发送到中继装置16的数据的大小可以称为transsize_htop。

此外,该实施例的数据大小确定部分96保持例如在其中设置在往返无线通信中要从中继装置16发送到hmd12的数据的大小的值transsize_ptoh的信息,如上所述确定该值。此外,该实施例的数据大小确定部分96可以保持例如在其中设置在后续的往返无线通信中要从hmd12发送到中继装置16的数据的大小的值transsize_htop的信息,如上所述确定该值。

该实施例的生成控制部分98控制例如视频数据生成部分70每单位时间生成的数据的大小。在这种情况下,可以例如根据时间t_rt、根据在往返通信中与hmd12交换的数据大小以及根据往返通信的预定目标时间targettransfertime来确定数据大小。可替代地,可以根据由比特率确定部分94确定的比特率来确定数据大小。例如,生成控制部分98可以控制视频数据生成部分70以生成对应于所确定的每单位时间的比特率的大小的数据。此外,生成控制部分98可以将指示数据大小的生成控制信息发送到娱乐装置14。

此外,生成控制部分98可以根据由比特率确定部分94确定的比特率来控制诸如由视频数据生成部分70生成的视频数据的分辨率和压缩比的质量元素。

随着在往返通信中从hmd12发送到中继装置16的感测数据的准确度变差,感测数据的大小变小。因此,减小感测数据的大小不是优选的。另一方面,即使正在显示的视频的数据质量下降,也没有太大问题。因此,在允许从中继装置16到hmd12的数据传输的比特率下降的情况下,可以通过降低诸如要生成的视频的压缩比和分辨率的质量元素来防止延迟的发生。这确保了感测数据的准确度。

该实施例的视频数据接收部分100接收例如从中继装置16发送的视频数据。

该实施例的显示控制部分102显示例如由视频数据接收部分100接收的视频数据所表示的视频。

该实施例的感测数据生成部分104生成例如诸如指示hmd12的传感器部分40的检测结果和由相机部分44捕获的图像的数据的感测数据。

该实施例的感测数据缓冲器106存储例如由感测数据生成部分104生成的感测数据。

感测数据发送部分108将存储在感测数据缓冲器106中的感测数据发送到中继装置16。

下面参考图5的流程图说明由该实施例的中继装置16执行以控制娱乐装置14每单位时间要生成的视频数据的大小的处理流程的第一示例。图5中的第一处理示例有利地适用于从中继装置16到hmd12的数据传输的调制编码方法与用于从hmd12到中继装置16的数据传输的调制编码方法相同的情况。对于第一处理示例,假设在由比特率确定部分94保持的信息中设置的值payloadbitrate_htop是常数值tp_htop_reqconst。对于第一处理示例,还假设重复运行下面将讨论的从s101到s110的处理循环。还假设每当在中继装置16和hmd12之间发生往返通信时,运行从s101到s110的处理一次。

首先,视频数据发送部分86标识在由数据大小确定部分96保持的信息中设置的值transsize_ptoh(s101)。

然后,视频数据发送部分86从视频数据缓冲器84获取由在s101的过程中标识的值指示的大小的视频数据,并将视频数据发送到hmd12(s102)。

然后,感测数据接收部分88在接收到在s102的过程中发送的视频数据时接收从hmd12发送的感测数据(s103)。

然后,所需时间标识部分92标识图3中的时间t_rt(s104)。

然后,比特率确定部分94计算表示每单位时间发送的数据量(吞吐量)的值tp_rt(s105)。例如,将值transsize_ptoh和值transsize_htop的和乘以八,并将乘法的乘积除以在s104的过程中标识的时间t_rt。这提供了值tp_rt。这里假设值transsize_ptoh和值transsize_htop以字节为单位,并且值tp_rt以比特为单位。因此,在s105的过程中,将字节数乘以八以转换为比特数。

然后,比特率确定部分94从在s105的过程中计算的值tp_rt中减去值tp_htop_reqmax,以计算对应于从中继装置16到hmd12的数据传输的部分吞吐量值tp_ptoh(s106)。

然后,比特率确定部分94基于在s106的过程中计算的值tp_ptoh确定上述值payloadbitrate_ptoh(s107)。在这种情况下,例如,对所标识的值tp_ptoh执行截断过程,以落在从值tp_ptoh_reqmin到值tp_ptoh_reqmax的范围内,将该过程的结果确定为值payloadbitrate_ptoh。例如,在值tp_ptoh小于值tp_ptoh_reqmin的情况下,将值payloadbitrate_ptoh确定为值tp_ptoh_reqmin。在另一示例中,在值tp_ptoh大于值tp_ptoh_reqmax的情况下,将值payloadbitrate_ptoh确定为值tp_ptoh_reqmax。在这种情况下,值tp_ptoh和值tp_ptoh_reqmax之间的差值表示吸收抖动的余量。在又一示例中,在值tp_ptoh等于或大于值tp_ptoh_reqmin并且等于或小于值tp_ptoh_reqmax的情况下,将值payloadbitrate_ptoh确定为值tp_ptoh。

然后,比特率确定部分94对在s107的过程中确定的值payloadbitrate_ptoh执行滤波过程,以便校正值payloadbitrate_ptoh(s108)。例如,在无线通信环境已经改变并且吞吐量下降的情况下,可以进行波束赋形过程以搜索最佳通信信道,从而使吞吐量在短时间内改变。为了解决这种情况,可以通过乘以在前一循环中确定的值与在当前循环中确定的值之间的差的一倍或更小的因子而获得的值对在前一循环中确定的值进行补充,从而校正值payloadbitrate_ptoh。例如,可以基于搜索通信信道的波束赋形过程的性能和视频数据生成部分70的响应性来确定该因子。此外,例如,仅当值payloadbitrate_ptoh下降时才可以执行过滤过程。

然后,数据大小确定部分96基于在s108的过程中校正的值payloadbitrate_ptoh计算值transsize_ptoh(s109)。在这种情况下,例如,将值payloadbitrate_ptoh乘以由在目标时间信息存储部分80中存储的目标时间信息指示的值targettransfertime,并将乘法的乘积除以八。这提供了值transsize_ptoh。这里进行除以八的过程以将比特数转换为字节数。然后,将由数据大小确定部分96保持的值transsize_ptoh更新为在s109的过程中计算的值。

然后,生成控制部分98在返回到s101的过程之前,向娱乐装置14发送指示在s108的过程中校正的值payloadbitrate_ptoh的生成控制信息(s110)。在这种情况下,生成控制接收部分74接收生成控制信息,并且视频数据生成部分70每单位时间(例如,每秒)生成与值payloadbitrate_ptoh对应的大小的数据。

这样运行上述从s101到s110的处理循环以确定允许与当前循环相关联的往返通信之后的往返通信中从中继装置16到hmd12的数据传输的比特率的值payloadbitrate_ptoh。

在第一处理示例中,可以不进行s108的上述滤波过程。在这种情况下,基于在s107的过程中确定的值payloadbitrate_ptoh来计算值transsize_ptoh。

此外,在上述s102的过程中,视频数据发送部分86不需要向hmd12发送包括指示表示常数值tp_htop_reqconst的值payloadbitrate_htop的数据的视频数据报头。在这种情况下,hmd12可以每单位时间(例如,每秒)生成对应于值payloadbitrate_htop的大小的数据。例如,可以控制每单位时间要生成的感测数据的大小。

接下来参考图6的流程图说明由本实施例的中继装置16执行以控制娱乐装置14每单位时间要生成的视频数据的大小的处理流程的第二示例。与第一处理示例不同,图6所描绘的第二处理示例涉及使用在往返通信中从中继装置16到hmd12的数据传输所需时间的估计结果。对于第二处理示例,假设重复运行下面将讨论的从s201到s212的处理循环。还假设每当在中继装置16和hmd12之间发生往返通信时,运行从s201到s212的处理一次。

首先,视频数据发送部分86标识在数据大小确定部分96保持的信息中设置的值transsize_ptoh和值transsize_htop(s201)。

然后,视频数据发送部分86从视频数据缓冲器84获取由在s201的过程中标识的值指示的大小的视频数据,并将视频数据发送到hmd12(s202)。在该处理示例中,此时视频数据发送部分86将包括指示值payloadbitrate_htop的数据的视频数据报头发送到hmd12。在接收到数据时,hmd12每单位时间(例如,每秒)生成对应于值payloadbitrate_htop的大小的数据。例如,控制每单位时间要生成的感测数据的大小。

然后,响应于视频数据发送,感测数据接收部分88接收从hmd12发送的感测数据(s203)。

然后,所需时间标识部分92标识图3所示的时间t_rt和时间t_ph(s204)。

然后,所需时间标识部分92从在s204的过程中标识的时间t_rt中减去时间t_ph,以便计算大致对应于将感测数据从hmd12发送到中继装置16所需的时间的时间t_hp(s205)。

然后,比特率确定部分94将值transsize_ptoh乘以八,并将乘法的乘积除以在s204的过程中标识的时间t_ph。这提供了表示每单位时间发送的数据量(吞吐量)的值tp_ph(s206)。这里假设值transsize_ptoh以字节为单位,并且值tp_ph以比特为单位。因此,在s105的过程中,将字节数乘以八以转换为比特数。

然后,比特率确定部分94计算可以分配给从中继装置16到hmd12的数据传输的时间new_time_ph(s207)。在这种情况下,例如,从存储在目标时间信息存储部分80中的目标时间信息中的值targettransfertime中减去在s205的过程中计算的时间t_hp,并且从相减后的差中进一步减去吸收抖动常数以提供时间new_time_ph。例如,常数可以是对应于值targettransfertime的5%到10%的数字。

然后,比特率确定部分94标识对应于从中继装置16到hmd12的数据传输的部分吞吐量值new_tp_ph(s208)。在这种情况下,例如,将在s207的过程中计算的时间new_time_ph乘以在s206的过程中计算的值tp_ph,并且将乘法的乘积除以值targettransfertime以标识值new_tp_ph。

然后,比特率确定部分94基于在s208的过程中识别的值new_tp_ph确定值payloadbitrate_ptoh和值payloadbitrate_htop(s209)。

这里假设值new_tp_ph等于或大于用于确定通信环境的恶化趋势的阈值tp_ptoh_lowthreshold。在当前情况下,对所标识的值new_tp_ph以使得值将落入从保留值tp_ptoh_reqmin到值tp_ptoh_reqmax的范围内的方式执行截断过程。将截断过程的结果确定为值payloadbitrate_ptoh。同样在这种情况下,将值payloadbitrate_htop确定为值tp_htop_reqmax。这里,可以确定阈值tp_ptoh_lowthreshold在从值tp_ptoh_reqmin到值tp_ptoh_reqmax的闭区间范围内。

同时,假设值new_tp_ph小于阈值tp_ptoh_lowthreshold。在这种情况下,从阈值tp_ptoh_lowthreshold中减去值new_tp_ph,并且将减法的结果提供为值delta_tp_ph。然后,从值tp_htop_reqmax中减去值delta_tp_ph,并且将减法的结果提供为值new_tp_hp。在这里计算的值new_tp_hp小于值tp_htop_reqmin的情况下,将值new_tp_hp替换为值tp_htop_reqmin。然后将值payloadbitrate_htop确定为值new_tp_hp。将值payloadbitrate_ptoh确定为值tp_ptoh_reqmin。以这种方式,在对应于允许在往返通信中从中继装置16到hmd12的数据传输的比特率的值new_tp_ph小于阈值tp_ptoh_lowthreshold的情况下,减少在后续往返通信中hmd12每单位时间要发送的数据的大小。

阈值tp_ptoh_lowthreshold可以反映中继装置16和hmd12之间的距离或者hmd12相对于中继装置16的方向。这里,基于由感测数据接收部分76接收的感测数据的值,比特率确定部分94可以识别中继装置16和hmd12之间的距离或hmd12相对于中继装置16的方向。然后,比特率确定部分94可以根据所标识的距离或方向来确定阈值tp_ptoh_lowthreshold。

在这种情况下,例如,通过将值tp_ptoh_reqmax和值tp_ptoh_reqmin的和除以二获得的值可以用作阈值tp_ptoh_lowthreshold的参考值。此外,例如,阈值tp_ptoh_lowthreshold可以以这样的方式确定:中继装置16和hmd12之间的距离越长于预定参考距离,则阈值tp_ptoh_lowthreshold变得越大于参考值。可替代地,阈值tp_ptoh_lowthreshold可以以如下方式确定:中继装置16与hmd12之间的距离越短于预定参考距离,则阈值tp_ptoh_lowthreshold变得越小于参考值。作为另一替代方案,阈值tp_ptoh_lowthreshold可以以这样的方式确定:从佩戴hmd12的用户到中继装置16的方向与从佩戴hmd12的用户的头部的后方到用户的头部的前方的方向之间的角度越大于预定的参考角度,则阈值tp_ptoh_lowthreshold变得越小于参考值。作为又一替代方案,阈值tp_ptoh_lowthreshold可以以这样的方式确定:从佩戴hmd12的用户到中继装置16的方向与从佩戴hmd12的用户的头部的后方到用户的头部的前方的方向之间的角度越大于预定的参考角度,则阈值tp_ptoh_lowthreshold变得越小于参考值。

然后,比特率确定部分94运行类似于s108的过程中的滤波过程(s210)。这里,当进行滤波过程时,校正在s209的过程中确定的值payloadbitrate_ptoh。此外,当进行过滤过程时,校正值payloadbitrate_htop。

然后,数据大小确定部分96计算值transsize_ptoh和值transsize_htop(s211)。在这种情况下,例如,可以将校正值payloadbitrate_ptoh乘以由在目标时间信息存储部分80中存储的目标时间信息指示的值targettransfertime,并且可以将乘法的乘积除以八以提供值transsize_ptoh。此外,可以将校正值payloadbitrate_htop乘以由在目标时间信息存储部分80中存储的目标时间信息指示的值targettransfertime,并且可以将乘法的乘积除以八以提供值transsize_htop。这里进行除以八的过程以将比特数转换为字节数。然后,将由数据大小确定部分96保持的值transsize_ptoh和值transsize_ptoh更新为在s211的过程中计算的值。

然后,在返回到s201的过程之前,生成控制部分98向娱乐装置14发送指示在s210的过程中校正的值payloadbitrate_ptoh的生成控制信息(s212)。在这种情况下,生成控制接收部分74接收生成控制信息,并且视频数据生成部分70每单位时间(例如,每秒)生成对应于值payloadbitrate_ptoh的大小的数据。在第二处理示例中,如上所述,重复运行从s201到s212的上述处理。

在第二处理示例中,在对应于允许在往返通信中从中继装置16到hmd12的数据传输的比特率的值new_tp_ph下降到低于阈值tp_ptoh_lowthreshold的情况下,减少在s209和s210的处理中确定的值payloadbitrate_htop。在这种情况下,在下一循环的s202的过程期间,视频数据发送部分86向hmd12指令以在后续往返通信中减少每单位时间要发送的数据的大小。在第二处理示例中,如所描述的,使得中继装置16能够控制要从hmd12发送到中继装置16的数据的比特率。

在第二处理示例中,可以不进行s210中的上述滤波过程。在这种情况下,基于在s209的过程中确定的值payloadbitrate_ptoh来计算值transsize_ptoh。此外,基于在s209的过程中确定的值payloadbitrate_htop来计算值transsize_htop。

如上所述,这里的视频数据生成部分70可以根据由在s110或s212的过程中发送的生成控制信息所指示的值的变化来改变要生成的视频的诸如分辨率和压缩比的质量元素。例如,如果由生成控制信息指示的值下降,则可以降低由视频数据生成部分70生成的视频的质量。

在该实施例中,例如,假设四毫秒的时间值是目标时间targettransfertime的值。然后,例如,每毫秒将125千字节的视频数据写入视频数据缓冲器84。在下面的描述中,将一次写入视频数据缓冲器84的视频数据(在这种情况下为125千字节的视频数据)将称为一个块。在目标时间targettransfertime的值是四毫秒的情况下,视频数据发送部分86应该优选地每四毫秒发送四个视频数据块(例如,在这种情况下为500千字节的视频数据)。此外,感测数据发送部分104应该优选地每四毫秒发送一兆字节的感测数据。

同样在该实施例中,视频数据发送部分86可以以预定大小的块为单位发送视频数据。例如,如果所标识的值transsize_ptoh是250千字节,则视频数据发送部分86可以在往返通信中发送两个视频数据块(例如,在这种情况下为250千字节的视频数据)。同样在这种情况下,对于写入视频数据缓冲器84的块,可以以最新的顺序一次连续地获取和发送两个块。

应注意,上述实施例不是对本发明的限制。

例如,部分或全部在图4中被指示为娱乐装置14的功能可以包含在hmd12或中继装置16中。此外,部分或全部在图4中被指示为中继装置16的功能可以包含在hmd12中或娱乐装置14中。

此外,在上面的描述中提到的特定字符串和数值以及在附图中提到的特定字符串和数值仅是示例,而不是对本发明的限制。

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