[go: up one dir, main page]

WO2009080114A1 - Method and apparatus for distributing media over a communications network - Google Patents

Method and apparatus for distributing media over a communications network Download PDF

Info

Publication number
WO2009080114A1
WO2009080114A1 PCT/EP2007/064447 EP2007064447W WO2009080114A1 WO 2009080114 A1 WO2009080114 A1 WO 2009080114A1 EP 2007064447 W EP2007064447 W EP 2007064447W WO 2009080114 A1 WO2009080114 A1 WO 2009080114A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
key
network
media
fragments
Prior art date
Application number
PCT/EP2007/064447
Other languages
French (fr)
Inventor
Andreas Ljunggren
Robert Skog
Original Assignee
Telefonaktiebolaget Lm Ericsson (Publ)
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 Telefonaktiebolaget Lm Ericsson (Publ) filed Critical Telefonaktiebolaget Lm Ericsson (Publ)
Priority to PCT/EP2007/064447 priority Critical patent/WO2009080114A1/en
Priority to GB1008236A priority patent/GB2468057A/en
Publication of WO2009080114A1 publication Critical patent/WO2009080114A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • 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/70Media network packetisation
    • 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/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1065Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT] 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/1085Resource delivery mechanisms involving dynamic management of active down- or uploading connections
    • 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • 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/643Communication protocols
    • H04N21/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications

