IP Library Granted Patent US 10,554,932
Granted Patent B2
US 10,554,932 · App. 15/954,290 · Granted Feb 4, 2020

Dynamic advertisement stream replacement

Inventors: Kent Karlsson (Alamo, CA); Gabriel Netterdag (Stockholm, SE); Martin Linderoth (Årsta, SE); Ola Hållmarker (Hägersten, SE)
Assignee: MobiTV, Inc.
H04N7/165G06Q30/02H04N21/23424H04N21/4347H04N21/6131H04N21/6408H04N21/6437H04N21/64315H04N21/812
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,554,932
App. No.
15/954,290
Granted
Feb 4, 2020
Kind
B2
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.

Claims (54)

1. A method to be performed by a content server, the method comprising:

maintaining user profile information associated with a plurality of devices;

maintaining a plurality of replacement advertisement streams in an advertisement database;

receiving a plurality of media streams;

receiving a request for a media stream from one of the plurality of devices;

identifying a default advertisement stream in the media stream;

selecting a replacement advertisement stream from the advertisement database based at least on user profile information associated with the device, the user profile information comprising at least user viewing activity related to advertisements viewed;

removing and replacing the default advertisement stream in the media stream with the selected replacement advertisement stream, wherein the selected replacement advertisement stream is inserted in the media stream based on an advertisement marker flag set in a header field;

modifying sequence information related to the selected replacement advertisement stream if the sequence information is different from sequence information related to the default advertisement stream being replaced;

modifying one or more timestamps to reflect changes in streaming time of the media stream, wherein for audio encodings, timestamps are modified by incrementing the timestamps by the packetization interval multiplied by an audio sampling rate; and

transmitting the media stream to the device.

2. The method of claim 1 , wherein the media stream is a live media stream.

3. The method of claim 1 , wherein the user profile information further comprises user location information.

4. The method of claim 1 , further comprising:

modifying the bitrate of the replacement advertisement stream to match the bitrate of the media stream.

5. The method of claim 1 , wherein removing and replacing the default advertisement stream with the replacement advertisement stream further comprises removing a plurality of data segments corresponding to the default advertisement stream and inserting a plurality of data segments corresponding to the replacement advertisement stream.

6. The method of claim 1 , wherein transmitting the media stream to the device comprises providing seamless playback of the media stream and the replacement advertisement stream on the device.

7. The method of claim 1 , wherein the plurality of media streams and the plurality of replacement advertisement streams operate according to one or more streaming protocols configured to deliver media streams to devices.

8. The method of claim 1 , wherein the replacement advertisement stream is selected based at least partially on a timestamp information match with the default advertisement stream.

9. The method of claim 1 , wherein the plurality of media streams are received from a plurality of content providers, and wherein the plurality of content providers include a plurality of cable and satellite providers.

10. A system for providing a modified media stream, the system configurable to cause:

maintaining user profile information associated with a plurality of devices;

maintaining a plurality of replacement advertisement streams in an advertisement database;

receiving a plurality of media streams;

receiving a request for a media stream from one of the plurality of devices;

identifying a default advertisement stream in the media stream;

selecting a replacement advertisement stream from the advertisement database based at least on user profile information associated with the device, the user profile information comprising at least user viewing activity related to advertisements viewed;

removing and replacing the default advertisement stream in the media stream with the selected replacement advertisement stream, wherein the selected replacement advertisement stream is inserted in the media stream based on an advertisement marker flag set in a header field;

modifying sequence information related to the selected replacement advertisement stream if the sequence information is different from sequence information related to the default advertisement stream being replaced;

modifying one or more timestamps to reflect changes in streaming time of the media stream, wherein for audio encodings, timestamps are modified by incrementing the timestamps by the packetization interval multiplied by an audio sampling rate; and

transmitting the media stream to the device.

11. The system of claim 10 , wherein the media stream is a live media stream.

12. The system of claim 10 , wherein the user profile information further comprises user location information.

13. The system of claim 10 , further configurable to cause:

modifying the bitrate of the replacement advertisement stream to match the bitrate of the media stream.

14. The system of claim 10 , wherein removing and replacing the default advertisement stream with the replacement advertisement stream further comprises removing a plurality of data segments corresponding to the default advertisement stream and inserting a plurality of data segments corresponding to the replacement advertisement stream.

15. The system of claim 10 , wherein transmitting the media stream to the device comprises

providing seamless playback of the media stream and the replacement advertisement stream on the device.

16. The system of claim 10 , wherein the plurality of media streams and the plurality of replacement advertisement streams operate according to one or more streaming protocols configured to deliver media streams to devices.

17. 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 user profile information associated with a plurality of devices;

maintaining a plurality of replacement advertisement streams in an advertisement database;

receiving a plurality of media streams;

receiving a request for a media stream from one of the plurality of devices;

identifying a default advertisement stream in the media stream;

selecting a replacement advertisement stream from the advertisement database based at least on user profile information associated with the device, the user profile information comprising at least user viewing activity related to advertisements viewed;

removing and replacing the default advertisement stream in the media stream with the selected replacement advertisement stream, wherein the selected replacement advertisement stream is inserted in the media stream based on an advertisement marker flag set in a header field;

modifying sequence information related to the selected replacement advertisement stream if the sequence information is different from sequence information related to the default advertisement stream being replaced;

modifying one or more timestamps to reflect changes in streaming time of the media stream, wherein for audio encodings, timestamps are modified by incrementing the timestamps by the packetization interval multiplied by an audio sampling rate; and

transmitting the media stream to the device.

18. The computer program product of claim 17 , wherein the media stream is a live media stream.

19. The computer program product of claim 17 , wherein the user profile information further comprises user location information.

20. The computer program product of claim 17 , the program code comprising instructions further configurable to cause:

modifying the bitrate of the replacement advertisement stream to match the bitrate of the media stream.

Assignments (6)
CHANGE OF NAME Recorded Mar 31, 2026
From: ADEIA MEDIA HOLDINGS LLC
To: ADEIA MEDIA HOLDINGS INC.
Reel/Frame 075303/0980 →
CHANGE OF NAME Recorded Oct 1, 2024
From: TIVO CORPORATION
To: TIVO LLC
Reel/Frame 069083/0250 →
CHANGE OF NAME Recorded Oct 1, 2024
From: TIVO LLC
To: ADEIA MEDIA HOLDINGS LLC
Reel/Frame 069083/0325 →
SECURITY INTEREST Recorded May 19, 2023
From: ADEIA GUIDES INC.; ADEIA MEDIA HOLDINGS LLC; ADEIA MEDIA SOLUTIONS INC.; ADEIA SEMICONDUCTOR BONDING TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR SOLUTIONS LLC; ADEIA SEMICONDUCTOR TECHNOLOGIES LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 063707/0884 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2021
From: MOBITV, INC.; MOBITV SERVICES, INC.
To: TIVO CORPORATION
Reel/Frame 056444/0076 →
SECURITY INTEREST Recorded Oct 21, 2020
From: MOBITV, INC.
To: ALLY BANK
Reel/Frame 054128/0963 →
Continuity (2)
Continuation 12101883 · Apr 11, 2008
Related Publication 20180241969A1 · Aug 23, 2018
Cited By (1)
US 12,289,562