CN102651756A - 基于流式P2P直播技术的RealPlayer播放器系统及播放方法 - Google Patents

基于流式P2P直播技术的RealPlayer播放器系统及播放方法 Download PDF

Info

Publication number
CN102651756A
CN102651756A CN2011100483164A CN201110048316A CN102651756A CN 102651756 A CN102651756 A CN 102651756A CN 2011100483164 A CN2011100483164 A CN 2011100483164A CN 201110048316 A CN201110048316 A CN 201110048316A CN 102651756 A CN102651756 A CN 102651756A
Authority
CN
China
Prior art keywords
realplayer
player
rmprotocol
request
buffermanager
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2011100483164A
Other languages
English (en)
Inventor
储泰山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai B Star Co Ltd
Original Assignee
Shanghai B Star Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai B Star Co Ltd filed Critical Shanghai B Star Co Ltd
Priority to CN2011100483164A priority Critical patent/CN102651756A/zh
Publication of CN102651756A publication Critical patent/CN102651756A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明的一种基于流式P2P直播技术的RealPlayer播放器系统及播放方法,包括:RealPlayerActiveX控件;RealPlayerActiveX控件的容器;用于接受RealPaleryerHTTP连接请求的Http服务器;用于解析RealPlayer播放器发送的请求并响应和发送流式数据的RMProtocol;用于为了流畅播放而修改数据包时间戳的ChagneRMTime;用于存储本地收到的分属多个RM文件的流媒体数据的缓冲区BufferManager;该播放器系统屏蔽了与RealPlayer控件交互的复杂协议、适应P2P直播情况下可能丢失数据包的情况、支持多个流媒体文件的无缝平滑播放、对外接口简单易用,非常适合作为流式P2P直播时的播放器系统。

Description