Definitions

  • Linear content delivery in which all channels in a subscription are simultaneously delivered to a user's set top box (STB), is not suitable for IPTV, as IPTV has limited bandwidth available over a broadband connection.
  • a typical ADSL broadband connection provides a capacity of between 3 and 8 Mbps, and ADSL2 promises to deliver up to 25 Mbps downstream, whereas VDSL can provide a capacity of greater than 30 Mbps.
  • Standard quality MPEG 2 IPTV content requires 2 Mbps per channel, and HDTV will require around 8-10 Mbps per channel.
  • the MPEG 4 standard will approximately halve the bandwidth required to deliver IPTV content with the same quality. Nevertheless, the available bandwidth is a scarce resource, and IPTV solutions must limit the number of channels that can be delivered simultaneously.
  • FIG. 1 illustrates a known way of distributing media in which an IPTV media stream originates in a service provider network 1 , is passed to a core network 2, is further passed into a metro network 3, and finally is sent via access networks 4 to each home network 5 that contains an STB that wishes to receive the media stream.
  • Networks can quickly become saturated due to heavy traffic loads.
  • content can be multicast to reduce bandwidth demands for broadcast TV distribution.
  • Video on Demand (VoD) services can be handled by VoD cache servers located close to the end-user.
  • such caches require additional investment, and many routers would need to be replaced, as existing routers may not support IPTV multicasts.
  • IPTV media stream can be delivered to a STB from another STB, from a media injector from which the stream originates, or from any other peer in the network.
  • the IPTV P2P requires a media injector in order to introduce the IPTV media stream into the network, although the media injector is not a true peer in the network in the sense that it only sends data but does not receive data from the peers.
  • Figure 3 is a schematic representation of a simple IPTV P2P network 1.
  • the network 1 includes an IPTV back-end 6 and two STBs STB1 and STB2.
  • Each STB includes a P2P network interface 12, 13 to which is connected a video decoder 9, 11.
  • STB1 receives the IPTV media stream from both STB2 and the IPTV back-end 6, which injects either streaming content or content from a database 7 using a P2P media injector 8.
  • other network nodes may be peers in the network.
  • IPTV media stream is used herein to refer to any kind of data having real time requirements, and includes Video on Demand, user generated TV content, interactive TV, interactive or co-operative games, or audio media.
  • the media stream is to be delivered to the user such that the user can observe the media content at a constant rate without interruptions or delays.
  • MPEG media streams contain different frames, such as l-frames, P- frames and B-frames.
  • l-frames do not depend on data contained in the preceding or following frames, as they contain a complete picture.
  • P-frames provide more compression than l-frames because they utilize data contained in the previous l-frame or P-frame.
  • B-frames are similar to P- frames, except that B-frames interpolate data contained in the following frame as well as the preceding frame.
  • B-frames usually provide more compression than P-frames.
  • every 15th frame or so is an l-frame.
  • P-frames and B- frames might follow an l-frame as follows: IBBPBBPBBPBB(I). The order and number of frames in the sequence can be varied.
  • the media stream includes payload data and metadata.
  • the payload data is the media data itself, and is decoded and shown by the receiver.
  • Payload data typically comprises frames as described above.
  • the metadata includes all other data in the media stream. This may be, for example, data describing the payload data, or information establishing signalling between two peers.
  • the media stream is sent in "fragments". Fragments are discrete portions of the media stream containing both the payload data and the metadata.
  • a node for delivering streaming media in a non-linear network, when the media is encoded into a plurality of key frames separated by subsidiary frames.
  • the peer node comprises a buffer arranged to store fragments containing media frames (and usually also metadata).
  • a receiver is arranged to receive a media subscription request from another peer in the network.
  • a controller is arranged to select a key fragment stored in the buffer, said key fragment containing all or part of a key frame, and a transmitter is arranged to send the selected key fragment to the other peer node.
  • the selected key fragment may also include metadata, which may identify that the fragment contains all or part of a key frame.
  • each fragment could correspond exactly to one frame, if the data is not fragmented.
  • the initial selection of key fragment(s) containing a key frame may include the selection of fragment(s) containing two or more key frames, which are all sent to the other node.
  • a method for distributing streaming media in a non-linear network preferably an IPTV P2P network, when the media is encoded into fragments comprising a plurality of key frames separated by subsidiary frames and stored in a buffer in a first node in the network.
  • the method comprises sending a media subscription request from a second node in the network to the first node.
  • One or more key fragments stored in the buffer of the first node are selected, said one or more key fragments containing a key frame.
  • the selected key fragment(s) are sent from the first peer node to the second peer node, where it or they are decoded to recover the key frame.
  • a picture can then be displayed.
  • apparatus for use in a network comprising means for performing a method according to the third aspect of the present invention.
  • a program which, when loaded into an apparatus, causes the apparatus to become an apparatus according to the fourth aspect of the present invention.
  • the program may be carried on a carrier medium, which may be a storage medium or a transmission medium.
  • an apparatus programmed by a program according to the fifth or sixth aspect of the present invention.
  • Figure 3 illustrates schematically in a block diagram a media injector and two Set Top
  • Figure 4 illustrates schematically in a block diagram the signalling required to initiate an
  • Figure 6 illustrates schematically in a block diagram keep alive messages sent by a Set
  • Figure 7 illustrates the initial delivery of a fragment containing a key frame to a Set Top Box
  • Figure 8 is a schematic block diagram of a STB
  • Figure 9 is a schematic illustration of a buffer
  • Figure 10 is a flow diagram illustrating the delivery of media to a STB.
  • FIG. 4 illustrates typical signalling required to initiate an IPTV broadcast with a first STB STB1.
  • the video decoder 9 in STB1 receives an instruction from a user to start channel X. This is relayed to the P2P network interface 12 in STB1 , which sends a request to a STB manager 10 in the IPTV back-end to join channel X.
  • the STB Manager 10 returns a peer list to the network interface 12 in STB1 , but no IPTV media stream.
  • the peer list includes the P2P media injector 8. Since the media injector can be considered as a peer in the network it is hereinafter referred to as STBO.
  • the network interface 12 in STB1 then sends a request to join channel X to STBO.
  • STBO receives an IPTV media stream from an IPTV media stream source (for example from the database 7 shown in Figure 3), and sends a peer list and an IPTV media stream comprising fragments of frames to the network interface 12 of STB1.
  • the network interface 12 sends the frames to the video decoder 9 in STB1 , which can then show the IPTV media stream to the user.
  • Figure 5 illustrates typical signalling required to initiate an IPTV broadcast with a further STB STB2.
  • STB1 is already receiving an IPTV media stream from STBO.
  • the network interface 13 in STB2 sends a request join channel X to the STB manager 10.
  • the STB manager 10 returns a peer list but no payload to STB2.
  • the peer list includes STBO and STB1 , as these are both possible sources for the IPTV media stream.
  • the network interface 13 in STB2 then sends a request to each of STBO and STB1 to join channel X.
  • STBO and STB1 each send a peer list and IPTV data stream to the network interface 13 in STB2, which passes the frames of the IPTV media stream to the video decoder.
  • All peers in the P2P network may send each other "keep alive" messages, as illustrated in Figure 6, to ensure that each STB is included in the list of peers and can both send and receive IPTV media streams.
  • Figure 7 illustrates the signalling required to ensure a fast channel switch.
  • STB2 is subscribed to channel X, and is currently receiving media from STBO but not STB1 (using the references of Figure 5).
  • STB1 is currently subscribed to channel Y.
  • the user of STB2 requests a channel change (e.g. to channel Y)
  • she sends an instruction to her video decoder 1 1 , which is relayed to the network interface 13 in STB2.
  • the network interface 13 of STB2 sends a request to STB1 to subscribe to channel Y.
  • STB1 immediately looks into its buffer to find a media fragment or fragments containing a suitable key frame with which to start the streaming, and sends the fragment(s) containing the key frame, together with any other metadata that is required (e.g. an indication that this fragment contains a key frame) back to STB2.
  • the network interface 13 of STB2 decodes the fragments and passes the key frame directly to the video decoder 1 1. This allows STB2 to show a picture to the viewer almost instantly, thus allowing for extremely fast channel switching times.
  • T time between the initial channel change instruction and the picture appearing: this will be determined by the network speed, and the processing speed of STB2.
  • Theoretically a channel change can be in the range of milliseconds.
  • the network interface 13 of STB2 also sends a request for additional content to the STB1 , and additional fragments are then sent from STB1 to STB2. These fragments may be sent in a continuous stream, or in response to additional requests sent by STB2. The frames contained in the additional fragments are passed to the video decoder 11 for display.
  • Figure 8 is a schematic illustration of a buffer 21 ofSTBL
  • the buffer 21 contains fragments 38-47 containing frames of a media channel. Each fragment may contain part of a frame, or a whole frame, or more than one frame.
  • the buffer may be a sliding buffer or ring buffer, or any suitable type known in the art, and it will be appreciated that Figure 8 effectively shows a "snapshot" in time, and the fragments contained in the buffer will change over time.
  • the fragments are fetched from STBO and uploaded into the buffer.
  • the fragment most recently stored into the buffer is fragment 47: beyond this the buffer contains empty fragments.
  • Some of the fragments held in the buffer contain a key frame: in this example, such fragments are marked in bold, as 40I.
  • a frame contained in fragment 45 is passed to the video decoder for decoding and display.
  • the fragments containing frames of that channel are sent to that peer.
  • the first fragment to be sent will not be fragment 45, but a fragment in the buffer containing a key frame: in this case, data transmission to STB2 will begin with fragment 40I.
  • the receiver may be implemented as a software module in a television set, which will then be able to receive IPTV from the network and display it to the user.
  • the set-top box is implemented as a software module, for example in a personal computer or other terminal having data processing capabilities.
  • the stream can then be forwarded from the set-top box to any display unit, including a television set, or the computer's own display for display to the user.
  • Figure 10 is a flow diagram illustrating a sequence of actions when a new channel subscription request is received at a peer in the network.
  • S3 The fragment or fragments containing the identified key frame(s), together with any associated metadata, is sent to the requesting node.

