Dynamic advertisement stream replacement
AssigneeTiVo Inc.
InventorsKent Karlsson, Gabriel Netterdag, Martin Linderoth, Ola Hållmarker
Life of this patent
Estimating the term…
Abstract
Mechanisms are provided for replacing default advertisement streams in a media stream with replacement advertisement streams. User profile information is obtained for a particular user and/or device. A default advertisement stream is identified and replaced with advertisement streams selected using the user profile information. Timestamp information and sequence number information is maintained to allow uninterrupted delivery of the modified media stream while customizing media streams for particular users.
Claims30
A method to be performed by a content server, the method comprising:
- maintaining a plurality of replacement advertisement streams in an advertisement database;
- receiving a media stream from a content provider;
- receiving a request for the media stream from a device;
- using an advertisement marker flag set in a header field of the media stream to identify a default advertisement stream between a first portion and a second portion of the media stream;
- replacing the default advertisement stream with a replacement advertisement stream selected from the advertisement database, comprising:
- modifying sequence information related to the replacement advertisement stream if the sequence information is different from sequence information related to the default advertisement stream being replaced;
- determining that a number of packets in the replacement advertisement stream is different from a number of packets in the default advertisement stream;
- modifying sequence information related to the second portion of the media stream by reconciling an end packet identifier of the replacement advertisement stream with a restart point packet identifier of the second portion;
- incrementing one or more audio encoding timestamps by a packetization interval multiplied by an audio sampling rate;
- and
- transmitting the media stream to the device.
A system for providing a modified media stream, the system configurable to cause:
- maintaining a plurality of replacement advertisement streams in an advertisement database;
- receiving a plurality of media streams from a content provider;
- receiving a request for a media stream from one of a device;
- using an advertisement marker flag set in a header field of the media stream to identify a default advertisement stream between a first portion and a second portion of the media stream;
- and
- replacing the default advertisement stream with a replacement advertisement stream selected from the advertisement database, comprising:
- modifying sequence information related to the replacement advertisement stream if the sequence information is different from sequence information related to the default advertisement stream;
- determining that a number of packets in the replacement advertisement stream is different from a number of packets in the default advertisement stream;
- modifying sequence information related to the second portion of the media stream by reconciling an end packet identifier of the replacement advertisement stream with a restart point packet identifier of the second portion;
- incrementing one or more audio encoding timestamps by a packetization interval multiplied by an audio sampling rate;
- and
- transmitting the media stream to the device.
A computer program product comprising computer-readable program code capable of being executed by one or more processors when retrieved from a non-transitory computer-readable medium, the program code comprising instructions configurable to cause:
- maintaining a plurality of replacement advertisement streams in an advertisement database;
- receiving a plurality of media streams from a content provider;
- receiving a request for a media stream from one of a plurality of devices;
- using an advertisement marker flag set in a header field of the media stream to identify a default advertisement stream between a first portion and a second portion of the media stream;
- replacing the default advertisement stream with a replacement advertisement stream selected from the advertisement database, comprising:
- modifying sequence information related to the replacement advertisement stream if the sequence information is different from sequence information related to the default advertisement stream being replaced;
- determining that a number of packets in the replacement advertisement stream is different from a number of packets in the default advertisement stream;
- modifying sequence information related to the second portion of the media stream by reconciling an end packet identifier of the replacement advertisement stream with a restart point packet identifier of the second portion;
- incrementing one or more audio encoding timestamps by the packetization interval multiplied by an audio sampling rate;
- and
- transmitting the media stream to the device.
Dependencies are inferred from the claim text.