一种流媒体处理方法及系统的制作方法

文档序号:7996126
一种流媒体处理方法及系统的制作方法
【专利摘要】本申请提供了一种流媒体处理方法及系统,该方法包括:在服务器端启动生成流媒体图像的进程,保持所述进程处于运行状态;实时检测客户端获取流媒体图像的请求,当收到所述请求时,从所述处于运行状态的进程中获取所述流媒体图像,并返回至所述客户端;接收所述客户端发出的操作指令,并根据所述操作指令生成相应的流媒体图像。本申请大大缩短了用户获取流媒体图像时等待生成流媒体图像的进程启动所耗费的时间,提升了用户的体验。
【专利说明】一种流媒体处理方法及系统
【技术领域】
[0001]本申请涉及流媒体领域,特别是涉及流媒体处理方法及系统。
【背景技术】
[0002]随着流媒体技术的广泛应用,对流媒体接入时的实时反馈提出了更高的要求,特别是对于游戏等实时性要求较高的流媒体,对用户接入流媒体的实时性要求更高。
[0003]云游戏是流媒体的其中一种形式,其是以云计算为基础的游戏方式,在云游戏的运行模式下,所有游戏都在服务器端运行,并将渲染完毕后的游戏画面压缩后通过网络传送给用户。当一个人结束游戏后,将会关闭该游戏,以清除该用户的所有使用状态和归还系统资源。新的用户若要进入该游戏需要再次打开,从而增加了打开的等待时间,降低了用户体验。

【发明内容】

[0004]本申请所要解决的技术问题是提供一种流媒体处理方法,包括:
[0005]在服务器端启动生成流媒体图像的进程,保持所述进程处于运行状态;
[0006]实时检测客户端获取流媒体图像的请求,当收到所述请求时,从所述处于运行状态的进程中获取所述流媒体图像,并返回至所述客户端;
[0007]接收所述客户端发出的操作指令,并根据所述操作指令生成相应的流媒体图像。
[0008]优选地,所述保持所述进程处于运行状态进一步包括检测所述客户端与所述服务器之间的流媒体图像传输状况,当检测出所述客户端与所述服务器之间的流媒体图像传输断开时,所述服务器重新启动所述生成流媒体图像的程序。
[0009]优选地,所述检测所述客户端与所述服务器之间的流媒体图像传输状况进一步包括所述客户端定时向所述服务器发送一数据包,所述服务器针对所述数据包返回一数据包,若所述客户端在阈值时间内收到所述返回的数据包,则视所述客户端与所述服务器之间的流媒体图像传输正在进行;若所述客户端在阈值时间内未收到所述返回的数据包,则视所述客户端与所述服务器之间的流媒体图像传输断开。
[0010]优选地,还包括所述客户端将关闭播放流媒体图像的进程的指令发送至所述服务器,所述服务器根据所述指令重新启动所述生成流媒体图像的进程。
[0011]优选地,所述从所述处于运行状态的进程中获取所述流媒体图像,并返回至所述客户端进一步包括从所述处于运行状态的进程中抓取、压缩所述流媒体图像,并将所述流媒体图像返回至所述客户端;所述客户端解压缩并显示所述流媒体图像。
[0012]相应地,本申请还提供了一种流媒体处理系统,包括:
[0013]启动装置,用于在服务器端启动生成流媒体图像的进程,保持所述进程处于运行状态;
[0014]流媒体图像获取装置,用于实时检测客户端获取流媒体图像的请求,当收到所述请求时,从所述处于运行状态的进程中获取所述流媒体图像,并返回至所述客户端;[0015]操作指令处理装置,用于接收所述客户端发出的操作指令,并根据所述操作指令生成相应的流媒体图像。
[0016]优选地,所述启动装置进一步包括检测模块,用于检测所述客户端与所述服务器之间的流媒体图像传输状况;以及重启模块,用于当检测出所述客户端与所述服务器之间的流媒体图像传输断开时,所述服务器重新启动所述生成流媒体图像的程序。
[0017]优选地,所述流媒体图像获取装置进一步包括流媒体图像返回模块,用于从所述处于运行状态的进程中抓取、压缩所述流媒体图像,并将所述流媒体图像返回至所述客户端;以及流媒体图像显示模块,用于在所述客户端解压缩并显示所述流媒体图像。
[0018]与现有技术相比,本申请有如下优点:
[0019]1.生成流媒体图像的进程在服务器端始终处于开启状态,当用户打开某一流媒体时,服务器接收到请求后会立即将流媒体图像传输给客户端,大大缩短了用户打开流媒体时等待生成流媒体图像的进程启动耗费的时间,提升了用户的体验。
[0020]2.本申请在客户端与服务器之间通过传递数据包检测客户端与服务器之间的流媒体图像传输状况,当检测出流媒体图像传输断开时,服务器会重新启动所述生成流媒体图像的进程,从而有效地保证了生成流媒体图像的进程在服务器上始终保持开启状态。
【专利附图】