Landscapes

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

Abstract

A method and apparatus for distributing media over a P2P IPTV network is described. The media is encoded into fragments comprising a plurality of key frames separated by subsidiary frames. The fragments are stored in a buffer in a first node in the network. The method includes sending a new channel subscription request from a second node in the network to the first node. One or more key fragments containing a key frame are selected from the fragments stored in the buffer at the first node, and sent to the second node. The second node decodes the fragment(s) to recover the key frame and display a corresponding picture. This reduces delay when channels are changed by the user.

Description

Method and Apparatus for Distributing Media over a Communications Network
TECHNICAL FIELD
The invention relates to the field of distributing media over a communications network, and in particular to distribution of IPTV using a Peer to Peer communications network.
BACKGROUND
TV services broadcast over an IP network are referred to as IPTV. IPTV is typically broadcast using a broadband access network, in which channels are transmitted over a broadband network from a super head-end down to an end-user's set top box (STB).
Linear content delivery, in which all channels in a subscription are simultaneously delivered to a user's set top box (STB), is not suitable for IPTV, as IPTV has limited bandwidth available over a broadband connection. A typical ADSL broadband connection provides a capacity of between 3 and 8 Mbps, and ADSL2 promises to deliver up to 25 Mbps downstream, whereas VDSL can provide a capacity of greater than 30 Mbps. Standard quality MPEG 2 IPTV content requires 2 Mbps per channel, and HDTV will require around 8-10 Mbps per channel. The MPEG 4 standard will approximately halve the bandwidth required to deliver IPTV content with the same quality. Nevertheless, the available bandwidth is a scarce resource, and IPTV solutions must limit the number of channels that can be delivered simultaneously.
Figure 1 illustrates a known way of distributing media in which an IPTV media stream originates in a service provider network 1 , is passed to a core network 2, is further passed into a metro network 3, and finally is sent via access networks 4 to each home network 5 that contains an STB that wishes to receive the media stream. Networks can quickly become saturated due to heavy traffic loads. In order to mitigate this problem, content can be multicast to reduce bandwidth demands for broadcast TV distribution. Furthermore, Video on Demand (VoD) services can be handled by VoD cache servers located close to the end-user. However, such caches require additional investment, and many routers would need to be replaced, as existing routers may not support IPTV multicasts. It is known to distribute an IPTV service using a Peer to Peer (P2P) network, as illustrated in Figure 2. Each STB is a peer in the network. An IPTV media stream can be delivered to a STB from another STB, from a media injector from which the stream originates, or from any other peer in the network.
The IPTV P2P requires a media injector in order to introduce the IPTV media stream into the network, although the media injector is not a true peer in the network in the sense that it only sends data but does not receive data from the peers. This is illustrated in Figure 3, which is a schematic representation of a simple IPTV P2P network 1. The network 1 includes an IPTV back-end 6 and two STBs STB1 and STB2. Each STB includes a P2P network interface 12, 13 to which is connected a video decoder 9, 11. In this example, STB1 receives the IPTV media stream from both STB2 and the IPTV back-end 6, which injects either streaming content or content from a database 7 using a P2P media injector 8. Note that other network nodes (in addition to nodes in STBs) may be peers in the network.
Note that the term "IPTV media stream" is used herein to refer to any kind of data having real time requirements, and includes Video on Demand, user generated TV content, interactive TV, interactive or co-operative games, or audio media. The media stream is to be delivered to the user such that the user can observe the media content at a constant rate without interruptions or delays. There is some latency in the P2P network, caused by buffers in each STB and the time it takes to establish communication between peers.
Compressed video media generally consists of a series of frames containing the information to be displayed on a user's screen. Each frame can be considered as a "picture" displayed on the screen. In most video compression formats, such as in ITU- T VCEG or ISO/IEC MPEG video standards, only the differences between successive pictures are usually encoded. For example, in a scene in which a person walks past a stationary background, only the moving portions of the picture are represented in each frame (either using motion compensation or as image data or as a combination of the two, depending on which representation requires fewer bits to adequately represent the picture). The parts of the scene that are not changing do not need to be sent repeatedly. However, it is still necessary for compressed media data to include some frames containing "complete" pictures, i.e. pictures encoded without reference to any pictures except themselves. These are included periodically in the media stream. Such frames are known as "l-frames" ("intra-frames")or "key frames".
For example, MPEG media streams contain different frames, such as l-frames, P- frames and B-frames. l-frames do not depend on data contained in the preceding or following frames, as they contain a complete picture. P-frames provide more compression than l-frames because they utilize data contained in the previous l-frame or P-frame. When generating a P-frame, the preceding frame is reconstructed and altered according to incremental extrapolation information. B-frames are similar to P- frames, except that B-frames interpolate data contained in the following frame as well as the preceding frame. As a result, B-frames usually provide more compression than P-frames. In some systems, every 15th frame or so is an l-frame. P-frames and B- frames might follow an l-frame as follows: IBBPBBPBBPBB(I). The order and number of frames in the sequence can be varied.
When an end user of a linear broadcast system wishes to change channel, his STB will generally transmit a request for subscription to the new channel. Most linear broadcast systems require that the STB begins its subscription to the new channel at the point in time that the new subscription request is transmitted. However, the video decoder at the STB cannot begin to decode the media so as to display a picture until a key frame (or, in some cases two or more key frames) has been received. The user must therefore wait until the next key frame(s) have been received before he can start watching the channel. For example, for some MPEG feeds, key frames are sent every 2 seconds. In this case the user might be forced to wait up to 4 seconds before he can actually see the channel. Generally speaking, key frames should be as widely spaced as possible to reduce the total quantity of data requiring transmission. However, the more widely spaced the key frames, the greater the delay on channel switching.
The media stream includes payload data and metadata. The payload data is the media data itself, and is decoded and shown by the receiver. Payload data typically comprises frames as described above. The metadata includes all other data in the media stream. This may be, for example, data describing the payload data, or information establishing signalling between two peers. In order to facilitate handling of the media stream, the media stream is sent in "fragments". Fragments are discrete portions of the media stream containing both the payload data and the metadata.
There is thus a need for a system enabling a faster change of channel for a user.
SUMMARY
In a P2P network or any other nonlinear media delivery system it is possible to make a more intelligent choice where data processing should begin, to ensure that a picture can be seen as soon as possible after a new channel has been selected. This can be facilitated by the peers or the media injection system.
In accordance with a first aspect of the present invention there is provided a node for delivering streaming media in a non-linear network, when the media is encoded into a plurality of key frames separated by subsidiary frames. The peer node comprises a buffer arranged to store fragments containing media frames (and usually also metadata). A receiver is arranged to receive a media subscription request from another peer in the network. A controller is arranged to select a key fragment stored in the buffer, said key fragment containing all or part of a key frame, and a transmitter is arranged to send the selected key fragment to the other peer node. The selected key fragment may also include metadata, which may identify that the fragment contains all or part of a key frame. Of course, in some systems each fragment could correspond exactly to one frame, if the data is not fragmented.
It will be appreciated that some media compression systems require more than one key frame to generate a complete picture at the end user. If this is the case, the initial selection of key fragment(s) containing a key frame may include the selection of fragment(s) containing two or more key frames, which are all sent to the other node.
Once the key fragment(s) containing a key frame or frames have been sent to the other node, the rest of the data, including fragments containing subsidiary frames, may preferably follow. This may be in the form of a continuous media stream, or in response to individual requests from the other node. Since the first fragment(s) to be sent are the key fragment(s) containing key frame(s), the picture can be displayed at the other node as soon as they have been received. Preferably the network is an IPTV P2P network, and the media subscription request may be a channel subscription request for a new channel. The node may be a media injector, or may alternatively be a peer node such as an STB. The technique is also applicable to top down and store and forward networks.
In accordance with a second aspect of the present invention there is provided a node for receiving streaming media in a non-linear network, when the media encoded into a plurality of key frames separated by subsidiary frames. The node comprises a transmitter arranged to send a request to another node in the network for a key fragment, the key fragment containing all or part of a key frame. A receiver is arranged to receive the key fragment, and subsequent fragments, from the other node. A buffer is arranged to store the received fragments, and a controller is arranged to decode the key frame and forward it to a media decoder for display.
In accordance with a third aspect of the present invention there is provided a method for distributing streaming media in a non-linear network, preferably an IPTV P2P network, when the media is encoded into fragments comprising a plurality of key frames separated by subsidiary frames and stored in a buffer in a first node in the network. The method comprises sending a media subscription request from a second node in the network to the first node. One or more key fragments stored in the buffer of the first node are selected, said one or more key fragments containing a key frame. The selected key fragment(s) are sent from the first peer node to the second peer node, where it or they are decoded to recover the key frame. A picture can then be displayed.
According to a fourth aspect of the present invention, there is provided apparatus for use in a network, the apparatus comprising means for performing a method according to the third aspect of the present invention.
According to a fifth aspect of the present invention, there is provided a program for controlling an apparatus to perform a method according to the third aspect of the present invention.
According to a sixth aspect of the present invention there is provided a program which, when loaded into an apparatus, causes the apparatus to become an apparatus according to the fourth aspect of the present invention. The program may be carried on a carrier medium, which may be a storage medium or a transmission medium.
According to a seventh aspect of the present invention, there is provided an apparatus programmed by a program according to the fifth or sixth aspect of the present invention.
According to an eighth aspect of the present invention, there is provided a storage medium containing a program according to the fifth or sixth aspect of the present invention.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 illustrates schematically in a block diagram an architecture for the distribution of IPTV;
Figure 2 illustrates schematically in a block diagram an architecture for the distribution of I PTV in a peer to peer network;
Figure 3 illustrates schematically in a block diagram a media injector and two Set Top
Boxes;
Figure 4 illustrates schematically in a block diagram the signalling required to initiate an
IPTV broadcast with a first Set Top Box; Figure 5 illustrates schematically in a block diagram the signalling required to initiate an
IPTV broadcast with a further Set Top Box;
Figure 6 illustrates schematically in a block diagram keep alive messages sent by a Set
Top Box;
Figure 7 illustrates the initial delivery of a fragment containing a key frame to a Set Top Box;
Figure 8 is a schematic block diagram of a STB;
Figure 9 is a schematic illustration of a buffer; and
Figure 10 is a flow diagram illustrating the delivery of media to a STB.
DETAILED DESCRIPTION
The following description sets forth specific details, such as particular embodiments, procedures, techniques, etc. for purposes of explanation and not limitation. In some instances, detailed descriptions of well known methods, interfaces, circuits, and devices are omitted so as not obscure the description with unnecessary detail. Moreover, individual blocks are shown in some of the drawings. It will be appreciated that the functions of those blocks may be implemented using individual hardware circuits, using software programs and data, in conjunction with a suitably programmed digital microprocessor or general purpose computer, using application specific integrated circuitry, and/or using one or more digital signal processors.
Figure 4 illustrates typical signalling required to initiate an IPTV broadcast with a first STB STB1. The video decoder 9 in STB1 receives an instruction from a user to start channel X. This is relayed to the P2P network interface 12 in STB1 , which sends a request to a STB manager 10 in the IPTV back-end to join channel X. The STB Manager 10 returns a peer list to the network interface 12 in STB1 , but no IPTV media stream. The peer list includes the P2P media injector 8. Since the media injector can be considered as a peer in the network it is hereinafter referred to as STBO. The network interface 12 in STB1 then sends a request to join channel X to STBO. STBO receives an IPTV media stream from an IPTV media stream source (for example from the database 7 shown in Figure 3), and sends a peer list and an IPTV media stream comprising fragments of frames to the network interface 12 of STB1. The network interface 12 sends the frames to the video decoder 9 in STB1 , which can then show the IPTV media stream to the user.
Figure 5 illustrates typical signalling required to initiate an IPTV broadcast with a further STB STB2. It is assumed that STB1 is already receiving an IPTV media stream from STBO. When the user of STB2 wishes to receive channel X, she sends an instruction to logic within STB2, which is relayed to the network interface 13 in STB2. The network interface 13 in STB2 sends a request join channel X to the STB manager 10. The STB manager 10 returns a peer list but no payload to STB2. The peer list includes STBO and STB1 , as these are both possible sources for the IPTV media stream. The network interface 13 in STB2 then sends a request to each of STBO and STB1 to join channel X. STBO and STB1 each send a peer list and IPTV data stream to the network interface 13 in STB2, which passes the frames of the IPTV media stream to the video decoder.
All peers in the P2P network may send each other "keep alive" messages, as illustrated in Figure 6, to ensure that each STB is included in the list of peers and can both send and receive IPTV media streams. Figure 7 illustrates the signalling required to ensure a fast channel switch. Suppose STB2 is subscribed to channel X, and is currently receiving media from STBO but not STB1 (using the references of Figure 5). Suppose also that STB1 is currently subscribed to channel Y. When the user of STB2 requests a channel change (e.g. to channel Y), she sends an instruction to her video decoder 1 1 , which is relayed to the network interface 13 in STB2. Following signalling with the STB manager (not shown in Figure 7) the network interface 13 of STB2 sends a request to STB1 to subscribe to channel Y.
As long as no preferred starting point is requested, STB1 immediately looks into its buffer to find a media fragment or fragments containing a suitable key frame with which to start the streaming, and sends the fragment(s) containing the key frame, together with any other metadata that is required (e.g. an indication that this fragment contains a key frame) back to STB2. The network interface 13 of STB2 decodes the fragments and passes the key frame directly to the video decoder 1 1. This allows STB2 to show a picture to the viewer almost instantly, thus allowing for extremely fast channel switching times. In practice there will be a delay T between the initial channel change instruction and the picture appearing: this will be determined by the network speed, and the processing speed of STB2. Theoretically a channel change can be in the range of milliseconds.
As well as passing the key frame to the video decoder 11 , the network interface 13 of STB2 also sends a request for additional content to the STB1 , and additional fragments are then sent from STB1 to STB2. These fragments may be sent in a continuous stream, or in response to additional requests sent by STB2. The frames contained in the additional fragments are passed to the video decoder 11 for display.
It will be appreciated that there are variations between video compression systems in the way that the "intermediate" frames - i.e. those between the key frames - are used.
As previously discussed, some systems employ historic and predictive encoding (often known as "P" and "B" frames). If this is the case, it will be necessary to send fragment(s) containing two or more key frames from STB1 to STB2, rather than just one, to generate the initial picture and use subsequent intermediate frames so that the video can begin playing immediately. It will also be appreciated that, although Figure 7 illustrates STB2 subscribing to a new channel currently being shown by STB1 , the same process can be used to subscribe to a channel from any other peer in the network, including directly from a media injector (e.g. STBO shown in Figure 5).
Figure 8 is a schematic illustration of a buffer 21 ofSTBL The buffer 21 contains fragments 38-47 containing frames of a media channel. Each fragment may contain part of a frame, or a whole frame, or more than one frame. The buffer may be a sliding buffer or ring buffer, or any suitable type known in the art, and it will be appreciated that Figure 8 effectively shows a "snapshot" in time, and the fragments contained in the buffer will change over time. The fragments are fetched from STBO and uploaded into the buffer. In this example, the fragment most recently stored into the buffer is fragment 47: beyond this the buffer contains empty fragments. Some of the fragments held in the buffer contain a key frame: in this example, such fragments are marked in bold, as 40I. A frame contained in fragment 45 is passed to the video decoder for decoding and display.
If a subscription request to this channel is received from another peer in the network, the fragments containing frames of that channel are sent to that peer. However, the first fragment to be sent will not be fragment 45, but a fragment in the buffer containing a key frame: in this case, data transmission to STB2 will begin with fragment 40I.
It will be appreciated that the same system will apply if STB2 fetches fragments from any peer node with a buffer, including a media injector. Instead of sending the most recent fragment currently stored, the media injector would send a suitable fragment or fragments containing a key frame.
Figure 9 illustrates a set-top box 31 , which may be any of the STBs shown in the other figures. In addition to the functions normally found in a set-top box known in the art, the set-top box 31 comprises a buffer 33 for storing fragments, containing frames, and meta data received from media injectors and/or other set-top boxes or other peers, as discussed above. The set-top box 31 also comprises a transmitter unit 35 and a receiver unit 37, connected to the buffer 33, for communicating with the other set-top boxes in the network. The set-top box 31 also comprises a control unit for controlling the functions of the transmitter unit 35, the receiver unit 37 and the buffer 33. In particular, when a request is received from another peer in the network to subscribe to a channel with fragments currently stored in the buffer 33, the controller ensures that the first fragment(s) contain a key frame.
The receiver may be implemented as a software module in a television set, which will then be able to receive IPTV from the network and display it to the user. Alternatively, the set-top box is implemented as a software module, for example in a personal computer or other terminal having data processing capabilities. The stream can then be forwarded from the set-top box to any display unit, including a television set, or the computer's own display for display to the user.
Figure 10 is a flow diagram illustrating a sequence of actions when a new channel subscription request is received at a peer in the network.
S1 : The channel subscription request is received.
S2: A suitable key frame(s) currently stored for that channel is identified. The most suitable key frame may not be the oldest frame stored, nor the most recent, but somewhere in between.
S3: The fragment or fragments containing the identified key frame(s), together with any associated metadata, is sent to the requesting node.
S4: Subsequent fragments are sent, either in a continuous media stream or in response to further requests.
It will be appreciated that, because the methods described above increase the speed at which a channel switch can be made, they also enable a reduction in frequency of key frames in the video encoding. Since a user switching channel will always proceed straight to a key frame, there do not need to be as many key frames overall in the media. The period between key frames can thus be greatly increased.
It will be appreciated that variations from the above described embodiments may still fall within the scope of the claims. For example, the set top boxes have all been described as including "video decoders" but it will be appreciated that decoding for any form of media may be envisaged. It will also be appreciated that the above described embodiments have been described with reference to P2P IPTV networks, but the invention may also be used in other nonlinear environments, for example top down networks and store and forward networks.
Although various embodiments have been shown and described in detail, the claims are not limited to any particular embodiment or example. None of the above description should be read as implying that any particular element, step, or function is essential such that it must be included in the claims' scope. The scope of protection is defined by the claims.

