WO2010066135A1 - 一种频道切换方法、装置和系统 - Google Patents

一种频道切换方法、装置和系统 Download PDF

Info

Publication number
WO2010066135A1
WO2010066135A1 PCT/CN2009/073132 CN2009073132W WO2010066135A1 WO 2010066135 A1 WO2010066135 A1 WO 2010066135A1 CN 2009073132 W CN2009073132 W CN 2009073132W WO 2010066135 A1 WO2010066135 A1 WO 2010066135A1
Authority
WO
WIPO (PCT)
Prior art keywords
channel
video stream
client
network
sending
Prior art date
Application number
PCT/CN2009/073132
Other languages
English (en)
French (fr)
Inventor
杨佩林
李军
秦霞
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to ES09831412.3T priority Critical patent/ES2618337T3/es
Priority to EP09831412.3A priority patent/EP2369840B1/en
Publication of WO2010066135A1 publication Critical patent/WO2010066135A1/zh
Priority to US13/158,068 priority patent/US8935736B2/en
Priority to US13/158,217 priority patent/US20110239262A1/en

Links

Classifications

    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26616Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for merging a unicast channel into a multicast channel, e.g. in a VOD application, when a client served by unicast channel catches up a multicast channel to save bandwidth
    • 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 encoded video stream 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/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/64Addressing
    • H04N21/6405Multicasting
    • 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/64Addressing
    • H04N21/6408Unicasting
    • 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/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a channel switching method, apparatus, and system. Background technique
  • IPTV Internet Protocol Television
  • IPTV Internet Protocol Television
  • the factors that cause the channel switching delay include: the time spent leaving the original channel multicast group, the time spent adding the new channel multicast group, the time taken by the STB (Set Top Box) cache padding data, and the time spent waiting for the I frame. . Among them, waiting for the time consumed by the I frame is the most important factor.
  • IPTV generally uses an audio-video compression coding algorithm to encode a picture into an image sequence consisting of an I frame, a P frame, and a B frame.
  • the I frame is a completely encoded frame of the entire picture, which can be independently decoded and displayed, and provides reference for decoding of related P and B frames.
  • the P frame cannot be independently decoded and displayed, and must receive the referenced I frame or the previous P.
  • the frame can only be decoded and displayed; the B frame can not be decoded and displayed independently, and must be decoded after receiving the referenced previous frame (I frame or P frame) and the next frame (P frame).
  • the P frame and the B frame mainly describe the difference between frames, and thus have higher coding efficiency than the I frame.
  • the cache device needs to buffer the multimedia corresponding to the IPTV channel. Volume data stream.
  • the terminal initiates a session, requests an I frame or a GOP (Group of Picture) from the cache device, and joins the multicast group corresponding to the destination channel, and the GOP includes an I frame; the cache device passes the I frame or the GOP through the single The broadcast is sent to the terminal, and the terminal caches the obtained I frame or GOP, and starts decoding to display the received image sequence.
  • the slave device stops the cache device. Get an I frame or GOP.
  • the terminal negotiates the transmission rate with the cache device, which increases the switching time of the cache device to process the single channel, and reduces the transmission efficiency of the unicast stream.
  • Embodiments of the present invention provide a channel switching method, apparatus, and system for reducing channel switching time.
  • a channel switching method includes: sending a channel switching request to a network buffer device, requesting to switch to a second channel; receiving and detecting a cached video stream of the second channel that is sent by the network cache device, Sending the detection result to the network cache device, so that the network cache device dynamically adjusts the sending rate of the cached video stream to the client according to the detection result; and sends the multicast group that joins the second channel. Requesting to the network node; receiving the video stream of the second channel sent by the network node.
  • Another channel switching method proposed by the embodiment of the present invention includes: a video stream of a cached channel; Receiving a channel switching request sent by the client, requesting to switch to a second channel; pushing, according to the channel switching request, the cached video stream of the second channel to the client; determining the cached video stream of the push Whether the video stream of the second channel is synchronized, if the synchronization is sent, sending a notification message to the client, informing the client to send a multicast group request to join the second channel.
  • a sending module configured to send a channel switching request to the network buffer device, requesting to switch to the second channel; or sending a multicast group request to join the second channel to the network node;
  • a receiving module configured to receive, according to the channel switching request sent by the sending module, the video stream of the second channel that is buffered by the network buffering device; or, according to the joining multicast group request sent by the sending module, the receiving network node sends The video stream of the second channel;
  • a detecting module configured to: after the cached video stream of the network cache device received by the receiving module, detect the cached video stream, and feed the detection result to the network cache device, so that the network cache device is configured according to the detection result Dynamically adjusting the sending rate of the cached video stream to the client.
  • a cache module configured to cache a video stream of the channel
  • a receiving module configured to receive a channel switching request sent by the client, requesting to switch to the second channel
  • a pushing module configured to push the cached video stream to the client according to the channel switching request sent by the receiving module
  • a first determining module configured to determine whether the cached video stream pushed by the push module is synchronized with the video stream of the channel
  • a first notification module configured to: when the determining module determines that the pushed cached video stream is synchronized with the video stream of the channel, send a notification message to the client, to notify the client to send a join multicast group request .
  • a network buffer device configured to cache a video stream of the channel; receiving the client to send a channel switch Sending the cached video stream to the client according to the channel switching request, and receiving the detection result fed back by the client, and dynamically adjusting the sending rate of the buffered video stream to the client;
  • a client configured to send a channel switching request to the network cache device, requesting to switch to the second channel; receiving and detecting the cached video stream of the second channel sent by the network cache device, and feeding back the detection result to the network cache device; At the same time, the multicast group requesting to join the second channel is sent to the network node; and the video stream of the second channel sent by the network node is received.
  • a network buffer device configured to cache a video stream of the channel; receiving a channel switching request sent by the client, requesting to switch to the second channel; and pushing the cached video stream to the client according to the channel switching request; Whether the pushed cached video stream is synchronized with the video stream of the channel, and if not, sending a notification message to the client, informing the client to send a join multicast group request;
  • a client configured to send a channel switching request to the network cache device; receive a cached video stream that is pushed by the network cache device; send a join multicast group request to the network node according to the notification of the network cache device, requesting to join the Multicast group
  • the network node is configured to send the video stream of the channel to the client according to the join multicast group request sent by the client.
  • An embodiment of the present invention provides a method, a device, and a system for channel switching, by using a network buffering device to determine whether a video stream that is pushed and cached in a unicast manner is synchronized with a channel video stream that a network node pushes to a client in a multicast manner. Realizing fast channel switching, and dynamically adjusting the rate of the push video stream in a unicast manner, improving the number of concurrent connections and channel switching efficiency of the client, reducing the cost of deployment and operation of the IPTV system, and making the channel switching scheme universal Sex and scalability improve the user experience.
  • FIG. 1 is a flowchart of a channel switching method according to an embodiment of the present invention
  • FIG. 1b is a flowchart of a channel switching method according to an embodiment of the present invention.
  • FIG. 3 is a flowchart of another specific implementation manner of channel switching in an embodiment of the present invention.
  • FIG. 4 is a structural diagram of a channel switching apparatus according to an embodiment of the present invention.
  • FIG. 5 is a specific structural diagram of a channel switching apparatus according to an embodiment of the present invention.
  • FIG. 6 is a structural diagram of a channel switching system according to an embodiment of the present invention. detailed description
  • FIG. la it is a flowchart of a channel switching method according to an embodiment of the present invention, which includes the following steps:
  • Step 102 Cache the video stream of the channel.
  • the video stream that is sent from the head end device to the client through the network node is cached.
  • the head end is a source device initiated by the channel media stream, and the types thereof may include: a multicast source, a media server, a central media server, and an edge media server.
  • the way the headend gets the media stream includes recording from satellite TV or forwarding from other wired networks.
  • the network node includes a DSLAM (Digital Subscriber Line Access Multiplexer) device, an OLT (Optical Line Terminal) device, a router device, and a network access server. And equipment such as IP switches.
  • the network connection between the headend and the network node may be through a core network, a metropolitan area network, an aggregation network, and other networking modes.
  • the network cache device caches the video stream sent from the head end to the client, indicating the starting position (ie, the internal frame position, such as the I frame, the IDR frame position, etc.) of the cached video stream that the client can independently decode.
  • the network cache device acquires the video stream and caches it, or when the head end sends the video stream to the client.
  • the network cache device is obtained and cached by means of mirroring, wherein the video stream is a code stream of a channel provided to the user.
  • Step 104 Receive a channel switching request sent by the client, requesting to switch from the first channel to the second channel.
  • the client When the user wants to switch channels, the client sends a channel switching request to the network node to request to switch to the channel that the user needs.
  • the channel switching request may use the RTCP protocol, the RTCP extension protocol, or other dedicated or proprietary protocols or signaling.
  • the switching from the first channel to the second channel is taken as an example, but the embodiment is not limited thereto.
  • the handover process may be initiated by the terminal, and There is no first channel.
  • Step 106 According to the channel switching request, after the network cache device of the second channel is queried to the client, the latest terminal can independently decode the message, and the advertised cached video stream is accelerated to the client in a unicast manner.
  • the unicast mode can be UDP.
  • the network cache device queries the client that is closest to the cached video stream to independently decode the message.
  • the channel content may be MPEG (Moving Pictures Experts Group) 2 encoding, or MPEG4, H.264 or even SVC encoding
  • the channel content transmission encapsulation format may be MPEG2 TS encapsulation. It may also be a NAL (Network Abstraction Layer) package or the like.
  • the client can independently decode the message and can be defined differently for different coding technologies and transmission encapsulation formats. For example, for MPEG2 TS encapsulated video, the client can independently decode the message and can be defined as a GOP start message.
  • Step 108 Determine whether the pushed cached video stream and the video stream of the second channel are the same as step 110. If the pushed cached video stream is synchronized with the video stream of the second channel, send a notification message to the The client notifies the client to send a multicast group request to join the second channel.
  • the message After the client receives the video stream of the channel, when the sending end terminates the video stream message, the message carries the second channel multicast video stream and the received buffer that can be confirmed by the client in the received channel.
  • the information of the untransmitted message between the second channel video streams for example, the received sequence number of the first message of the second channel video stream (multicast IP packet), or other can determine the client from the message Which packet starts to receive the video stream (multicast IP packet) of the second channel, so that the network cache device can know how much the client has between the received multicast video stream and the received cached video stream.
  • the unsent packet after the network cache device pushes the message, stops pushing the cached video stream as a video stream (or unicast IP packet) that is accelerated by the unicast mode from the network cache device to the client;
  • the video stream of the channel is a media stream (or multicast IP packet) that is normally sent from the network node to the client by multicast.
  • the notification message includes: the request carrying the multicast group address information of the second channel, the time information of joining the second channel, and any time information requesting to terminate the push of the video stream. Or a combination of multiple information; the client processes according to the notification message; or the network cache device notifies the client to send a multicast request to join the second channel Afterwards, the notification message is sent, and the client is notified to send a request to terminate the push of the video stream.
  • An embodiment of the present invention provides a method for channel switching, which is used to determine whether a video stream in a unicast manner is accelerated in a unicast manner to synchronize with a video stream of a channel sent by a network node to a client in a multicast manner to implement a fast channel.
  • Switching, and dynamically adjusting the rate of the push video stream in a unicast manner improving the number of concurrent connections of the client and the efficiency of channel switching, and reducing
  • the cost of deployment and operation of the IPTV system makes the channel switching scheme universal and scalable, improving the user experience.
  • a flowchart of another channel switching method in the embodiment of the present invention includes the following steps:
  • Step 102' sending a channel switching request to the network cache device, requesting to switch from the first channel to the second channel.
  • Step 104 ′ receiving and detecting the cached video stream of the second channel sent by the network cache device, and feeding back the detection result to the network cache device, so that the network cache device dynamically adjusts to the client according to the detection result.
  • the sending rate of the cached video stream is sent.
  • the detection result includes: any combination of the received video stream loss information, a transmission rate of a client requesting a network cache device, and an increment of the transmission rate.
  • the specific explanation is as follows:
  • the detection result of the feedback of the client is analyzed, so as to determine whether the sending rate of the buffered media stream is sent to the client, for example, the packet in the detection result is not lost.
  • the packet has packet loss and lost packet information or statistics.
  • the sequence number of the lost packet is obtained.
  • the packet loss rate during the sending process is known. If the packet loss rate is high, or the network resources are insufficient, or the client residual buffer is available. If the number of zones is small, the transmission rate is reduced.
  • the transmission rate is increased, the network resources are fully utilized, and the time for sending packets is shortened.
  • the time that the network cache device handles the fast channel switching of the single user is reduced, and the number of concurrently cached devices and the user experience is improved; or the dynamic transmission rate is dynamically adjusted according to the recommended sending rate fed back by the client; Adjust the rate increase, decrease, and do not change the send rate; By any of various situations described above The combination of dynamic adjustment rate.
  • Step 106 sending a multicast group request to join the second channel to the network node.
  • the client may send a request to join the multicast group to the network node actively, or the client may send a request to join the multicast group to the network node after the network cache device notifies the client to send the message to join the multicast group.
  • Step 108 ′ Receive a video stream of the second channel sent by the network node.
  • the network node After receiving the multicast group request, the network node notifies the network cache device of the sequence number of the video stream of the channel that is being sent to the client, if the network cache device detects that the packet is sent to the client.
  • the packet of the buffered video stream and the video stream of the channel that the network node is preparing to send still have a packet that is not sent, and the network cache device sends the packet of the buffered video stream that has not been sent at a low rate;
  • the network node cannot notify the network cache device, when the client detects that there is a packet loss between the video stream of the channel being received and the previously received cached video stream, the network cache device is requested to perform the message that is not sent. Resend.
  • the client detects the received packet, and feeds back the multicast IP packet receiving status to the network cache device, so that the network cache device dynamically adjusts the sending rate, fully utilizes the network resource, and shortens the time for sending the packet.
  • the delay of channel switching is reduced, the cost of deployment and operation of the IPTV system is reduced, the universality and scalability of the channel switching scheme are improved, and the user experience is improved.
  • a flowchart of a specific implementation manner of channel switching in an embodiment of the present invention includes the following steps:
  • the head end sends a video stream of the channel to the client.
  • the head end is a source device initiated by the channel media stream, and the types thereof may include: a multicast source, a media server, a central media server, and an edge media server.
  • the way the headend gets the media stream includes recording from satellite TV or forwarding from other wired networks.
  • Network nodes include carrier deployed
  • DSLAM Digital Subscriber Line Access Multiplexer
  • OLT Optical Line Terminal
  • router devices network access servers, and IP switches.
  • IP switches IP switches.
  • the network connection between the headend and the network node can be through the core network, the metropolitan area network, the aggregation network, and other networking modes.
  • Step 202 The network cache device caches the video stream sent from the head end to the client, indicating the starting position (such as I frame, IDR frame position, etc.) of the video frame that the client can independently decode in the cache.
  • the network cache device acquires the video stream and caches it, or when the head end sends the video stream to the client.
  • the network cache device is obtained and cached by means of mirroring, wherein the video stream is a code stream of a channel provided to the user.
  • Step 204 The client sends a channel switching request to the network cache device.
  • the client When the user wishes to switch channels, the client sends a channel switching request to the network node to request to switch from the first channel to the second channel.
  • the channel switching request may use the RTCP protocol, the RTCP extension protocol, or other proprietary or proprietary protocols or signaling.
  • Step 205 After receiving the client channel switching request, the network cache device determines whether the video frame that can be independently decoded by the next client arrives. If yes, step 206 is performed, and the network cache device directly notifies the client to join the multicast group. Otherwise, proceed as follows in step 207 below.
  • Step 206 If yes, directly notify the client to join the multicast group.
  • Step 207 The network cache device accelerates the push of the cached video stream to the client in a unicast manner.
  • the network cache device After the network cache device queries the nearest terminal to independently decode the message, it accelerates the push in unicast mode. Send the cached video stream to the client.
  • the network cache device queries the client closest to the cached video stream to independently decode the message.
  • the channel content may be MPEG (Moving Pictures Experts Group) 2 encoding, or MPEG4, H.264 or even SVC encoding
  • the channel content transmission encapsulation format may be MPEG2 TS encapsulation. It may also be a NAL (Network Abstraction Layer) package or the like.
  • the nearest client-side decodable message in the embodiment of the present invention may be differently defined for different encoding technologies and different transmission encapsulation formats. For example, for MPEG2 TS-encapsulated video, the client-side decodable message may be defined as a GOP. Start message.
  • the cached video stream is the cached video stream of the second channel, hereinafter referred to as the cached video stream
  • the sending rate of the buffered video stream is pushed, that is, the current pushing rate is increased or decreased according to information such as the current packet loss rate of the client, which will be described in detail in the following embodiments.
  • the network cache device accelerates the push-cached video stream to the client in a unicast manner, and is not only applicable to an application scenario in which the client is directly connected to a certain network node, but also applicable to other intermediate between the client and the network node.
  • the application scenario in which the nodes are connected This prevents the use of other methods to push the cached video stream to the client when the client and the network node are connected to other intermediate nodes. This prevents the cached video stream from being pushed to the client.
  • Step 208 The network cache device determines whether the pushed cached video stream is synchronized with the video stream of the second channel.
  • the network cache device determines whether the cached video stream that is accelerated by the unicast mode is synchronized with the video stream of the second channel that the network node sends to other clients.
  • step 210 If the pushed cached video stream is synchronized with the video stream of the second channel of the channel sent by the other node to the other client, step 210 to step 216; if the pushed cached video stream is forwarded to the network node The video stream of the second channel sent by the client is not synchronized, then Go to step 206.
  • the cached video stream is a video stream (or a unicast IP packet) that is accelerated from the network cache device to the client by the unicast mode; the video stream of the channel is normally sent from the network node to the client by the multicast mode.
  • Media stream (or multicast IP packet).
  • the step of determining whether to accelerate the push-cached video stream in a unicast manner and whether the network node is synchronizing with the video stream of the channel sent by other clients is very critical, mainly for the network cache device to send to the client.
  • the cached video stream and the video stream of the channel sent by the network node to other clients are delayed in application scenarios, so the unicast mode accelerates the push-cached video stream when it can catch up with the network node and forwards to other clients.
  • the video stream of the transmitted channel ie, synchronized with the video stream of the channel sent by the network node to other clients) is critical.
  • the network cache device determines whether the video media stream of the channel sent by the network node to other clients is catched up, so that it can accurately determine when the client joins the multicast, and reduces the unicast acceleration promotion mode to the multicast mode.
  • a small number of packets that occur during the switching of the video stream from the cached video stream to the channel may be compensated by the client requesting retransmission, or may be unicast by the network cache device at a lower rate.
  • the cached video stream is compensated for a while.
  • the client receives two multimedia data streams. Because the process time is short, the cached media stream that is pushed has a small space and a low push rate, and does not affect the client. The bandwidth between the network nodes and the network nodes will be described in detail in FIG.
  • Step 210 The network caching device reduces the sending rate of the cached video stream of the second channel to the client.
  • This step may also be performed after step 211, gp, reducing the sending rate of the cached video stream of the second channel to the client before sending the notification message to the client; or sending a notification message The transmission rate of the cached video stream that pushes the second channel is then lowered.
  • Step 211 The network cache device notifies the client, and may send the join multicast group to the network node. Request.
  • the notification message carries the multicast group address information of the second channel, the time information of joining the second channel, and any one or more information combinations of requesting to terminate the time information of the push video stream, for example, A time parameter is included to indicate that the multicast is initiated after the time. If the time is 0, the client needs to join the multicast group immediately.
  • the notification message further includes: notifying the client to send a request to terminate the push of the video stream.
  • Step 212 The client sends a join multicast group request to the network node.
  • Step 214 The network node sends the video stream of the second channel to the client according to the joining the multicast group request, so that the client obtains the video stream of the second channel by using a multicast mode.
  • Step 216 The client receives the message, and notifies the network cache device to stop sending the message of the push cached video stream.
  • the request After the client receives the video stream of the channel, when the sending terminates the request to push the video stream, the request carries a request to confirm that the client is in the received second channel multicast video stream and the received buffer.
  • the information of the untransmitted message between the second channel video streams for example: the sequence number of the first message of the video stream of the second channel, or other information capable of determining the location of the message;
  • the cached video stream is stopped.
  • Step 218 The network cache device pushes according to the information carried in the request that can confirm that the client does not send a message between the received second channel multicast video stream and the received buffered second channel video stream. After the message is not sent, the video stream of the second channel that is buffered is pushed.
  • the device having the channel switching function may be a network cache device, but is not limited to the network cache device, and includes other network locations.
  • the device is either built into the network node, and the process for implementing the method is the same as the process described above.
  • Embodiments of the present invention provide a method for channel switching, which is determined by a network cache device to be unicast.
  • the method accelerates whether the video stream of the push cache is synchronized with the video stream of the channel that the network node pushes to the client in a multicast manner, thereby implementing fast channel switching, and dynamically adjusting the rate of the push video stream in a unicast manner, thereby improving the client.
  • the number of concurrent connections and the efficiency of channel switching are reduced.
  • the cost of deployment and operation of the IPTV system makes the channel switching scheme universal and scalable, improving the user experience.
  • FIG. 3 it is a flowchart of another specific implementation manner of channel switching in the embodiment of the present invention, which specifically describes a video stream that a client switches to a video stream buffered from a network cache device to a channel acquired from a network node.
  • the application scenario of a small number of packet loss occurs during the process, including the following steps:
  • Steps 300 to 307 are the same as step 200 to step 207 in FIG. 2 of the embodiment of the present invention.
  • Steps 300 to 307 are the same as step 200 to step 207 in FIG. 2 of the embodiment of the present invention.
  • Step 308 After receiving the network cache device in the unicast mode, the client receives the video stream and detects the video stream.
  • the network cache device sends the cached second channel video stream to the client according to the channel switching request that is sent by the client to switch from the first channel to the second channel, where the client detects the received video stream.
  • the sequence number is used to determine whether there is a packet loss, obtain the sequence number of the lost message in the received video stream, and the serial number of the lost message, the current client remaining buffer size, and the network bandwidth utilization rate. The detection result of any combination of information is fed back to the network cache device.
  • the client may actively feed back any combination of the serial number of the lost packet, the current remaining buffer size of the client, and the utilization of the network bandwidth to the network cache device.
  • the network cache device sends a message to the client, and notifies the client to return information about the video stream of the channel.
  • Step 309 The client feeds back the detection result to the network cache device.
  • Step 310 The network cache device dynamically adjusts, according to the detection result, a sending rate of the buffered video stream to the client. Specifically, the detection result of the client feedback is analyzed, so as to determine whether to increase or decrease the sending rate of the currently buffered media stream to the client, for example, by using the sequence number of the lost packet in the detection result, Obtain the packet loss rate during the sending process. If the packet loss rate is high, or the network resources are insufficient, or the client has fewer buffers, reduce the sending rate. If there is no packet loss, there is enough bandwidth.
  • the resource, and the remaining buffers of the client are small, the transmission rate is increased, the network resources are fully utilized, the time for sending packets is shortened, the time for the network cache device to process fast channel switching of a single user is reduced, and the network cache device is concurrently increased. Number and user experience.
  • Step 311 The network cache device pushes the channel video stream to the client at the adjusted rate.
  • Step 312 The client sends a join multicast group request to the network node.
  • the client may actively send a request to join the multicast group to the network node, or the network cache device may notify the client to send the message to join the multicast group, and the client sends a request to join the multicast group to the network node;
  • the device notifies the client to send a message to join the multicast group.
  • Step 314 The network node sends the video stream of the second channel to the client according to the request.
  • the specific steps are: after the network node receives the request to join the multicast group, the network node notifies the network cache device of the sequence number of the video stream of the channel that is being sent to the client, if the network cache device detects the discovery There is still a packet that is not sent between the packet of the buffered video stream sent by the client and the video stream of the channel that the network node is preparing to send, and the network cache device sends the cached video stream that has not been sent at a low rate.
  • the network node cannot notify the network cache device, when the client detects that there is a packet loss between the video stream of the channel being received and the previously received cached video stream, the network cache device is requested to perform the message that is not sent. Resend.
  • Step 316 Receive a network cache when the client switches from the second channel to the third channel. And the video stream of the third channel that is sent by the device at the adjusted sending rate, where the adjusted sending rate is obtained by using a sending rate carried in the channel switching request; or Storage is obtained.
  • the device having the channel switching function may be a network cache device, but is not limited to the network cache device, and includes other network locations.
  • the device is either built into the network node, and the process for implementing the method is the same as the process described above.
  • the client detects the received packet, and feeds back the multicast IP packet receiving status to the network cache device, so that the network cache device dynamically adjusts the sending rate, fully utilizes the network resource, and shortens the time for sending the packet.
  • the delay of channel switching is reduced, the cost of deployment and operation of the IPTV system is reduced, the universality and scalability of the channel switching scheme are improved, and the user experience is improved.
  • FIG. 4 it is a structural diagram of a channel switching apparatus according to an embodiment of the present invention, including: a buffering module 402, configured to cache a video stream of a channel.
  • the cache module 402 is configured to receive a video stream of all channels sent from the head end device to the client, set a buffer space for each channel, and cache the video stream of the channel. For each channel's message, only one copy of the data can be cached. Since the buffer space of each channel is independent, when the fast channel switching service is provided for the user, the starting point of reading the cached video stream does not affect the video stream read when the fast channel switching service is provided for other users. .
  • the receiving module 404 is configured to receive a channel switching request sent by the client, requesting to switch from the first channel to the second channel.
  • the client When the user wishes to switch channels, the client sends a channel switching request to the network node, requesting to switch from the first channel to the second channel required by the user.
  • the channel switching request may use an RTCP protocol, an RTCP extension protocol, or other proprietary or proprietary protocols or signaling.
  • the push module 406 is configured to: according to the channel switching request sent by the receiving module 404, push the video stream of the second channel buffered by the cache module 402 to the client. Specifically, the push module 406 is configured to receive a channel switching request sent by the client, and push the video stream of the channel to which the cache request is switched to the client in a unicast manner according to the received sequence of the buffered video stream.
  • the first video stream that is pushed is the client that is closest to the video stream of the channel to which the client requests to switch, and the client can independently decode the message. For example, a GOP start message, that is, an I frame, or a PAT/PMT message.
  • the network cache device accelerates the push-cached video stream to the client in a unicast manner, and is not only applicable to an application scenario in which the client is directly connected to a certain network node, but also applicable to other intermediate between the client and the network node.
  • the application scenario in which the nodes are connected This prevents the use of other methods to push the cached video stream to the client when the client and the network node are connected to other intermediate nodes. This prevents the cached video stream from being pushed to the client.
  • the first determining module 408 is configured to determine whether the cached video stream pushed by the pushing module 406 is synchronized with the video stream of the second channel.
  • the cached video stream is a video stream (or a unicast IP packet) that is accelerated from the network cache device to the client by the unicast mode; the video stream of the channel is normally sent from the network node to the client by the multicast mode.
  • Media stream (or multicast IP packet).
  • the step of determining whether to accelerate the push-cached video stream in a unicast manner and whether the network node is synchronizing with the video stream of the channel sent by other clients is very critical, and is mainly for the network cache device to send to the client.
  • the cached video stream and the video stream of the channel sent by the network node to other clients are delayed in application scenarios, so the unicast mode accelerates the push-cached video stream when it can catch up with the network node and forwards to other clients.
  • the video stream of the transmitted channel ie, synchronized with the video stream of the channel sent by the network node to other clients) is critical.
  • the network cache device determines whether the video media stream of the channel sent by the network node to other clients is catched up, so that it is possible to accurately determine when the client joins the multicast, and reduce the unicast acceleration promotion mode to the multicast mode. The delay at which the node switches to the video media stream of the transmitted channel.
  • the first notification module 409 is configured to: when the determining module determines that the pushed cached video stream is synchronized with the video stream of the second channel, send a notification message to the client, to notify the client The terminal sends a multicast group request to join the second channel.
  • the notification message carries the multicast group address information of the second channel, the time information of joining the second channel, and any one or more information combinations of requesting to terminate the time information of the push video stream, for example, At least one time parameter is included to indicate that the multicast is initiated after the time. If the time is 0, the client needs to join the multicast group immediately.
  • the device further includes: a marking module 412, connected to the cache module 402, configured to set a message mark to the video stream buffered by the cache module, and indicate a starting position of the video stream that the terminal can independently decode in the cache (such as I). Frame, IDR frame position, etc.).
  • a marking module 412 connected to the cache module 402, configured to set a message mark to the video stream buffered by the cache module, and indicate a starting position of the video stream that the terminal can independently decode in the cache (such as I). Frame, IDR frame position, etc.).
  • the device still further includes:
  • the second notification module 410 is configured to notify the client to send a request to terminate the push of the video stream.
  • the first processing module 411 is configured to: after receiving the buffered video stream request that is terminated by the client, stop pushing the cached video stream to the client; where the client returns the termination of the sending buffer
  • the video stream message carries information that can confirm that the client does not send a message between the received second channel multicast video stream and the received buffered second channel video stream; for example: the network node notifies the network cache device The sequence number of the message of the video stream of the channel that is being prepared to be sent to the client, if the network cache device detects that the message of the buffered video stream sent to the client is found and the video stream of the channel that the network node is preparing to transmit There is also a message that is not sent, and the network cache device sends the message of the buffered video stream that has not been sent at a low rate.
  • a rate reduction module 418 configured to reduce, by the second notification module, the sending rate of the cached video stream that pushes the second channel to the client before the client sends a request to terminate the video stream.
  • the apparatus further includes a second determining module 414 when the apparatus is for determining whether the next video stream for the cache that the client can independently decode is coming.
  • the second determining module 414 is configured to determine whether a video frame that can be independently decoded by the next client arrives, and send the determination result to the second processing module 415 for processing.
  • the second processing module 415 is configured to: if the second determining module 414 determines the next client If the video frame that can be independently decoded arrives, the client is directly notified to join the multicast group; otherwise, the channel switching request sent by the receiving module 404 is sent to the push module 406 for further processing.
  • the channel switching apparatus further includes: a rate adjustment module 416, coupled to the pushing module 406, configured to dynamically adjust, according to feedback from the client, a sending rate of the buffered video stream to the client in a unicast manner. .
  • the channel switching apparatus in the embodiment of the present invention does not constitute a limitation of the technical solution of the present invention.
  • the channel switching apparatus may be a network cache device, but is not limited to a network cache device, and includes devices located at other network locations. Or built in the network node, its implementation function is the same as described above.
  • the embodiment of the present invention provides a channel switching apparatus, which adopts a method for accelerating a push-streamed video stream in a unicast manner, and determines, by using a network buffering device, whether the video stream that is pushed and cached in a unicast manner is accelerated to a client by a network node.
  • the video stream of the channel being pushed is synchronized to achieve fast channel switching, which improves the number of concurrent connections and channel switching efficiency of the client, reduces the cost of deployment and operation of the IPTV system, and makes the channel switching scheme universal and scalable. , improving the user experience.
  • FIG. 5 it is a structural diagram of another channel switching apparatus according to an embodiment of the present invention, including: a sending module 502, configured to send a channel switching request to a network buffering device, requesting to switch from a first channel to a second channel; Or sending a multicast group request to join the second channel to the network node.
  • a sending module 502 configured to send a channel switching request to a network buffering device, requesting to switch from a first channel to a second channel; Or sending a multicast group request to join the second channel to the network node.
  • the receiving module 504 is configured to receive, according to the channel switching request sent by the sending module, the video stream of the second channel that is buffered by the network buffering device, or receive a network node according to the joining multicast group request sent by the sending module.
  • the video stream of the second channel transmitted.
  • the detecting module 506 is configured to detect the received video stream according to the video stream buffered by the network cache device received by the receiving module 504, and feed back the detected result to the network cache device, so that the network cache device And according to the detected result, dynamically adjusting a sending rate of the buffered video stream to the client.
  • the method includes: feeding back, by the network buffer device, the detection result of the received video stream loss information, the sending rate of the client requesting the network buffer device, or the increment of the sending rate.
  • the device may actively feed back any combination of the sequence number of the lost packet, the current client's remaining buffer size, and the utilization of the network bandwidth to the network cache device, or may be cached through the network.
  • the device sends a message to the client, informing the client to return information about the video stream of the channel.
  • the network cache device After the network cache device receives the detection result of the feedback, it is determined to increase or decrease the sending rate of the currently buffered media stream to the client, for example, by using the lost message in the detection result.
  • the serial number is used to know the packet loss rate during the sending process. If the packet loss rate is high, or the network resources are insufficient, or the client has fewer buffers, the transmission rate is reduced. If there is no packet loss, there is If the bandwidth is sufficient, and the remaining buffers of the client are small, the sending rate is increased, the network resources are fully utilized, the time for sending packets is shortened, and the time for the network cache device to process fast channel switching of a single user is reduced, and the network is improved. Cache device concurrency and user experience.
  • the sending module 502 is further configured to: send a join multicast group request to the network node according to the join multicast group request notification sent by the network cache unit.
  • the sending module may send a request to join the multicast group to the network node, or the network buffering device may notify the sending module to send the message to join the multicast group, and then the sending module sends a request to join the multicast group to the network node.
  • the receiving module 504 is further configured to: when the second channel is switched to the third channel, receive the video stream of the third channel that is sent by the network buffer device at the adjusted sending rate, where The adjusted transmission rate is obtained by the transmission rate carried in the channel switching request; or, it is obtained locally for the network cache device.
  • channel switching device is applied to the client and can also be applied to other network devices.
  • the embodiment of the present invention detects the situation of receiving a message by using the provided channel switching device, and slows down to the network.
  • the storage device feeds back the reception of multicast IP packets, so that the network cache device dynamically adjusts the transmission rate, fully utilizes network resources, shortens the time for sending packets, reduces the delay of channel switching, and reduces the cost of IPTV system deployment and operation. , improve the universality and scalability of the channel switching scheme, and improve the user experience.
  • FIG. 6 is a structural diagram of a channel switching system according to an embodiment of the present invention, including: a network buffering device 604, configured to buffer a video stream of a channel; receiving a channel switching request sent by the client, requesting from the first Switching to the second channel by the first channel; pushing the cached video stream of the second channel to the client according to the channel switching request; determining whether the pushed cached video stream is synchronized with the video stream of the second channel If the synchronization is performed, the notification message is sent to the client, and the client is notified to send a multicast group request to join the second channel.
  • the video stream of the cache channel is a video stream sent by the multicast source to the client.
  • a multicast source is a device at the head end, that is, a source device initiated by a channel media stream.
  • the way the multicast source obtains the video stream includes recording from satellite TV or forwarding from other wired networks.
  • the network node 606 is configured to send the video stream of the second channel to the client according to the join multicast group request sent by the client.
  • a client 608 configured to send a channel switching request to the network cache device, receive a cached video stream that is pushed by the network cache device, and send a multicast group request that joins the second channel according to the notification of the network cache device To the network node, request to join the multicast group.
  • the network buffering device 604 is further configured to receive the detection result fed back by the client, and dynamically adjust the sending rate of the buffered video stream to the client, as shown in FIG. .
  • the client 606 is further configured to receive and detect the cached video stream of the second channel sent by the network cache device 604, and feed back the detection result to the network cache device 604.
  • An embodiment of the present invention provides a channel switching system, which is determined by a network cache device to be a unicast party. Accelerate whether the video stream of the push cache is synchronized with the video stream of the channel that the network node multicasts to the client to implement fast channel switching, and dynamically adjust the rate of the push video stream in a unicast manner, thereby improving the client.
  • the number of concurrent connections and the efficiency of channel switching reduce the cost of deployment and operation of the IPTV system, making the channel switching scheme universal and scalable, improving the user experience.
  • the present invention can be implemented by means of software plus a necessary general hardware platform or by hardware. Based on such understanding, the technical solution of the present invention is essentially Or the part contributing to the prior art can be embodied in the form of a software product stored in a storage medium, including a plurality of instructions for making a terminal device (which can be a mobile phone, a personal computer, a server) , or network device, etc.) Perform the methods described in various embodiments of the present invention.
  • a terminal device which can be a mobile phone, a personal computer, a server
  • network device etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

