CN101795297A - 基于p2p技术的直播时移***及其方法 - Google Patents

基于p2p技术的直播时移***及其方法 Download PDF

Info

Publication number
CN101795297A
CN101795297A CN201010127346.XA CN201010127346A CN101795297A CN 101795297 A CN101795297 A CN 101795297A CN 201010127346 A CN201010127346 A CN 201010127346A CN 101795297 A CN101795297 A CN 101795297A
Authority
CN
China
Prior art keywords
live video
direct broadcast
client
time
server
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.)
Granted
Application number
CN201010127346.XA
Other languages
English (en)
Other versions
CN101795297B (zh
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.)
Beijing Shiyue Network Technology Co., Ltd.
Original Assignee
BEIJING TIANTIAN KUANGUANG NETWORK TECHNOLOGY 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 BEIJING TIANTIAN KUANGUANG NETWORK TECHNOLOGY Co Ltd filed Critical BEIJING TIANTIAN KUANGUANG NETWORK TECHNOLOGY Co Ltd
Priority to CN201010127346.XA priority Critical patent/CN101795297B/zh
Publication of CN101795297A publication Critical patent/CN101795297A/zh
Priority to US13/043,641 priority patent/US8719889B2/en
Application granted granted Critical
Publication of CN101795297B publication Critical patent/CN101795297B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2181Source of audio or video content, e.g. local disk arrays comprising remotely distributed storage units, e.g. when movies are replicated over a plurality of video servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4436Power management, e.g. shutting down unused components of the receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/632Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明基于P2P技术的直播时移***及其方法,该***包括设置在服务器端的编码服务器、直播服务器和控制服务器;该方法包括:编码服务器将接收到直播视频数据流分割为固定大小的直播视频数据包,然后为每个直播视频数据包添加直播频道信息和时间信息;并将编码后的直播视频数据包分发给直播服务器,并向控制服务器发出当前控制信息;直播服务器持续从编码服务器获得直播视频数据包;客户端申请收看视频数据时,先向控制服务器发送视频请求,控制服务器将视频数据的存储信息返回给客户端,客户端通过建立的数据链路获得视频数据。本发明的服务器端和客户端同时能够支持基于P2P技术的直播时移功能;可以支持大规模并发应用。

Description