Claims

CLAIMS:
1. A node for delivering streaming media in a non-linear network, the media encoded into a plurality of key frames separated by subsidiary frames, the node comprising: a buffer arranged to store fragments containing media frames; a receiver arranged to receive a media subscription request from another node in the network; a controller arranged to select a key fragment stored in the buffer, said key fragment containing all or part of a key frame; and a transmitter arranged to send the selected key fragment to the other node.
2. The node of claim 1 , wherein the selected key fragment includes metadata identifying the fact that it contains all or part of a key frame.
3. The node of claim 1 or 2, wherein the controller is arranged to select a fragment or fragments containing more than one key frame when selecting the key fragment.
4. The node of any preceding claim, wherein the controller and transmitter are arranged to select, and send to the other node, fragments containing subsequent subsidiary frames following the selected key frame.
5. The node of any preceding claim, wherein the key fragment contains all or part of the optimal key frame stored in the buffer for sending to the other node.
6. The node of any preceding claim, wherein the network is an IP Television Peer-to-Peer network.
7. The node of claim 6, wherein the media subscription request is a channel subscription request for a new IPTV channel.
8. The node of claim 6 or 7, which node is a media injector.
9. A node for receiving streaming media in a non-linear network, the media encoded into a plurality of key frames separated by subsidiary frames, the node comprising: a transmitter arranged to send a request to another node in the network for a key fragment, the key fragment containing all or part of a key frame; a receiver arranged to receive the key fragment, and subsequent fragments, from the other node; a buffer arranged to store the received fragments; a controller arranged to decode the key frame and forward it to a media decoder for display.
10. The node of claim 6, 7 or 9, which node is a peer node.
1 1. The node of claim 10, which node is a set top box.
12. The node of any preceding claim, wherein the network includes store and forward nodes for IPTV distribution.
13. A method for distributing streaming media in a non-linear network, the media encoded into fragments comprising a plurality of key frames separated by subsidiary frames and stored in a buffer in a first node in the network, the method comprising: sending a media subscription request from a second node in the network to the first node; selecting one or more key fragments stored in the buffer of the first node, said one or more key fragments containing a key frame; sending the selected one or more key fragments from the first node to the second node; at the second node, decoding the selected one or more key fragments to recover the key frame and displaying a corresponding picture.
14. The method of claim 13, further comprising sending fragments containing media frames subsequent to the selected key frame from the first node to the second node.
15. The method of claim 13 or 14, wherein selecting one or more key fragments includes selecting one or more fragments containing a plurality of key frames, and wherein one or more fragments containing the plurality of key frames is sent to the second peer node for decoding and display.
16. The method of claim 13, 14 or 15, wherein the one or more key fragments contains the most recent key frame in the buffer.
17. The method of any of claims 13 to 16, wherein the one or more key fragments includes metadata identifying that it includes a key frame.
18. The method of any of claims 13 to 17, wherein the network is an IP Television Peer-to-Peer network.
19. The method of claim 18, wherein the second node is a set top box subscribed to a first channel, and wherein the media subscription request is a subscription request to a second channel.
20. The method of claim 18 or 19, wherein the first node is a set top box.
21. The method of claim 18 or 19, wherein the first node is a media injector.
22. The method of any of claims 13 to 17, wherein the network is a top down network or a store and forward network.
23. An apparatus for use in a network, the apparatus comprising means for performing a method as claimed in any of claims 13 to 22.
24. A program for controlling an apparatus to perform a method as claimed in any one of claims 13 to 22.
25. A program which, when loaded into an apparatus, causes the apparatus to become an apparatus as claimed in claim 23.
26. A program as claimed in claim 24 or 25, carried on a carrier medium.
27. A program as claimed in claim 26, wherein the carrier medium is a storage medium.
28. A program as claimed in claim 26, wherein the carrier medium is a transmission medium.
29. An apparatus programmed by a program as claimed in any one of claims 24 to 28.
30. A storage medium containing a program as claimed in any one of claims 24 to 27.
PCT/EP2007/064447 2007-12-21 2007-12-21 Method and apparatus for distributing media over a communications network WO2009080114A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/EP2007/064447 WO2009080114A1 (en) 2007-12-21 2007-12-21 Method and apparatus for distributing media over a communications network
GB1008236A GB2468057A (en) 2007-12-21 2007-12-21 Method and apparatus for distributing media over a communications network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2007/064447 WO2009080114A1 (en) 2007-12-21 2007-12-21 Method and apparatus for distributing media over a communications network