一种频道切换方法、 装置和系统
本申请要求了 2008年 12月 12日提交的, 申请号为 200810218385.3, 发 明名称为"一种频道切换方法、装置和系统" 的中国申请优先权, 以及 2009 年 01月 21日提交的, 申请号为 200910004013.5, 发明名称为 "一种频道切 换方法、 装置和系统" 的中国申请优先权, 其全部内容通过引用结合在本 申请中。 技术领域
本发明涉及通信技术领域,特别是涉及一种频道切换方法、装置和系统。 背景技术
IPTV (Internet Protocol Television, 因特网协议电视) 是一种利用宽带 有线网, 集互联网、 多媒体、 通讯等多种技术于一体, 向家庭用户提供包括 数字在内的多种交互式服务的崭新技术。 随着普及程度的提高, IPTV得到 了世界范围内的认可。 然而, IPTV切换频道时存在着很大的时延, 一直困 扰着 IPTV用户及运营商。
导致频道切换时延的因素包括: 离开原频道组播组消耗的时间、 加入新 频道组播组消耗的时间、 STB (Set Top Box, 机顶盒) 缓存填充数据消耗的 时间和等待 I帧消耗的时间。 其中, 等待 I帧消耗的时间是最主要的因素。
IPTV—般使用视音频压缩编码算法,将画面编码为由 I帧、 P帧和 B 帧 组成的图像序列。 I帧是整个画面完整编码的帧, 可以独立解码显示, 并为 相关的 P帧和 B 帧的解码提供参考; P帧不能被独立解码显示, 必须在接 收到所参考的 I帧或前一个 P帧后才能被解码显示; B 帧也不能被独立地解 码显示, 必须在接收到所参考的前一帧 (I帧或 P帧) 和后一帧 (P帧) 后 才能被解码显示。 P帧和 B 帧主要描述帧间差异, 因而比 I帧具有更高的 编码效率。
现有技术中, 切换频道前, 需要由缓存设备缓存 IPTV频道对应的多媒 体数据流。切换频道时, 终端发起会话,从缓存设备请求 I帧或 GOP (Group of Picture, 画面组), 同时加入目的频道对应的组播组, GOP中包含 I帧; 缓存设备将 I帧或 GOP通过单播推送给终端, 终端缓存获得的 I帧或 GOP, 并开始解码显示接收到的图像序列; 当终端发现从缓存设备获取到的 I帧或 GOP与频道的组播流重复时, 停止从缓存设备获取 I帧或 GOP。
在对现有技术的研究和实践过程中, 发明人发现现有技术存在以下问 题:
( 1 ) 由于现有技术中, 终端发起加入组播组的请求, 当终端加入组播 组时间过早, 会导致同一个时间段会发送二个流, 一个是单播流, 另外一个 是组播流, 这样会容易造成报文丢失, 缓冲设备处理时间也比较长, 影响效 率; 如果终端加入组播组时间太迟, 造成网络缓存设备处理单个用户频道切 换时间过长, 影响同一时刻网络缓存设备处理快速频道切换的并发数, 降低 效率。
(2) 在现有的方案接收单播流时, 是通过终端与缓存设备协商传送速 率大小,增加了缓存设备处理单个频道切换时间,降低了单播流的传输效率。 发明内容
本发明实施例提供一种频道切换方法、 装置和系统, 用于减少频道切换 时间。
本发明实施例提出的一种频道切换方法, 包括: 发送频道切换请求给网 络缓存设备, 请求切换到第二频道; 接收并检测所述网络缓存设备发送的所 述第二频道的缓存视频流, 将检测结果反馈给所述网络缓存设备, 以使得所 述网络缓存设备根据所述检测结果, 动态调整向客户端发送所述缓存视频流 的发送速率; 发送加入所述第二频道的组播组请求给网络节点; 接收所述网 络节点发送的所述第二频道的视频流。
本发明实施例提出的另一种频道切换方法, 包括: 缓存频道的视频流; 接收所述客户端发送的频道切换请求, 请求切换到第二频道; 根据所述 频道切换请求, 向所述客户端推送所述第二频道的缓存视频流; 判断所述推 送的缓存视频流与所述第二频道的视频流是否同步, 如果同步, 则发送通知 消息给所述客户端, 通知所述客户端发送加入所述第二频道的组播组请求。
本发明实施例提出的一种频道切换装置, 包括:
发送模块, 用于发送频道切换请求给网络缓存设备, 请求切换到第二频 道; 或者, 发送加入所述第二频道的组播组请求给网络节点;
接收模块, 用于根据所述发送模块发送的频道切换请求, 接收所述网络 缓存设备缓存的所述第二频道的视频流; 或者, 根据发送模块发送的加入组 播组请求, 接收网络节点发送的所述第二频道的视频流;
检测模块, 用于根据接收模块接收的所述网络缓存设备的缓存视频流 后, 检测所述缓存视频流, 并将检测结果反馈给网络缓存设备, 以使得所述 网络缓存设备根据所述检测结果, 动态调整向客户端发送所述缓存的视频流 的发送速率。
本发明实施例提出的另一种频道切换装置, 包括:
缓存模块, 用于缓存频道的视频流;
接收模块,用于接收客户端发送的频道切换请求,请求切换到第二频道; 推送模块, 用于根据接收模块发送的频道切换请求, 向所述客户端推送 所述缓存视频流;
第一判断模块,用于判断所述推送模块推送的缓存视频流与所述频道的 视频流是否同步;
第一通知模块,用于当所述判断模块判断所述推送的缓存视频流与所述 频道的视频流同步, 则发送通知消息给所述客户端, 通知所述客户端发送加 入组播组请求。
本发明实施例提供的一种频道切换系统, 包括:
网络缓存设备, 用于缓存频道的视频流; 接收所述客户端发送频道切换 请求; 根据所述频道切换请求, 向所述客户端推送所述缓存视频流, 同时, 接收所述客户端反馈的检测结果, 动态调整向客户端发送所述缓存的视频流 的发送速率;
客户端,用于发送频道切换请求给网络缓存设备,请求切换到第二频道; 接收并检测所述网络缓存设备发送的所述第二频道的缓存视频流,将检测结 果反馈给网络缓存设备; 同时, 发送加入所述第二频道的组播组请求给网络 节点; 接收所述网络节点发送的所述第二频道的视频流。
本发明实施例提供的另一种频道切换系统, 包括:
网络缓存设备, 用于缓存频道的视频流; 接收所述客户端发送的频道切 换请求, 请求切换到第二频道; 根据所述频道切换请求, 向所述客户端推送 所述缓存视频流; 判断所述推送的缓存视频流与所述频道的视频流是否同 步, 如果同步, 则发送通知消息给所述客户端, 通知所述客户端发送加入组 播组请求;
客户端, 用于发送频道切换请求给所述网络缓存设备; 接收所述网络缓 存设备推送的缓存视频流; 根据所述网络缓存设备的通知, 发送加入组播组 请求给网络节点, 请求加入所述组播组;
网络节点, 用于根据客户端发送的加入组播组请求, 发送所述频道的视 频流给客户端。
本发明实施例提供一种频道切换的方法, 装置及系统, 通过网络缓存设 备判断以单播方式加速推送缓存的视频流是否与网络节点以组播方式向客 户端推送的频道视频流同步, 来实现快速频道切换, 以及以单播方式动态调 整所述推送视频流的速率, 提高了客户端的并发连接数目和频道切换的效 率, 降低了 IPTV系统部署和运营的成本, 使得频道切换方案的普适性和可 扩展性, 改善了用户的体验程度。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实 施例或现有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面 描述中的附图仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的附图。
图 la为本发明实施例中的一种频道切换方法流程图;
图 lb为本发明实施例中的一种频道切换方法流程图;
图 2为本发明实施例中频道切换的一种具体实现方式流程图;
图 3为本发明实施例中频道切换的另一种具体实现方式流程图; 图 4为本发明实施例中的一种频道切换装置结构图;
图 5为本发明实施例中频道切换装置的一种具体结构图;
图 6为本发明实施例中的一种频道切换系统结构图。 具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行 清楚、 完整地描述, 显然, 所描述的实施例是本发明一部分实施例, 而不是 全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有做出创 造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。
如图 la所示, 为本发明实施例中的一种频道切换方法流程图, 包括以 下步骤:
步骤 102, 缓存频道的视频流。
具体为缓存从头端设备通过网络节点发送给客户端的视频流。头端为频 道媒体流发起的源头设备, 其类型可以包括: 组播源、 媒体服务器、 中心媒 体服务器和边缘媒体服务器等。 头端获取媒体流的方式包括从卫星电视录 制,或者从其他有线网络转发。网络节点包括运营商部署的 DSLAM (Digital Subscriber Line Access Multiplexer, 数字用户线路接入复用器) 设备、 OLT (Optical Line Terminal, 光线路终端) 设备、 路由器设备、 网络接入服务器 和 IP交换机等设备。 头端与网络节点之间的网络连接可以是通过核心网、 城域网、 汇聚网, 以及其他组网方式。
网络缓存设备缓存从头端发送到客户端的视频流,标明客户端可独立解 码的所述缓存的视频流在缓存中的起始位置 (即内帧位置, 如 I帧, IDR帧 位置等)。
其中, 当头端设备发送视频流到客户端时(可以理解为头端通过网络节 点发送到客户端的视频流时), 网络缓存设备获取所述视频流并进行缓存, 或者当头端发送视频流到客户端时, 网络缓存设备通过镜像的方式获得并缓 存, 其中, 所述视频流为向用户提供的频道的码流。
步骤 104, 接收所述客户端发送的频道切换请求, 请求从第一频道切换 到第二频道。
用户希望切换频道时, 由客户端向网络节点发送频道切换请求, 请求切 换到用户需要的频道。 所述频道切换请求可以使用 RTCP协议, 也可以使用 RTCP扩展协议, 或者其它专用或私有协议或者信令等。
在本实施例以及以下实施例中, 是以从第一频道切换到第二频道为例进 行说明, 但本实施例并不以此作为限制, 例如也可以是由终端启动该切换过 程, 而并不存在第一频道。
步骤 106, 根据所述频道切换请求, 向所述客户端推送所述第二频道的 网络缓存设备查询到最近的终端可独立解码报文后, 以单播方式加速推 送缓存的视频流到客户端, 单播方式可以是 UDP的方式。
所述网络缓存设备查询距离缓存的视频流最近的客户端可独立解码报 文。 由于视频编码技术的不同, 频道内容可以是 MPEG (Moving Pictures Experts Group,动态图像专家组) 2编码,也可以是 MPEG4、 H.264甚至 SVC 编码, 频道内容的传输封装格式可以是 MPEG2 TS 封装, 也可以是 NAL (Network Abstraction Layer, 网络提取层)封装等。 本发明实施例中的最近 的客户端可独立解码报文可以是针对不同编码技术及传输封装格式不同而 区别定义, 例如, 对于 MPEG2 TS封装的视频, 客户端可独立解码报文可以 定义为 GOP起始报文。
步骤 108, 判断所述推送的缓存视频流与所述第二频道的视频流是否同 步骤 110, 如果所述推送的缓存视频流与所述第二频道的视频流同步, 则发送通知消息给所述客户端,通知所述客户端发送加入所述第二频道的组 播组请求。
在发送通知消息给所述客户端前, 降低向所述客户端推送所述第二频道 的缓存视频流的发送速率; 也可以在发送通知消息后降低向所述客户端推送 所述第二频道的缓存视频流的发送速率。
在客户端收到所述频道的视频流后, 发送终止推送所述视频流消息时, 所述消息中携带有能够确认客户端在已接收的第二频道组播视频流和已接 收的缓存的第二频道视频流之间未发送报文的信息,例如收到的所述第二频 道的视频流 (组播 IP报文) 的第一个报文的序列号, 或者其它能够确定客 户端从哪个报文开始接收所述第二频道的视频流 (组播 IP报文), 以方便网 络缓存设备能够获知客户端在已接收的组播视频流和已接收的缓存视频流 之间还有多少未发送的报文, 在网络缓存设备推送完这些报文后, 停止推送 所述缓存的视频流为由单播方式从网络缓存设备加速推动到客户端的 视频流 (或单播 IP报文); 所述频道的视频流为由组播方式从网络节点正常 发送到客户端的媒体流 (或组播 IP报文)。
其中, 所述通知消息包括: 所述请求中携带所述第二频道的组播组地址 信息、 加入所述第二频道的时间信息, 以及请求终止推送所述视频流的时间 信息的任意一种或多种信息组合; 所述客户端根据所述通知消息进行处理; 也可以是网络缓存设备通知所述客户端发送加入所述第二频道的组播请求 后, 发送通知消息, 通知所述客户端发送终止推送所述视频流请求。
本发明实施例提供一种频道切换的方法,通过网络缓存设备判断以单播 方式加速推送缓存的视频流是否与网络节点以组播方式向客户端发送的频 道的视频流同步, 来实现快速频道切换, 以及以单播方式动态调整所述推送 视频流的速率, 提高了客户端的并发连接数目和频道切换的效率, 降低了
IPTV 系统部署和运营的成本, 使得频道切换方案的普适性和可扩展性, 改 善了用户的体验程度。
如图 lb所示, 为本发明实施例中的另一种频道切换方法流程图, 包括 以下步骤:
步骤 102',发送频道切换请求给网络缓存设备,请求从第一频道切换到 第二频道。
步骤 104',接收并检测所述网络缓存设备发送的所述第二频道的缓存视 频流, 将检测结果反馈给网络缓存设备, 以使得所述网络缓存设备根据所述 检测结果, 动态调整向客户端发送所述缓存视频流的发送速率。
所述检测结果包括: 所述接收到的视频流丢失信息、 客户端请求网络缓 存设备的发送速率以及所述发送速率的增量的任意组合。 具体解释如下: 对 客户端反馈的检测结果进行分析, 从而确定是提高或者降低当前向客户端发 送所述缓存的媒体流的发送速率, 例如, 通过所述检测结果中的报文没有丢 包, 报文有丢包以及丢失报文的信息或统计, 丢失报文的序列号, 获知发送 过程中报文丢包率, 若此时丢包率比较高, 或者网络资源不足, 或者客户端 剩余缓冲区较少,则降低发送速率;若此时没有丢包,且有足够的带宽资源, 且客户端剩余缓冲区较少, 则提高所述发送速率, 充分利用网络资源, 缩短 发送报文的时间, 减少了网络缓存设备处理单个用户快速频道切换的时间, 提高了网络缓存设备并发数和用户体验程度; 或者, 根据客户端反馈的建议 发送速率进行动态调整; 也可以通过客户端反馈的建议发送速率的增加量、 降低量和不改变发送速率进行相应调整; 也可以通过上述描述的各种情况任 意组合动态调整速率。
步骤 106', 发送加入所述第二频道的组播组请求给网络节点。
这里可以是客户端主动向网络节点发送加入组播组请求, 也可以是网络 缓存设备通知客户端发送加入组播组的消息后, 客户端向网络节点发送加入 组播组请求。
步骤 108', 接收所述网络节点发送的所述第二频道的视频流。
网络节点接收到所述加入组播组请求后, 网络节点通知网络缓存设备所 述正准备向客户端发送的频道的视频流的报文的序列号, 若网络缓存设备检 测发现向客户端发送的缓存的视频流的报文和网络节点正准备发送的频道 的视频流之间还存在没有发送的报文, 网络缓存设备以低速率发送所述还没 有发送的缓存的视频流的报文;
若网络节点不能通知网络缓存设备时, 当客户端检测到正在接收的频道 的视频流与以前接收的缓存的视频流之间有丢包情况时,请求网路缓存设备 对没有发送的报文进行重发。
当客户端从第二频道切换到第三频道时,接收所述网络缓存设备以所述 调整后的发送速率发送的所述第三频道的视频流, 其中, 所述调整后的发送 速率通过在频道切换请求中携带的发送速率获得; 或者, 为所述网络缓存设 备本地存储获得。
本发明实施例采用客户端检测接收报文的情况, 向网络缓存设备反馈组 播 IP报文的接收情况, 从而通过网络缓存设备动态调整发送速率, 充分利 用网络资源, 缩短发送报文的时间, 减少频道切换的延时, 降低了 IPTV系 统部署和运营的成本, 提高了频道切换方案的普适性和可扩展性, 改善了用 户的体验程度。
如图 2所示, 为本发明实施例中频道切换的一种具体实现方式流程图, 包括以下步骤:
步骤 200, 头端向客户端发送频道的视频流。 头端为频道媒体流发起的源头设备, 其类型可以包括: 组播源、 媒体服 务器、 中心媒体服务器和边缘媒体服务器等。 头端获取媒体流的方式包括从 卫星电视录制, 或者从其他有线网络转发。 网络节点包括运营商部署的
DSLAM (Digital Subscriber Line Access Multiplexer, 数字用户线路接入复用 器) 设备、 OLT (Optical Line Terminal, 光线路终端) 设备、 路由器设备、 网络接入服务器和 IP交换机等设备。 头端与网络节点之间的网络连接可以 是通过核心网、 城域网、 汇聚网, 以及其他组网方式。
步骤 202, 网络缓存设备缓存从头端发送到客户端的视频流, 标明客户 端可独立解码的视频帧在缓存中的起始位置 (如 I帧, IDR帧位置等)。
其中, 当头端设备发送视频流到客户端时(可以理解为头端通过网络节 点发送到客户端的视频流时), 网络缓存设备获取所述视频流并进行缓存, 或者当头端发送视频流到客户端时, 网络缓存设备通过镜像的方式获得并缓 存, 其中, 所述视频流为向用户提供的频道的码流。
步骤 204, 客户端向网络缓存设备发送频道切换请求。
用户希望切换频道时, 由客户端向网络节点发送频道切换请求, 请求从 第一频道切换到第二频道。 所述频道切换请求可以使用 RTCP协议, 也可以 使用 RTCP扩展协议, 或者其它专用或私有协议或者信令等。
步骤 205, 网络缓存设备收到客户端频道切换请求后, 判断下一个客户 端可独立解码的视频帧是否到达; 如果到达, 则执行步骤 206, 由网络缓存 设备直接通知客户端加入组播组; 否则, 按照下面的步骤 207继续执行。
具体为判断下一个可用于客户端可独立解码的缓存的视频流是否即将 到来。
步骤 206, 如果到达, 则直接通知所述客户端加入组播组。
步骤 207, 网络缓存设备以单播方式向所述客户端加速推送所述缓存的 视频流。
网络缓存设备查询到最近的终端可独立解码报文后, 以单播方式加速推 送缓存的视频流到客户端。
所述网络缓存设备查询距离缓存的视频流最近的客户端可独立解码报 文。 由于视频编码技术的不同, 频道内容可以是 MPEG (Moving Pictures Experts Group,动态图像专家组) 2编码,也可以是 MPEG4、 H.264甚至 SVC 编码, 频道内容的传输封装格式可以是 MPEG2 TS 封装, 也可以是 NAL (Network Abstraction Layer, 网络提取层)封装等。 本发明实施例中的最近 的客户端可独立解码报文可以是针对不同编码技术及传输封装格式不同而 区别定义, 例如, 对于 MPEG2 TS封装的视频, 客户端可独立解码报文可以 定义为 GOP起始报文。
以单播方式加速推送缓存的视频流(这里缓存的视频流为所述第二频道 的缓存视频流, 下面简称为所述缓存视频流), 还可以根据客户端的反馈, 动态调整向所述客户端推送所述缓存的视频流的发送速率, 即根据客户端反 馈当前丢包率等信息, 提高或者降低当前的推送速率, 这在下面的实施例中 会详细说明。
这里网络缓存设备以单播方式加速推送缓存的视频流到客户端, 不仅仅 适用于客户端与某一网络节点直接相连的应用场景,还可以适用于客户端与 网络节点之间还有其他中间节点相连的应用场景, 这样可以避免因为客户端 与网络节点之间还有其他中间节点相连时, 使用其他方式推送缓存的视频流 到客户端, 导致无法将缓存的视频流推送到客户端的情况。
步骤 208, 网络缓存设备判断所述推送的缓存视频流与所述第二频道的 视频流是否同步。
具体为: 网络缓存设备判断以单播方式加速推送的缓存的视频流与网络 节点正向其他客户端发送的第二频道的视频流是否同步。
如果推送的缓存的视频流与网络节点正向其他客户端发送的所述频道 的第二频道的视频流同步, 则执行步骤 210到步骤 216; 如果推送的缓存的 视频流与网络节点正向其他客户端发送的所述第二频道的视频流不同步, 则 执行步骤 206。
所述缓存的视频流为由单播方式从网络缓存设备加速推动到客户端的 视频流 (或单播 IP报文); 所述频道的视频流为由组播方式从网络节点正常 发送到客户端的媒体流 (或组播 IP报文)。
其中, 这里所述的判断以单播方式加速推送缓存的视频流与网络节点正 向其他客户端发送的频道的视频流是否同步的步骤是非常关键的, 主要是针 对网络缓存设备发送给客户端的缓存的视频流与网络节点正向其他客户端 发送的频道的视频流是有一定的延时的应用场景,所以单播方式加速推送缓 存的视频流何时能够追赶上网络节点正向其他客户端发送的频道的视频流 (即, 与网络节点向其他客户端发送的频道的视频流同步) 是非常关键的。 通过网络缓存设备来判断是否已经追赶上网络节点向其他客户端发送的频 道的时视频媒体流, 从而可以准确确定客户端何时加入组播, 减少从单播加 速推动方式到用组播方式从网络节点向发送的频道的视频媒体流切换的时 延。
对于由缓存的视频流到频道的视频流的切换过程中出现的少量丢包, 可 以通过客户端请求重传的方式弥补, 也可以通过由网络缓存设备以较低速率 继续以单播方式推送所述缓存的视频流一段时间弥补。在上述弥补丢包的过 程中, 客户端会接收到两个多媒体数据流, 由于该过程时间较短, 推送的所 述缓存的媒体流占用空间较小、 推送速率较低, 不会影响客户端与网络节点 之间的带宽, 这里具体流程将会在图 3中进行详细描述。
步骤 210, 网络缓存设备降低向所述客户端推送所述第二频道的缓存视 频流的发送速率。
这个步骤也可以放在步骤 211之后进行, gp, 在发送通知消息给所述客 户端前, 降低向所述客户端推送所述第二频道的缓存视频流的发送速率; 也 可以在发送通知消息后降低推送所述第二频道的缓存视频流的发送速率。
步骤 211, 网络缓存设备通知客户端, 可以向网络节点发送加入组播组 请求。
所述通知消息中携带所述第二频道的组播组地址信息、加入所述第二频 道的时间信息, 以及请求终止推送所述视频流的时间信息的任意一种或多种 信息组合, 例如包含一个时间参数, 用来表明在该时间后, 发起加入组播, 若时间为 0, 表明客户端要立刻加入组播组。
其中通知消息还包括: 通知所述客户端发送终止推送所述视频流请求。 步骤 212, 客户端向网络节点发送加入组播组请求。
步骤 214, 网络节点根据所述加入组播组请求, 发送所述第二频道的视 频流给客户端, 使得客户端通过组播方式获取所述第二频道的视频流。
步骤 216, 客户端收到所述消息, 通知网络缓存设备停止发送所述推送 缓存的视频流的消息。
在客户端收到所述频道的视频流后, 发送终止推送所述视频流请求时, 所述请求中携带有能够确认客户端在已接收的第二频道组播视频流和已接 收的缓存的第二频道视频流之间未发送报文的信息, 例如: 所述第二频道的 视频流的第一个报文的序列号, 或者其它能够确定报文位置的信息; 当在所 述推送的缓存视频流中达到所述第一个报文的序列号或者其它能够证明已 经发送的组播 IP报文位置时, 停止推送缓存视频流。
步骤 218, 网络缓存设备根据所述请求中携带的能够确认客户端在已接 收的第二频道组播视频流和已接收的缓存的第二频道视频流之间未发送报 文的信息, 推送完所述未发送报文后, 停止推送缓存的所述第二频道的视频 流。
需要强调的是, 本发明实施例中的网络缓存设备并不构成对本发明技术 方案的限定, 具有实现频道切换功能的设备可以为网络缓存设备, 但不限于 网络缓存设备, 还包括位于其他网络位置的设备或者内置于网络节点中, 其 实现该方法的流程与上述描述的流程相同。
本发明实施例提供一种频道切换的方法,通过网络缓存设备判断以单播 方式加速推送缓存的视频流是否与网络节点以组播方式向客户端推送的频 道的视频流同步, 来实现快速频道切换, 以及以单播方式动态调整所述推送 视频流的速率, 提高了客户端的并发连接数目和频道切换的效率, 降低了
IPTV 系统部署和运营的成本, 使得频道切换方案的普适性和可扩展性, 改 善了用户的体验程度。
如图 3所示,为本发明实施例中频道切换的另一种具体实现方式流程图, 详细描述客户端对于从网络缓存设备缓存的视频流切换到从网络节点上获 取的频道的视频流的过程中出现的少量丢包的应用场景, 具体包括以下步 骤:
步骤 300到步骤 307与本发明实施例图 2中的步骤 200到步骤 207相同, 详细步骤可以参考上面的描述, 这里就不再具体说明。
步骤 308, 客户端接收网络缓存设备以单播方式加速推送所述缓存的视 频流后, 对所述视频流检测。
具体为: 网络缓存设备根据客户端发送的从第一频道切换到第二频道的 频道切换请求, 将所述缓存的第二频道视频流发送给客户端, 客户端通过检 测所述接收的视频流的序列号, 判断是否有报文丢失, 获得所述接收的视频 流中丢失报文的序列号, 并将所述丢失报文的序列号、 当前客户端剩余缓冲 区大小、 网络带宽的利用率等信息的任意组合的检测结果反馈给网络缓存设 备。
这里的客户端接收到缓存的视频流后, 可以主动将所述丢失报文的序列 号、 当前客户端剩余缓冲区大小、 网络带宽的利用率等信息的任意组合反馈 给网络缓存设备, 也可以通过网络缓存设备发送消息给客户端, 通知客户端 返回所述频道的视频流的相关信息。
步骤 309, 客户端将所述检测结果反馈给网络缓存设备。
步骤 310, 网络缓存设备根据所述检测结果, 动态调整向客户端发送所 述缓存的视频流的发送速率。 具体为, 对客户端反馈的检测结果进行分析, 从而确定是提高或者降低 当前向客户端发送所述缓存的媒体流的发送速率, 例如, 通过所述检测结果 中的丢失报文的序列号,获知发送过程中报文丢包率,若此时丢包率比较高, 或者网络资源不足, 或者客户端剩余缓冲区较少, 则降低发送速率; 若此时 没有丢包, 且有足够的带宽资源, 且客户端剩余缓冲区较少, 则提高所述发 送速率, 充分利用网络资源, 缩短发送报文的时间, 减少了网络缓存设备处 理单个用户快速频道切换的时间, 提高了网络缓存设备并发数和用户体验程 度。
步骤 311,网络缓存设备以调整后的速率推送所述频道视频流给客户端。 步骤 312, 客户端向网络节点发送加入组播组请求。
这里可以是客户端主动向网络节点发送加入组播组请求, 也可以是网络 缓存设备通知客户端发送加入组播组的消息后, 客户端向网络节点发送加入 组播组请求; 如果是网络缓存设备通知客户端发送加入组播组的消息, 则具 体流程可以参照本发明实时例图 2中的步骤 208和步骤 210, 这里结合图 2 和图 3的方法是本发明的最优实施例。
步骤 314, 网络节点根据所述请求, 发送所述第二频道的视频流给客户
^山
¾。
具体步骤为: 网络节点接收到所述加入组播组请求后, 网络节点通知网 络缓存设备所述正准备向客户端发送的频道的视频流的报文的序列号, 若网 络缓存设备检测发现向客户端发送的缓存的视频流的报文和网络节点正准 备发送的频道的视频流之间还存在没有发送的报文, 网络缓存设备以低速率 发送所述还没有发送的缓存的视频流的报文;
若网络节点不能通知网络缓存设备时, 当客户端检测到正在接收的频道 的视频流与以前接收的缓存的视频流之间有丢包情况时,请求网路缓存设备 对没有发送的报文进行重发。
步骤 316, 当客户端从第二频道切换到第三频道时, 接收所述网络缓存 设备以所述调整后的发送速率发送的所述第三频道的视频流, 其中, 所述调 整后的发送速率通过在频道切换请求中携带的发送速率获得; 或者, 为所述 网络缓存设备本地存储获得。
需要强调的是, 本发明实施例中的网络缓存设备并不构成对本发明技术 方案的限定, 具有实现频道切换功能的设备可以为网络缓存设备, 但不限于 网络缓存设备, 还包括位于其他网络位置的设备或者内置于网络节点中, 其 实现该方法的流程与上述描述的流程相同。
本发明实施例采用客户端检测接收报文的情况, 向网络缓存设备反馈组 播 IP报文的接收情况, 从而通过网络缓存设备动态调整发送速率, 充分利 用网络资源, 缩短发送报文的时间, 减少频道切换的延时, 降低了 IPTV系 统部署和运营的成本, 提高了频道切换方案的普适性和可扩展性, 改善了用 户的体验程度。
如图 4所示, 为本发明实施例中的一种频道切换装置结构图, 包括: 缓存模块 402, 用于缓存频道的视频流。
具体来说, 缓存模块 402用于接收从头端设备发送给客户端的所有频道 的视频流, 对每个频道设置缓存空间, 缓存频道的视频流。 对每个频道的报 文, 可以只缓存一份数据。 由于每个频道的缓存空间是独立的, 因此, 当为 用户提供快速频道切换服务时,读取缓存的视频流的起始点不同不影响为其 他用户提供快速频道切换服务时读取缓存的视频流。
接收模块 404, 用于接收客户端发送的频道切换请求, 请求从第一频道 切换到第二频道。
用户希望切换频道时, 由客户端向网络节点发送频道切换请求, 请求从 第一频道切换到用户需要的第二频道。所述频道切换请求可以使用 RTCP协 议, 也可以使用 RTCP扩展协议, 或者其它专用或私有协议或者信令等。
推送模块 406, 用于根据接收模块 404发送的频道切换请求, 向所述客 户端推送所述缓存模块 402缓存的所述第二频道的视频流。 具体来说, 推送模块 406用于接收客户端发送的频道切换请求, 按照缓 存的视频流的接收顺序, 以单播方式向客户端推送缓存的请求切换到的频道 的视频流。第一个被推送的视频流, 是距离客户端请求切换到的频道的视频 流最近的客户端可独立解码报文。如 GOP起始报文,即 I帧,或者 PAT/PMT 报文。
这里网络缓存设备以单播方式加速推送缓存的视频流到客户端, 不仅仅 适用于客户端与某一网络节点直接相连的应用场景,还可以适用于客户端与 网络节点之间还有其他中间节点相连的应用场景, 这样可以避免因为客户端 与网络节点之间还有其他中间节点相连时, 使用其他方式推送缓存的视频流 到客户端, 导致无法将缓存的视频流推送到客户端的情况。
第一判断模块 408, 用于判断所述推送模块 406推送的缓存视频流与所 述第二频道的视频流是否同步。
所述缓存的视频流为由单播方式从网络缓存设备加速推动到客户端的 视频流 (或单播 IP报文); 所述频道的视频流为由组播方式从网络节点正常 发送到客户端的媒体流 (或组播 IP报文)。
其中, 这里所述的判断以单播方式加速推送缓存的视频流与网络节点正 向其他客户端发送的频道的视频流是否同步的步骤是非常关键的,主要是针 对网络缓存设备发送给客户端的缓存的视频流与网络节点正向其他客户端 发送的频道的视频流是有一定的延时的应用场景,所以单播方式加速推送缓 存的视频流何时能够追赶上网络节点正向其他客户端发送的频道的视频流 (即, 与网络节点向其他客户端发送的频道的视频流同步) 是非常关键的。 通过网络缓存设备来判断是否已经追赶上网络节点向其他客户端发送的频 道的视频媒体流, 从而可以准确确定客户端何时加入组播, 减少从单播加速 推动方式到用组播方式从网络节点向发送的频道的视频媒体流切换的时延。
第一通知模块 409, 用于当所述判断模块判断所述推送的缓存视频流与 所述第二频道的视频流同步, 则发送通知消息给所述客户端, 通知所述客户 端发送加入所述第二频道的组播组请求。
所述通知消息中携带所述第二频道的组播组地址信息、加入所述第二频 道的时间信息, 以及请求终止推送所述视频流的时间信息的任意一种或多种 信息组合, 例如至少包含一个时间参数, 用来表明在该时间后, 发起加入组 播, 若时间为 0, 表明客户端要立刻加入组播组。
所述装置进一步包括: 标记模块 412, 与缓存模块 402相连, 用于对所 述缓存模块缓存的视频流设置报文标记,标明终端可独立解码的视频流在缓 存中的起始位置 (如 I帧, IDR帧位置等)。
所述装置还进一步包括:
第二通知模块 410,用于通知所述客户端发送终止推送所述视频流请求。 和第一处理模块 411, 用于接收所述客户端发送的终止返回的缓存的视 频流请求后, 停止向所述客户端推送所述缓存视频流; 其中所述客户端返回 的终止发送缓存的视频流消息中携带有能够确认客户端在已接收的第二频 道组播视频流和已接收的缓存的第二频道视频流之间未发送报文的信息; 例 如: 网络节点通知网络缓存设备所述正准备向客户端发送的频道的视频流的 报文的序列号, 若网络缓存设备检测发现向客户端发送的缓存的视频流的报 文和网络节点正准备发送的频道的视频流之间还存在没有发送的报文, 网络 缓存设备以低速率发送所述还没有发送的缓存的视频流的报文。
以及降低速率模块 418, 用于所述第二通知模块通知所述客户端发送终 止推送所述视频流请求之前, 降低向所述客户端推送所述第二频道的缓存视 频流的发送速率。
当所述装置用于判断下一个用于客户端可独立解码的所述缓存的视频 流是否即将到来时, 所述装置还包括第二判断模块 414。
所述第二判断模块 414, 用于判断下一个客户端可独立解码的视频帧是 否到达, 并将所述判断结果发送给第二处理模块 415处理。
所述第二处理模块 415, 用于若所述第二判断模块 414判断下一个客户 端可独立解码的视频帧到达, 则直接通知客户端加入组播组; 否则将所述接 收模块 404发送的频道切换请求发送给所述推送模块 406进一步处理。
所述频道切换装置还包括: 速率调整模块 416, 与所述推送模块 406相 连接, 用于根据客户端的反馈, 动态调整以单播方式向所述客户端推送所述 缓存的视频流的发送速率。
需要强调的是, 本发明实施例中的频道切换装置并不构成对本发明技术 方案的限定, 具有实现频道切换装置可以为网络缓存设备, 但不限于网络缓 存设备, 还包括位于其他网络位置的设备或者内置于网络节点中, 其实现功 能与上述描述的功能相同。
本发明实施例提供一种频道切换装置,采用以单播方式加速推送缓存的 视频流的方法,通过网络缓存设备判断以单播方式加速推送缓存的视频流是 否与网络节点以组播方式向客户端推送的频道的视频流同步, 来实现快速频 道切换, 提高了客户端的并发连接数目和频道切换的效率, 降低了 IPTV系 统部署和运营的成本, 使得频道切换方案的普适性和可扩展性, 改善了用户 的体验程度。
如图 5所示, 为本发明实施例中的另一种频道切换装置结构图, 包括: 发送模块 502, 用于发送频道切换请求给网络缓存设备, 请求从第一频 道切换到第二频道;或者,发送加入所述第二频道的组播组请求给网络节点。
接收模块 504, 用于根据所述发送模块发送的频道切换请求, 接收所述 网络缓存设备缓存的所述第二频道的视频流; 或者, 根据发送模块发送的加 入组播组请求, 接收网络节点发送的所述第二频道的视频流。
检测模块 506, 用于根据接收模块 504接收的所述网络缓存设备缓存的 视频流后,检测所述接收的视频流,并将检测后的结果反馈给网络缓存设备, 以使得所述网络缓存设备根据所述检测后的结果, 动态调整向客户端发送所 述缓存的视频流的发送速率。
具体为: 当接收到所述缓存的视频流后, 通过检测所述接收的检测结果 包括: 所述接收到的视频流丢失信息、 客户端请求网络缓存设备的发送速率 或所述发送速率的增量的任意组合的检测结果反馈给网络缓存设备。
这里接收到缓存的视频流后, 可以主动将所述丢失报文的序列号、 当前 客户端剩余缓冲区大小、 网络带宽的利用率等信息的任意组合反馈给网络缓 存设备, 也可以通过网络缓存设备发送消息给客户端, 通知客户端返回所述 频道的视频流的相关信息。
当网络缓存设备接收到所述反馈的检测结果后进行分析, 从而确定是提 高或者降低当前向客户端发送所述缓存的媒体流的发送速率, 例如, 通过所 述检测结果中的丢失报文的序列号, 获知发送过程中报文丢包率, 若此时丢 包率比较高, 或者网络资源不足, 或者客户端剩余缓冲区较少, 则降低发送 速率; 若此时没有丢包, 且有足够的带宽资源, 且客户端剩余缓冲区较少, 则提高所述发送速率, 充分利用网络资源, 缩短发送报文的时间, 减少了网 络缓存设备处理单个用户快速频道切换的时间, 提高了网络缓存设备并发数 和用户体验程度。
所述发送模块 502还用于, 根据所述网络缓存单元发送的加入组播组请 求通知, 发送加入组播组请求给网络节点。
这里可以是发送模块主动向网络节点发送加入组播组请求, 也可以是网 络缓存设备通知发送模块发送加入组播组的消息后,发送模块向网络节点发 送加入组播组请求。
所述接收模块 504还用于, 当从第二频道切换到第三频道时, 接收所述 网络缓存设备以所述调整后的发送速率发送的所述第三频道的视频流, 其 中, 所述调整后的发送速率通过在频道切换请求中携带的发送速率获得; 或 者, 为所述网络缓存设备本地存储获得。
需要强调的是, 所述频道切换装置应用于客户端, 也可以应用于其他网 络设备。
本发明实施例通过提供的频道切换装置检测接收报文的情况, 向网络缓 存设备反馈组播 IP报文的接收情况, 从而通过网络缓存设备动态调整发送 速率, 充分利用网络资源, 缩短发送报文的时间, 减少频道切换的延时, 降 低了 IPTV系统部署和运营的成本, 提高了频道切换方案的普适性和可扩展 性, 改善了用户的体验程度。
如图 6所示, 为本发明实施例中的一种频道切换系统结构图, 包括: 网络缓存设备 604, 用于缓存频道的视频流; 接收所述客户端发送的频 道切换请求, 请求从第一频道切换到第二频道; 根据所述频道切换请求, 向 所述客户端推送所述第二频道的缓存视频流; 判断所述推送的缓存视频流与 所述第二频道的视频流是否同步,如果同步,则发送通知消息给所述客户端, 通知所述客户端发送加入所述第二频道的组播组请求。
其中所述缓存频道的视频流为组播源向客户端发送的视频流。组播源为 头端的一种设备, 即为频道媒体流发起的源头设备。 组播源获取视频流的方 式包括从卫星电视录制, 或者从其他有线网络转发。
网络节点 606, 用于根据客户端发送的加入组播组请求, 发送所述第二 频道的视频流给客户端。
客户端 608, 用于发送频道切换请求给所述网络缓存设备; 接收所述网 络缓存设备推送的缓存视频流; 根据所述网络缓存设备的通知, 发送加入所 述第二频道的组播组请求给网络节点, 请求加入所述组播组。
如图 6所述的一种频道切换系统结构图中, 所述网络缓存设备 604, 还 用于接收所述客户端反馈的检测结果,动态调整向客户端发送所述缓存的视 频流的发送速率。
所述客户端 606, 还用于接收并检测所述网络缓存设备 604发送的所述 第二频道的缓存视频流, 将检测结果反馈给网络缓存设备 604。
当所述接收的缓存视频流与所述第二频道的视频流同步, 则发送加入组 播组请求给网络节点, 并接收所述网络节点发送的所述频道的视频流。
本发明实施例提供一种频道切换系统,通过网络缓存设备判断以单播方 式加速推送缓存的视频流是否与网络节点以组播方式向客户端推送的频道 的视频流同步, 来实现快速频道切换, 以及以单播方式动态调整所述推送视 频流的速率,提高了客户端的并发连接数目和频道切换的效率,降低了 IPTV 系统部署和运营的成本, 使得频道切换方案的普适性和可扩展性, 改善了用 户的体验程度。
通过以上的实施方式的描述, 本领域的技术人员可以清楚地了解到本发 明可借助软件加必需的通用硬件平台的方式来或通过硬件来实现,基于这样 的理解, 本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以 软件产品的形式体现出来, 该计算机软件产品存储在一个存储介质中, 包括 若干指令用以使一台终端设备 (可以是手机, 个人计算机, 服务器, 或者网 络设备等) 执行本发明各个实施例所述的方法。
以上所述仅是本发明的优选实施方式, 应当指出, 对于本技术领域的普 通技术人员来说, 在不脱离本发明原理的前提下, 还可以做出若干改进和润 饰, 这些改进和润饰也应视本发明的保护范围。

