IP Library Granted Patent US 12,407,896
Granted Patent B2
US 12,407,896 · App. 18/504,555 · Granted Sep 2, 2025

Insertion of targeted content in real-time streaming media

Inventors: Fabián E. Bustamante (Evanston, IL); Stefan Birrer (Chicago, IL); Nicholas Los (Chicago, IL)
Assignee: Phenix Real Time Solutions, Inc.
H04N21/44016G06Q30/0261G06Q30/0269H04L65/612H04L67/52H04L67/568H04N21/4532H04N21/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,407,896
App. No.
18/504,555
Granted
Sep 2, 2025
Kind
B2
Abstract

A method for targeted content insertion in real-time streaming. The method leverages the different ordered signals available on a multi-step process that clients follow when subscribing to a real-time media (video and/or audio) stream including selecting a region, connecting to a control channel, and subscribing to a stream to guide a multi-stage process of content selection, transcoding, and insertion in a real-time media stream. A system is also specified for implementing the described method on a real-time streaming architecture.

Claims (78)

1. A method for inserting a content element in a real-time media stream, the method comprising:

in response to a first signal for indicating an input to a client device, receiving a set of features associated with the client device;

in response to a second signal for subscribing the client device to a control channel:

(i) selecting the content element based on the set of features associated with the client device;

(ii) determining that transcoding the content element for inserting in the real-time media stream is realizable without causing delay in facilitating the real-time media stream to the client device;

transcoding the content element for subscribing the client device to the control channel; and

in response to a third signal for subscribing the client device to the real-time media stream:

(i) inserting the transcoded content element in the real-time media stream to thereby produce a modified real-time media stream;

(ii) communicating the modified real-time media stream on a transport channel to the client device.

2. The method of claim 1 , wherein an alternative content element is available to insert in the real-time media stream when transcoding the content element would cause delay in facilitating the real-time media stream to the client device.

3. The method of claim 1 further comprising, prior to communicating the modified real-time media stream to the client device:

receiving, from the client device, a request to subscribe to the real-time media stream,

wherein the real-time media stream includes multiple splice points configured for insertion of the content element.

4. The method of claim 1 further comprising, prior to communicating the modified real-time media stream to the client device:

receiving an indication of a geographic region selected for the client device,

wherein the content element is selected from among multiple content elements designated for the geographic region.

5. The method of claim 1 further comprising, prior to communicating the modified real-time media stream to the client device:

storing the transcoded content element in a cache memory.

6. The method of claim 1 , wherein selecting the content element comprises:

selecting the content element from among multiple content elements.

7. The method of claim 1 , wherein the content element is an advertisement segment, the method further comprising:

selecting an ad-insertion service configured to insert the advertisement segment in the real-time media stream.

8. The method of claim 1 , wherein selecting the content element comprises:

selecting the content element from a cache memory.

9. The method of claim 8 , wherein the cache memory is pre-populated with multiple content elements selected for insertion in real-time media streams.

10. At least one computer-readable storage medium, excluding transitory signals and carrying instructions, which, when executed by at least one data processor of a system, cause the system to:

receive a request to subscribe a client device to a real-time media stream;

receive a set of features associated with the client device along with information of a geographic region of the client device;

subscribe the client device to a control channel of a streaming service;

select a content element from among multiple content elements based on demographic information of a prospective viewer and the geographic region of the client device;

determine that transcoding the content element is realizable without causing delay in facilitating the real-time media stream to the client device;

transcode the selected content element;

store the transcoded content element on a cache memory;

splice the transcoded content element in the real-time media stream to thereby produce a modified real-time media stream; and

subscribe the client device to the modified real-time media stream on a transport channel separate from the control channel.

11. The at least one computer-readable storage medium of claim 10 , wherein the control channel is configured to communicate control information for controlling real-time media streaming.

12. The at least one computer-readable storage medium of claim 10 , wherein an alternative content element is available to insert in the real-time media stream when transcoding the content element would cause delay in facilitating the real-time media stream to the client device.

13. The at least one computer-readable storage medium of claim 10 , wherein the system is caused to:

receive a request to subscribe an additional client device to an additional media stream;

retrieve the transcoded content element from the cache memory;

integrate the transcoded content element from the cache memory in the additional media stream; and

subscribe the additional client device to the additional media stream including the transcoded content element.

