IP Library Granted Patent US 12,289,562
Granted Patent B2
US 12,289,562 · App. 18/507,903 · Granted Apr 29, 2025

Dynamic advertisement stream replacement

Inventors: Kent Karlsson (San Francisco, CA); Gabriel Netterdag (Stockholm, SE); Martin Linderoth (Arsta, SE); Ola Hållmarker (Hagersten, SE)
Assignee: Adeia Media Holdings LLC
H04N7/165G06Q30/02H04N21/23424H04N21/4347H04N21/6131H04N21/6408H04N21/64315H04N21/6437H04N21/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 12,289,562
App. No.
18/507,903
Granted
Apr 29, 2025
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 (47)

1. A method comprising:

receiving, from a content server, a media stream comprising (a) a first subset of frames, wherein each frame in the first subset comprises a marker indicating that it is replaceable, (b) a second subset of frames, without markers, preceding the first subset, and (c) a third subset of frames, without the markers, following the first subset;

identifying a condition to replace the first subset of frames with a set of supplemental frames;

in response to the identifying the condition:

replacing in the media stream the first subset of frames with the set of supplemental frames, wherein the second subset of frames and the third subset of frames are not replaced based on the second subset of frames and the third subset of frames lacking the markers;

in response to determining that the set of supplemental frames comprises a different number of frames than the first subset of frames with the markers:

modifying sequence numbers of the third subset of frames by incrementing each sequence number of the sequence numbers of the third subset of frames; and

transmitting the media stream to a user device.

2. The method of claim 1 , wherein the identifying the condition to replace the first subset of frames comprises determining that the set of supplemental frames is available.

3. The method of claim 1 , wherein the identifying the condition to replace the first subset of frames comprises:

receiving, from the content server, user profile information associated with a plurality of user devices; and

determining that user profile information indicated prior consumption of the second subset of frames.

4. The method of claim 1 , wherein the modifying the sequence numbers of the third subset of frames comprises reconciling an end packet identifier of set of supplemental frames with a restart point packet identifier of the second subset of frames.

5. The method of claim 1 , wherein the transmitting the media stream to the user device comprises providing seamless playing of the media stream and the set of supplemental frames on the user device.

6. The method of claim 1 , wherein the media stream is a Real-Time Transport Protocol (RTP) stream.

7. A system comprising:

a memory configured to store user profile preferences; and

a control circuitry configured to:

receive, from a content server, a media stream comprising (a) a first subset of frames, wherein each frame in the first subset comprises a marker indicating that it is replaceable, (b) a second subset of frames, without markers, preceding the first subset, and (c) a third subset of frames, without the markers, following the first subset;

identify a condition to replace the first subset of frames with a set of supplemental frames;

in response to identifying the condition:

replace in the media stream the first subset of frames with the set of supplemental frames, wherein the second subset of frames and the third subset of frames are not replaced based on the second subset of frames and the third subset of frames lacking the markers;

in response to determining that the set of supplemental frames comprises a different number of frames than the first subset of frames with the markers:

modify sequence numbers of the third subset of frames by incrementing each sequence number of the sequence numbers of the third subset of frames; and

transmit the media stream to a user device.

8. The system of claim 7 , wherein the control circuitry is configured to identify the condition to replace the first subset of frames by determining that the set of supplemental frames is available.

9. The system of claim 7 , wherein the control circuitry is configured to identify the condition to replace the first subset of frames by:

receiving, from the content server, user profile information associated with a plurality of user devices; and

determining that user profile information indicated prior consumption of the second subset of frames.

10. The system of claim 7 , wherein the control circuitry is configured to modify the sequence numbers of the third subset of frames by reconciling an end packet identifier of set of supplemental frames with a restart point packet identifier of the second subset of frames.

11. The system of claim 7 , wherein the control circuitry is configured to transmit the media stream to the user device by providing seamless playing of the media stream and the set of supplemental frames on the user device.

12. The system of claim 7 , wherein the media stream is a Real-Time Transport Protocol (RTP) stream.

13. A non-transitory computer readable medium comprising instructions which, when executed by a processor, cause the processor to:

receive, from a content server, a media stream comprising (a) a first subset of frames, wherein each frame in the first subset comprises a marker indicating that it is replaceable, (b) a second subset of frames, without markers, preceding the first subset, and (c) a third subset of frames, without the markers, following the first subset;

identify a condition to replace the first subset of frames with a set of supplemental frames;

in response to identifying the condition:

replace in the media stream the first subset of frames with the set of supplemental frames, wherein the second subset of frames and the third subset of frames are not replaced based on the second subset of frames and the third subset of frames lacking the markers;

in response to determining that the set of supplemental frames comprises a different number of frames than the first subset of frames with the markers:

modify sequence numbers of the third subset of frames by incrementing each sequence number of the sequence numbers of the third subset of frames; and

transmit the media stream to a user device.

14. The non-transitory computer readable medium according to claim 13 , wherein the processor identifies the condition to replace the first subset of frames by determining that the set of supplemental frames is available.

15. The non-transitory computer readable medium according to claim 13 , wherein the processor identifies the condition to replace the first subset of frames by:

receiving, from the content server, user profile information associated with a plurality of user devices; and

determining that user profile information indicated prior consumption of the second subset of frames.

16. The non-transitory computer readable medium according to claim 13 , wherein the processor modifies the sequence numbers of the third subset of frames by reconciling an end packet identifier of set of supplemental frames with a restart point packet identifier of the second subset of frames.

17. The non-transitory computer readable medium according to claim 13 , wherein the processor transmits the media stream to the user device by providing seamless playing of the media stream and the set of supplemental frames on the user device.

18. The non-transitory computer readable medium according to claim 13 , wherein the media stream is a Real-Time Transport Protocol (RTP) stream.

Assignments (5)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2023
From: KARLSSON, KENT; NETTERDAG, GABRIEL; LINDEROTH, MARTIN; HÅLLMARKER, OLA
To: MOBITV, INC.
Reel/Frame 065635/0156 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2023
From: MOBITV, INC.
To: TIVO CORPORATION
Reel/Frame 065635/0196 →