Publications (1)

Publication Number Publication Date
WO2009080114A1 true WO2009080114A1 (en) 2009-07-02

Family

ID=39846575

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2007/064447 WO2009080114A1 (en) 2007-12-21 2007-12-21 Method and apparatus for distributing media over a communications network

Country Status (2)

Country Link
GB (1) GB2468057A (en)
WO (1) WO2009080114A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2968500A1 (en) * 2010-12-06 2012-06-08 Neotion Method for sharing digital TV signal recorded by digital recorders connected to telecommunication networks, involves generating transfer files containing fragments and reference mark, and permitting availability of files to recorders
DE102011107161A1 (en) * 2011-07-13 2013-01-17 Pierre-Alain Cotte Methods and devices for low-delay switching on or switching to a digital video signal
EP2543186A4 (en) * 2010-03-05 2017-11-01 Samsung Electronics Co., Ltd Apparatus and method for providing streaming service in a data communication network

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050190781A1 (en) * 2004-02-27 2005-09-01 Microsoft Corporation Media stream splicer
EP1643716A1 (en) * 2004-09-03 2006-04-05 Microsoft Corporation A system and method for receiver driven streaming in a peer-to-peer network
US20060085828A1 (en) * 2004-10-15 2006-04-20 Vincent Dureau Speeding up channel change
US20070160038A1 (en) * 2006-01-09 2007-07-12 Sbc Knowledge Ventures, L.P. Fast channel change apparatus and method for IPTV
WO2007095309A2 (en) * 2006-02-13 2007-08-23 Tvu Networks Corporation Methods, apparatus, and systems for providing media content over a communications network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050190781A1 (en) * 2004-02-27 2005-09-01 Microsoft Corporation Media stream splicer
EP1643716A1 (en) * 2004-09-03 2006-04-05 Microsoft Corporation A system and method for receiver driven streaming in a peer-to-peer network
US20060085828A1 (en) * 2004-10-15 2006-04-20 Vincent Dureau Speeding up channel change
US20070160038A1 (en) * 2006-01-09 2007-07-12 Sbc Knowledge Ventures, L.P. Fast channel change apparatus and method for IPTV
WO2007095309A2 (en) * 2006-02-13 2007-08-23 Tvu Networks Corporation Methods, apparatus, and systems for providing media content over a communications network

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2543186A4 (en) * 2010-03-05 2017-11-01 Samsung Electronics Co., Ltd Apparatus and method for providing streaming service in a data communication network
FR2968500A1 (en) * 2010-12-06 2012-06-08 Neotion Method for sharing digital TV signal recorded by digital recorders connected to telecommunication networks, involves generating transfer files containing fragments and reference mark, and permitting availability of files to recorders
DE102011107161A1 (en) * 2011-07-13 2013-01-17 Pierre-Alain Cotte Methods and devices for low-delay switching on or switching to a digital video signal

