CN102547448B - 频道切换方法、终端及系统 - Google Patents

频道切换方法、终端及系统 Download PDF

Info

Publication number
CN102547448B
CN102547448B CN201010596761.XA CN201010596761A CN102547448B CN 102547448 B CN102547448 B CN 102547448B CN 201010596761 A CN201010596761 A CN 201010596761A CN 102547448 B CN102547448 B CN 102547448B
Authority
CN
China
Prior art keywords
channel
buffer memory
terminal
program content
playback terminal
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.)
Active
Application number
CN201010596761.XA
Other languages
English (en)
Other versions
CN102547448A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201010596761.XA priority Critical patent/CN102547448B/zh
Priority to PCT/CN2011/084289 priority patent/WO2012083841A1/zh
Publication of CN102547448A publication Critical patent/CN102547448A/zh
Application granted granted Critical
Publication of CN102547448B publication Critical patent/CN102547448B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4383Accessing a communication channel
    • H04N21/4384Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
    • 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/47End-user applications
    • H04N21/482End-user interface for program selection
    • 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/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet

Abstract

本发明涉及一种频道切换方法、终端及系统,其方法包括:播放终端在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;当播放终端收到频道切换播放命令时,通过缓存终端列表中的缓存终端进行频道切换。本发明基于UPnP的SSDP协议,播放终端从提供服务的缓存终端迅速接收频道节目码流启动播放,加快频道切换速度,提升了IPTV服务质量。同时,由于播放终端在收到组播组发送的媒体包后,立即将该包信息发送给缓存终端,使缓存终端不会向播放终端发送多余的媒体包,不造成网络资源浪费便能实现媒体接收方式的无缝切换;另外,本发明还可以实现丢包重传功能,由此可降低IPTV对网络质量的依赖性,提升了用户在丢包情况下的视频质量。

Description

