Method and Apparatus for Distributing Media Content Services
A method of distributing a plurality of media content services (S1-S5) across a distribution network comprising dividing each of the plurality of media content services (S1-S5) into segments and transmitting the segments of each of the plurality of media content services as a sequence of bursts (305), wherein there is a window period (303) between successive bursts (305) during which media content is not transmitted. Each of the media content services (S1-S5) has a respective bit rate and the transmitting comprises transmitting each of the segments at a higher bit rate to create the window periods (303) between successive bursts (305). Starts of bursts (305) of the plurality of media content services (S1-S5) are staggered in time with respect to one another. At least one of the media content services (S1-S5) can comprise a plurality of media content service representations of different bit rate. The media content services and media content service representations can be transmitted as multicasts.
This invention relates to a method and apparatus for distributing a media content service.
BACKGROUNDTraditional telecommunications systems have evolved rapidly in recent years to encompass considerably more capability than simply delivering a telephony service. Internet technology based on data packets and associated transmission protocols, for example the Internet Protocol (IP), has now superseded the old space switching techniques and dedicated transmission resources during a telephone call or data transmission session.
The convergence of flexible delivery technologies has enabled services to be mixed in the same physical resource so that for example, in telephony networks, subscribers are now able to receive audio-visual content, including relayed broadcast television and radio services, as well as access internet resources, all via their telephone lines. Similarly, the expansion of wireless networks have enabled a user to receive a range of communications services over a wireless delivery channel.
A Digital Subscriber Loop (xDSL) modem/router, which is widespread in homes, acts as a common assembly point for all domestic communications traffic, such as telephony, computer-based web browsing, email, home shopping or streaming of video material. As will be appreciated by a skilled person, the capacity of the digital subscriber loop has to be shared among the services being provided to the subscriber at any particular time.
There is considerable interest in receiving “streamed” services which deliver a stream of video and/or audio material to users. The content can be live content or it can be recorded content which is requested on demand. In an Internet Protocol Television (IPTV) system, video and audio content is delivered to users via Internet Protocol (IP) delivery mechanisms. These types of services require a continuous and uninterrupted flow of data. A premises may have multiple terminals which are capable of receiving media content. The demands placed on the delivery channel can vary according to how many terminals require content at a particular time.
Streamed media content services can be provided by one of two methods: Unicast or Multicast. Unicast provides the subscribing receiver with a direct and unique two-way path through the delivery network all the way back to the media server supplying the required data stream. The main streaming activity is managed on a one-to-one basis between the receiver and the source server. The network between the source server and receiver typically comprises a series of intermediate servers installed at network nodes which are not directly involved in the service but only support the transfer of a packet stream. Typically the protocols used to support the transmissions are simple forms of Internet Protocol (IP) itself augmented by one or more higher layer protocols to provide flow control. These protocols extend across the span of the link between the source server and a given receiver. This method of distribution is wasteful of network capacity because, at busy times and for popular media streams, many copies exist in the network simultaneously and this contributes to network congestion.
A Unicast system can support Adaptive Bit Rate Streaming (ABR). This allows some form of rate adaptation. A given service is encoded at a selection of different bit rates (known as representations), with synchronised boundary points at defined locations (e.g. every 50 frames). For each representation, content between successive boundary points is converted into a discrete file. Clients fetch a segment of one of the representations in turn. If a higher or a lower bit rate is required, the next segment is fetched from one of the other representations. The segments are constructed such that there is no discontinuity in decoded pictures/audio if the client switches between representations at the boundary points. This system requires the unicast two-way path between source and receiver to request files and deliver the requested files.
Multicast makes more efficient use of bandwidth by sharing content streams among several receivers. Intermediate network routers are now more closely involved in the service delivery such that some control and management functions are delegated from the source server. This control is supported by more extensive protocols devised for this type of application such as Protocol Independent Multicast (PIM) and Internet Group Multicast Protocol (IGMP). When a new receiver requests a given media item, the network router system finds an existing stream of that content already in the network and directs a copy of it to that new receiver from an appropriately near network node. A new receiver has to be able to join this existing stream under controlled conditions that do not adversely affect existing receivers. Any receiver in this group also has to be able leave the stream, or pause its consumption, without affecting the others. There is now a clear separation of control and management from the content. This complicates the control function because several receivers will have different instantaneous bit rate and control needs and so the segmentation of the stream as it passes through a given network has to deal with the conflicting demands. These are managed directly between the receiving device itself and the nearest upstream router/server that will mediate control functions including any need to refer back to earlier network servers or even the original source server.
Currently, each TV service has to be set up with a conservative configuration. This can be a capped Variable Bit Rate (VBR) with a safe cap value. This is because it is not possible to change bit rate of a service on the fly without interrupting the TV service.
In summary, while unicast systems can support an adaptive bit rate of a streamed service over time, this comes at a significant cost in terms of resources of the delivery network to support a large number of unicast paths, and may require additional servers located near to clients of the network to maintain acceptable response times. Multicast systems can more efficiently use bandwidth resources of the network, but do not support adaptive bit rate needs of client devices.
The present invention seeks to provide an alternative way of distributing media content services, such as video services.
SUMMARYAn aspect of the present invention provides a method of distributing a plurality of media content services across a distribution network. The method comprises dividing each of the plurality of media content services into segments. The method further comprises transmitting the segments of each of the plurality of media content services as a sequence of bursts, wherein there is a window period between successive bursts during which media content is not transmitted. Each of the media content services has a respective bit rate and the transmitting comprises transmitting each of the segments at a higher bit rate to create the window periods between successive bursts. Starts of bursts of the plurality of media content services are staggered in time with respect to one another.
Advantageously, the starts of bursts of the plurality of media content services are staggered in time with respect to one another such that window periods of any pair of the plurality of media content services do not overlap.
Advantageously, the bursts of the plurality of media content services are of equal burst duration and the starts of bursts of any pair of the plurality of media content services are staggered in time by a time period which is less than, or equal to, the burst duration.
Advantageously, the method further comprises receiving or generating a plurality of media content service representations for at least one of the media content services, each of the media content representations having a different bit rate. The step of dividing each of the media content services into segments divides each of the media content service representations into segments, wherein the segments of the plurality of media content service representations of a respective media content service are aligned in time. The step of transmitting the segments comprises transmitting the segments of each of the plurality of media content service representations as a sequence of bursts, wherein the bursts of the plurality of media content service representations of a respective media content service are aligned in time.
Advantageously, each of the media content services is transmitted as a multicast.
Advantageously, each of the media content service representations is transmitted as a multicast.
Advantageously, each burst comprises a plurality of Internet Protocol packets.
Advantageously, the media content services are video services. Each media content service can be an IPTV service.
Advantageously, the dividing comprises inserting data which indicates a boundary of a segment and the step of transmitting each of the segments uses the inserted data to determine a boundary of a segment.
Advantageously, the method further comprises transmitting an information element which indicates at least one of: an end of a burst; an advance notice of an end of a burst. The information element can be carried within each of the bursts.
Advantageously, each of the media content service representations is transmitted as a first multicast with a multicast destination IP address, and the method comprises transmitting a second multicast which carries the information element, wherein the second multicast has the same destination IP address as the first multicast.
Advantageously, the method further comprises adapting the media content data into packets for transport over the distribution network, and the step of transmitting each of the segments as a burst operates on the packets.
Advantageously, the method further comprises transmitting information about which media content service representations are available for selection.
The method can be performed by a node of the distribution network such as a head end node, or by any other node or combination of nodes.
Advantageously, at least two of the plurality of media content service representations for the video service have a different video resolution.
Another aspect of the invention provides apparatus for distributing a plurality of media content service across a distribution network. The apparatus comprises an interface for receiving the plurality of media content services. The apparatus further comprises segmenting apparatus arranged to divide each of the plurality of media content services into segments. The apparatus further comprises an output unit arranged to transmit the segments of each of the plurality of media content services as a sequence of bursts, wherein there is a window period between successive bursts during which media content is not transmitted. Each of the received or generated media content services has a respective bit rate and the transmitting comprises transmitting each of the segments at a higher bit rate to create the window periods between successive bursts. Starts of bursts of different media content services are staggered in time with respect to one another.
Advantageously, at least one embodiment provides a way of delivering media content services (e.g. video services) in a manner which makes efficient use of resources of the distribution network.
Advantageously, at least one embodiment allows a client device to dynamically alter the bit rate of the media content service. The client device may need to adapt the bit rate due to varying bandwidth demands required of the delivery channel, such as a change to the number of media content services used at any particular time, or a change to the bandwidth of the delivery channel (e.g. with a wireless delivery channel).
Advantageously, at least one embodiment provides a way of allowing a client device to dynamically alter the bit rate of the media content service without significant disruption to the media content service.
The functionality described here can be implemented in hardware, software executed by a processing apparatus, or by a combination of hardware and software. The processing apparatus can comprise a computer, a processor, a state machine, a logic array or any other suitable processing apparatus. The processing apparatus can be a general-purpose processor which executes software to cause the general-purpose processor to perform the required tasks, or the processing apparatus can be dedicated to perform the required functions. Another aspect of the invention provides machine-readable instructions (software) which, when executed by a processor, perform any of the described methods. The machine-readable instructions may be stored on an electronic memory device, hard disk, optical disk or other machine-readable storage medium. The machine-readable medium can be a non-transitory medium. The machine-readable instructions can be downloaded to the storage medium via a network connection.
Embodiments of the invention will be described, by way of example only, with reference to the accompanying drawings in which:
At the subscriber side shown on the right-hand side of
On the network side shown on the left-hand side of
The services 24-30 shown at the left are examples of various types of service, all of which may be combined using Internet Protocol (IP) for delivery across the digital subscriber loop to the consumer, where they are separated again for the individual destination devices in the home, as will be understood by a skilled person. The Internet Protocol (IP) infrastructure at the Service Provider end is configured differently on demand for each subscriber, as will be understood by a skilled person, and additional DSLAMs 21, 22 are shown for completeness.
A video source 30 is shown supplying an input to the distribution network 60. There are various types of video service. A first type of video service is live video that is delivered in real time. A second type of video service uses video data which is stored as video files in servers. These video files may be watched in real time as if they were live video or may be transferred in non-real time for later playback at the subscriber's premises. Typically, this video service type might be used for a film library that enables a film to be downloaded by a subscriber for immediate viewing or stored for later use. The stored video files may be for video service recording content accessed in accordance with the requirements of an individual subscriber, for example in accordance with a digital video recorder (DVR) schedule of a subscriber. In some embodiments this non real-time video service content may be deferred by being temporarily buffered in the network when the digital subscriber loop is being heavily utilised, and being moved to the local storage when capacity across the digital subscriber loop becomes available.
In
In embodiments of the invention, each media content service is made available in a plurality of media content service representations, each having a different bit rate. For example, a video service 1 can be made available in three video service representations 1a, 1b, 1c and video service 2 can be made available in three video service representations 2a, 2b, 2c. In different embodiments, and for different video services, the number of video services representations available for selection may be greater or less than 3, as decided by a skilled person. One or more other properties of the video service can vary among the representations, such as video resolution, frame rate. Audio rates (or number of audio channels) can also vary between representations. For example, consider representations 1a, 1b, 1c have progressively higher bit rates. At least one of the higher bit rate representations (e.g. 1c) can have a higher resolution than one of the lower bit rate representations (e.g. 1a, 1b).
A feature of compressed video data stream syntax is the Group of Pictures (GOP) which comprises a sequence of complete and contiguous video pictures or frames. The Group of Pictures (GOP) begins with a frame selected to be a master frame, denoted as an “I” or Intra Frame for that sequence. This I Frame is coded without reference to any other frame in the sequence and exploits only spatial redundancy within the I frame. Since I frames may be decoded without reference to picture information in any other frame, I frames can be relied upon as a starting point for a decoder.
The other frames or pictures in a Group of Pictures (GOP) can be coded very efficiently by exploiting temporal redundancy in the image sequence. These frames are coded so that information is transmitted describing differences between the current frame and already coded reference frames temporally adjacent to it. Such frames are of two types: one type is a Predicted or P frame type, which is predicted and coded only from one direction of the image sequence, for example from earlier frames in the image sequence. The other type is a Bidirectional frame or B frame type, which are predicted from both forward and backward directions of the sequence, for example by interpolation from earlier and later frames in the video sequence.
As will be appreciated, the success of compression algorithms in achieving low bit rates is because the P and B Frames use smaller amounts of data to encode the picture than an I Frame and are more numerous in a Group of Pictures (GOP). An I Frame uses more data to encode the picture and so these are relatively sparse in a Group of Pictures (GOP). The I frame is very useful when streams are interrupted or suffer occasional errors because it resets the decoder with an independent Frame.
Thus a Group of Pictures (GOP) can be structured as a sequence of I, P and B Frames in an arbitrary pattern e.g. IBBPBBP . . . until the next I Frame is inserted. The length of the Group of Pictures (GOP) will affect coding efficiency because it uses predominantly small coded frame sizes. Such a Group of Pictures (GOP) is known as a Closed Group of Pictures (GOP) because it is self-contained and has defined entry points at the I Frame for decoders such that coded pictures following the I frame do not reference any pictures before the I frame. This is useful for this application because the I Frames allow points in a stream at which a bit rate change can be made without necessarily disrupting the decoder.
Advantageously, the video service representations of a video service have aligned segment boundaries 88 so that their GOP patterns are aligned. Data for the different bit rate representations 80A, 80B is packetised.
Advantageously, segment boundaries are marked by introducing Boundary Points (BP) that mark the location of the segment boundaries in the segmented streams 80A, 80B where it is possible to switch cleanly between the representations and deliver the segments using multicast. These BPs can also act as reference points in the stream for any other purpose. The BP can be inserted in a continuous stream, for example as a short gap, or the segmented media data stream can be momentarily paused so that the absence of data allows time for receivers to adjust themselves to any changing circumstances including new receivers joining the stream or existing ones pausing or leaving it.
Conveniently, media data can be encoded according to Motion Pictures Experts Group MPEG-2 format and encapsulated into MPEG Transport Streams, but it will be appreciated that segments 81A, 81B can also be coded and encapsulated in any other suitable format, such as the MPEG-4 File Format.
For clarity,
The start of bursts of different content services can be aligned in time (i.e. all bursts of all services start at the same time) or the start times can be staggered with respect to one another. Aligning the start times of bursts of different services in time can have an advantage of allowing a quicker channel change between services.
One consequence of adding window periods 83 to the transmitted streams is that the flow of content becomes jittered beyond the level that normal packet transmission produces. This can be accommodated by buffering provided within the reception apparatus. The window period duration will influence the amount of jitter produced and so there is an optimum size that is related to the worst case response times of the chain of routers/servers delivering the content. This time is taken for switches to recognise and implement all those steps that are required to keep the stream flowing including the potential need for the multicast content to be found at or near the source server. For segment durations of the order of about 2 seconds, a possible value of the window period is around 330 milliseconds. The window size is a function of the responsiveness of the network to support multicast leave and join functions and it will be appreciated that the window period can be modified to a higher or lower value. More generally, the window period could have a value selected from the range of 0.1 ms and 10 seconds and, more advantageously, the range 10 ms-350 ms. As switches and routers increase in performance, it is possible that the window duration can be reduced to the lower en d of the ranges stated above.
Internet Group Management Protocol (IGMP)v3 provides an explicit LEAVE message, allowing multicast clients to signal they no longer require the multicast to be forwarded to them. This can be implemented in IP switches as “Fast Leave”, where the multicast forwarding is stopped immediately when the LEAVE message is received. There is also an IGMP Join message to join a multicast.
The scheme described above can be used when representations at different bit rates to minimise disruption to the delivery and presentation of media content. When a terminal first joins a service the joining could occur during the window or it may occur at any time.
GOPs do not necessarily have to be closed at the boundary point. By default they are closed. However closed GOPs are slightly more inefficient than open GOPs, so it is possible that open GOPs could also be used. The use of open GOPs has a disadvantage that, when changing representations, there may be some visible impairment to the pictures for the first GOP of the new representation. If representation switches occur infrequently, then open GOPs may be acceptable.
Advantageously, multicast address information is added at the IP adaptation stage, which can occur at the head end 61, or at a node downstream of the head end. Multicast IP datagrams have a destination IP address is set to be in a range reserved for multicast.
The apparatus shown in
Typically, a network operator will receive a media content service feed from a service provider and will then convert the feed to the right characteristics for the distribution network and end users of the network.
The multiple representations of a video service can include Standard Definition (SD) and High Definition (HD) representations of the same content. The distribution network may receive an SD feed and an HD feed of the content as inputs 85 or just one (SD or HD) feed with transcoding 65 to generate the other of the SD and HD representations. So, input 85 may be a high quality HD feed and encoders 65 transcode the HD feed to generate lower bit rate, lower resolution, versions of the content.
The lower part of
It has been described how HTTP adaptive streaming technology can be combined with IP multicast. The basic principles are:
-
- the individual representations (e.g. different bitrates) of a media content stream (e.g. linear TV channel) are sent on separate multicast streams;
- the distribution of segments are separated by a gap in time during which no data is sent;
- each segment is distributed as an overspeed burst—i.e. faster than real-time. The burst factor is calculated based on the gap in time that separates the segments;
- a client can change representation during designated gaps, called window periods.
An effect of distributing media content services in this manner is that more network bandwidth is consumed compared to sending segments at their original (real time) speed. The total bandwidth consumed by all of the media content streams may, in a worst case, be equivalent to the combined extra bandwidth needed for sending segments in overspeed mode.
Another effect of distributing media content services in this manner is that clients must change between representations during a window period. This means that all network signalling associated with changing representations may, in a worst case, occur during specific points in time followed by periods with no or little network signalling.
The two effects described above can be reduced, or avoided, by the relative timing of the starts of bursts of the media content services. Advantageously, by evenly distributing the gaps across media content services it is ensured that the total bandwidth consumed by the media content services is efficiently utilised. Even distribution of gaps also ensures that the combined signalling in the network associated with changing bitrate is evenly distributed in time.
Even though individual media content services may have different characteristics in practice the principles and advantages of the embodiments still apply in that starts of bursts and window periods are distributed as evenly as possible to ensure optimal network bandwidth utilisation.
The process of a client device changing between receiving a first media content service and receiving a second media content service will be called a channel change. In
The transmission relationship shown in
The relationship between media content services (and representations) described above, and shown in
Modifications and other embodiments of the disclosed invention will come to mind to one skilled in the art having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the invention is not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of this disclosure. Although specific terms may be employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
Claims
1. A method of distributing a plurality of media content services across a distribution network comprising:
- dividing each of the plurality of media content services into segments; and
- transmitting the segments of each of the plurality of media content services as a sequence of bursts, wherein there is a window period between successive bursts during which media content is not transmitted,
- wherein each of the media content services has a respective bit rate and the transmitting comprises transmitting each of the segments at a higher bit rate to create the window periods between successive bursts,
- and wherein starts of bursts of the plurality of media content services are staggered in time with respect to one another.
2. A method according to claim 1 wherein the starts of bursts of the plurality of media content services are staggered in time with respect to one another such that, for any pair of the plurality of media content services, the window periods of the media content services do not overlap.
3. A method according to claim 1 wherein the bursts of the plurality of media content services are of equal burst duration and the starts of bursts of any pair of the plurality of media content services are staggered in time by a time period which is less than, or equal to, the burst duration.
4. A method according to claim 1 wherein each of the media content services is transmitted as a multicast.
5. A method according to claim 1 further comprising receiving or generating a plurality of media content service representations for at least one of the media content services, each of the media content representations having a different bit rate, and wherein the step of dividing each of the media content services into segments divides each of the media content service representations into segments, wherein the segments of the plurality of media content service representations of a respective media content service are aligned in time; and wherein the step of transmitting the segments comprises transmitting the segments of each of the plurality of media content service representations as a sequence of bursts, wherein the bursts of the plurality of media content service representations of a respective media content service are aligned in time.
6. A method according to claim 5 wherein each of the media content service representations is transmitted as a multicast.
7. A method according to claim 1 wherein each burst comprises a plurality of Internet Protocol packets.
8. A method according to claim 1 wherein the media content services are video services.
9. Apparatus for distributing a plurality of media content service across a distribution network comprising:
- an interface for receiving the plurality of media content services;
- segmenting apparatus arranged to divide each of the plurality of media content services into segments;
- an output unit arranged to transmit the segments of each of the plurality of media content services as a sequence of bursts, wherein there is a window period between successive bursts during which media content is not transmitted,
- wherein each of the received or generated media content services has a respective bit rate and the transmitting comprises transmitting each of the segments at a higher bit rate to create the window periods between successive bursts,
- and wherein starts of bursts of different media content services are staggered in time with respect to one another.
10. Apparatus according to claim 9 wherein the starts of bursts of the plurality of media content services are staggered in time with respect to one another such that, for any pair of the plurality of media content services, the window periods of the media content services do not overlap.
11. Apparatus according to claim 9 wherein the bursts of the plurality of media content services are of equal burst duration and the starts of bursts of any pair of the plurality of media content services are staggered in time by a time period which is less than, or equal to, the burst duration.
12. Apparatus according to claim 9 which is arranged to transmit each of the media content service representations as a multicast.
13. Apparatus according to claims 9 wherein the segmenting apparatus is arranged to divide at least one of the media content services into a plurality of segmented media content service representations, each of the media content representations having a different bit rate, wherein the segments of the plurality of media content service representations of a respective media content service are aligned in time; and wherein the output unit is arranged to transmit the segments of each of the plurality of media content service representations as a sequence of bursts, wherein the bursts of the plurality of media content service representations of a respective media content service are aligned in time.
14. Apparatus according to claim 13 which is arranged to transmit each of the media content service representations as a multicast.
Type: Application
Filed: Feb 14, 2013
Publication Date: Oct 8, 2015
Inventors: Michael Huber (Taby), Anthony Richard Jones (Southampton), Thomas Lundqvist (Stockholm)
Application Number: 14/436,220