基于P2P技术的直播时移***及其方法
技术领域
本发明属于网络视频传输及应用技术领域,特别涉及一种将P2P技术与直播时移技术相结合的视频传输技术。
背景技术
直播视频技术的应用已经非常广泛,电视就是一种被广泛应用的直播视频技术。直播视频技术特点是时效性,错过时间就无法收看到直播视频内容。对于希望收看直播视频内容,时间又无法保证的客户,要么等待重新直播视频内容,要么使用点播方式收看视频内容。但是直播视频内容是否重播,是否能够成为点播视频内容,以及点播视频内容的上线时间都无法确定。为了满足客户需求,出现了存储直播视频内容的技术,这种存储可以在服务器上实现,也可以通过客户端的存储设备实现。
客户端实现方式,就是在客户端上配置存储设备,客户按照喜好设定需要存储的频道、存储的开始时间、结束时间等信息。这种方式的缺点是,客户端上的存储设备容量有限,只能存储一定数量的视频内容,并且存储设备在同一时间段内,一般只能存储一个频道的直播视频内容。当客户需要存储多个频道的直播视频内容,或者需要存储长时间的直播视频内容时,客户端存储设备就无法满足需求。另外,这种方式最大的问题是,客户需要按照节目单预先设定节目录制的频道和时间,对于突发事件,事先没有节目单,客户预先不知道直播视频内容的开始时间,也就没有办法设定存储信息,存储工作就无法进行。
服务器端实现方式,就是在服务器上配置存储设备,存储所有频道的直播视频内容。当客户需要当前时间之前的某个频道的直播视频内容时,客户端向服务器发送请求,请求中包含了频道信息,直播视频数据的起始时间信息,例如当前时间为2009年12月15日12时0秒,客户请求收看频道A,起始时间为2009年12月1日11时35秒的直播视频数据,服务器收到客户端的请求后,查询频道A,起始时间2009年12月1日11时35秒的直播视频内容存储位置,服务器从直播视频内容存储位置上获得直播视频数据,并将直播视频数据发送给客户端,对于客户来说,就像是收看到经过时间移动后的直播视频内容,这种技术称之为直播时移技术。
由于服务器端存储能力非常强,可以存储所有直播频道的全部直播视频内容,这样就可以满足客户对于不特定直播视频内容的收看需求。
为了与直播视频区别,后面将时移后的直播视频统一称为直播时移视频。
服务器存储的直播时移技术也已经比较成熟,名称为一种具有时移功能的直播服务器及实现方法的中国专利(公开号CN 101207795A,简称参考专利1)公开了一个非常具有代表性的服务器存储的直播时移技术。在该专利中,通过改造直播服务器,为直播服务器添加存储功能,这样直播服务服务器也可以作为时移服务器使用。在存储过程中,改造后的直播服务器在接收到直播视频源后,一边发布直播视频数据,一边存储直播视频数据,并给存储的直播视频数据加上视频属性和时间信息,这样就可以按照频道和时间信息索引为客户提供直播时移视频服务了。
在已经公开的资料中,直播时移技术(包括参考专利1所涉及的技术在内)都是采用单播方式进行直播视频内容的传输,这种单播方式就是每个客户端与服务器建立一个数据通路,服务器资源占用数量与客户端数量线性相关,当客户端数量急剧增长时,服务器资源也呈现线性增长,这种单播方式不利于大规模应用。
目前,P2P技术已经被广泛应用于视频传输业务中,名称为点对点流媒体通讯***及其超级节点资源的配置方法的中国专利(公开号CN 101075954A简称参考专利2)就是一种非常具有代表性P2P视频传输技术方法。在参考专利2中,描述了一种基于P2P技术的,流媒体传输***的实现方法。这种技术可以用于点播和直播业务中。
在已经公开的P2P直播技术资料中,通常服务器端内存缓冲区时间长度数值为秒级别,一般150秒以内,因为内存缓冲的长度会影响客户终端的直播视频的播放时间延迟,时间延迟的增加将影响客户的观看效果。
发明内容
本发明的目的是为克服已有直播时移技术的不足之处,提出一种基于P2P技术的直播时移***及其方法,通过对服务器端和客户端进行改造,并在服务器端和客户端增加了P2P机制,使得服务器端和客户端同时能够支持基于P2P技术的直播时移功能;可以支持大规模并发应用。
本发明提出的一种基于P2P技术的直播时移***,包括设置在服务器端的编码服务器、直播服务器和控制服务器;其特征在于,
编码服务器:用于从直播信号源接收经过直播视频数据流,将直播视频数据流分拆为固定大小的直播视频数据包,并为每个直播视频数据包中增加频道号和时间信息;
直播服务器:用于直播和存储某个频道的直播视频数据包;并向多个客户端同时提供直播视频,或提供直播时移视频;
控制服务器:用于处理客户端发出的视频请求,为客户端提供视频数据的存储信息;该控制服务器设置有直播信息列表,直播时移信息列表,每个直播频道的节目单;直播信息列表中包含直播频道与当前直播该直播频道的服务器,以及当前收看该当直播频道的客户端的信息列表;当客户端停止收看直播视频时,控制服务器将清除直播信息列表中该客户端的记录;直播时移信息列表中包含直播频道与存储了该直播频道视频数据的直播服务器,以及客户端的信息列表,只要直播服务器或客户端存储有视频数据,则控制服务器将直播服务器或客户端的记录保留在直播时移信息列表中。
本发明还提出一种基于P2P技术的直播时移方法,其特征在于,包括以下步骤:
1)服务器端的编码服务器从直播视频数据源接收直播视频数据流,首先将直播视频数据流分割为固定大小的直播视频数据包,然后为每个直播视频数据包添加直播频道信息和时间信息;
编码服务器将编码后的直播视频数据包分发给直播服务器,并向控制服务器发出当前编码的直播频道、当前接收直播视频数据包的直播服务器、以及编码重启或编码故障控制信息;
2)服务器端的直播服务器建有一个内存缓冲区,服务器端的内存缓冲区大小设置为存储固定时间长度的直播视频数据包;直播服务器持续从编码服务器获得直播视频数据包,并写入该服务器端的内存缓冲区,当直播服务器的内存缓冲区被占满后,时间最早的直播视频数据包被丢弃,空余出的存储缓冲区被用来放置时间最新的直播视频数据包;
直播服务器同时建有一个磁盘存储空间,直播服务器将放置到服务器端内存缓冲区的直播视频数据包,按照规定的时间间隔写入在磁盘存储空间中,并且在写入磁盘缓冲区之前,清除每个单独直播视频数据包的直播频道信息和时间信息,将把一个时间间隔写磁盘存储空间的所有直播视频数据包合并为一个直播视频数据文件;将直播视频数据文件的频道信息和时间信息作为视频数据文件的文件名称,并将该视频数据文件的频道信息和时间信息提交给控制服务器;该频道信息和时间信息作为该视频数据文件的唯一标识信息;
直播服务器使用内存缓冲区中的直播视频数据包提供P2P直播服务,或使服务器端的内存缓冲区中的直播视频数据包提供直播服务器的内存缓冲区时间长度范围之内的直播时移服务,或用磁盘存储空间上存储的直播视频内容提供超过直播服务器的内存缓冲区时间长度的直播时移服务。
3)客户端申请收看视频数据时,客户端首先向服务器端的控制服务器发送视频请求,视频请求中包含了频道信息和时间信息;根据客户端请求的视频开始时间以及直播服务器的内存缓冲区大小,控制服务器将视频数据的存储信息返回给客户端,客户端按照存储信息与直播服务器或其他客户端建立数据链路,通过建立的数据链路获得视频数据
本发明的技术特点及有益效果:
本发明采用在服务器端实现方式,通过对服务器端和客户端进行改造,并在服务器端增加了P2P机制,使得服务器端和客户端同时能够支持基于P2P技术的直播时移功能;可以支持大规模并发应用。
本发明在编码服务器上进行了改造,在编码服务器增加了数据分拆程序,直播视频内容以数据流的形式从信号源发送到编码服务器上,编码服务器将直播视频数据流分拆为固定大小的直播视频数据包,并为每个数据包添加包头信息,这些信息包括频道号,时间信息等。编码服务器将编码后的直播视频数据包按照时间顺序发送给直播服务器。
本发明在直播服务器上进行了改造,在直播服务器上增加了存储空间,直播服务器在直播视频数据的同时,将直播视频内容存储在直播服务器的存储空间内。本发明修改了直播服务器的缓冲区大小,在存储时,首先清除掉每个直播视频数据包的包头信息,将直播视频数据存储的时间间隔长的直播视频数据组合为一个视频文件,利用频道号和时间信息作为该视频文件的名称。
本发明在客户端上进行了改造,在客户端上设置了内存缓冲区和磁盘缓冲区。客户端在接收直播视频数据的同时,将直播视频数据分别写入客户端的内存缓冲区和磁盘缓冲区。由于在客户端上,预留了磁盘存储空间。当客户端收看直播或直播时移视频内容时,接收到的视频数据会存储在磁盘存储空间上,并且客户端自动上报视频内容的存储情况(不论是直播视频数据,还是直播时移视频数据),这样客户端既可以支持P2P直播业务,也可以支持P2P直播时移业务。
本发明的这种基于P2P技术的直播时移方法与已有的参考专利2基于P2P技术的点播和直播方法存在本质区别。本发明基础是基于P2P的直播技术,同时在基于P2P的直播技术基础上增加了服务器和客户端的存储功能,这样就可以提供基于P2P的直播时移技术。同时本发明也采用了基于P2P的点播技术,但是将这些点播技术用于直播时移技术中。
本发明将P2P技术应用到服务器直播时移技术中,P2P技术利用已经在线的客户端的多余资源为新上线客户端提供视频传输服务,这样就可以大大减少对于服务器资源的占用。实现了服务器直播时移技术支持大规模并发的要求。
附图说明
图1为本发明的***结构框图。
具体实施方式
本发明提出的基于P2P技术的直播时移***及其方法结合附图及实施例详细说明如下:
本发明的基于P2P技术的直播时移***,如图1所示,包括设置在服务器端的编码服务器、直播服务器和控制服务器;其中:编码服务器:用于从直播信号源接收经过直播视频数据流,将直播视频数据流分拆为固定大小的直播视频数据包(例如360KByte大小的直播视频数据包),并为每个直播视频数据包中增加频道号和时间信息;
直播服务器:用于直播和存储某个频道的直播视频数据包;并向多个客户端同时提供直播视频,或提供直播时移视频;
控制服务器:用于处理客户端发出的视频请求,为客户端提供视频数据的存储信息;该控制服务器设置有直播信息列表,直播时移信息列表,每个直播频道的节目单;直播信息列表中包含直播频道与当前直播该直播频道的服务器,以及当前收看该直播频道的客户端的信息列表;当客户端停止收看直播视频时,控制服务器将清除直播信息列表中该客户端的记录;直播时移信息列表中包含直播频道与存储了该直播频道视频数据的直播服务器,以及客户端的信息列表,只要直播服务器或客户端存储有视频数据,则控制服务器将直播服务器或客户端的记录保留在直播时移信息列表中。
本发明提出的一种基于P2P技术的直播时移方法,其特征在于,包括以下步骤:
1)服务器端的编码服务器从直播视频数据源接收直播视频数据流,首先将直播视频数据流分割为固定大小的直播视频数据包(例如分成360K的数据包,该数据包的数值是根据宽带用户带宽数值选取的一个经验值),然后为每个直播视频数据包添加直播频道信息和时间信息(其中直播频道ID是频道的唯一标识符,不能重复使用;时间信息可以是当前绝对时间(例如2009年12月15日9点45分23秒21毫秒),也可以使用相对时间,(在标记时间信息时,在本实施例中使用绝对时间。不论使用绝对时间还是相对时间,通过简单的换算,两种时间信息可以相互转换);还可以根据数据包所代表的时间长度规定时间精度(例如精确到秒级,也可以精确到毫秒级);
(本发明将直播视频数据流分割成小数据包的方式,一方面有利于使用P2P协议传输直播视频数据;另一方面,由于每个直播视频数据包都带有频道信息和时间信息,并且时间信息精确到秒级,这样就便于在客户端,客户通过对播放进度条的操作进行类似视频播放的拖拽、暂停等功能。)
编码服务器将编码后的直播视频数据包分发给直播服务器,并向控制服务器发出当前编码的直播频道、当前接收直播视频数据包的直播服务器、以及编码重启或编码故障等控制信息;
2)服务器端的直播服务器建有一个内存缓冲区,服务器端的内存缓冲区大小设置为存储固定时间长度的直播视频数据包(例如本实施例中可设置为60分钟,则服务器端的内存缓冲区数值=60分钟*60秒*视频码流,该服务器端的内存缓冲区大小数值是根据直播服务器性能、直播服务器磁盘存储空间的性能,以及宽带用户带宽数值选取的一个经验值);直播服务器持续从编码服务器获得直播视频数据包,并写入该服务器端的内存缓冲区,当直播服务器的内存缓冲区被占满后,时间最早的直播视频数据包被丢弃,空余出的存储缓冲区被用来放置时间最新的直播视频数据包(即该服务器端的内存缓冲区使用先进先出原则进行管理);
直播服务器同时建有一个磁盘存储空间,直播服务器将放置到服务器端内存缓冲区的直播视频数据包,按照规定的时间间隔写入在磁盘存储空间中(例如本实施例中服务器端的内存缓冲区大小为存储60分钟的直播视频数据包,因此将写磁盘存储空间的时间间隔设置为60分钟),并且在写入磁盘缓冲区之前,清除每个单独直播视频数据包的直播频道信息和时间信息,将把一个时间间隔写磁盘存储空间的所有直播视频数据包合并为一个直播视频数据文件(例如本实施例中将60分钟长的直播视频数据包合并为一个时间长度为60分钟的直播视频数据文件);将直播视频数据文件的频道信息和时间信息(可选该直播视频数据文件的开始、结尾和中间任意一个时间点,本实施例选取开始时间点为时间信息)作为视频数据文件的文件名称(例如CCTV1频道,2009年12月2日18点的视频文件,可以命名为CCTV1T2009120218),并将该视频文件的频道信息和时间信息提交给控制服务器;该频道信息和时间信息作为该视频文件的唯一标识信息(服务器磁盘存储空间非常大,理论上可以存储所有的直播视频内容);
直播服务器使用内存缓冲区中的直播视频数据包提供P2P直播服务,或使服务器端的内存缓冲区中的直播视频数据包提供直播服务器的内存缓冲区时间长度范围之内(在60分钟之内)的直播时移服务,或用磁盘存储空间(可以是内存,也可以是磁盘)上存储的直播视频内容提供超过直播服务器的内存缓冲区时间长度的(例如超过60分钟)直播时移服务。
3)客户端申请收看视频数据时,客户端首先向服务器端的控制服务器发送视频请求,视频请求中包含了频道信息和时间信息(默认情况下视频请求中的时间为当前时间,客户也可以设定直播视频流的播出起始时间);根据客户端请求的视频开始时间以及直播服务器的内存缓冲区大小,控制服务器将视频数据的存储信息返回给客户端,客户端按照存储信息与直播服务器或其他客户端建立数据链路,通过建立的数据链路获得视频数据;
上述工作具体分为以下三种情况:
情况(1)客户端申请的直播视频的播放起始时间为当前时间:
控制服务器首先计算当前时间与客户请求的直播视频起始时间的差,若差值为0,则客户端的请求为直播视频请求,控制服务器查询直播信息列表,并将当前发布直播频道的直播服务器和当前收看直播频道的其他客户端的地址信息列表发送给客户端,客户端与列表中的直播服务器以及当前接收直播视频数据包的其他客户端建立数据链接,接收直播视频数据包;
客户端内建有一个内存缓冲区,一个磁盘缓冲区,并建立一个对照表(本实施例的客户端的内存缓冲区的时间长度数值为150秒,磁盘缓冲区数值为1GB(GB=1000000000byte,byte中文名称是字节,是计算机通用词语;该数值是根据大量用户的平均剩余磁盘空间数值选取的经验值);客户端在接收直播视频数据包时,将直播视频数据包放入客户端的内存缓冲区内,同时将直播视频数据包写入磁盘缓冲区(客户端的内存缓冲区和磁盘缓冲区均采用先进先出原则);每个直播视频数据包写入磁盘缓冲区后,客户端在对照表中增加一条记录,记录直播视频数据包的频道信息、时间信息和在磁盘缓冲区内的存储信息;
客户端在将直播视频数据包写入磁盘缓冲区时,使用与直播服务器存储直播视频数据相同的命名规则,并在后面增加包的序号,例如CCTV1频道,2009年12月2日18点开始的第一个直播视频数据包,则对应的存储在可以命名为CCTV1T2009120218000001,第二个直播视频数据包命名为CCTV1T2009120218000002,以此类推;
客户端在将直播视频数据包写入磁盘缓冲区时还要对每个直播视频文件进行校验,并将校验结果放在直播视频文件后面,当其他客户端从该客户端接收直播视频数据文件时,如果校验结果与直播视频文件的校验结果不同(说明直播视频数据被修改了),则丢弃该直播视频文件(该工作是为了保证直播视频文件不被篡改,保证直播视频数据传输的安全性);
客户端将直播视频数据文件写入磁盘缓冲区中后的存储情况提交给控制服务器;
当客户端停止收看直播视频时,客户端中断所有直播视频数据包的传输数据链路,清除客户端的内存缓冲区内的直播视频数据包,删除对照表。
情况(2)客户端申请的直播视频的播放起始时间小于当前时间,大于当前时间减去直播服务器的内存缓冲区的时间长度数值(例如60分钟)的时间:
控制服务器首先计算当前时间与客户请求的直播视频的播放起始时间的差,如果请求的直播视频的播放起始时间小于当前时间,并且大于当前时间减去直播服务器内存缓冲区的时间长度数值,例如客户请求的直播视频的播放起始时间为2009年12月11日17点01分45秒,当前时间为2009年12月11日17点25分40秒,当前时间减去直播服务器的缓冲区的时间长度数值,为2009年12月11日16点25分40秒,客户请求的直播视频的播放起始时间2009年12月11日17点01分45秒小于当前时间,但大于当前时间减去直播服务器的内存缓冲区的时间长度数值后得到的时间2009年12月11日16点25分40秒;则控制服务器判断该请求是一个直播服务器内存缓冲区范围内的直播时移视频请求;客户端申请的直播视频数据包存在于直播服务器的内存缓冲区中,并且当前收看相同频道的其他客户终端中存储了这些直播视频数据包;控制服务器查询直播信息列表,然后将当前直播该频道的直播服务器和当前收看该直播频道的其他客户端的连接信息发送给客户端,客户端与上述服务器和其他客户端建立数据链接,获得时移时间小于直播服务器的内存缓冲区的时间长度数值的直播时移视频数据包;
客户端在收看时移时间小于直播服务器的内存缓冲区的时间长度数值的直播时移视频时,也建立内存缓冲区、磁盘缓冲区和对照表。客户端的内存缓冲区、磁盘缓冲区和对照表的工作原理与情况(1)中描述的客户端的工作相同,区别是该客户端收看的是直播时移视频,与情况(1)中客户端收看的直播视频有一个时间差值。当该客户端收看直播时移视频过程中,客户端与情况(1)中的客户端一样完成文件存储工作、文件校验工作和存储信息上报工作。
情况(3)客户端申请的直播视频的播放起始时间小于当前时间减去直播服务器的内存缓冲区数值(例如60分钟)的时间
控制服务器计算当前时间与客户请求的直播视频的播放起始时间的差,如果请求的直播视频的播放起始时间小于当前时间减去直播服务器内存缓冲区的时间长度数值,例如客户请求的直播视频的播放起始时间为2009年12月10日17点30分45秒,当前时间为2009年12月11日17点25分40秒,当前时间减去直播服务器的缓冲区的时间长度数值60分钟,为2009年12月11日16点25分40秒,客户请求的直播视频的播放起始时间2009年12月10日17点30分45秒小于当前时间减去直播服务器的内存缓冲区的时间长度数值后得到的时间2009年12月11日16点25分40秒;则控制服务器判断该请求是一个直播服务器内存缓冲区范围外的直播时移视频请求;客户端申请的直播视频数据包只存在于直播服务器的磁盘存储区中和存储了这些直播视频文件的其他客户终端磁盘缓冲区中;控制服务器查询直播时移信息列表,然后将存储了这些直播视频文件的直播服务器和其他客户端的连接信息发送给客户端,客户端与上述服务器和其他客户端建立数据链接,获得时移时间大于直播服务器的内存缓冲区的时间长度数值的直播时移视频数据包;
客户端在收看时移时间大于直播服务器的内存缓冲区的时间长度数值的直播时移视频时,也建立内存缓冲区、磁盘缓冲区。客户端的内存缓冲区、磁盘缓冲区的工作原理与(1)中描述的客户端的工作相同,区别是客户端收看的是时移时间大于直播服务器的内存缓冲区的时间长度数值的直播时移视频,直播视频数据是以直播视频文件方式传输,而不是直播视频数据包。当该客户端收看直播时移视频时,客户端与(1)中的客户端一样完成文件存储工作、文件校验工作和存储信息上报工作。
客户端按照文件方式下载相应的直播视频文件,在播放的同时,将直播视频文件存储在磁盘缓冲区内。当该客户端停止收看直播时移视频时,客户端向控制服务器提交存储信息。
上述情况(3)与P2P点播技术相似,但是在本发明中,客户时间上看的是一个直播视频流,只是将直播视频进行了时间移动,这是本发明与P2P点播技术的根本区别。
本发明提出一种基于P2P技术的直播时移***及其方法的实施例。该***包括设置在服务器端的编码服务器、直播服务器、控制服务器。该方法包括以下步骤:
1)编码服务器从直播源获得直播视频数据流,并将直播视频数据流分割为360K大小的直播视频数据包,为每个直播视频数据包添加频道信息和时间信息。然后将这些直播视频数据包按照时间顺序发送给直播服务器。
2)直播服务器建有一个能够存储60分钟直播视频数据包的内存缓冲区。内存缓冲区大小计算方式为:设直播视频码流为400Kbits,每秒为400Kbit,时间长度60分钟=3600秒,则内存缓冲区数值=60分钟*60秒*400K/8,除8是因为计算出的数据时按照bit为单位的,存储上一般按照byte作为单位的,1byte=8bits。视频码流直播服务器从编码服务器接收到直播视频数据包,按照时间先后顺序放入内存缓冲区中,并按照60分钟时间间隔,每隔60分钟将内存缓冲区中的直播视频数据包合并存储到磁盘空间中。直播服务器的内存缓冲区按照先进先出原则,当直播服务器的内存缓冲区存放满后,丢弃时间最早的直播视频数据包,空余出的直播服务器的内存缓冲区用于存放时间最新的直播视频数据包。直播服务器的内存缓冲区可以存储时间长度60分钟的直播视频数据包,因此每隔60分钟,直播服务器的内存缓冲区中的直播视频数据包与前一个60分钟的直播视频数据包没有重复的,在每个60分钟结束时,直播服务器将内存缓冲区中直播视频数据包的频道信息和时间信息删除,将直播服务器的内存缓冲区中的所有直播视频数据包按照时间顺序合并为一个的直播视频文件,使用直播频道信息和时间信息为该直播视频文件命名,例如CCTV1T2009122018表示CCTV1频道在2009年12月20日18点的直播视频文件。由于服务器的存储资源非常大,理论上可以存储所有频道的所有直播视频内容。
直播服务器向控制服务器提交当前直播的频道信息和存储的直播文件信息。
客户端要收看直播视频时,首先向控制端发送直播视频请求。本***中,客户端可以根据需要选择收看那个时间点的直播视频,可以是当前时间,也可以当前时间以前的某个时间点开始的直播视频。
客户端发送的直播视频请求中包含了频道信息和直播视频的时间信息。
(1)控制服务器接收到客户端发送的直播视频请求,首先计算当前时间与客户请求的直播视频起始时间的差,若差值为0,则客户端的请求为直播视频请求,控制服务器查询直播信息列表,并将当前发布该直播频道的直播服务器和当前收看该直播频道的其他客户端的地址信息列表发送给客户端,客户端与列表中的直播服务器以及当前接收直播视频数据包的其他客户端建立数据连接,接收直播视频数据包。直播服务器的查询过程,直播数据的分发过程与已经公开的P2P直播技术相似,区别在于,客户请求的直播视频起始时间可以是当前时间,也可以是当前时间以前的某个时间点。
客户端在开始接收直播视频数据包之前,先建立一个内存缓冲区和一个磁盘缓冲区,并建立一个对照表。客户端的内存缓冲区的时间长度数值为150秒,设直播视频码流为400Kbits,内容缓冲区容量=时间长度150秒*码流400Kbits/8,除以8是因为客户端的内存缓冲区单位为byte,而乘积的结果为bits,1byte=8bits。磁盘缓冲区数值为1GB(该数值是根据大量用户的平均剩余磁盘空间数值选取的经验值),按照直播视频码流为400Kbits,约可以存储1000000*8/400/3600=5.5小时的直播视频数据包。
客户端在接收直播视频数据包时,一边放入客户端的内存缓冲区内,一边将直播视频数据包写入磁盘缓冲区。客户端的内存缓冲区和磁盘缓冲区都是用先进先出原则。在将直播视频数据包写入磁盘缓冲区时,使用与直播服务器存储直播视频数据相同的命名规则,并在后面增加包的序号,例如CCTV1频道,2009年12月2日18点开始的第一个直播视频数据包,则对应的存储文件名为CCTV1T2009120218000001,第二个直播视频数据包命名为CCTV1T2009120218000002,以此类推。其中CCTV1T2009120218与直播服务器每隔60分钟存储的直播视频文件的名称相同,后面的000001,000002为按照时间顺序的序号。
每个直播视频数据包写入磁盘缓冲区后,客户端在对照表中增加一条记录,记录了直播视频数据包的频道信息、时间信息和在磁盘缓冲区内的存储信息。
考虑到直播视频数据包的安全性,客户端上的每个直播视频文件都要进行校验,并将校验结果存放在直播视频文件中,当其他客户端从该客户端接收直播视频数据文件时,如果计算的校验结果与直播视频文件中的校验结果相同,就可以使用;如果校验结果不同,说明直播视频数据损坏或被修改了,则丢弃该直播视频文件。该工作是为了保证直播视频文件篡改,保证了直播视频数据传输的安全性。
客户端将直播视频数据文件写入磁盘缓冲区中后,立即将存储情况提交给控制服务器。
当客户端停止收看直播视频时,客户端中断所有直播视频数据包的传输数据链路,清除客户端的内存缓冲区内的直播视频数据包,删除对照表。
(2)控制服务器计算当前时间与客户请求的直播视频的播放起始时间的差,如果请求的直播视频的播放起始时间小于当前时间,并且大于当前时间减去直播服务器内存缓冲区的时间长度数值60分钟,例如客户请求的直播视频的播放起始时间为2009年12月11日17点01分45秒,当前时间为2009年12月11日17点25分40秒,当前时间减去直播服务器的缓冲区的时间长度数值60分钟,为2009年12月11日16点25分40秒,客户请求的直播视频的播放起始时间2009年12月11日17点01分45秒小于当前时间,但大于当前时间减去直播服务器的内存缓冲区的时间长度数值60分钟后得到的时间2009年12月11日16点25分40秒,控制服务器判断该请求是一个直播服务器内存缓冲区范围内的直播时移视频请求;客户端申请的直播视频数据包存在于直播服务器的内存缓冲区中,并且当前收看相同频道的其他客户终端中也存储了这些直播视频数据包;控制服务器查询直播信息列表,然后将当前直播该频道的直播服务器和当前收看该直播频道的其他客户端的连接信息发送给客户端,客户端与上述服务器和其他客户端建立数据链接,获得时移时间小于60分钟的直播时移视频数据包。
客户端在收看时移时间小于60分钟的直播时移视频时,也建立内存缓冲区、磁盘缓冲区和对照表。客户端的内存缓冲区的时间长度数值为150秒,磁盘缓冲区数值为1Gbyte。客户端在接收直播视频数据包时,一边放入客户端的内存缓冲区内,一边将直播视频数据包写入磁盘缓冲区。客户端的内存缓冲区和磁盘缓冲区都是用先进先出原则。
(对于直播服务器,由于客户端申请的直播视频数据在直播服务器的内存缓冲区中,只是视频的起始时间移动了,因此只需要在直播服务器的内存缓冲区中找到对应时间点的直播视频数据包的起始位置,然后按照时间顺序发送直播视频数据包流。
对于其他客户端,其他客户端当前收看该直播视频内容,并保存了直播视频存储的对照表,因此其他客户端从对照表中找到对应的直播视频数据包文件的存储位置,然后按照时间顺序传送直播视频数据包。)
客户端在接收直播服务器和其他客户端传送来的直播视频数据包的时候,也要将接收到的直播视频数据包以按顺序存储到磁盘缓冲区中,此时的文件命名规则是频道信息+按照是时移前的原始时间作为时间信息+数据包序号,例如,当前时间为2009年12月20日18点30分0秒,客户端当前收看的是2009年12月20日18点0分0秒的直播时移视频内容。时移时间为30分钟。直播视频数据包按照时移前的时间进行命名,例如第一个数据包文件名称为CCTV1T2009122018000001。
客户端当前收看的每个直播视频数据包写入磁盘缓冲区后,客户端在对照表中增加一条记录,记录了直播视频数据包的频道信息、时间信息和在磁盘缓冲区内的存储信息。
(考虑到直播视频数据包的安全性)客户端上的每个直播视频文件都要进行校验,并将校验结果存放在直播视频文件中,当其他客户端从该客户端接收直播视频数据文件时,如果计算的校验结果与直播视频文件中的校验结果相同,就可以使用;如果校验结果不同(说明直播视频数据损坏或被修改了),则丢弃该直播视频文件(该工作是为了保证直播视频文件篡改,保证了直播视频数据传输的安全性)。
客户端将直播视频数据文件写入磁盘缓冲区中后,立即将存储情况提交给控制服务器。当客户端停止收看直播视频时,客户端中断所有直播视频数据包的传输数据链路,清除客户端的内存缓冲区内的直播视频数据包,删除对照表。
(3)控制服务器计算当前时间与客户请求的直播视频的播放起始时间的差,如果请求的直播视频的播放起始时间小于当前时间减去直播服务器内存缓冲区的时间长度数值60分钟,例如客户请求的直播视频的播放起始时间为2009年12月10日17点30分45秒,当前时间为2009年12月11日17点25分40秒,当前时间减去直播服务器的内存缓冲区的时间长度数值60分钟,为2009年12月11日16点25分40秒,客户请求的直播视频的播放起始时间2009年12月10日17点30分45秒小于当前时间减去直播服务器的内存缓冲区的时间长度数值60分钟后得到的时间2009年12月11日16点25分40秒,控制服务器判断出该请求是一个直播服务器内存缓冲区范围外的直播时移视频请求。客户端申请的直播视频数据包只存在于直播服务器的磁盘存储区中和存储了该直播视频文件的其他客户终端磁盘缓冲区中。控制服务器查询直播时移信息列表,然后将存储了这些直播视频文件的直播服务器和其他客户端的连接信息发送给客户端,客户端与上述服务器和其他客户端建立数据链接,获得时移时间大于60分钟的直播时移视频数据包。
客户端在收看时移时间大于60分钟的直播时移视频时,也建立内存缓冲区、磁盘缓冲区(但是不需要建立对照表)。客户端的内存缓冲区的时间长度数值为150秒,磁盘缓冲区数值为1GB。客户端在接收直播视频数据包时,一边放入客户端的内存缓冲区内,一边将直播视频数据包写入磁盘缓冲区。客户端的内存缓冲区和磁盘缓冲区都是用先进先出原则。
(对于直播服务器,由于客户端申请的直播视频数据在存储空间中,通过将频道信息、直播时移视频时间信息与文件名进行对照,找到包含有直播时移视频数据包的文件,将文件按照时间顺序传送给客户端。
对于其他客户端,其他客户端中存储了直播时移视频数据包,通过将频道信息、直播时移视频时间信息与磁盘缓冲区中的文件名对比,找到相应的直播时移视频数据包文件,将文件按照时间顺序传送给客户端。)
客户端在接收直播服务器和其他客户端传送来的直播视频数据包的时候,也要将接收到的直播视频数据包以按顺序存储到磁盘缓冲区中,此时的文件命名规则是频道信息+按照是时移前的原始时间作为时间信息+数据包序号,例如,当前时间为2009年12月20日18点0分0秒,客户端当前收看的是2009年12月19日18点0分0秒的直播时移视频内容。时移时间为24小时。直播视频数据包按照时移前的时间进行命名,例如第一个数据包文件名称为CCTV1T2009121918000001。
(考虑到直播视频数据包的安全性)客户端上的每个直播视频文件都要进行校验,并将校验结果存放在直播视频文件中,当其他客户端从该客户端接收直播视频数据文件时,如果计算的校验结果与直播视频文件中的校验结果相同,就可以使用;如果校验结果不同(说明直播视频数据损坏或被修改了),则丢弃该直播视频文件(该工作是为了保证直播视频文件篡改,保证了直播视频数据传输的安全性)。
客户端将直播视频数据文件写入磁盘缓冲区中后,将存储情况提交给控制服务器。
当客户端停止收看直播视频时,客户端中断所有直播视频数据包的传输数据链路,清除客户端的内存缓冲区内的直播视频数据包。
上述第(3)种方式与P2P点播技术非常相似,但是在本发明中,客户时间上看的是一个直播视频流,只是将直播视频进行了时间移动,这是本发明与P2P点播技术的根本区别。