频道切换方法、终端及系统
技术领域
本发明涉及网络多媒体技术领域,尤其涉及一种基于UpnP(Universal Plugand Play,通用即插即用)和组播的频道切换方法、终端及系统。
背景技术
IPTV(Internet Protocol Television,因特网协议电视)中传输的媒体一般使用视音频压缩编码算法,画面(即帧)分为I帧、P帧以及B帧等,其中,I帧为内部编码帧,是整个画面完整编码的帧;P帧与B帧记录的是相对于I帧的变化。没有I帧,P帧和B帧无法解码。用户可以GOP(Group of Pictures,画面组)长度的任意时间点切入频道,由于机顶盒需要在收到第一个完整的I帧后才能有视频输出,因此机顶盒在收到一个完整I帧节目内容之前的接收时间内均无法显示视频内容,这即是RAP(Random Access Point,随机接入点)问题导致频道切换速度比较慢的主要原因。在理论上,I帧越密,机顶盒进入频道后迅速接受到完整I帧的可能性则越大,切换频道速度也越快,但是这样会增加节目的码率,需要消耗更大的带宽资源,因此只考虑增加I帧的密度,不具有实用性。
为了提高频道切换速度,现有的频道切换方案有:在网络中布署一台频道快发服务器,专门用来缓存最新的频道媒体数据。当机顶盒收到频道播放命令时,向快发服务器请求相应频道的媒体数据,快发服务器通过单播方式,给机顶盒发送以I帧开始的频道节目内容,而且一般开始阶段发送速度会比正常码率速度要快,这样机顶盒就能够很快地显示出视频画面,当频道快发数据和频道正常数据同步后,机顶盒完全切换到正常频道的接入方式接收媒体,停止从快发服务器获取数据。
但是,增加一台快发服务器实现快速切换频道的方法,需要考虑到并发时间,对系统性能要求较高,由此增加了运营成本。
发明内容
本发明的主要目的在于提供一种频道切换方法、终端及系统,旨在提升IPTV服务质量。
为了达到上述目的,本发明提出一种频道切换方法,包括:
播放终端在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;
当所述播放终端收到频道切换播放命令时,通过所述缓存终端列表中的缓存终端进行频道切换。
优选地,所述通过缓存终端列表中的缓存终端进行频道切换的步骤包括:
播放终端向所述缓存终端列表中一个或多个缓存终端发送获取目的频道节目内容的请求;
接收所述缓存终端发送的以I帧为起始的目的频道节目内容缓存;
接收所述缓存终端在其发送的目的频道节目内容缓存与频道组播媒体同步后发送的通知消息;
根据所述通知消息加入频道组播组,开始接收所述频道组播组下发的频道媒体包,并将接收的第一个频道媒体包发送至所述缓存终端;
当所述缓存终端发送的目的频道节目内容缓存与所述播放终端从所述频道组播组接收到的频道媒体包衔接时,从所述频道组播组获取目的频道节目内容。
优选地,所述播放终端根据缓存终端列表中缓存终端的网络最小Ping值或根据接收到缓存终端响应报文的先后顺序选取相应的缓存终端。
本发明还提出一种频道切换方法,包括:
缓存终端在接收组播码流进行频道播放时,对频道节目内容进行缓存;
当接收到播放终端发送的宣告消息时,向所述播放终端返回可提供频道节目内容服务的响应消息;
当接收到所述播放终端发送的获取目的频道节目内容的请求时,通过单播的方式为所述播放终端进行频道切换。
所述通过单播的方式为所述播放终端进行频道切换的步骤包括:
以可控的码率向所述播放终端发送以I帧为起始的目的频道节目内容缓存;
当所述目的频道节目内容缓存与频道组播媒体同步后,通知所述播放终端加入频道组播组,并接收所述播放终端发送的来自所述频道组播组的第一个频道媒体包;
当发送的所述目的频道节目内容缓存与所述播放终端从所述频道组播组接收到的频道媒体包衔接时,停止向所述播放终端发送所述目的频道节目内容缓存。
优选地,所述缓存终端通过发送的节目内容匹配一致或当频道节目以RTP封装时,以RTP头序号相同来判断所述缓存终端发送的频道节目内容缓存与频道组播媒体同步。
本发明还提出一种频道切换终端,包括:
缓存终端列表获取模块,用于在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;
第一频道切换模块,用于当所述播放终端收到频道切换播放命令时,通过所述缓存终端列表中的缓存终端进行频道切换。
优选地,所述第一频道切换模块包括:
请求单元,用于向所述缓存终端列表中一个或多个缓存终端发送获取目的频道节目内容的请求;
缓存接收单元,用于接收所述缓存终端发送的以I帧为起始的目的频道节目内容缓存;
通知消息接收单元,用于接收所述缓存终端在其发送的目的频道节目内容缓存与频道组播媒体同步后发送的通知消息;
媒体包接收发送单元,用于根据所述通知消息加入频道组播组,开始接收所述频道组播组下发的频道媒体包,并将接收的第一个频道媒体包发送至所述缓存终端;
频道切换单元,用于当所述缓存终端发送的目的频道节目内容缓存与所述播放终端从所述频道组播组接收到的频道媒体包衔接时,从所述频道组播组获取目的频道节目内容。
本发明还提出一种频道切换终端,包括:
缓存模块,用于在接收组播码流进行频道播放时,对频道节目内容进行缓存;
响应消息发送模块,用于当接收到播放终端发送的宣告消息时,向所述播放终端返回可提供频道节目内容服务的响应消息;
第二频道切换模块,用于当接收到所述播放终端发送的获取目的频道节目内容的请求时,通过单播的方式为所述播放终端进行频道切换。
优选地,所述第二频道切换模块包括:
缓存发送单元,用于以可控的码率向所述播放终端发送以I帧为起始的目的频道节目内容缓存;
通知发送及媒体包接收单元,用于当所述目的频道节目内容缓存与频道组播媒体同步后,通知所述播放终端加入频道组播组,并接收所述播放终端发送的来自所述频道组播组的第一个频道媒体包;
控制单元,用于当发送的所述目的频道节目内容缓存与所述播放终端从所述频道组播组接收到的频道媒体包衔接时,停止向所述播放终端发送所述目的频道节目内容缓存。
优选地,所述缓存终端通过发送的节目内容匹配一致或当频道节目以RTP封装时,以RTP头序号相同来判断所述缓存终端发送的频道节目内容缓存与频道组播媒体同步。
本发明还提出一种频道切换系统,包括:播放终端以及缓存终端,其中:
所述播放终端,用于在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;当所述播放终端收到频道切换播放命令时,通过所述缓存终端列表中的缓存终端进行频道切换;
所述缓存终端,用于在接收组播码流进行频道播放时,对频道节目内容进行缓存;当接收到播放终端发送的宣告消息时,向所述播放终端返回可提供频道节目内容服务的响应消息;当接收到所述播放终端发送的获取目的频道节目内容的请求时,通过单播的方式为所述播放终端进行频道切换。
优选地,所述播放终端,还用于在节目播放过程中检测到丢包时,向所述缓存终端发送丢包重传请求;
所述缓存终端,还用于接收所述丢包重传请求,根据所述重传请求向所述播放终端重传丢包。
本发明提出的一种频道切换方法、终端及系统,通过基于UPnP的SSDP(Simple Service Discovery Protocol,简单服务发现协议),发现网络中可提供频道节目内容服务的缓存终端,在收到频道切换的命令后,播放终端从提供服务的缓存终端迅速接收到频道节目码流启动播放,从而加快频道切换速度,提高IPTV服务质量。
附图说明
图1是本发明频道切换方法一实施例流程示意图;
图2是本发明频道切换方法一实施例中通过缓存终端列表中的缓存终端进行频道切换的流程示意图;
图3是本发明频道切换方法另一实施例流程示意图;
图4是本发明频道切换方法另一实施例中通过单播的方式为播放终端进行频道切换的流程示意图;
图5是本发明频道切换终端一实施例结构示意图;
图6是本发明频道切换终端一实施例中第一频道切换模块的结构示意图;
图7是本发明频道切换终端另一实施例结构示意图;
图8是本发明频道切换终端另一实施例中第二频道切换模块的结构示意图;
图9是本发明频道切换系统一实施例结构示意图。
为了使本发明的技术方案更加清楚、明了,下面将结合附图作进一步详述。
具体实施方式
本发明实施例解决方案主要是基于UPnP的SSDP协议,播放终端在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;当播放终端收到频道切换播放命令时,通过缓存终端列表中的缓存终端进行频道切换,播放终端从提供服务的缓存终端迅速接收到频道节目码流启动播放,从而加快频道切换速度。
如图1所示,本发明一实施例提出一种频道切换方法,包括:
步骤S101,播放终端在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;
本实施例中宣告消息具体采用UPnP SSDP宣告消息。
UPnP是针对局域网络范围内对等(peer-to-peer)互联而设计的一种应用层技术标准,旨在为家庭、小型企业、公共场所提供基于IP技术、易于使用的网络服务自动发现机制。
SSDP用于服务发现,控制点借此可定位其感兴趣的资源在网络中的位置,设备可借此告之它们的可用性。SSDP客户(控制点)可往本地保留的多播地址的SSDP端口(239.255.255.250:1900)发送发现(Discovery)消息来寻找SSDP服务;SSDP服务(设备)也可以同样的方式发送SSDP指示来宣告它的存在。
当播放终端启动后,在局域网内发送UPnP SSDP宣告消息,发现可以提供频道节目内容服务的缓存终端列表,并对该表进行维护。
缓存终端在进行频道播放接收组播码流时需要进行频道节目内容缓存,至少缓存一个完整的GOP,处于组播频道播放状态(接收的是组播节目码流)的缓存终端都能够提供频道节目内容服务,都可以对播放终端发送的宣告消息进行响应。
步骤S102,当播放终端收到频道切换播放命令时,通过缓存终端列表中的缓存终端进行频道切换。
当播放终端收到频道切换播放命令时,从缓存终端列表中选取一个或者多个能够提供该频道节目内容服务的缓存终端,请求目的频道节目内容。
缓存终端收到播放终端发送的目的频道节目内容的请求后,以比节目正常速率更快的速率发送目的频道节目内容,节目内容从I帧开始;缓存终端在发送的目的频道节目内容缓存与频道组播媒体同步后,通知播放终端加入频道组播组;缓存终端的媒体继续发送,速率比节目正常速率要小或者相同;播放终端在加入频道组播组后,开始接收频道组播组下发的媒体包,并将收到的第一个发送给缓存终端;以避免缓存终端发送多余重复的目的频道节目内容给播放终端。
当缓存终端发送的媒体信息与播放终端接收到的组播组媒体信息能够衔接的时候,停止向播放终端发送目的频道节目内容。
如图2所示,步骤S102中通过缓存终端列表中的缓存终端进行频道切换的步骤包括:
步骤S1021,播放终端向缓存终端列表中一个或多个缓存终端发送获取目的频道节目内容的请求;
步骤S1022,接收缓存终端发送的以I帧为起始的目的频道节目内容缓存;
如果有多个缓存终端提供了目的频道节目内容,播放终端可以以收到第一个缓存终端响应为准,同时通知其他终端停止发送目的频道节目缓存。
步骤S1023,接收缓存终端在其发送的目的频道节目内容缓存与频道组播媒体同步后发送的通知消息;
步骤S1024,根据通知消息加入频道组播组,开始接收频道组播组下发的频道媒体包,并将接收的第一个频道媒体包发送至缓存终端;
步骤S1025,当缓存终端发送的目的频道节目内容缓存与播放终端从频道组播组接收到的频道媒体包衔接时,从频道组播组获取目的频道节目内容。
在本实施例中,播放终端可以根据缓存终端列表中缓存终端的网络最小Ping值或根据接收到缓存终端响应报文的先后顺序选取相应的缓存终端。
判断缓存终端在发送的目的频道节目内容缓存与频道组播媒体同步的方式,可以通过发送的节目内容匹配一致或当频道节目以RTP(Real-timeTransport Protocol,实时传送协议)封装时,RTP头序号相同来判断缓存终端发送的频道节目内容缓存与频道组播媒体同步。
需要说明的是,本实施例中缓存终端与播放终端可以是同一类型终端,比如均为机顶盒,也可以不为同一类终端,比如播放终端为机顶盒,缓存终端为PC(Personal Computer,个人计算机)机等。
比如,一台机顶盒进行频道切换而进入频道播放时,如果另外一台机顶盒已经在播放该频道节目,前一台机顶盒上需要的频道节目内容可以从后一台已经在播放频道节目的机顶盒获取,媒体数据不需要从专门的快速发送服务器发送。
进一步的,缓存终端发送目的频道节目内容缓存给播放终端的速率一般都要比正常码率要快,否则无法实现缓存终端发送的目的频道节目内容缓存与频道组播组发送的媒体内容同步,因为缓存终端一直在继续进行频道内容接收。
在实际应用中,还可根据本实施例方法实现丢包重传功能。
具体地,缓存终端可以提供丢包重传功能,播放终端在节目播放过程中如果检测到丢包,则可以向缓存终端请求丢包重传。缓存终端接收到播放终端发送的丢包重传请求后,根据重传请求向播放终端重传丢包。由此可以降低IPTV对网络质量的依赖性,提升了用户在丢包情况下的视频质量。
本实施例通过在现有网络上终端之间的协作完成频道切换,降低了组网成本,播放终端通过缓存终端列表中的缓存终端可以尽快的显示出视频画面,当快发的媒体缓存与频道组播组发送媒体信息同步后,切换到正常的频道组播播放状态,缩短了频道切换时间,提升了IPTV服务质量,提高了用户满意度。
如图3所示,本发明另一实施例提出一种频道切换方法,包括:
步骤S301,缓存终端在接收组播码流进行频道播放时,对频道节目内容进行缓存;
缓存终端在进行频道播放接收组播码流时需要进行频道节目内容缓存,至少缓存一个完整的GOP,处于组播频道播放状态(接收的是组播节目码流)的缓存终端都能够提供频道节目内容服务,都可以对播放终端发送的宣告消息进行响应。
步骤S302,当接收到播放终端发送的宣告消息时,向播放终端返回可提供频道节目内容服务的响应消息;
缓存终端通过UPnP中简单服务发现协议监听局域网内播放终端的运行状态,并在播放终端发出SSDP通知消息时给出响应,告知播放终端可以提供目的频道节目内容服务。
步骤S303,当接收到播放终端发送的获取目的频道节目内容的请求时,通过单播的方式为播放终端进行频道切换。
缓存终端接收到播放终端的请求后,通过单播的方式,以可控的码率的向播放终端发送以I帧为起始的媒体缓存即本实施例中所称目的频道节目内容缓存。同时,以宣告消息通知其他终端提供缓存服务的频道节目内容已经变化。在缓存终端关机时也需要向外发送消息,通知其他终端不能再提供服务。
当频道缓存终端发送的缓存节目内容与频道组播内容同步后,通知频道播放终端加入组播组;同时,频道缓存终端以频道节目内容同步或者更慢的速率继续发送频道节目内容缓存。
频道缓存终端发送的缓存节目内容与频道组播内容同步可以通过发送的节目内容匹配来判断,也可以通过RTP头序号等来判断,当节目内容一致,或者RTP序号相同时,则认为两者已经同步。
例如,假设节目正常码率恒定为2M bps,缓存终端快发时码率为2.2Mbps,比正常码率大1/10。在收到播放终端的快发请求时,缓存终端缓存了0.5s的数据,通过计算,应该在5s后缓存终端发送的目的频道节目内容与组播组发送的频道节目内容可以同步,缓存终端发送给播放终端的节目内容应是频道缓存终端新收到的组播组频道节目内容。此时,缓存终端通知频道播放终端可以加入组播组,同时仍然需要继续发送频道节目内容。这时缓存终端发送的码率显然最大即为2M,也可以小于2M。
当播放终端加入组播组后,接收频道组播组发送的媒体内容;播放终端收到第一个频道媒体包时,立即将该媒体包发送给缓存终端。缓存终端收到播放终端发送的媒体包信息后,继续发送目的频道节目内容缓存,直到发送的目的频道节目内容缓存与播放终端收到的媒体包能够衔接为止。
当频道节目以RTP封装时,播放终端收到的第一个频道媒体包,可以指收到的第一个组播RTP包的序号,也可以是用来标识媒体节目负载的其他信息。
例如,播放终端加入组播组后,播放终端收到的第一个RTP包序号为100,缓存终端收到这个消息后,发送的频道节目内容的最后一个包的RTP序号可以是99,这样播放终端从缓存终端收到的节目内容和从组播组收到的节目内容则可以衔接起来。当然,缓存终端发送的最后一个包序号也可以是100。其基本原则是至少要能保证两个部分的内容能够衔接,又要尽量减少两个部分媒体节目内容重复的部分。
当播放终端收到的目的频道节目缓存与组播组数据能够衔接后,则进入到完全组播模式的播放。
如图4所示,步骤S303中通过单播的方式为播放终端进行频道切换的步骤包括:
步骤S3031,以可控的码率向播放终端发送以I帧为起始的目的频道节目内容缓存;
步骤S3032,当目的频道节目内容缓存与频道组播媒体同步后,通知播放终端加入频道组播组,并接收播放终端发送的来自频道组播组的第一个频道媒体包;
步骤S3033,当发送的目的频道节目内容缓存与播放终端从频道组播组接收到的频道媒体包衔接时,停止向播放终端发送目的频道节目内容缓存。
本实施例播放终端通过获取提供目的频道节目内容服务的缓存终端列表,并从列表中的缓存终端获取所需节目内容播放给用户用以完成频道切换,缩短了频道切换时间。同时,由于播放终端在收到组播组发送的媒体包后,立即将该包信息发送给了缓存终端,使缓存终端不会向播放终端发送多余的媒体包,不会造成网络资源浪费便能实现媒体接收方式的无缝切换。
如图5所示,本发明一实施例提出一种频道切换终端,包括:缓存终端列表获取模块501、第一频道切换模块502,其中:
缓存终端列表获取模块501,用于在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;
本实施例中宣告消息具体采用UPnP SSDP宣告消息。
UPnP是针对局域网络范围内对等(peer-to-peer)互联而设计的一种应用层技术标准,旨在为家庭、小型企业、公共场所提供基于IP技术、易于使用的网络服务自动发现机制。
SSDP(简单服务发现协议,Simple Service Discovery Protocol)用于服务发现,控制点借此可定位其感兴趣的资源在网络中的位置,设备可借此告之它们的可用性。SSDP客户(控制点)可往本地保留的多播地址的SSDP端口(239.255.255.250:1900)发送发现(Discovery)消息来寻找SSDP服务;SSDP服务(设备)也可以同样的方式发送SSDP指示来宣告它的存在。
播放终端启动后,缓存终端列表获取模块501在局域网内发送UPnPSSDP宣告消息,发现可以提供频道节目内容服务的缓存终端列表,并对该表进行维护。
缓存终端在进行频道播放接收组播码流时需要进行频道节目内容缓存,至少缓存一个完整的GOP,处于组播频道播放状态(接收的是组播节目码流)的缓存终端都能够提供频道节目内容服务,都可以对播放终端发送的宣告消息进行响应。
第一频道切换模块502,用于当播放终端收到频道切换播放命令时,通过缓存终端列表中的缓存终端进行频道切换。
当播放终端收到频道切换播放命令时,第一频道切换模块502从缓存终端列表中选取一个或者多个能够提供该频道节目内容服务的缓存终端,请求目的频道节目内容。
缓存终端收到播放终端发送的目的频道节目内容的请求后,以比节目正常速率更快的速率发送目的频道节目内容,节目内容从I帧开始;缓存终端在发送的目的频道节目内容缓存与频道组播媒体同步后,通知播放终端加入频道组播组;缓存终端的媒体继续发送,速率比节目正常速率要小或者相同;播放终端在加入频道组播组后,开始接收频道组播组下发的媒体包,并将收到的第一个发送给缓存终端;以避免缓存终端发送多余重复的目的频道节目内容给播放终端。
当缓存终端发送的媒体信息与播放终端接收到的组播组媒体信息能够衔接的时候,停止向播放终端发送目的频道节目内容。
如图6所示,第一频道切换模块502包括:请求单元5021、缓存接收单元5022、通知消息接收单元5023、媒体包接收发送单元5024以及频道切换单元5025,其中:
请求单元5021,用于向缓存终端列表中一个或多个缓存终端发送获取目的频道节目内容的请求;
缓存接收单元5022,用于接收缓存终端发送的以I帧为起始的目的频道节目内容缓存;
通知消息接收单元5023,用于接收缓存终端在其发送的目的频道节目内容缓存与频道组播媒体同步后发送的通知消息;
媒体包接收发送单元5024,用于根据通知消息加入频道组播组,开始接收所述频道组播组下发的频道媒体包,并将接收的第一个频道媒体包发送至所述缓存终端;
频道切换单元5025,用于当缓存终端发送的目的频道节目内容缓存与播放终端从频道组播组接收到的频道媒体包衔接时,从频道组播组获取目的频道节目内容。
如图7所示,本发明另一实施例提出一种频道切换终端,包括:缓存模块701、响应消息发送模块702以及第二频道切换模块703,其中:
缓存模块701,用于在接收组播码流进行频道播放时,对频道节目内容进行缓存;
缓存终端在进行频道播放接收组播码流时需要通过缓存模块701进行频道节目内容缓存,至少缓存一个完整的GOP,处于组播频道播放状态(接收的是组播节目码流)的缓存终端都能够提供频道节目内容服务,都可以对播放终端发送的宣告消息进行响应。
响应消息发送模块702,用于当接收到播放终端发送的宣告消息时,向播放终端返回可提供频道节目内容服务的响应消息;
缓存终端响应消息发送模块702通过UPnP中简单服务发现协议监听局域网内播放终端的运行状态,并在播放终端发出SSDP通知消息时给出响应,告知播放终端可以提供目的频道节目内容服务。
第二频道切换模块703,用于当接收到播放终端发送的获取目的频道节目内容的请求时,通过单播的方式为播放终端进行频道切换。
缓存终端接收到播放终端的请求后,第二频道切换模块703通过单播的方式,以可控的码率的向播放终端发送以I帧为起始的媒体缓存即本实施例中所称目的频道节目内容缓存。同时,以宣告消息通知其他终端提供缓存服务的频道节目内容已经变化。在缓存终端关机时也需要向外发送消息,通知其他终端不能再提供服务。
当频道缓存终端发送的缓存节目内容与频道组播内容同步后,通知频道播放终端加入组播组;同时,频道缓存终端以频道节目内容同步或者更慢的速率继续发送频道节目内容缓存。
频道缓存终端发送的缓存节目内容与频道组播内容同步可以通过发送的节目内容匹配来判断,也可以通过RTP头序号等来判断,当节目内容一致,或者RTP序号相同时,则认为两者已经同步。
例如,假设节目正常码率恒定为2M bps,缓存终端快发时码率为2.2Mbps,比正常码率大1/10。在收到播放终端的快发请求时,缓存终端缓存了0.5s的数据,通过计算,应该在5s后缓存终端发送的目的频道节目内容与组播组发送的频道节目内容可以同步,缓存终端发送给播放终端的节目内容应是频道缓存终端新收到的组播组频道节目内容。此时,缓存终端通知频道播放终端可以加入组播组,同时仍然需要继续发送频道节目内容。这时缓存终端发送的码率显然最大即为2M,也可以小于2M。
当播放终端加入组播组后,接收频道组播组发送的媒体内容;播放终端收到第一个频道媒体包时,立即将该媒体包发送给缓存终端。缓存终端收到播放终端发送的媒体包信息后,继续发送目的频道节目内容缓存,直到发送的目的频道节目内容缓存与播放终端收到的媒体包能够衔接为止。
当频道节目以RTP封装时,播放终端收到的第一个频道媒体包,可以指收到的第一个组播RTP包的序号,也可以是用来标识媒体节目负载的其他信息。
例如,播放终端加入组播组后,播放终端收到的第一个RTP包序号为100,缓存终端收到这个消息后,发送的频道节目内容的最后一个包的RTP序号可以是99,这样播放终端从缓存终端收到的节目内容和从组播组收到的节目内容则可以衔接起来。当然,缓存终端发送的最后一个包序号也可以是100。其基本原则是至少要能保证两个部分的内容能够衔接,又要尽量减少两个部分媒体节目内容重复的部分。
当播放终端收到的目的频道节目缓存与组播组数据能够衔接后,则进入到完全组播模式的播放。
如图8所示,第二频道切换模块703包括:缓存发送单元7031、通知发送及媒体包接收单元7032以及控制单元7033,其中:
缓存发送单元7031,用于以可控的码率向播放终端发送以I帧为起始的目的频道节目内容缓存;
通知发送及媒体包接收单元7032,用于当目的频道节目内容缓存与频道组播媒体同步后,通知播放终端加入频道组播组,并接收播放终端发送的来自频道组播组的第一个频道媒体包;
控制单元7033,用于当发送的目的频道节目内容缓存与播放终端从频道组播组接收到的频道媒体包衔接时,停止向播放终端发送目的频道节目内容缓存。
如图9所示,本发明一实施例提出一种频道切换系统,包括:播放终端901以及缓存终端902,其中:
播放终端901,用于在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;当播放终端901收到频道切换播放命令时,通过缓存终端列表中的缓存终端902进行频道切换;
缓存终端902,用于在接收组播码流进行频道播放时,对频道节目内容进行缓存;当接收到播放终端901发送的宣告消息时,向播放终端901返回可提供频道节目内容服务的响应消息;当接收到播放终端901发送的获取目的频道节目内容的请求时,通过单播的方式为播放终端901进行频道切换。
进一步的,播放终端901,还用于在节目播放过程中检测到丢包时,向缓存终端902发送丢包重传请求;
缓存终端902,还用于接收丢包重传请求,根据重传请求向播放终端901重传丢包。
具体地,缓存终端902可以提供丢包重传功能,播放终端901在节目播放过程中如果检测到丢包,则可以向缓存终端902请求丢包重传。缓存终端902接收到播放终端901发送的丢包重传请求后,根据重传请求向播放终端901重传丢包。由此可以降低IPTV对网络质量的依赖性,提升了用户在丢包情况下的视频质量。
相比现有技术中增加一台快发服务器实现快速切换频道的方法,需要考虑到并发时间,对系统性能要求较高而造成运营成本增加,本实施例基于UPnP的SSDP协议,播放终端在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;当播放终端收到频道切换播放命令时,通过缓存终端列表中的缓存终端进行频道切换,播放终端从提供服务的缓存终端迅速接收到频道节目码流启动播放,从而加快频道切换速度,提升了用户体验质量。同时,本发明实施例缓存终端可以提供丢包重传功能,播放终端在节目播放过程中如果检测到丢包时,通过向缓存终端请求实现丢包重传,由此可以降低IPTV对网络质量的依赖性,提升了用户在丢包情况下的视频质量。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (9)

