Back to results
US 8,559,438 B2Granted
Modification of live streams
AssigneeMobiTV, Inc.
InventorsKent Karlsson, Ola Hällmarker, Martin Linderoth
Life of this patent
Estimating the term…
Abstract
Mechanisms are provided for generating and modifying live media streams. A device establishes a session and requests a media stream from a content server. The content server provides the media stream to the device. The content server also obtains an insertion stream for inclusion in the media stream. Packets are removed from the media stream to allow inclusion of the insertion stream. Timestamp information and sequence number information is maintained to allow uninterrupted delivery of the modified media stream.
Claims20
A method, comprising:
- receiving a request from a device at a content server, the request associated with a session and corresponding to a media stream including a plurality of packets;
- identifying a plurality of media stream variants, the plurality of media stream variants encoded by the content server at varying bit rates;
- selecting one of the plurality of media stream variants to be an insertion sequence, wherein the selected one of the plurality of media stream variants is selected so that the insertion sequence has the same bit rate as a removal sequence, wherein the removal sequence encodes media content for presentation as part of the media stream, wherein the selected media stream variant encodes media content for presentation in place of the removal sequence;
- obtaining the insertion sequence for inclusion in the media stream, the insertion sequence having an insertion sequence start packet including key frame data, the insertion sequence also having an insertion stream end packet;
- extracting the removal sequence from the media stream to allow inclusion of the insertion stream in the media stream;
- and
- modifying sequence number information for a media stream restart packet and packets following the media stream restart packet using sequence number information from the insertion sequence end packet.
4 more elements
A system, comprising:
- an interface operable to receive a request from a device at a content server, the request associated with a session and corresponding to a media stream including a plurality of packets;
- and
- a processor operable to identify a plurality of media stream variants, the plurality of media stream variants encoded by the content server at varying bit rates,
- select one of the plurality of media stream variants to be an insertion sequence, wherein the selected one of the plurality of media stream variants is selected so that the insertion sequence has the same bit rate as a removal sequence, wherein the removal sequence encodes media content for presentation as part of the media stream, wherein the selected media stream variant encodes media content for presentation in place of the removal sequence, wherein the insertion sequence is obtained for inclusion in the media stream, the insertion sequence having an insertion sequence start packet including key frame data, the insertion sequence also having an insertion stream end packet, the processor further operable to extract a removal sequence from the media stream to allow inclusion of the insertion stream in the media stream;
- wherein sequence number information for a media stream restart packet and packets following the media stream restart packet are modified using sequence number information from the insertion sequence end packet.
2 more elements
An apparatus, comprising:
- means for receiving a request from a device at a content server, the request associated with a session and corresponding to a media stream including a plurality of packets;
- means for identifying a plurality of media stream variants, the plurality of media stream variants encoded by the content server at varying bit rates;
- means for selecting one of the plurality of media stream variants to be an insertion sequence, wherein the selected one of the plurality of media stream variants is selected so that the insertion sequence has the same number of bits and the same bit rate as a removal sequence, wherein the removal sequence encodes media content for presentation as part of the media stream, wherein the selected media stream variant encodes media content for presentation in place of the removal sequence;
- means for obtaining the insertion sequence for inclusion in the media stream, the insertion sequence having an insertion sequence start packet including key frame data, the insertion sequence also having an insertion stream end packet;
- means for extracting the removal sequence from the media stream to allow inclusion of the insertion stream in the media stream;
- and
- means for modifying sequence number information for a media stream restart packet and packets following the media stream restart packet using sequence number information from the insertion sequence end packet.
4 more elements
Dependencies are inferred from the claim text.