Claims (3)

1.一种基于P2P技术的直播时移***,包括设置在服务器端的编码服务器、直播服务器和控制服务器;其特征在于,
编码服务器:用于从直播信号源接收经过直播视频数据流,将直播视频数据流分拆为固定大小的直播视频数据包,并为每个直播视频数据包中增加频道号和时间信息;
直播服务器:用于直播和存储某个频道的直播视频数据包;并向多个客户端同时提供直播视频,或提供直播时移视频;
控制服务器:用于处理客户端发出的视频请求,为客户端提供视频数据的存储信息;该控制服务器设置有直播信息列表,直播时移信息列表,每个直播频道的节目单;直播信息列表中包含直播频道与当前直播该直播频道的服务器,以及当前收看该当直播频道的客户端的信息列表;当客户端停止收看直播视频时,控制服务器将清除直播信息列表中该客户端的记录;直播时移信息列表中包含直播频道与存储了该直播频道视频数据的直播服务器,以及客户端的信息列表,只要直播服务器或客户端存储有视频数据,则控制服务器将直播服务器或客户端的记录保留在直播时移信息列表中。
2.一种基于P2P技术的直播时移方法,其特征在于,包括以下步骤:
1)服务器端的编码服务器从直播视频数据源接收直播视频数据流,首先将直播视频数据流分割为固定大小的直播视频数据包,然后为每个直播视频数据包添加直播频道信息和时间信息;
编码服务器将编码后的直播视频数据包分发给直播服务器,并向控制服务器发出当前编码的直播频道、当前接收直播视频数据包的直播服务器、以及编码重启或编码故障控制信息;
2)服务器端的直播服务器建有一个内存缓冲区,服务器端的内存缓冲区大小设置为存储固定时间长度的直播视频数据包;直播服务器持续从编码服务器获得直播视频数据包,并写入该服务器端的内存缓冲区,当直播服务器的内存缓冲区被占满后,时间最早的直播视频数据包被丢弃,空余出的存储缓冲区被用来放置时间最新的直播视频数据包;
直播服务器同时建有一个磁盘存储空间,直播服务器将放置到服务器端内存缓冲区的直播视频数据包,按照规定的时间间隔写入在磁盘存储空间中,并且在写入磁盘缓冲区之前,清除每个单独直播视频数据包的直播频道信息和时间信息,将把一个时间间隔写磁盘存储空间的所有直播视频数据包合并为一个直播视频数据文件;将直播视频数据文件的频道信息和时间信息作为视频数据文件的文件名称,并将该视频数据文件的频道信息和时间信息提交给控制服务器;该频道信息和时间信息作为该视频数据文件的唯一标识信息;
直播服务器使用内存缓冲区中的直播视频数据包提供P2P直播服务,或使服务器端的内存缓冲区中的直播视频数据包提供直播服务器的内存缓冲区时间长度范围之内的直播时移服务,或用磁盘存储空间上存储的直播视频内容提供超过直播服务器的内存缓冲区时间长度的直播时移服务;
3)客户端申请收看视频数据时,客户端首先向服务器端的控制服务器发送视频请求,视频请求中包含了频道信息和时间信息;根据客户端请求的视频开始时间以及直播服务器的内存缓冲区大小,控制服务器将视频数据的存储信息返回给客户端,客户端按照存储信息与直播服务器或其他客户端建立数据链路,通过建立的数据链路获得视频数据。
3.如权利要求2所述的方法,其特征在于,所述步骤3)根据客户端请求的视频开始时间以及直播服务器的内存缓冲区大小,控制服务器将视频数据的存储信息返回给客户端,客户端按照存储信息与直播服务器或其他客户端建立数据链路,通过建立的数据链路获得视频数据;具体包括以下三种情况:
情况(1)客户端申请的直播视频的播放起始时间为当前时间:
控制服务器首先计算当前时间与客户请求的直播视频起始时间的差,若差值为0,则客户端的请求为直播视频请求,控制服务器查询直播信息列表,并将当前发布直播频道的直播服务器和当前收看直播频道的其他客户端的地址信息列表发送给客户端,客户端与列表中的直播服务器以及当前接收直播视频数据包的其他客户端建立数据链接,接收直播视频数据包;
客户端内建有一个内存缓冲区,一个磁盘缓冲区,并建有一个对照表;客户端在接收直播视频数据包时,将直播视频数据包放入客户端的内存缓冲区内,同时将直播视频数据包写入磁盘缓冲区;每个直播视频数据包写入磁盘缓冲区后,客户端在对照表中增加一条记录,记录直播视频数据包的频道信息、时间信息和在磁盘缓冲区内的存储信息;
客户端在将直播视频数据包写入磁盘缓冲区时,使用与直播服务器存储直播视频数据相同的命名规则,并在后面增加包的序号;客户端在将直播视频数据包写入磁盘缓冲区时还要对每个直播视频文件进行校验,并将校验结果放在直播视频文件后面,当其他客户端从该客户端接收直播视频数据文件时,如果校验结果与直播视频文件的校验结果不同,则丢弃该直播视频文件;
客户端将直播视频数据文件写入磁盘缓冲区中后的存储情况提交给控制服务器;
当客户端停止收看直播视频时,客户端中断所有直播视频数据包的传输数据链路,清除客户端的内存缓冲区内的直播视频数据包,删除对照表;
情况(2)客户端申请的直播视频的播放起始时间小于当前时间,大于当前时间减去直播服务器的内存缓冲区的时间长度数值的时间:
控制服务器首先计算当前时间与客户请求的直播视频的播放起始时间的差,如果请求的直播视频的播放起始时间小于当前时间,并且大于当前时间减去直播服务器内存缓冲区的时间长度数值;则控制服务器判断该请求是一个直播服务器内存缓冲区范围内的直播时移视频请求;客户端申请的直播视频数据包存在于直播服务器的内存缓冲区中,并且当前收看相同频道的其他客户终端中存储了这些直播视频数据包;控制服务器查询直播信息列表,然后将当前直播该频道的直播服务器和当前收看该直播频道的其他客户端的连接信息发送给客户端,客户端与该直播服务器和其他客户端建立数据链接,获得时移时间小于直播服务器的内存缓冲区的时间长度数值的直播时移视频数据包;
客户端在收看时移时间小于直播服务器的内存缓冲区的时间长度数值的直播时移视频时,也建立内存缓冲区、磁盘缓冲区和对照表,并与所述情况(1)中的客户端一样完成文件存储工作、文件校验工作和存储信息提交工作;
情况(3)客户端申请的直播视频的播放起始时间小于当前时间减去直播服务器的内存缓冲区数值的时间:
控制服务器计算当前时间与客户请求的直播视频的播放起始时间的差,如果请求的直播视频的播放起始时间小于当前时间减去直播服务器内存缓冲区的时间长度数值;则控制服务器判断该请求是一个直播服务器内存缓冲区范围外的直播时移视频请求;客户端申请的直播视频数据包只存在于直播服务器的磁盘存储区中和存储了这些直播视频文件的其他客户终端磁盘缓冲区中;控制服务器查询直播时移信息列表,然后将存储了这些直播视频文件的直播服务器和其他客户端的连接信息发送给客户端,客户端与上述服务器和其他客户端建立数据链接,获得时移时间大于60分钟的直播时移视频数据包;
客户端在收看时移时间大于60分钟的直播时移视频时,也建立内存缓冲区、磁盘缓冲区;客户端的内存缓冲区、磁盘缓冲区的工作原理与(1)中描述的客户端的工作相同,区别是客户端收看的是时移时间大于直播服务器的内存缓冲区的时间长度数值的直播时移视频,直播视频数据是以直播视频文件方式传输;当该客户端收看直播时移视频时,客户端与情况(1)中的客户端一样完成文件存储工作、文件校验工作和存储信息提交工作;
客户端按照文件方式下载相应的直播视频文件,在播放的同时,将直播视频文件存储在磁盘缓冲区内;当该客户端停止收看直播时移视频时,客户端向控制服务器提交存储信息。
CN201010127346.XA 2010-03-19 2010-03-19 基于p2p技术的直播时移***及其方法 Expired - Fee Related CN101795297B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201010127346.XA CN101795297B (zh) 2010-03-19 2010-03-19 基于p2p技术的直播时移***及其方法
US13/043,641 US8719889B2 (en) 2010-03-19 2011-03-09 Live time-shift system based on P2P technology and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010127346.XA CN101795297B (zh) 2010-03-19 2010-03-19 基于p2p技术的直播时移***及其方法