1.一种频道切换方法,其特征在于,包括:
播放终端在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;
当所述播放终端收到频道切换播放命令时,通过所述缓存终端列表中的缓存终端进行频道切换;
所述通过缓存终端列表中的缓存终端进行频道切换的步骤包括:
播放终端向所述缓存终端列表中一个或多个缓存终端发送获取目的频道节目内容的请求;
接收所述缓存终端发送的以I帧为起始的目的频道节目内容缓存;
接收所述缓存终端在其发送的目的频道节目内容缓存与频道组播媒体同步后发送的通知消息;
根据所述通知消息加入频道组播组,开始接收所述频道组播组下发的频道媒体包,并将接收的第一个频道媒体包发送至所述缓存终端;
当所述缓存终端发送的目的频道节目内容缓存与所述播放终端从所述频道组播组接收到的频道媒体包衔接时,从所述频道组播组获取目的频道节目内容。
2.根据权利要求1所述的方法,其特征在于,所述播放终端根据缓存终端列表中缓存终端的网络最小Ping值或根据接收到缓存终端响应报文的先后顺序选取相应的缓存终端。
3.一种频道切换方法,其特征在于,包括:
缓存终端在接收组播码流进行频道播放时,对频道节目内容进行缓存;
当接收到播放终端发送的宣告消息时,向所述播放终端返回可提供频道节目内容服务的响应消息;
当接收到所述播放终端发送的获取目的频道节目内容的请求时,通过单播的方式为所述播放终端进行频道切换;
所述通过单播的方式为所述播放终端进行频道切换的步骤包括:
以可控的码率向所述播放终端发送以I帧为起始的目的频道节目内容缓存;
当所述目的频道节目内容缓存与频道组播媒体同步后,通知所述播放终端加入频道组播组,并接收所述播放终端发送的来自所述频道组播组的第一个频道媒体包;
当发送的所述目的频道节目内容缓存与所述播放终端从所述频道组播组接收到的频道媒体包衔接时,停止向所述播放终端发送所述目的频道节目内容缓存。
4.根据权利要求3所述的方法,其特征在于,所述缓存终端通过发送的节目内容匹配一致或当频道节目以实时传送协议RTP封装时,以RTP头序号相同来判断所述缓存终端发送的频道节目内容缓存与频道组播媒体同步。
5.一种频道切换终端,其特征在于,包括:
缓存终端列表获取模块,用于在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;
第一频道切换模块,用于当播放终端收到频道切换播放命令时,通过所述缓存终端列表中的缓存终端进行频道切换;
所述第一频道切换模块包括:
请求单元,用于向所述缓存终端列表中一个或多个缓存终端发送获取目的频道节目内容的请求;
缓存接收单元,用于接收所述缓存终端发送的以I帧为起始的目的频道节目内容缓存;
通知消息接收单元,用于接收所述缓存终端在其发送的目的频道节目内容缓存与频道组播媒体同步后发送的通知消息;
媒体包接收发送单元,用于根据所述通知消息加入频道组播组,开始接收所述频道组播组下发的频道媒体包,并将接收的第一个频道媒体包发送至所述缓存终端;
频道切换单元,用于当所述缓存终端发送的目的频道节目内容缓存与所述播放终端从所述频道组播组接收到的频道媒体包衔接时,从所述频道组播组获取目的频道节目内容。
6.一种频道切换终端,其特征在于,包括:
缓存模块,用于在接收组播码流进行频道播放时,对频道节目内容进行缓存;
响应消息发送模块,用于当接收到播放终端发送的宣告消息时,向所述播放终端返回可提供频道节目内容服务的响应消息;
第二频道切换模块,用于当接收到所述播放终端发送的获取目的频道节目内容的请求时,通过单播的方式为所述播放终端进行频道切换;
所述第二频道切换模块包括:
缓存发送单元,用于以可控的码率向所述播放终端发送以I帧为起始的目的频道节目内容缓存;
通知发送及媒体包接收单元,用于当所述目的频道节目内容缓存与频道组播媒体同步后,通知所述播放终端加入频道组播组,并接收所述播放终端发送的来自所述频道组播组的第一个频道媒体包;
控制单元,用于当发送的所述目的频道节目内容缓存与所述播放终端从所述频道组播组接收到的频道媒体包衔接时,停止向所述播放终端发送所述目的频道节目内容缓存。
7.根据权利要求6所述的终端,其特征在于,所述缓存终端通过发送的节目内容匹配一致或当频道节目以RTP封装时,以RTP头序号相同来判断所述缓存终端发送的频道节目内容缓存与频道组播媒体同步。
8.一种频道切换系统,其特征在于,包括:播放终端以及缓存终端,其中:
所述播放终端包括:
缓存终端列表获取模块,用于在局域网内发送宣告消息获取可提供频道节目内容服务的缓存终端列表;及
第一频道切换模块,用于当所述播放终端收到频道切换播放命令时,通过所述缓存终端列表中的缓存终端进行频道切换;
所述第一频道切换模块包括:
请求单元,用于向所述缓存终端列表中一个或多个缓存终端发送获取目的频道节目内容的请求;
缓存接收单元,用于接收所述缓存终端发送的以I帧为起始的目的频道节目内容缓存;
通知消息接收单元,用于接收所述缓存终端在其发送的目的频道节目内容缓存与频道组播媒体同步后发送的通知消息;
媒体包接收发送单元,用于根据所述通知消息加入频道组播组,开始接收所述频道组播组下发的频道媒体包,并将接收的第一个频道媒体包发送至所述缓存终端;及
频道切换单元,用于当所述缓存终端发送的目的频道节目内容缓存与所述播放终端从所述频道组播组接收到的频道媒体包衔接时,从所述频道组播组获取目的频道节目内容;
所述缓存终端包括:
缓存模块,用于在接收组播码流进行频道播放时,对频道节目内容进行缓存;
响应消息发送模块,当接收到播放终端发送的宣告消息时,向所述播放终端返回可提供频道节目内容服务的响应消息;及
第二频道切换模块,当接收到所述播放终端发送的获取目的频道节目内容的请求时,通过单播的方式为所述播放终端进行频道切换;
所述第二频道切换模块包括:
缓存发送单元,用于以可控的码率向所述播放终端发送以I帧为起始的目的频道节目内容缓存;
通知发送及媒体包接收单元,用于当所述目的频道节目内容缓存与频道组播媒体同步后,通知所述播放终端加入频道组播组,并接收所述播放终端发送的来自所述频道组播组的第一个频道媒体包;及
控制单元,用于当发送的所述目的频道节目内容缓存与所述播放终端从所述频道组播组接收到的频道媒体包衔接时,停止向所述播放终端发送所述目的频道节目内容缓存。
9.根据权利要求8所述的系统,其特征在于,
所述播放终端,还用于在节目播放过程中检测到丢包时,向所述缓存终端发送丢包重传请求;
所述缓存终端,还用于接收所述丢包重传请求,根据所述重传请求向所述播放终端重传丢包。
CN201010596761.XA 2010-12-20 2010-12-20 频道切换方法、终端及系统 Active CN102547448B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201010596761.XA CN102547448B (zh) 2010-12-20 2010-12-20 频道切换方法、终端及系统
PCT/CN2011/084289 WO2012083841A1 (zh) 2010-12-20 2011-12-20 频道切换方法、终端及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010596761.XA CN102547448B (zh) 2010-12-20 2010-12-20 频道切换方法、终端及系统