Also Published As

Publication number Publication date
GB201008236D0 (en) 2010-06-30
GB2468057A (en) 2010-08-25

Similar Documents

Publication Publication Date Title
US8516531B2 (en) Reducing channel change delays
US8630306B2 (en) Fast channel change apparatus and method for IPTV
EP2158747B1 (en) Method and arrangement for improved media session management
US9756369B2 (en) Method and apparatus for streaming media data segments of different lengths wherein the segment of different length comprising data not belonging to the actual segment and beginning with key frames or containing key frames only
US8135040B2 (en) Accelerated channel change
EP1285533A1 (en) Universal digital broadcast system and methods
CN101321275B (en) System and method for processing video stream
US20020023267A1 (en) Universal digital broadcast system and methods
EP1783980A2 (en) Client slide program identifier (PID) translation
CN1972440A (en) An implementation method for picture-in-picture in IPTV
EP1902547A1 (en) Apparatuses and methods for delivering data stream content to consumer devices
US20100132007A1 (en) Accelerating channel change time with external picture property markings
WO2009095080A1 (en) Method and apparatus for obtaining media over a communications network
WO2009103343A1 (en) Method and apparatus for distributing media over a communications network
WO2009103345A1 (en) Method and apparatus for obtaining media over a communications network
US9215396B2 (en) Faster access to television channels
WO2009095078A1 (en) Method and apparatus for obtaining media over a communications network
US20110289543A1 (en) Video streaming system including a fast channel change mechanism
WO2009080114A1 (en) Method and apparatus for distributing media over a communications network
WO2009095081A1 (en) Method and apparatus for obtaining media over a communications network
US8401086B1 (en) System and method for increasing responsiveness to requests for streaming media
Lohan et al. Integrated system for multimedia delivery over broadband ip networks
WO2009095079A1 (en) Method and apparatus for distributing media over a communications network
KR20130018865A (en) Multimedia content broadcast procedure
WO2009080117A1 (en) Method and apparatus for distributing media over a communications network

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: 07858058

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 1008236

Country of ref document: GB

Kind code of ref document: A

Free format text: PCT FILING DATE = 20071221

WWE Wipo information: entry into national phase

Ref document number: 1008236.0

Country of ref document: GB

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07858058

Country of ref document: EP

Kind code of ref document: A1