Publications (2)

Publication Number Publication Date
CN101795297A true CN101795297A (zh) 2010-08-04
CN101795297B CN101795297B (zh) 2012-10-31

Family

ID=42587720

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010127346.XA Expired - Fee Related CN101795297B (zh) 2010-03-19 2010-03-19 基于p2p技术的直播时移***及其方法

Country Status (2)

Country Link
US (1) US8719889B2 (zh)
CN (1) CN101795297B (zh)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006327A (zh) * 2010-11-24 2011-04-06 中国联合网络通信集团有限公司 一种p2p流媒体点播***及其数据传输方法
CN102231860A (zh) * 2011-06-03 2011-11-02 南京远古科技有限公司 一种直播时移数据存储方法
CN102710969A (zh) * 2012-05-31 2012-10-03 北京冠华天视数码科技有限公司 通过无线网络传输直播数据的方法及其***
CN103124366A (zh) * 2011-11-21 2013-05-29 苏州达联信息科技有限公司 一种视频分发网络的直播业务控制方法及装置
CN103150385A (zh) * 2013-03-15 2013-06-12 杭州智屏软件有限公司 基于内存的实时视频录制缓存技术
CN103347220A (zh) * 2013-06-18 2013-10-09 天脉聚源(北京)传媒科技有限公司 一种回看直播文件的方法及装置
CN103514225A (zh) * 2012-06-27 2014-01-15 浙江大华技术股份有限公司 一种数据源的多路复用方法及其装置
CN103607639A (zh) * 2013-11-26 2014-02-26 乐视网信息技术(北京)股份有限公司 一种直播时移方法及服务器
CN104333782A (zh) * 2014-11-11 2015-02-04 广州华多网络科技有限公司 一种主播制定任务的点播方法及***、相关设备
CN104410879A (zh) * 2014-12-04 2015-03-11 百视通网络电视技术发展有限责任公司 时移实现方法及装置、服务器
CN105847874A (zh) * 2016-04-20 2016-08-10 乐视控股(北京)有限公司 直播装置及直播终端
CN106162252A (zh) * 2015-03-27 2016-11-23 天脉聚源(北京)科技有限公司 一种视频直播流播放的方法和***
CN103124366B (zh) * 2011-11-21 2016-12-14 苏州达联信息科技有限公司 一种视频分发网络的直播业务控制方法及装置
CN106454396A (zh) * 2016-10-26 2017-02-22 山东浪潮商用***有限公司 一种提高直播时移电视并发能力的实现方法
CN106686471A (zh) * 2015-11-06 2017-05-17 中国电信股份有限公司 用于实现网络视频直播的方法和客户端
CN106789976A (zh) * 2016-12-07 2017-05-31 中兴通讯股份有限公司 媒体文件的播放方法、服务端、客户端及***
WO2017101363A1 (zh) * 2015-12-15 2017-06-22 乐视控股(北京)有限公司 视频直播转点播方法及***
CN108874468A (zh) * 2018-06-20 2018-11-23 深圳市腾讯网络信息技术有限公司 应用程序的加载方法、装置、计算机设备及存储介质
CN109040769A (zh) * 2018-08-22 2018-12-18 广东省南方数字电视无线传播有限公司 基于hls协议的直播时移方法及装置
CN110582004A (zh) * 2018-06-07 2019-12-17 青岛海尔多媒体有限公司 一种酒店的电视***、视频播放方法及信息分享方法
CN111726650A (zh) * 2020-06-30 2020-09-29 广州繁星互娱信息科技有限公司 视频直播方法及装置、计算机存储介质
CN112235616A (zh) * 2020-10-16 2021-01-15 杭州觅睿科技有限公司 一种视频传输方法、装置、设备及介质
CN116017145A (zh) * 2022-12-27 2023-04-25 深圳市快美妆科技有限公司 一种用于直播相机的远程智能控制***及方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130017389A (ko) * 2011-08-10 2013-02-20 삼성전자주식회사 영상 처리 장치 및 이를 이용한 영상 처리 방법
KR101913313B1 (ko) * 2011-12-28 2018-10-31 삼성전자주식회사 게이트웨이에서 인터넷 프로토콜 기반 네트워크를 이용하여 컨텐츠 중심 네트워크를 구현하는 방법 및 그 게이트웨이
US20150222762A1 (en) * 2012-04-04 2015-08-06 Google Inc. System and method for accessing a camera across processes
US20140074961A1 (en) * 2012-09-12 2014-03-13 Futurewei Technologies, Inc. Efficiently Delivering Time-Shifted Media Content via Content Delivery Networks (CDNs)
US9531780B2 (en) 2012-11-14 2016-12-27 California Institute Of Technology Coding for real-time streaming under packet erasures
US10057618B2 (en) 2014-06-06 2018-08-21 Microsoft Technology Licensing, Llc System for filtering media manifests using manifest attributes
CN105791885A (zh) * 2016-03-31 2016-07-20 成都西可科技有限公司 一种运动相机上通过一键发起视频直播的方法
US10771524B1 (en) * 2019-07-31 2020-09-08 Theta Labs, Inc. Methods and systems for a decentralized data streaming and delivery network
CN114189701B (zh) * 2021-11-29 2024-04-02 珠海迈越信息技术有限公司 一种p2p网络中直播服务器动态调整收发数据的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990512B1 (en) * 2001-03-19 2006-01-24 Novell, Inc. Method and system for using live time shift technology to control a multimedia file
CN1801929A (zh) * 2005-12-08 2006-07-12 复旦大学 一种网络互动电视***实现时移功能的方法
CN101207795A (zh) * 2006-12-22 2008-06-25 长江计算机(集团)公司 一种具有时移功能的直播服务器及实现方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6014706A (en) * 1997-01-30 2000-01-11 Microsoft Corporation Methods and apparatus for implementing control functions in a streamed video display system
US20020124262A1 (en) * 1999-12-01 2002-09-05 Andrea Basso Network based replay portal
JP2001186423A (ja) * 1999-12-27 2001-07-06 Toshiba Corp パーソナルコンピュータを用いたtv視聴、録画、再生装置及びpcカード電源供給方法並びにpcカード
US6999957B1 (en) * 2000-01-11 2006-02-14 The Relegence Corporation System and method for real-time searching
JP4538908B2 (ja) * 2000-06-14 2010-09-08 ソニー株式会社 データ変換装置及び方法
US8352988B2 (en) * 2000-11-27 2013-01-08 Cox Communications, Inc. System and method for time shifting the delivery of video information
JP4718122B2 (ja) * 2004-04-06 2011-07-06 株式会社日立製作所 メディア配信装置
US20070130597A1 (en) 2005-12-02 2007-06-07 Alcatel Network based instant replay and time shifted playback
US7882261B2 (en) * 2006-04-21 2011-02-01 Yongmin Zhang Method and apparatus for realizing positioning play of content stream in peer-to-peer network
CN100512222C (zh) 2006-06-12 2009-07-08 腾讯科技(深圳)有限公司 点对点流媒体通讯***及其超级节点资源的配置方法
US20090300673A1 (en) * 2006-07-24 2009-12-03 Nds Limited Peer- to- peer set-top box system
WO2008064356A1 (en) * 2006-11-22 2008-05-29 Metis Enterprise Technologies Llc Real-time multicast peer-to-peer video streaming platform
CN101282281B (zh) * 2007-04-03 2011-03-30 华为技术有限公司 一种媒体分发***、装置及流媒体播放方法
CN101345638B (zh) * 2007-07-12 2011-06-22 中兴通讯股份有限公司 支持时移业务的对等***
US8307024B2 (en) * 2007-07-20 2012-11-06 Hewlett-Packard Development Company, L.P. Assisted peer-to-peer media streaming
US7975282B2 (en) * 2007-11-01 2011-07-05 Sharp Laboratories Of America, Inc. Distributed cache algorithms and system for time-shifted, and live, peer-to-peer video streaming
US7979419B2 (en) * 2007-11-01 2011-07-12 Sharp Laboratories Of America, Inc. Distributed search methods for time-shifted and live peer-to-peer video streaming
KR101562974B1 (ko) * 2009-09-07 2015-10-30 삼성전자 주식회사 스트리밍 서비스의 지연 감소를 위한 단말기, 시드 서버 및 트랙커 서버

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990512B1 (en) * 2001-03-19 2006-01-24 Novell, Inc. Method and system for using live time shift technology to control a multimedia file
CN1801929A (zh) * 2005-12-08 2006-07-12 复旦大学 一种网络互动电视***实现时移功能的方法
CN101207795A (zh) * 2006-12-22 2008-06-25 长江计算机(集团)公司 一种具有时移功能的直播服务器及实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《中国图像图形学报》 20061130 徐良基,叶德建 流媒体直播(时移)***的设计 第11卷, 第11期 *

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006327A (zh) * 2010-11-24 2011-04-06 中国联合网络通信集团有限公司 一种p2p流媒体点播***及其数据传输方法
CN102231860A (zh) * 2011-06-03 2011-11-02 南京远古科技有限公司 一种直播时移数据存储方法
CN102231860B (zh) * 2011-06-03 2014-03-19 南京远古科技有限公司 一种直播时移数据存储方法
CN103124366B (zh) * 2011-11-21 2016-12-14 苏州达联信息科技有限公司 一种视频分发网络的直播业务控制方法及装置
CN103124366A (zh) * 2011-11-21 2013-05-29 苏州达联信息科技有限公司 一种视频分发网络的直播业务控制方法及装置
CN102710969A (zh) * 2012-05-31 2012-10-03 北京冠华天视数码科技有限公司 通过无线网络传输直播数据的方法及其***
CN102710969B (zh) * 2012-05-31 2015-02-11 北京冠华天视数码科技有限公司 通过无线网络传输直播数据的方法及其***
CN103514225A (zh) * 2012-06-27 2014-01-15 浙江大华技术股份有限公司 一种数据源的多路复用方法及其装置
CN103514225B (zh) * 2012-06-27 2016-12-21 浙江大华技术股份有限公司 一种数据源的多路复用方法及其装置
CN103150385A (zh) * 2013-03-15 2013-06-12 杭州智屏软件有限公司 基于内存的实时视频录制缓存技术
CN103347220A (zh) * 2013-06-18 2013-10-09 天脉聚源(北京)传媒科技有限公司 一种回看直播文件的方法及装置
CN103607639A (zh) * 2013-11-26 2014-02-26 乐视网信息技术(北京)股份有限公司 一种直播时移方法及服务器
CN104333782A (zh) * 2014-11-11 2015-02-04 广州华多网络科技有限公司 一种主播制定任务的点播方法及***、相关设备
CN104333782B (zh) * 2014-11-11 2018-01-09 广州华多网络科技有限公司 一种主播制定任务的点播方法及***、相关设备
CN104410879A (zh) * 2014-12-04 2015-03-11 百视通网络电视技术发展有限责任公司 时移实现方法及装置、服务器
CN106162252A (zh) * 2015-03-27 2016-11-23 天脉聚源(北京)科技有限公司 一种视频直播流播放的方法和***
CN106686471A (zh) * 2015-11-06 2017-05-17 中国电信股份有限公司 用于实现网络视频直播的方法和客户端
WO2017101363A1 (zh) * 2015-12-15 2017-06-22 乐视控股(北京)有限公司 视频直播转点播方法及***
CN105847874A (zh) * 2016-04-20 2016-08-10 乐视控股(北京)有限公司 直播装置及直播终端
CN106454396A (zh) * 2016-10-26 2017-02-22 山东浪潮商用***有限公司 一种提高直播时移电视并发能力的实现方法
CN106789976A (zh) * 2016-12-07 2017-05-31 中兴通讯股份有限公司 媒体文件的播放方法、服务端、客户端及***
WO2018103696A1 (zh) * 2016-12-07 2018-06-14 中兴通讯股份有限公司 媒体文件的播放方法、服务端、客户端及***
CN110582004A (zh) * 2018-06-07 2019-12-17 青岛海尔多媒体有限公司 一种酒店的电视***、视频播放方法及信息分享方法
CN108874468A (zh) * 2018-06-20 2018-11-23 深圳市腾讯网络信息技术有限公司 应用程序的加载方法、装置、计算机设备及存储介质
CN108874468B (zh) * 2018-06-20 2021-03-26 深圳市腾讯网络信息技术有限公司 应用程序的加载方法、装置、计算机设备及存储介质
CN109040769A (zh) * 2018-08-22 2018-12-18 广东省南方数字电视无线传播有限公司 基于hls协议的直播时移方法及装置
CN111726650A (zh) * 2020-06-30 2020-09-29 广州繁星互娱信息科技有限公司 视频直播方法及装置、计算机存储介质
CN112235616A (zh) * 2020-10-16 2021-01-15 杭州觅睿科技有限公司 一种视频传输方法、装置、设备及介质
CN112235616B (zh) * 2020-10-16 2021-07-13 杭州觅睿科技股份有限公司 一种视频传输方法、装置、设备及介质
CN116017145A (zh) * 2022-12-27 2023-04-25 深圳市快美妆科技有限公司 一种用于直播相机的远程智能控制***及方法
CN116017145B (zh) * 2022-12-27 2023-08-01 深圳市快美妆科技有限公司 一种用于直播相机的远程智能控制***及方法