Publications (2)

Publication Number Publication Date
CN102547448A CN102547448A (zh) 2012-07-04
CN102547448B true CN102547448B (zh) 2014-03-19

Family

ID=46313169

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010596761.XA Active CN102547448B (zh) 2010-12-20 2010-12-20 频道切换方法、终端及系统

Country Status (2)

Country Link
CN (1) CN102547448B (zh)
WO (1) WO2012083841A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104518889A (zh) * 2013-10-08 2015-04-15 中兴通讯股份有限公司 组播报文响应方法和装置
CN103702202A (zh) * 2013-12-13 2014-04-02 乐视致新电子科技(天津)有限公司 在频道切换时实现快速播放的方法及装置
CN105791894A (zh) * 2014-12-24 2016-07-20 中兴通讯股份有限公司 一种频道码流处理方法、装置、终端及系统
CN106162022B (zh) * 2015-04-08 2019-03-19 深圳市尼得科技有限公司 一种快速播放视频的方法、系统及移动终端
CN106341727A (zh) * 2016-10-08 2017-01-18 北京邦天信息技术有限公司 一种频道切换方法和装置、以及视频终端
CN109756774A (zh) * 2017-11-07 2019-05-14 中兴通讯股份有限公司 一种ott组播频道切换的方法及装置
CN111093090A (zh) * 2018-10-24 2020-05-01 玲珑视界科技(北京)有限公司 一种基于tcp的组播频道快速切换系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101123717A (zh) * 2007-09-25 2008-02-13 中兴通讯股份有限公司 一种实现频道快速切换的装置和方法
CN101753973A (zh) * 2008-12-12 2010-06-23 华为技术有限公司 一种频道切换方法、装置和系统
CN101854533A (zh) * 2010-06-10 2010-10-06 华为技术有限公司 频道切换方法、装置及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050008240A1 (en) * 2003-05-02 2005-01-13 Ashish Banerji Stitching of video for continuous presence multipoint video conferencing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101123717A (zh) * 2007-09-25 2008-02-13 中兴通讯股份有限公司 一种实现频道快速切换的装置和方法
CN101753973A (zh) * 2008-12-12 2010-06-23 华为技术有限公司 一种频道切换方法、装置和系统
CN101854533A (zh) * 2010-06-10 2010-10-06 华为技术有限公司 频道切换方法、装置及系统