14. The at least one computer-readable storage medium of claim 10 , wherein the multiple content elements each include advertisement content managed by an advertisement service.

15. A client device comprising:

a network interface;

a display device;

a decoder;

a processor; and

a memory storing instructions that, when executed by the processor, cause the client device to:

communicate, using the network interface, a request to a subscription service for real-time streaming content captured in real-time;

communicate, using the network interface, a first signal indicating a demographic information of a user of the client device;

in response to a second signal for subscribing the client device to a control channel:

select a content element based on the demographic information of the user of the client device;

receive, using the network interface, an encoded version of the real-time streaming content,

cause the subscription service to determine that transcoding the content element for inserting in a real-time media stream is realizable without causing delay in facilitating the real-time media stream to the client device; and

in response to a third signal for subscribing the client device to the real-time media stream:

decode, using the decoder, the encoded version of the real-time streaming content to produce a decoded streaming content including a transcoded content element; and

cause display, on the display device, of the decoded streaming content including the transcoded content element communicated on a transport channel to the client device.

16. The client device of claim 15 , wherein the content element includes an advertisement selected based on the demographic information of the user.

17. A method comprising:

receiving, from a client device, a request to subscribe to a real-time media stream, wherein the real-time media stream includes indications of cue-in or cue-out points; and

augmenting multiple ordered signals of a process to subscribe the client device to the real-time media stream,

wherein augmenting the multiple ordered signals includes:

receiving a set of features of a user associated with the client device;

receiving a signal for subscribing the client device to a control channel;

in response to receiving the signal, selecting a content element configured for insertion in the real-time media stream based on the set of features;

determining that transcoding the content element for inserting in the real-time media stream is realizable without causing delay in facilitating the real-time media stream to the client device;

transcoding the content element for subscribing the client device to the control channel;

inserting the transcoded content element relative to the cue-in or cue-out points of the real-time media stream to thereby produce a modified real-time media stream; and

communicating the modified real-time media stream on a transport channel to the client device.

18. The method of claim 17 , wherein an alternative content element is available to insert in the real-time media stream when transcoding the content element would cause delay in facilitating the real-time media stream to the client device.

19. The method of claim 17 , wherein augmenting the multiple ordered signals comprises:

issuing a request to an advertisement service for advertisement content;

in response to the request to the advertisement service, receiving the selected content element; and

storing the transcoded content element on a cache storage.

20. The method of claim 19 , wherein augmenting the multiple ordered signals comprises:

upon subscribing an additional client device to the control channel, retrieving the transcoded content element from the cache storage; and

inserting the transcoded content element in the real-time media stream for the additional client device.

Assignments (6)
SECURITY INTEREST Recorded Apr 14, 2026
From: STATS LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 075390/0491 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 1, 2025
From: PHENIX REAL TIME SOLUTIONS, INC.
To: KB PARTNERS, LLC
Reel/Frame 072432/0568 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 1, 2025
From: KB PARTNERS, LLC
To: STATS LLC
Reel/Frame 072432/0642 →
RELEASE OF SECURITY INTEREST Recorded Sep 8, 2025
From: KB PARTNERS, LLC
To: STATS, LLC
Reel/Frame 072184/0541 →
SECURITY INTEREST Recorded May 21, 2025
From: PHENIX REAL TIME SOLUTIONS, INC.
To: KB PARTNERS, LLC
Reel/Frame 071182/0630 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2023
From: BUSTAMANTE, FABIÁN E.; BIRRER, STEFAN; LOS, NICHOLAS
To: PHENIX REAL TIME SOLUTIONS, INC.
Reel/Frame 065498/0207 →
Continuity (3)
Continuation 17465581 · Sep 2, 2021
Provisional Application 63074902 · Sep 4, 2020
Related Publication 20240080518A1 · Mar 7, 2024
References Cited (6)
US 7945573B1 · Barnes et al. · 2011 [cited by applicant]
US 20100037253A1 · Sheehan et al. · 2010 [cited by applicant]
US 20130014151A1 · Tallapaneni et al. · 2013 [cited by applicant]
US 20140226671A1 · Broome et al. · 2014 [cited by applicant]
US 20190266646A1 · Milford et al. · 2019 [cited by applicant]
US 20190313135A1 · Pathak et al. · 2019 [cited by applicant]