【附图说明】
[0021]图1是本申请流媒体处理方法的实施例流程图。
[0022]图2是本申请客户端、web服务器及流媒体服务器之间的交互过程示意图。
[0023]图3是本申请检测客户端与服务器之间流媒体图像传输状况的示意图。
[0024]图4是本申请流媒体处理系统的实施例示意图。
【具体实施方式】
[0025]为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本申请作进一步详细的说明。
[0026]参照图1,示出了本申请流媒体处理方法的实施例流程图。
[0027]步骤101:在服务器端启动生成流媒体图像的进程,保持所述进程处于运行状态。
[0028]所述流媒体图像包括声音流、视频流、文本流、图像流、动画流等,如电视会议、游戏、广播新闻、影视、会议、演讲。流媒体在播放前并不下载整个文件,只将开始部分内容存入内存,流式媒体的数据流随时传送随时播放,只是在开始时有一些延迟。流媒体的传输主要有两种方法:实时流式传输(Real time streaming)和顺序流式传输(progressivestreaming)。一般说来,如视频为实时广播,或使用流式传输媒体服务器,或应用如RTSP的实时协议,即为实时流式传输。如使用HTTP服务器,文件即通过顺序流发送。
[0029]所述服务器可以是普通的服务器,也可以是云服务器,其中云服务器是一种类似VPS服务器的虚拟化技术,VPS是采用虚拟软件,VZ或VM在一台服务器上虚拟出多个类似独立服务器的部分,每个部分都有云服务器的一个镜像,都可以做单独的操作系统,管理方法同服务器一样。
[0030]在本发明一实施例中,流媒体为云游戏。云游戏服务器端包括两个主要模块,第一模块中存储了云游戏程序,通过运行该程序生成云游戏画面;第二模块用于接收客户端指令,根据该指令抓取云游戏画面,将该画面进行压缩并传输至客户端。
[0031]在服务器端,由第二模块对第一模块发出启动指令,从而启动生成流媒体图像的进程。其中,该指令使用的是windows系统自带的API函数。启动该生成流媒体图像的进程后,若不对该进程发送指令,则该进程将始终处于运行状态,相当于服务器端始终处于打开游戏初始页面的状态。参照图2,示出了本申请客户端、web服务器及流媒体服务器之间的交互过程示意图。
[0032]在本发明一实施例中,服务器分为两种类型:web服务器和流媒体服务器。当用户通过安装在客户端上的播放器或网页浏览器选定一流媒体图像之后,客户端将该流媒体图像的ID发送至web服务器,web服务器根据流媒体图像的ID将运行该流媒体图像的流媒体服务器地址发送给客户端,客户端根据该地址向流媒体服务器请求流媒体图像,正在运行该流媒体图像的流媒体服务器将该流媒体图像传输至客户端,并由播放器播放该流媒体图像。
[0033]web服务器也称为网页服务器,主要功能是提供网上信息浏览服务。Web服务器可以解析HTTP协议。当Web服务器接收到一个HTTP请求,会返回一个HTTP响应,例如送回一个HTML页面。为了处理一个请求,Web服务器可以响应一个静态页面或图片,进行页面跳转,或者把动态响应的产生委托给一些其它的程序例如CGI脚本,JSP(JavaServer Pages)脚本、servlets、ASP (Active Server Pages)脚本、服务器端 JavaScript,或者一些其它的服务器端技术。无论这些脚本的目的如何,这些服务器端的程序通常产生一个HTML的响应来让浏览器可以浏览。Web服务器的代理模型是当一个请求被送到Web服务器里来时,它只单纯的把请求传递给可以很好的处理请求的程序(服务器端脚本)。Web服务器仅仅提供一个可以执行服务器端程序和返回程序所产生的响应的环境,而不会超出职能范围。服务器端程序通常具有事务处理,数据库连接和消息等功能。在本发明一实施例中,web服务器负责控制客户端和服务器之间的交互,包括接收服务器发送的运行的流媒体图像的ID和该服务器地址,以及向发出请求的客户端提供服务器地址。
[0034]步骤102:实时检测客户端获取流媒体图像的请求,当收到所述请求时,从所述处于运行状态的进程中获取所述流媒体图像,并返回至所述客户端。
[0035]所述客户端包括PC机、电视、便携终端、平板、投影机等具有显示和解码功能的装置。
[0036]获取流媒体图像请求可以通过安装在客户端上的播放器发出,也可以通过网页浏览器发出,例如通过加载于网页浏览器页面上的flash播放器播放流媒体图像或通过点击网页浏览器页面上的链接,连接到flash播放器,从而获取流媒体图像。
[0037]所述从所述处于运行状态的进程中获取所述流媒体图像,并返回至所述客户端进一步包括从所述处于运行状态的进程中抓取、压缩所述流媒体图像,并将所述流媒体图像返回至所述客户端;所述客户端解压缩并显示所述流媒体图像。
[0038]服务器端包括检测模块,用于实时检测客户端获取流媒体图像的请求。当收到该请求时,第二模块根据该请求抓取初始云游戏画面,将该画面进行压缩并传输至客户端。客户端解码后通过用户界面呈现给用户。
[0039]对每一块图像进行压缩包括按一定频率分别对属于同一帧图像的所述图像块进行帧内预测编码和帧间预测编码。[0040]例如,每隔10帧图像进行帧内预测编码,压缩为I帧,I帧与I帧之间进行帧间预测编码,压缩为P帧,即按照IPPPPPPPPPPIPPPPPPPPPPI的编码形式对图像进行编码。可以使用MPEG系列标准(MPEG-1—MPEG-7)、H.261、H.262,H.263,H.264等标准进行编码,优选地,使用H.264进行编码。
[0041]在本发明一实施例中,初始图像是RGB图像,对图像进行压缩时将该帧图像分成R帧、G帧和B帧三帧图像分别进行处理,解压缩时合为一帧图像。也可以先将初始RGB图像转换为YCrCb图像,再对YCrCb图像进行压缩和解压缩处理。
[0042]具体地,对I帧图像进行帧内预测编码包括将分割出的每一块图像划分宏块。如图3所示,可以将每一块图像划分成16X16像素、16 X 8像素或8X8像素的宏块,或划分成更小的子宏块8X4像素、4X8像素、4X4像素,再预测每一个宏块的像素值。以16X16宏块帧内预测为例,使用与当前宏块相邻的33个像素生成预测值。如图4所示,共有4种预测模式:模式O (垂直预测)、模式I (水平预测)、模式2 (DC预测)、模式3 (平面预测),分别利用当前宏块上方(H)、左方(V)和左上方已编码的像素来预测当前宏块的像素值。
[0043]对P帧图像进行帧间预测编码包括以图3的方式对分割出的每一块图像划分宏块,优选地,将分割出的每一块图像分割成子宏块,估计子宏块由前一帧图像到当前帧图像的运动矢量。运动估计完成后,将获得的运动矢量信息和预测残差量化编码发送到解压缩端,一同发送到解压缩端的还有宏块划分模式的标识。
[0044]之后进行变换,变换方法包括傅里叶变换(DFT)、沃-哈变换(WHT)或离散余弦变换(DCT),优选地,对每一个宏块进行离散余弦变换(DCT)。DCT变换是将空间像素的几何分布变换为空间频率分布,例如,对于一个NXN图像f (X,y)的二维DCT变换公式为:
【权利要求】
1.一种流媒体处理方法,包括: 在服务器端启动生成流媒体图像的进程,保持所述进程处于运行状态; 实时检测客户端获取流媒体图像的请求,当收到所述请求时,从所述处于运行状态的进程中获取所述流媒体图像,并返回至所述客户端; 接收所述客户端发出的操作指令,并根据所述操作指令生成相应的流媒体图像。
2.根据权利要求1所述的方法,其特征在于,所述保持所述进程处于运行状态进一步包括检测所述客户端与所述服务器之间的流媒体图像传输状况,当检测出所述客户端与所述服务器之间的流媒体图像传输断开时,所述服务器重新启动所述生成流媒体图像的程序。
3.根据权利要求2所述的方法,其特征在于,所述检测所述客户端与所述服务器之间的流媒体图像传输状况进一步包括所述客户端定时向所述服务器发送一数据包,所述服务器针对所述数据包返回一数据包,若所述客户端在阈值时间内收到所述返回的数据包,则视所述客户端与所述服务器之间的流媒体图像传输正在进行;若所述客户端在阈值时间内未收到所述返回的数据包,则视所述客户端与所述服务器之间的流媒体图像传输断开。
4.根据权利要求1所述的方法,其特征在于,还包括所述客户端将关闭播放流媒体图像的进程的指令发送至所述服务器,所述服务器根据所述指令重新启动所述生成流媒体图像的进程。
5.根据权利要求1所述的方法,其特征在于,所述从所述处于运行状态的进程中获取所述流媒体图像,并返回至所述客户端进一步包括从所述处于运行状态的进程中抓取、压缩所述流媒体图像,并将所述流媒体图像返回至所述客户端;所述客户端解压缩并显示所述流媒体图像。
6.—种流媒体处理系统,包括: 启动装置,用于在服务器端启动生成流媒体图像的进程,保持所述进程处于运行状态; 图像获取装置,用于实时检测客户端获取流媒体图像的请求,当收到所述请求时,从所述处于运行状态的进程中获取所述流媒体图像,并返回至所述客户端; 操作指令处理装置,用于接收所述客户端发出的操作指令,并根据所述操作指令生成相应的流媒体图像。
7.根据权利要求6所述的系统,其特征在于,所述启动装置进一步包括检测模块,用于检测所述客户端与所述服务器之间的流媒体图像传输状况;以及重启模块,用于当检测出所述客户端与所述服务器之间的流媒体图像传输断开时,所述服务器重新启动所述生成流媒体图像的程序。
8.根据权利要求6所述的系统,其特征在于,所述图像获取装置进一步包括图像返回模块,用于从所述处于运行状态的进程中抓取、压缩所述流媒体图像,并将所述流媒体图像返回至所述客户端;以及图像显示模块,用于在所述客户端解压缩并显示所述流媒体图像。
【文档编号】H04N21/24GK103974093SQ201310036483
【公开日】2014年8月6日 申请日期:2013年1月30日 优先权日:2013年1月30日
【发明者】邓迪 申请人:云联(北京)信息技术有限公司
再多了解一些
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1