编码控制设备以及编码控制方法_2

文档序号:8367823阅读:来源:国知局
之后向服务器300发送用于启动处理的请求。同时,将针对内容内在的操作输入从输入发送器130发送至服务器300。
[0051]在服务器300中,会话控制器233根据来自客户端100的启动处理的请求来开始处理235。处理235获取通过由客户端100中的输入装置110所获取的内容选择操作所指定的内容221,并且将内容221保存为内容缓存231。内容缓存231是编码数据,并且在服务器300中,解码器310对内容缓存231进行解码。在流媒体处理器/发送器320中处理经解码的内容数据。
[0052]同时,由客户端100中的输入装置110获取的针对内容内在的操作输入由输入接收器330接收并且被提供给播放器控制器340。播放器控制器340根据操作输入来控制解码器310和流媒体处理器/发送器320。流处理器/发送器320根据该控制从内容数据生成视频和/或语音。此外,流媒体处理器/发送器320对要被发送至客户端100的所生成的视频和/或语音进行编码。注意,在所示出的示例中,虽然内容包含视频和语音,但是在另外的示例中,内容可以仅包含视频或可以仅包含语音。
[0053]发送至客户端100的编码数据在流媒体接收器/处理器140中被解码,并且作为要从输出装置150输出至用户的视频和/或语音经历渲染。在此,由管理器350和管理器160分别地管理服务器侧的流媒体处理器/发送器320和客户端侧的流媒体接收器/处理器140。服务器侧的管理器350和客户端侧的管理器160根据需要在它们之间交换信息,以互相协作工作。
[0054](1-3.流媒体处理器的配置)
[0055]图4是示意性示出本公开内容的实施例中的流发送处理器的功能配置的图。在该图中,分别地示出了客户端100的流媒体接收器/处理器140和服务器300的流媒体处理器/发送器320的功能配置。
[0056](客户端侧)
[0057]流媒体接收器/处理器140包括流接收器141、解码器143、帧缓冲器145和渲染器147。流媒体接收器141根据预先确定的协议接收来自服务器侧的流媒体发送器327的数据。在示出的示例中,使用实时传输协议(RTP)。在这种情况下,流媒体接收器141向解码器143提供所接收的数据,并且使用RTP控制协议(RTCP)检测通信状态,诸如要报告给流媒体发送器327的数据延迟。
[0058]解码器143对从流媒体接收器141提供的数据进行解码,以获得视频数据和语音数据。解码器143包括对视频数据进行解码的视频解码器143a和对语音数据进行解码的语音解码器143b。可以准备视频解码器143a和语音解码器143b中的每个的多种类型以根据作为处理目标的数据的格式选择性地来使用。注意,在下面的描述中,存在将解码器143a和解码器143b两者或它们中的任意一个简称为解码器143的情况(在指定它们中的任意一个的情况下,明确给出要被处理的语音或视频)。
[0059]帧缓冲器145基于逐帧方式临时累积在解码器143中获得的视频数据和语音数据。帧缓冲器145包括累积视频数据的帧缓冲器145a和累积语音数据的帧缓冲器145b。帧缓冲器145根据管理器160的控制,在预先确定的定时内向渲染器147提供每帧中的视频数据和语音数据。注意,在下面的描述中,存在将帧缓冲器145a和帧缓冲器145b两者或它们中的任意一个简称为帧缓冲器145的情况(在指定它们中的任意一个的情况下,明确给出要被处理的语音或视频)。
[0060]渲染器147包括对要被提供给诸如显示器的输出装置的视频数据执行渲染的视频渲染器147a,和对要被提供给诸如扬声器的输出装置的语音数据执行渲染的语音渲染器147b。视频渲染器147a和语音渲染器147b使视频的输出帧和语音的输出帧彼此同步。此夕卜,植染器147向管理器160报告输出帧的ID、执行输出的时间等。注意,在下面的描述中,存在将渲染器147a和渲染器147b两者或者它们中的任意一个简称为渲染器147的情况(在指定它们中的任意一个的情况下,明确给出要被处理的语音或视频)。
[0061](服务器侧)
[0062]流媒体处理器/发送器320包括渲染器321、帧缓冲器323、编码器325和流媒体发送器327。渲染器321根据基于通过播放器控制器340进行的用户的操作输入的控制,使用由解码器310解码的内容数据作为素材,生成视频数据和语音数据。在此,针对视频数据和语音数据来定义帧,并且将视频数据生成为连续的帧图像。
[0063]帧缓冲器323基于逐帧方式临时累积在渲染器321中生成的视频数据和语音数据。帧缓冲器323包括累积视频数据的帧缓冲器323a和累积语音数据的帧缓冲器323b。编码器325对帧缓冲器323中所累积的视频数据和语音数据依次进行编码。注意,在下面的描述中,存在将帧缓冲器323a和帧缓冲器323b两者或它们中的任意一个简称为帧缓冲器323的情况(在指定它们中的任意一个的情况下,明确给出要被处理的语音或视频)。
[0064]编码器325包括对视频数据进行编码的视频编码器325a和对语音数据进行编码的语音编码器325b。可以准备视频编码器325a和语音编码器325b中的每个的多种类型,并且可以根据可以在客户端100中使用的视频解码器143a和语音解码器143b的种类,或作为处理目标的视频数据和语音数据的特征,选择性地使用视频编码器325a和语音编码器325b中的每个的多种类型。经编码的视频数据和语音数据被从流媒体发送器327发送至客户端100。注意,在下面的描述中,存在将编码器325a和解码器325b两者或它们中的任意一个简称为编码器325的情况(在指定它们中的任意一个的情况下,明确给出要被处理的语音或视频)。
[0065]按照根据如上面描述的实施例的流媒体系统的配置,在用作边缘的服务器中,可以根据用户的操作输入来实时生成要被分发给客户端的视频和/或语音。因此,可以通过在确保对用户的操作输入的响应性的情况下进行的流媒体来提供例如JP 2010-117828A中公开的、采用其自由地放大/缩小图像并且移动图像的应用以及诸如浏览大尺寸的图像和视频、在线游戏、仿真观察器等的各种应用。
[0066](2.关于编码控制的配置)
[0067]接下来,参照图5至图9,对关于本公开内容的实施例中的编码控制的配置进行描述。将关于编码控制的配置描述为第一实施例和第二实施例。
[0068](2-1.第一实施例)
[0069]图5是用于说明本公开内容的第一实施例的图。关于该实施例,在服务器300的流媒体处理器/发送器320中,渲染器321检测帧图像中场景变化的发生,以向管理器350提供场景变化信息;并且管理器350基于该场景变化信息来控制在编码器325中对帧图像的编码。
[0070]渲染器321根据如上所述在客户端100中所获取的用户的操作输入来实时生成构成视频数据的一系列帧图像。在此,存在如下情况:在帧图像中发生场景变化。考虑到例如在运动图像中可以容易地理解的场景变化是下述状态:在连续的帧图像之间,图像的大部分被替换。在此,无需替换整个图像。例如,在由流媒体系统提供的应用中,当图像包含用于操作的用户界面(Π)、信息显示等时,甚至在发生场景变化时也不替换这样的显示。
[0071]在本实施例中,渲染器321检测在所生成的帧图像中发生的场景变化以向管理器350提供场景变化信息。例如,对于采用其浏览图像和视频的应用,在所浏览的图像和视频被切换等的情况下发生场景变化。此外,例如,对于在线游戏,在角色(character)采用曲速航行(warp traveling)等在空间(field)中瞬间移动的情况下发生场景变化。由于植染器321是使用内容数据作为素材生成帧图像的主体,所以渲染器321可以相对容易地检测这样的场景变化的发生。
[0072]另一方面,编码器325对由渲染器321生成并且累积在帧缓冲器323中的帧图像进行编码。在编码时,编码器325将每个帧配置为帧内编码帧和帧间编码帧中的任意一个。对于帧内编码帧,不参考其他帧图像而独立地对帧图像进行编码。另一方面,对于帧间编码帧,参考其他帧图像对帧图像进行编码。由于对帧间编码帧的编码处理的压缩效率较高并且处理时间较短,所以将大多数帧配置为帧间编码帧。因此,参考时间上较早定位的其他帧图像来对大多数帧图像进行编码。
[0073]然而,当帧图像中发生场景变化时,在对场景变化之后的帧图像进行编码中,对帧间编码帧的编码处理参考场景变化之前的帧图像。因此,尤其紧接在场景变化之后,未清晰地显示帧图像。在该帧之后,随着参考场景变化之后的帧图像被编码的帧图像继续,显示逐渐变得更清晰。为了防止这样的状态,仅必需预先检测场景变化,以将场景变化之后的帧配置为帧内编码帧。
[0074]因此,在该实施例中,当从用作场景变化检测器的渲染器321获取指示发生场景变化的场景变化信息时,用作编码器控制器的管理器350对编码器325进行控制,以便将相关的场景变化之后的帧配置为帧间编码帧。经历了该控制的编码器325将场景变化之后的帧配置为帧内编码帧,以不参考其他帧图像对帧图像进行编码。因此,可以从紧接在场景变化之后的帧起清楚地显示帧图像。
[0075]然而,由于用于帧内编码帧的编码处理时间长于用于帧间编码帧的编码处理时间,所以可能存在以下情况:在场景变化之后的帧图像的编码数据被输出至流发送器327时,尚未完成编码处理。在这样的情况下,替代地,编码器325将场景变化之前的帧图
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1