Claims

权利要求书
1、 一种频道切换方法, 其特征在于, 包括:
发送频道切换请求给网络缓存设备, 请求切换到第二频道;
接收并检测所述网络缓存设备发送的所述第二频道的缓存视频流,将检 测结果反馈给所述网络缓存设备, 以使得所述网络缓存设备根据所述检测结 果, 动态调整向客户端发送所述缓存视频流的发送速率;
发送加入所述第二频道的组播组请求给网络节点;
接收所述网络节点发送的所述第二频道的视频流。
2、 根据权利要求 1所述的方法, 其特征在于, 所述检测结果包括: 所 述接收到的视频流丢失信息、客户端请求网络缓存设备的发送速率或者所述 发送速率的增量的任意组合。
3、 根据权利要求 1所述的方法, 其特征在于, 所述发送加入所述第二 频道的组播组请求给网络节点的步骤还包括:
根据所述网络缓存单元发送的加入组播组请求通知, 发送加入组播组请 求给网络节点。
4、 根据权利要求 1所述的方法, 其特征在于, 所述方法进一步包括: 当从第二频道切换到第三频道时,接收所述网络缓存设备以所述调整后 的发送速率发送的所述第三频道的视频流, 其中, 所述调整后的发送速率通 过在频道切换请求中携带的发送速率获得; 或者, 为所述网络缓存设备本地 存储获得。
5、 一种频道切换方法, 其特征在于, 包括:
缓存频道的视频流;
接收所述客户端发送的频道切换请求, 请求切换到第二频道; 根据所述频道切换请求, 向所述客户端推送所述第二频道的缓存视频 流;
判断所述推送的缓存视频流与所述第二频道的视频流是否同步, 如果同 步, 则发送通知消息给所述客户端, 通知所述客户端发送加入所述第二频道 的组播组请求。
6、 根据权利要求 5所述的方法, 其特征在于, 所述通知消息中携带所 述第二频道的组播组地址信息、 加入所述第二频道的时间信息, 以及请求终 止推送所述视频流的时间信息的任意一种或多种信息组合。
7、 根据权利要求 5所述的方法, 其特征在于, 所述发送通知消息给所 述客户端之前还包括:
降低向所述客户端推送所述第二频道的缓存视频流的发送速率。
8、 根据权利要求 5所述的方法, 其特征在于, 所述方法进一步包括: 通知所述客户端发送终止推送所述视频流请求;
接收所述客户端返回的终止发送缓存的视频流消息后, 停止向所述客户 端推送所述缓存的视频流。
9、 根据权利要求 8所述的方法, 其特征在于, 所述客户端返回的终止 发送缓存的视频流消息中携带有能够确认客户端在已接收的第二频道组播 视频流和已接收的缓存的第二频道视频流之间未发送报文的信息。
10、 根据权利要求 5所述的方法, 其特征在于, 所述缓存频道的视频流 的步骤之后还包括:
标明所述客户端可独立解码的视频帧在缓存中的起始位置。
11、 根据权利要求 5所述的方法, 其特征在于, 所述向所述客户端推送 所述第二频道的缓存视频流的步骤之前还包括:
判断下一个客户端可独立解码的视频帧是否到达; 如果到达, 则直接通 知所述客户端加入组播组。
12、 根据权利要求 5所述的方法, 其特征在于, 所述向所述客户端推送 所述第二频道的缓存视频流的步骤具体为:
以单播方式向所述客户端推送所述缓存视频流。
13、 根据权利要求 5所述的方法, 其特征在于, 所述向所述客户端推送 所述第二频道的缓存视频流的步骤具体还包括:
根据客户端的反馈, 动态调整向所述客户端推送所述缓存视频流的发送 速率。
14、 一种频道切换装置, 其特征在于, 包括:
发送模块, 用于发送频道切换请求给网络缓存设备, 请求切换到第二频 道; 或者, 发送加入所述第二频道的组播组请求给网络节点;
接收模块, 用于根据所述发送模块发送的频道切换请求, 接收所述网络 缓存设备缓存的所述第二频道的视频流; 或者, 根据发送模块发送的加入组 播组请求, 接收网络节点发送的所述第二频道的视频流;
检测模块, 用于根据接收模块接收的所述网络缓存设备的缓存视频流 后, 检测所述缓存视频流, 并将检测结果反馈给网络缓存设备, 以使得所述 网络缓存设备根据所述检测结果, 动态调整向客户端发送所述缓存的视频流 的发送速率。
15、 根据权利要求 14所述的装置, 其特征在于, 所述检测结果包括: 所述接收到的视频流丢失信息、客户端请求网络缓存设备的发送速率或所述 发送速率的增量的任意组合。
16、 根据权利要求 15所述的装置, 其特征在于, 所述发送模块还用于, 根据所述网络缓存单元发送的加入组播组请求通知,发送加入组播组请求给 网络节点。
17、 根据权利要求 15所述的装置, 其特征在于, 所述接收模块还用于: 当从第二频道切换到第三频道时,接收所述网络缓存设备以所述调整后 的发送速率发送的所述第三频道的视频流, 其中, 所述调整后的发送速率通 过在频道切换请求中携带的发送速率获得; 或者, 为所述网络缓存设备本地 存储获得。
18、 一种频道切换装置, 其特征在于, 包括:
缓存模块, 用于缓存频道的视频流; 接收模块,用于接收客户端发送的频道切换请求,请求切换到第二频道; 推送模块, 用于根据接收模块发送的频道切换请求, 向所述客户端推送 所述第二频道的缓存视频流;
第一判断模块,用于判断所述推送模块推送的缓存视频流与所述第二频 道的视频流是否同步;
第一通知模块,用于当所述判断模块判断所述推送的缓存视频流与所述 第二频道的视频流同步, 则发送通知消息给所述客户端, 通知所述客户端发 送加入所述第二频道的组播组请求。
19、 根据权利要求 18所述的装置, 其特征在于, 所述通知消息中携带 所述第二频道的组播组地址信息、 加入所述第二频道的时间信息, 以及请求 终止推送所述视频流的时间信息的任意一种或多种信息组合。
20、 根据权利要求 18所述的装置, 其特征在于, 所述装置进一步包括: 第二通知模块, 用于通知所述客户端发送终止推送所述视频流请求; 第一处理模块,用于根据所述第二通知模块接收所述客户端返回的终止 发送缓存的视频流请求后, 停止向所述客户端推送所述缓存视频流; 其中所 述客户端返回的终止发送缓存的视频流消息中携带有能够确认客户端在已 接收的第二频道组播视频流和已接收的缓存的第二频道视频流之间未发送 报文的信息。
21、 根据权利要求 20所述的装置, 其特征在于, 所述装置进一步还包 括:降低速率模块,用于通知所述客户端发送终止推送所述视频流请求之前, 降低向所述客户端推送所述第二频道的缓存视频流的发送速率。
22、 根据权利要求 18所述的装置, 其特征在于, 所述装置还包括: 标记模块, 用于对所述缓存模块缓存的视频流设置报文标记, 标明所述 客户端可独立解码的视频帧在缓存中的起始位置。
23、 根据权利要求 18所述的装置, 其特征在于, 所述装置还包括: 第二判断模块, 用于判断下一个客户端可独立解码的视频帧是否到达, 并将所述判断结果发送给第二处理模块处理;
第二处理模块,用于根据所述第二判断模块判断下一个用于客户端可独 立解码的所述缓存的视频流即将到来, 则直接通知客户端加入组播组; 否则 将所述接收模块发送的频道切换请求发送给所述推送模块。
24、 根据权利要求 18所述的装置, 其特征在于, 所述装置还包括: 速率调整模块, 用于根据客户端的反馈, 动态调整向所述客户端推送所 述缓存的视频流的发送速率。
25、 一种频道切换系统, 其特征在于, 包括:
网络缓存设备, 用于缓存频道的视频流; 接收所述客户端发送频道切换 请求; 根据所述频道切换请求, 向所述客户端推送所述述第二频道的缓存视 频流, 同时, 接收所述客户端反馈的检测结果, 动态调整向客户端发送所述 缓存的视频流的发送速率;
客户端,用于发送频道切换请求给网络缓存设备,请求切换到第二频道; 接收并检测所述网络缓存设备发送的所述第二频道的缓存视频流,将检测结 果反馈给网络缓存设备; 同时, 发送加入所述第二频道的组播组请求给网络 节点; 接收所述网络节点发送的所述第二频道的视频流。
26、 根据权利要求 25所述的系统, 其特征在于, 所述客户端还用于, 根据所述网络缓存单元发送的加入组播组请求通知,发送加入组播组请求给 网络节点。
27、 一种频道切换系统, 其特征在于, 包括:
网络缓存设备, 用于缓存频道的视频流; 接收所述客户端发送的频道切 换请求, 请求切换到第二频道; 根据所述频道切换请求, 向所述客户端推送 所述第二频道的缓存视频流; 判断所述推送的缓存视频流与所述第二频道的 视频流是否同步, 如果同步, 则发送通知消息给所述客户端, 通知所述客户 端发送加入所述第二频道的组播组请求;
客户端, 用于发送频道切换请求给所述网络缓存设备; 接收所述网络缓 存设备推送的缓存视频流; 根据所述网络缓存设备的通知, 发送加入所述第 二频道的组播组请求给网络节点, 请求加入所述组播组;
网络节点, 用于根据客户端发送的加入组播组请求, 发送所述第二频道 的视频流给客户端。
PCT/CN2009/073132 2008-12-12 2009-08-06 一种频道切换方法、装置和系统 WO2010066135A1 (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
ES09831412.3T ES2618337T3 (es) 2008-12-12 2009-08-06 Método, dispositivo y sistema de conmutación de canal
EP09831412.3A EP2369840B1 (en) 2008-12-12 2009-08-06 Channel switching method, device and system
US13/158,068 US8935736B2 (en) 2008-12-12 2011-06-10 Channel switching method, channel switching device, and channel switching system
US13/158,217 US20110239262A1 (en) 2008-12-12 2011-06-10 Channel switching method, channel switching device, and channel switching system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN200810218385.3 2008-12-12
CN200810218385 2008-12-12
CN200910004013.5A CN101753973B (zh) 2008-12-12 2009-01-21 一种频道切换方法、装置和系统
CN200910004013.5 2009-01-21

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US13/158,217 Continuation US20110239262A1 (en) 2008-12-12 2011-06-10 Channel switching method, channel switching device, and channel switching system
US13/158,068 Continuation US8935736B2 (en) 2008-12-12 2011-06-10 Channel switching method, channel switching device, and channel switching system

Publications (1)

Publication Number Publication Date
WO2010066135A1 true WO2010066135A1 (zh) 2010-06-17

Family

ID=42242326

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2009/073132 WO2010066135A1 (zh) 2008-12-12 2009-08-06 一种频道切换方法、装置和系统

Country Status (5)

Country Link
US (2) US20110239262A1 (zh)
EP (2) EP2385707B1 (zh)
CN (1) CN101753973B (zh)
ES (1) ES2618337T3 (zh)
WO (1) WO2010066135A1 (zh)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9106800B2 (en) * 2007-08-31 2015-08-11 At&T Intellectual Property I, L.P. System and method of monitoring video data packet delivery
CN101753973B (zh) * 2008-12-12 2013-01-02 华为技术有限公司 一种频道切换方法、装置和系统
US20110299442A1 (en) * 2010-06-04 2011-12-08 Sairamesh Nammi Methods and apparatus for controlling location for starting decoding of sub-packets of a communication packet
US20120023517A1 (en) * 2010-07-23 2012-01-26 Gemtek Technology Co., Ltd. Method and System for Measuring an Internet Protocol Television Channel Zapping Delay
CN102378042A (zh) * 2010-08-19 2012-03-14 正文科技股份有限公司 量测网络电视频道切换延迟的方法、系统及封包分析单元
CN102547448B (zh) * 2010-12-20 2014-03-19 中兴通讯股份有限公司 频道切换方法、终端及系统
CN102651823A (zh) * 2011-02-24 2012-08-29 中兴通讯股份有限公司 在快速频道切换时预先发送加入组播请求的方法和系统
CN102231848A (zh) * 2011-06-22 2011-11-02 中兴通讯股份有限公司 Iptv频道切换的方法及装置
CN102710968A (zh) * 2012-05-22 2012-10-03 袁华安 云电视系统中视频流同步方法
US9071853B2 (en) * 2012-08-31 2015-06-30 Google Technology Holdings LLC Broadcast content to HTTP client conversion
US9900629B2 (en) * 2013-03-13 2018-02-20 Apple Inc. Codec techniques for fast switching with intermediate sequence
CN103281566B (zh) * 2013-06-13 2016-09-14 天脉聚源(北京)传媒科技有限公司 一种视频切换的方法及装置
US20150012660A1 (en) * 2013-07-05 2015-01-08 Nokia Corporation Method and apparatus for quick content channel discovery, streaming, and switching
CN104469541A (zh) * 2013-09-18 2015-03-25 中兴通讯股份有限公司 一种iptv的频道切换方法和装置、终端
US9462308B2 (en) * 2013-10-17 2016-10-04 Crestron Electronics Inc. Audiovisual distribution network
CN105263066A (zh) * 2014-06-13 2016-01-20 珠海全志科技股份有限公司 移动设备视频流传输控制方法及系统
US10735823B2 (en) * 2015-03-13 2020-08-04 Telefonaktiebolaget Lm Ericsson (Publ) System and method for optimized delivery of live ABR media
US10432688B2 (en) 2015-03-13 2019-10-01 Telefonaktiebolaget Lm Ericsson (Publ) System and method for optimized delivery of live ABR media
CN105100888B (zh) * 2015-07-17 2017-12-19 上海斐讯数据通信技术有限公司 一种基于olt设备的iptv频道切换加速的方法
JP6819041B2 (ja) * 2015-09-10 2021-01-27 ソニー株式会社 サーバシステムおよびサーバ
US11336928B1 (en) * 2015-09-24 2022-05-17 Amazon Technologies, Inc. Predictive caching of identical starting sequences in content
CN105978847A (zh) * 2015-12-03 2016-09-28 乐视致新电子科技(天津)有限公司 一种数据同步方法和系统
CN106937155B (zh) * 2015-12-29 2020-06-02 北京华为数字技术有限公司 接入设备、因特网协议电视iptv系统和频道切换方法
CN107566855B (zh) * 2016-06-30 2020-11-10 华为技术有限公司 频道快速切换的方法、服务器和机顶盒
CN106454394B (zh) * 2016-08-03 2020-04-03 华为技术有限公司 一种dvb频道的快速切换方法以及设备和系统
CN110858925B (zh) * 2018-08-22 2021-10-15 华为技术有限公司 一种实现视频流切换的方法、设备、系统和存储介质
CN110891182B (zh) 2018-09-11 2022-04-12 华为技术有限公司 一种实现视频流切换的方法、装置和系统
US11812115B2 (en) * 2019-02-27 2023-11-07 British Telecommunications Public Limited Company Multicast assisted delivery
CN110505500A (zh) * 2019-08-06 2019-11-26 咪咕视讯科技有限公司 一种缓存数据发送处理方法及装置
CN110677724B (zh) * 2019-10-10 2022-02-18 普联技术有限公司 双模式数据拼接方法、装置及终端设备
GB2598295B (en) 2020-08-19 2023-02-22 British Telecomm Content delivery
CN113852856B (zh) * 2021-10-26 2024-04-26 天翼数字生活科技有限公司 一种快速切换频道的方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1842160A (zh) * 2005-04-01 2006-10-04 阿尔卡特公司 快速媒体频道转换机制及包括该机制的接入网节点
CN1881925A (zh) * 2006-05-10 2006-12-20 上海市电信有限公司 在因特协议音视频广播网络直播频道切换的方法及结构
US20070107026A1 (en) * 2005-02-23 2007-05-10 Sherer W P Fast channel change with conditional return to multicasting
CN1996813A (zh) * 2006-01-06 2007-07-11 撤克斯坦纳帷葛驯公司 用于区域/广域网络环境中连续媒体流的自适应媒体传输管理
CN101047838A (zh) * 2006-03-27 2007-10-03 中兴通讯股份有限公司 一种减少直播频道切换响应时间的方法
CN101132521A (zh) * 2007-09-25 2008-02-27 华为技术有限公司 一种实现iptv频道切换的方法和装置

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5606359A (en) * 1994-06-30 1997-02-25 Hewlett-Packard Company Video on demand system with multiple data sources configured to provide vcr-like services
JP3472659B2 (ja) * 1995-02-20 2003-12-02 株式会社日立製作所 映像供給方法および映像供給システム
US7992163B1 (en) * 1999-06-11 2011-08-02 Jerding Dean F Video-on-demand navigational system
US7010801B1 (en) * 1999-06-11 2006-03-07 Scientific-Atlanta, Inc. Video on demand system with parameter-controlled bandwidth deallocation
US6973081B1 (en) * 2000-10-12 2005-12-06 Realnetworks, Inc. System and method for seamlessly joining multicast session
US7974200B2 (en) * 2000-11-29 2011-07-05 British Telecommunications Public Limited Company Transmitting and receiving real-time data
US7158534B2 (en) * 2000-11-30 2007-01-02 Imajet Communications, Inc. Unified distributed architecture for a multi-point video conference and interactive broadcast systems
AU2001217236A1 (en) 2000-12-13 2002-06-24 Chun Hay Chan Method and system for delivering media selections through a network
US6973667B2 (en) * 2001-03-01 2005-12-06 Minerva Networks, Inc. Method and system for providing time-shifted delivery of live media programs
US20090282444A1 (en) * 2001-12-04 2009-11-12 Vixs Systems, Inc. System and method for managing the presentation of video
US7656908B1 (en) 2005-09-30 2010-02-02 At&T Corp. System and method for delivering content in a unicast/multicast manner
JP3900413B2 (ja) * 2002-02-14 2007-04-04 Kddi株式会社 映像情報伝送方式およびプログラム
US7603689B2 (en) * 2003-06-13 2009-10-13 Microsoft Corporation Fast start-up for digital video streams
US7562375B2 (en) * 2003-10-10 2009-07-14 Microsoft Corporation Fast channel change
US20060168632A1 (en) * 2004-02-20 2006-07-27 Yoshimasa Honda Video reception device, video transmission device, and video transmission system
US7430222B2 (en) * 2004-02-27 2008-09-30 Microsoft Corporation Media stream splicer
US20060020995A1 (en) * 2004-07-20 2006-01-26 Comcast Cable Communications, Llc Fast channel change in digital media systems
DE602004028616D1 (de) * 2004-09-16 2010-09-23 Alcatel Usa Sourcing Lp Abknallendmittel mit verbesserter Latenz
US7784076B2 (en) * 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
US7574490B2 (en) * 2004-11-20 2009-08-11 Microsoft Corporation Strategies for configuring a server-based information-transmission infrastructure
CN100499567C (zh) * 2004-12-02 2009-06-10 华为技术有限公司 视频组播业务中频道切换的实现方法
US7477653B2 (en) * 2004-12-10 2009-01-13 Microsoft Corporation Accelerated channel change in rate-limited environments
US7668914B2 (en) 2005-03-28 2010-02-23 Alcatel Lucent Milestone synchronization in broadcast multimedia streams
US8054849B2 (en) 2005-05-27 2011-11-08 At&T Intellectual Property I, L.P. System and method of managing video content streams
US7525965B1 (en) 2005-06-30 2009-04-28 Sun Microsystems, Inc. Trick play for multicast streams
US7472197B2 (en) * 2005-10-31 2008-12-30 Ut Starcom, Inc. Method and apparatus for automatic switching of multicast/unicast live TV streaming in a TV-over-IP environment
US8135040B2 (en) * 2005-11-30 2012-03-13 Microsoft Corporation Accelerated channel change
US20070130601A1 (en) * 2005-12-05 2007-06-07 Weiping Li Internet protocol (IP) television
US7818775B2 (en) * 2005-12-21 2010-10-19 At&T Intellectual Property I, L.P. System and method for recording and time-shifting programming in a television distribution system with limited content retention
US7885286B2 (en) * 2005-12-23 2011-02-08 Netsocket, Inc. Method and arrangements in an IP network
US8713195B2 (en) 2006-02-10 2014-04-29 Cisco Technology, Inc. Method and system for streaming digital video content to a client in a digital video network
US7965771B2 (en) * 2006-02-27 2011-06-21 Cisco Technology, Inc. Method and apparatus for immediate display of multicast IPTV over a bandwidth constrained network
US8037506B2 (en) * 2006-03-03 2011-10-11 Verimatrix, Inc. Movie studio-based network distribution system and method
US8160065B2 (en) * 2006-04-12 2012-04-17 Alcatel Lucent Device and method for dynamically storing media data
EP2011332B1 (en) * 2006-04-18 2012-05-30 Thomson Licensing Method for reducing channel change times in a digital video apparatus
EP1855478A1 (en) * 2006-05-09 2007-11-14 Alcatel Lucent Method for fast zapping between tv channels
US20070266403A1 (en) 2006-05-15 2007-11-15 Sbc Knowledge Ventures, L.P. System and method for personalized video program listing and targeted content advertisement
US8245264B2 (en) 2006-05-26 2012-08-14 John Toebes Methods and systems to reduce channel selection transition delay in a digital network
EP1868367B1 (en) * 2006-06-06 2015-12-09 Alcatel Lucent Fast video channel change
US8145778B2 (en) * 2006-07-28 2012-03-27 Cisco Technology, Inc. Method and system for transitioning streamed digital video content between stream servers in a digital video network
US8031701B2 (en) 2006-09-11 2011-10-04 Cisco Technology, Inc. Retransmission-based stream repair and stream join
US8769591B2 (en) 2007-02-12 2014-07-01 Cisco Technology, Inc. Fast channel change on a bandwidth constrained network
US20080201752A1 (en) * 2007-02-16 2008-08-21 At&T Knowledge Ventures, L.P. Multicast data packet recovery system
CN101267538B (zh) * 2007-03-15 2010-09-08 华为技术有限公司 一种切换网络电视频道的方法和系统
US7761902B2 (en) * 2007-05-11 2010-07-20 At&T Intellectual Property I, L.P. System and method of providing video content
CN101060617B (zh) 2007-05-22 2010-07-28 华为技术有限公司 一种视频点播控制方法、客户端设备和切换控制装置
US8396082B2 (en) * 2007-06-05 2013-03-12 Core Wireless Licensing S.A.R.L. Time-interleaved simulcast for tune-in reduction
US20090055540A1 (en) * 2007-08-20 2009-02-26 Telefonaktiebolaget Lm Ericsson (Publ) Methods and Systems for Multicast Control and Channel Switching for Streaming Media in an IMS Environment
US8554941B2 (en) 2007-08-30 2013-10-08 At&T Intellectual Property I, Lp Systems and methods for distributing video on demand
KR100880893B1 (ko) * 2007-09-14 2009-01-30 한국전자통신연구원 복수의 멀티캐스트를 이용한 iptv 고속 채널 전환을위한 장치 및 그 방법
US9032433B2 (en) * 2007-10-05 2015-05-12 Alcatel Lucent Personalized ad insertion during start over service
US8091011B2 (en) * 2007-10-09 2012-01-03 Broadcom Corporation Method and system for dynamically adjusting forward error correction (FEC) rate to adapt for time varying network impairments in video streaming applications over IP networks
EP2059044A3 (en) * 2007-11-07 2009-07-08 Huawei Technologies Co., Ltd. Method and system for IPTV time shift processing
US7986702B1 (en) * 2007-11-29 2011-07-26 Bigband Networks Inc. Method and system for streaming multimedia transmissions
CN101471805B (zh) * 2007-12-27 2012-12-12 华为技术有限公司 一种业务切换的方法、系统和设备
US8386629B2 (en) * 2007-12-27 2013-02-26 At&T Intellectual Property I, L.P. Network optimized content delivery for high demand non-live contents
US8185927B2 (en) * 2008-03-31 2012-05-22 Broadcom Corporation Video transmission system based on location data and methods for use therewith
US8014393B1 (en) * 2008-08-05 2011-09-06 Cisco Technology, Inc. Bandwidth optimized rapid channel change in IP-TV network
US8015310B2 (en) * 2008-08-08 2011-09-06 Cisco Technology, Inc. Systems and methods of adaptive playout of delayed media streams
US8752100B2 (en) * 2008-08-29 2014-06-10 At&T Intellectual Property Ii, Lp Systems and methods for distributing video on demand
US7830908B2 (en) 2008-11-03 2010-11-09 Cisco Technologies, Inc. Systems and methods of reducing delay in decoding
CN101742269A (zh) * 2008-11-17 2010-06-16 华为技术有限公司 一种频道切换方法、装置和系统
US10063934B2 (en) * 2008-11-25 2018-08-28 Rovi Technologies Corporation Reducing unicast session duration with restart TV
CN101753973B (zh) 2008-12-12 2013-01-02 华为技术有限公司 一种频道切换方法、装置和系统
WO2010096965A1 (zh) * 2009-02-27 2010-09-02 华为技术有限公司 一种频道切换的异常处理方法、终端设备及频道切换服务器
US20100254462A1 (en) * 2009-04-07 2010-10-07 Cisco Technology, Inc. Method for reducing memory usage with accelerated channel changes
US8161515B2 (en) * 2009-05-13 2012-04-17 Alcatel Lucent Fast channel change handling of late multicast join
US8848548B2 (en) * 2009-08-04 2014-09-30 Qualcomm Incorporated Internet radio broadcast using cellular
US9124513B2 (en) * 2009-09-30 2015-09-01 At&T Intellectual Property I, L.P. Load balancing multicast network traffic using virtual channels
KR101303549B1 (ko) * 2009-12-21 2013-09-03 한국전자통신연구원 사전 전송 방식을 이용한 주문형 비디오 서비스 시스템 및 그 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070107026A1 (en) * 2005-02-23 2007-05-10 Sherer W P Fast channel change with conditional return to multicasting
CN1842160A (zh) * 2005-04-01 2006-10-04 阿尔卡特公司 快速媒体频道转换机制及包括该机制的接入网节点
CN1996813A (zh) * 2006-01-06 2007-07-11 撤克斯坦纳帷葛驯公司 用于区域/广域网络环境中连续媒体流的自适应媒体传输管理
CN101047838A (zh) * 2006-03-27 2007-10-03 中兴通讯股份有限公司 一种减少直播频道切换响应时间的方法
CN1881925A (zh) * 2006-05-10 2006-12-20 上海市电信有限公司 在因特协议音视频广播网络直播频道切换的方法及结构
CN101132521A (zh) * 2007-09-25 2008-02-27 华为技术有限公司 一种实现iptv频道切换的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2369840A4 *

Also Published As

Publication number Publication date
ES2618337T3 (es) 2017-06-21
US20110239262A1 (en) 2011-09-29
EP2385707B1 (en) 2017-04-12
EP2369840B1 (en) 2016-12-14
EP2369840A4 (en) 2012-06-13
US8935736B2 (en) 2015-01-13
EP2385707A3 (en) 2012-02-29
EP2385707A2 (en) 2011-11-09
CN101753973B (zh) 2013-01-02
EP2369840A1 (en) 2011-09-28
US20110258674A1 (en) 2011-10-20
CN101753973A (zh) 2010-06-23

Similar Documents

Publication Publication Date Title
WO2010066135A1 (zh) 一种频道切换方法、装置和系统
US10034058B2 (en) Method and apparatus for distributing video
JP5930429B2 (ja) ファイル配信方式を使用したipブロードキャストストリーミングサービスの配信
WO2010054543A1 (zh) 一种频道切换方法、装置和系统
US11303682B2 (en) Adaptive bit rates in multicast communications
CN101316357B (zh) 一种频道切换的方法和终端
EP1926322A1 (en) System and method for fast digital channel changing
US8607286B2 (en) Method, equipment and system for reducing media delay
US20120140645A1 (en) Method and apparatus for distributing video
WO2010048825A1 (zh) 丢包抑制重传的方法、网络节点和系统
WO2008110122A1 (fr) Procédé, système et entité tampon de commutation de chaînes de téléréseau
WO2011022994A1 (zh) 组播实时传输协议会话快速接入的方法、装置及系统
US20200021867A1 (en) Broadcast signal transmitting and receiving method and device
WO2011137837A1 (zh) 一种快速频道切换时获取关键信息的方法、装置和系统
WO2012083841A1 (zh) 频道切换方法、终端及系统
JP5610743B2 (ja) コンテンツ受信方法及び装置
Bhat et al. Optimization of tune-in and end-to-end delay in DASH broadcast over ROUTE
JP2022550528A (ja) 適応ビットレートマルチキャストのための修復機構

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09831412

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2009831412

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2009831412

Country of ref document: EP