Also Published As

Publication number Publication date
CN101795297B (zh) 2012-10-31
US8719889B2 (en) 2014-05-06
US20110231885A1 (en) 2011-09-22

Similar Documents

Publication Publication Date Title
CN101795297B (zh) 基于p2p技术的直播时移***及其方法
CN103379362B (zh) 视频点播方法和***
CN102231860B (zh) 一种直播时移数据存储方法
US8566393B2 (en) Methods and systems for scalable video chunking
US9712889B2 (en) Seamless trick-mode with decreased latency for live transcode streaming
CN102256162B (zh) 基于实时文件格式转换的优化流媒体点播的方法和***
KR101702562B1 (ko) 멀티미디어 스트림 파일의 저장 파일 포맷, 저장 방법 및 이를 이용한 클라이언트 장치
CN103024456B (zh) 一种在线视频播放方法及视频播放服务器
EP2666288B1 (en) Apparatus and method for storing and playing content in a multimedia streaming system
US9438861B2 (en) Integrating continuous and sparse streaming data
US20130294747A1 (en) Content playing device, content playing method, distribution system, content playing program, recording medium, and data structure
WO2015035942A1 (en) Method for playing back live video and device
WO2008148268A1 (fr) Procédé et système de mise en place d'un mode de lecture de découpage de trame de multimédia à la demande dans un réseau poste à poste
US8886765B2 (en) System and method for predicitive trick play using adaptive video streaming
US20140280784A1 (en) File Transfer Based Upon Streaming Format
CN104125516A (zh) 媒体文件接收、媒体文件发送方法和装置及***
CN103763637A (zh) 一种流媒体播出方法及其***
CN101677325A (zh) 发布媒体描述信息和获取媒体的方法、装置、***
US20200154158A1 (en) Content supply device, content supply method, program, terminal device, and content supply system
CN109756749A (zh) 视频数据处理方法、装置、服务器和存储介质
CN113141522B (zh) 资源传输方法、装置、计算机设备及存储介质
CN107690093B (zh) 一种视频播放方法及装置
US20080209062A1 (en) System and method for augmenting real-time information delivery with local content
CN104661041A (zh) 一种直播时移定位的方法、服务器、终端及通信***
CN110225370B (zh) 一种多媒体内容个性化呈现的时间线控制方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: BEIJING SHIYUE NETWORK TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: BEIJING TIANTIANKUANGUANG NETWORK SCIENCE AND TECHNOLOGY CO., LTD.

Effective date: 20140430

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100007 DONGCHENG, BEIJING TO: 100085 HAIDIAN, BEIJING

TR01 Transfer of patent right

Effective date of registration: 20140430

Address after: 100085 A311 room, block A, 3rd Street, Beijing, Haidian District

Patentee after: Beijing Shiyue Network Technology Co., Ltd.

Address before: 100007 Beijing City, Dongcheng District Dongzhimen Qinglong Hutong No. 1 Building 9 room 905 Gehua

Patentee before: Beijing Tiantian Kuanguang Network Technology Co., Ltd.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121031

Termination date: 20170319

CF01 Termination of patent right due to non-payment of annual fee