Also Published As

Publication number Publication date
WO2012083841A1 (zh) 2012-06-28
CN102547448A (zh) 2012-07-04

Similar Documents

Publication Publication Date Title
CN102547448B (zh) 频道切换方法、终端及系统
CN109889543B (zh) 视频传输的方法、根节点、子节点、p2p服务器和系统
US9973812B2 (en) Multi-screen interaction method and system
KR101841591B1 (ko) 피어―투―피어 무선 디스플레이 시스템에서 싱크 디바이스들의 다수의 그룹들을 지원하기 위한 세션 관리 및 제어 절차들
EP2171600B1 (en) Assisted peer-to-peer media streaming
EP2219380A2 (en) Personal TV gateway STB / router
CN102457492B (zh) 流媒体文件的协同传输方法、系统以及设备
CN101237340B (zh) 用于实现多媒体业务中组播频道的系统及方法
JP5650197B2 (ja) マルチキャスト配信を通じてメディアを提供するシステムのための方法及び装置
WO2016203850A1 (ja) 受信装置、送信装置、およびデータ処理方法
US20070160048A1 (en) Method for providing data and data transmission system
CN101729755B (zh) 一种多媒体终端
US10250345B2 (en) Method and apparatus for distribution of media content via multiple access technologies
EP2661877B1 (en) System and method for video distribution over internet protocol networks
CN103685314A (zh) 实现流媒体播放单播和多播无缝切换的方法
WO2010108416A1 (zh) 转发可伸缩视频编码数据报文的方法、设备和通信系统
CN101090480A (zh) 视频点播方法、视频服务器和网络附加存储服务器
US20220030300A1 (en) Quick streaming reconnect by preserving streaming context on app exit
CN101409631B (zh) 一种频道切换的方法和装置
CN101888406A (zh) 机顶盒、业务服务器、节目下载方法、发送方法及系统
CN101686384A (zh) 一种频道切换方法、装置及系统
El Alami et al. A new method to reduce the bandwidth of IPTV systems
EP3588847A1 (en) Multicast signal transmitting and receiving method and device
Horiuchi et al. Mobile video broadcasting system with multiple mobile devices for improving availability
CN112040306A (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
GR01 Patent grant
GR01 Patent grant