基于流式P2P直播技术的RealPlayer播放器系统及播放方法
技术领域
本发明涉及一种RealPlayer播放器系统,特别涉及流式P2P直播技术下的播放器系统。
背景技术
视频直播通常又称在线直播,指在事件发生的现场同步采集、制作、发布视频(通常包括音频)信息的方式。传统的视频直播多为电视台在重大事件中向电视观众发布,通常使用专业摄像机作为视频源,通过卫星作为视频传输方式。随着互联网技术的发展,出现了面向互联网发布、使用互联网作为视频传输方式的网络视频直播。
P2P(Peer-to-Peer)是一种分布式网络模型,可以简单地定义为通过直接交换共享计算机资源和服务,对等计算机兼有客户机和服务器的功能。由于P2P技术能够对资源充分发掘和利用,具备用户越多播放越流畅越稳定的特性,目前在许多领域蓬勃发展,如协同工作、即时通讯、文件传递、电子商务、网络教学等。
随着P2P技术的日臻完善,P2P技术从文件共享也逐步应用到流媒体直播中,同传统的C/S、B/S集中式模式相比较,采用分布式网络模式的P2P流媒体直播技术能够更好地在网络带宽瓶颈、延时和可靠性之间做出平衡,节省了带宽。
RM格式是Real公司对多媒体世界的一大贡献,也是对于在线影视推广的贡献。它的诞生,也使得流文件为更多人所知。这类文件可以实现即时播放,即先从服务器上下载一部分视频文件,形成视频流缓冲区后实时播放,同时继续下载,为接下来的播放做好准备。这种“边传边播”的方法避免了用户必须等待整个文件从Internet上全部下载完毕才能观看的缺点,因而特别适合在线观看影视。RM格式的视频文件大量存在。
采取P2P技术进行RM格式的文件进行视频直播的需求客观存在,在数据播放这一块直接采用Real公司的编解码SDK重新写一个播放器难度较大,最简单的方法就是通过ActiveX控件使用Real公司的RealPlayer播放器。RealPlayer播放器播放文件有两种使用方法:第一种就是播放本地的视频文件;第二种是播放网络是的流式文件。由于是直播并且为了保护硬盘考虑,不适宜采取播放本地文件的方法。RealPlayer播放器支持的最简单的流式协议是Http协议。但RealPlayer的Http协议本身是私有的而且P2P下载数据可能是不完整的,这两方面导致RealPlayer播放器使用存在难度,成为本领域技术人员亟待解决的技术课题。
发明内容
本发明的目的在于提供一种基于流式P2P直播技术的RealPlayer播放器系统及播放方法用于有效屏蔽RealPlayer播放器内部复杂的协议交互,降低P2P丢包对RealPlayer播放器的影响。
为达上述目的及其他目的,本发明采用如下技术方案:
一种基于流式P2P直播技术的RealPlayer播放器系统,其特征在于包括:
该系统包括设有RealPlayer ActiveX控件的ActiveX容器;
用于接受RealPlayerActiveX控件请求的Http服务器;
用于解析并响应ActiveX容器发送的请求并发送流媒体数据至ActiveX容器的RMProtocol模组;
用于修改上述流媒体数据的时间戳的ChagneRMTime模组以及用于存储本地收到的流媒体数据的缓冲区BufferManager。
一种基于流式P2P直播技术的RealPlayer播放方法,该方法包括以下步骤:
1)P2P下载者发现本地缓冲已经足够多的时候,通过消息发送给RealPlayer播放器;
2)RealPlayer播放器发起到Http服务器的连接请求;
3)Http服务器创建一个新的对象RMProtocol来处理RealPlayer播放器的请求;
4)RMProtocol收取到RealPlayer播放器的GET请求后发送200的响应给RealPlayer播放器;
5)RMProtocol通过GET请求中的URL标识符获取到该请求对应的BufferManager,并从BufferManager中获取到RM文件头发送给RealPlayer播放器;
6)在RMProtocol从BufferManager获取流媒体数据发送给RealPlayer播放器之前,调用ChangeRMTime模组。
本发明的播放器系统具有使用简单,有效屏蔽了RealPlayer播放器内部复杂的协议交互,解决了P2P丢包对RealPlayer播放器的影响,支持多个文件无缝切换的优点。
附图说明
图1为本发明的播放器系统的基本结构示意图。
图2为本发明的播放器系统的BufferManager数据结构图。
具体实施方式
一种基于流式P2P直播技术的RealPlayer播放器系统,其特征在于包括:
该系统包括设有RealPlayer ActiveX控件的ActiveX容器;
用于接受RealPlayerActiveX控件请求的Http服务器;
用于解析并响应ActiveX容器发送的请求并发送流媒体数据至ActiveX容器的RMProtocol模组;
用于修改上述流媒体数据的时间戳的ChagneRMTime模组以及用于存储本地收到的流媒体数据的缓冲区BufferManager。修改上述流媒体数据的时间戳的目的在于为了流畅播放。
本播放器系统外的接口简单,共分三个接口:
1)设置文件头,参数为fileId,文件头内容。
2)写数据,参数为fileId,pieceId,实际内容。
3)播放数据段,参数为开始pieceId,结束pieceId。
本播放器系统的播放受调用者控制。
BufferManager模块用来存放缓冲出来的数据块和每个RM文件的文件头,存放数据是一个变长的链表,如图2所示,链表的表项用来存储每个Piece的数据、Piece的编号、这个Piece所属的文件的Id。存放文件头的是一个Map,文件头比较重要,数据可以丢失,但文件头不能没有。
RMProtocol用来处理与RealPlayer播放器的协议交互和发送数据给RealPlayer播放器,RMProtocol与RealPlayer之间采用Http协议,Http请求的格式如下:
GET/42113473819066140192129236203137_1.rm HTTP/1.1
Accept:*/*
Accept-Encoding:gzip,deflate
User-Agent:Mozilla/4.0(compatible;MSIE 7.0;Windows NT 5.1;Trident/4.0;InfoPath.1;.NET CLR 2.0.50727)
Host:127.0.0.1:3237
Connection:Keep-Alive
RMProtocol发送给RealPlayer播放器的响应为:
HTTP/1.1 200 OK
Content-type:application/vnd.rn-realmedia
Content-Length:11607560
有RMProtocol发送完200响应后,接着可以发送RM文件的头和数据。
ChangeRMTime用来修改RM数据包的时间戳,以达到在P2P出现丢包的情况下,观众仍然能跳过丢失的内容继续观看。如果不做这种修改,RealPlayer播放器会在丢包的地方停顿相应的丢失的秒数,影响观众观看情绪。ChangeRMTime修改时间戳的方法是一旦发现某个数据包前面的数据包丢失了,则把该数据包的时间戳改成最后一个收到的数据包的时间戳+1。
综上所述,一次完整的播放过程的主要步骤是:
1)P2P下载者发现本地缓冲已经足够多的时候,通过消息发送给RealPlayer播放器。
2)RealPlayer播放器发起到Http服务器的连接请求。
3)Http服务器创建一个新的对象RMProtocol来处理RealPlayer的请求。
4)RMProtocol收取到RealPlayer的GET请求(Get请求:是以实体的方式得到由请求URI所指定资源的信息,如果请求URI只是一个数据产生过程,那么最终要在响应实体中返回的是处理过程的结果所指向的资源,而不是处理过程的描述)后发送200的响应给RealPlayer。
5)RMProtocol通过请求中的URL标识符获取到该请求对应的BufferManager,并从BufferManager中获取到RM文件头发送给RealPlayer。
6)在从BufferManager获取流媒体数据发送给RealPlayer之前,调用ChangeRMTime。
上述实施例仅列示性说明本发明的原理及功效,而非用于限制本发明。任何熟悉此项技术的人员均可在不违背本发明的精神及范围下,对上述实施例进行修改。因此,本发明的权利保护范围,应如权利要求书所列。

Claims (3)

1.一种基于流式P2P直播技术的RealPlayer播放器系统,其特征在于包括:
该系统包括设有RealPlayer ActiveX控件的ActiveX容器;
用于接受RealPlayerActiveX控件请求的Http服务器;
用于解析并响应ActiveX容器发送的请求并发送流媒体数据至ActiveX容器的RMProtocol模组;
用于修改上述流媒体数据的时间戳的ChagneRMTime模组以及用于存储本地收到的流媒体数据的缓冲区BufferManager。
2.如权利要求1所述的一种基于流式P2P直播技术的RealPlayer播放器系统,其特征在于包括:所述存储本地收到的流媒体数据分属多个RM文件。
3.一种基于流式P2P直播技术的RealPlayer播放方法,该方法包括以下步骤:
1)P2P下载者发现本地缓冲已经足够多的时候,通过消息发送给RealPlayer播放器;
2)RealPlayer播放器发起到Http服务器的连接请求;
3)Http服务器创建一个新的对象RMProtocol来处理RealPlayer播放器的请求;
4)RMProtocol收取到RealPlayer播放器的GET请求后发送200的响应给RealPlayer播放器;
5)RMProtocol通过GET请求中的URL标识符获取到该请求对应的BufferManager,并从BufferManager中获取到RM文件头发送给RealPlayer播放器;
6)在RMProtocol从BufferManager获取流媒体数据发送给RealPlayer播放器之前,调用ChangeRMTime模组。
CN2011100483164A 2011-02-28 2011-02-28 基于流式P2P直播技术的RealPlayer播放器系统及播放方法 Pending CN102651756A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011100483164A CN102651756A (zh) 2011-02-28 2011-02-28 基于流式P2P直播技术的RealPlayer播放器系统及播放方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011100483164A CN102651756A (zh) 2011-02-28 2011-02-28 基于流式P2P直播技术的RealPlayer播放器系统及播放方法

Publications (1)

Publication Number Publication Date
CN102651756A true CN102651756A (zh) 2012-08-29

Family

ID=46693650

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011100483164A Pending CN102651756A (zh) 2011-02-28 2011-02-28 基于流式P2P直播技术的RealPlayer播放器系统及播放方法

Country Status (1)

Country Link
CN (1) CN102651756A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016209174A1 (en) * 2015-06-26 2016-12-29 Onwards Media Group Pte. Ltd. Method and apparatus for streaming media
CN107124668A (zh) * 2016-01-22 2017-09-01 纳宝株式会社 流式传输装置及方法、流式传输服务系统及记录介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070143493A1 (en) * 2005-12-04 2007-06-21 Turner Broadcasting System, Inc. System and method for delivering video and audio content over a network
CN101018323A (zh) * 2007-02-08 2007-08-15 华为技术有限公司 一种快进快退播放视频数据的方法和流媒体服务器
CN101534204A (zh) * 2008-03-10 2009-09-16 中国网通集团宽带业务应用国家工程实验室有限公司 流媒体信息分发系统和方法及客户端
WO2009116974A2 (en) * 2008-03-20 2009-09-24 Thomson Licensing Method and apparatus for masking signal loss

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070143493A1 (en) * 2005-12-04 2007-06-21 Turner Broadcasting System, Inc. System and method for delivering video and audio content over a network
CN101018323A (zh) * 2007-02-08 2007-08-15 华为技术有限公司 一种快进快退播放视频数据的方法和流媒体服务器
CN101534204A (zh) * 2008-03-10 2009-09-16 中国网通集团宽带业务应用国家工程实验室有限公司 流媒体信息分发系统和方法及客户端
WO2009116974A2 (en) * 2008-03-20 2009-09-24 Thomson Licensing Method and apparatus for masking signal loss

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016209174A1 (en) * 2015-06-26 2016-12-29 Onwards Media Group Pte. Ltd. Method and apparatus for streaming media
CN107124668A (zh) * 2016-01-22 2017-09-01 纳宝株式会社 流式传输装置及方法、流式传输服务系统及记录介质
US10404828B2 (en) 2016-01-22 2019-09-03 Naver Corporation Streaming apparatus, streaming method, and streaming service system using the streaming apparatus

Similar Documents

Publication Publication Date Title
US11039218B1 (en) Systems, apparatus and methods for rendering digital content relating to a sporting event with online gaming information
US11871088B2 (en) Systems, apparatus, and methods for providing event video streams and synchronized event information via multiple Internet channels
CN106233734B (zh) 将直播流作为广告供应
US10200723B2 (en) Converting live streaming content to video-on-demand streaming content
CN106685942B (zh) 视频直播回播系统以及视频直播回播方法
CN103650526B (zh) 用于实时或近实时流传输的播放列表
CN103002274B (zh) 一种基于离线下载的移动多媒体实时转码播放系统及方法
WO2019134470A1 (zh) 视频直播方法及装置
CN105554512A (zh) 一种适用于新媒体内容融合的saas云平台
US20150106730A1 (en) Framework for screen content sharing system with generalized screen descriptions
CN105657443A (zh) 一种直播时移播放方法和系统
US20230379531A1 (en) Systems, apparatus and methods for rendering digital content
CN105743971A (zh) 一种适用于新媒体内容融合的saas云平台的使用方法
CN104219571B (zh) 一种自动提供看点的方法和装置
CN105704503A (zh) 一种基于saas媒体云技术的在线集成管控应用云平台的使用方法
WO2015039477A1 (zh) 基于多屏互动的信息系统及信息投放方法、iptv系统
CN102651756A (zh) 基于流式P2P直播技术的RealPlayer播放器系统及播放方法
US8055779B1 (en) System and method using data keyframes
US11611609B2 (en) Distributed network recording system with multi-user audio manipulation and editing
Gao et al. Beyond the playlist: seamless playback of structured video clips
Wang et al. Interaction design of gesture control for DMS multi-channel system
Liu et al. Analysis and Research of Campus Live Broadcasting System Based on SRS and FFmpeg
Venkatraman et al. MMT+ AVR: enabling collaboration in augmented virtuality/reality using ISO's MPEG media transport
Yim et al. Implementation of a Prototype Personal Live Broadcasting System
Qiu et al. Design and Implementation of JMF-based VOD System

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 200336 Shanghai city Changning District Honggu Road No. 150

Applicant after: Shanghai B-Star Broadband Technology Co., Ltd.

Address before: 200336 Shanghai city Changning District Honggu Road No. 150

Applicant before: Shanghai B-STAR Co., Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: SHANGHAI FUTURE BROADBAND TECHNOLOGY AND APPLICATION ENGINEERING RESEARCHCENTER CO., LTD. TO: SHANGHAI FUTURE BROADBAND TECHNOLOGY CO., LTD.

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20120829