IP Library › Granted Patent US 12,382,128
Granted Patent B2
US 12,382,128 · App. 18/446,055 · Granted Aug 5, 2025

Systems and methods of alternative networked application services

Inventors: Ronald A. Brockmann (Los Gatos, CA); Maarten Hoeben (Acquapendente, IT); Gerrit Willem Hiddink (Amersfoort, NL); Serban Ungureanu (Amsterdam, NL); Andrew Gall (Haarlem, NL); Philipp Beyer (hilversum, NL)
Assignee: ActiveVideo Networks, LLC
H04N21/4316H04N21/47217
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,382,128
App. No.
18/446,055
Granted
Aug 5, 2025
Kind
B2
Abstract

The server system receives, from a respective remote physical client device, a digest of a segment of video content received by the respective remote physical client device, the segment of video content including a plurality of frames of video content. In response to receiving the digest, the server system sends a playback command to the respective remote physical device to playback one or more of the plurality of frames of video content in the segment. The plurality of frames of video content in the segment have a frame rate. The server system determines a graphical processing unit (GPU) overlay instruction for overlaying content of a frame buffer with a respective portion of the segment of video content and sends, asynchronously from the frame rate of the plurality of frames of video content, the GPU overlay instruction to the respective remote physical client device.

Claims (28)

1. A method comprising:

at a server system hosting one or more virtual client devices, each virtual client device corresponding to a remote physical client device that plays back video content received from a content server:

receiving, from a respective remote physical client device, a digest of a segment of video content received by the respective remote physical client device, the segment of video content including a plurality of frames of video content;

in response to receiving the digest:

sending a playback command to the respective remote physical device to play back one or more of the plurality of frames of video content in the segment, wherein the plurality of frames of video content in the segment have a frame rate;

determining a graphical processing unit (GPU) overlay instruction for overlaying content with a respective portion of the segment of video content; and

sending the GPU overlay instruction to the respective remote physical client device, wherein a frame rate of the overlayed content is sent at a frame rate independent of the frame rate of the plurality of frames of video content and is variably determined by the server system.

2. The method of claim 1 , further comprising determining a frame in which there is a change in an overlay instruction from an overlay instruction of a previous frame, wherein sending the GPU overlay instruction is performed in response to determining there is a change in the overlay instruction.

3. The method of claim 1 , wherein the GPU overlay instruction for overlaying content is a GPU overlay instruction for overlaying content of a frame buffer.

4. The method of claim 1 , further comprising, sending, to the client device, an orientation instruction for arranging the content on a display.

5. The method of claim 4 , wherein the orientation instruction is sent separately from the GPU overlay instruction.

6. The method of claim 4 , wherein the client device uses the GPU overlay instruction and the orientation instruction to composite the content with the respective portion of the segment of video content.

7. The method of claim 1 , wherein the GPU overlay instruction comprises an identification of each frame in the portion of the segment of the video content over which the content is overlaid.

8. The method of claim 1 , wherein the respective portion of the segment of the video content comprises a frame of the video content.

9. The method of claim 1 , wherein the respective portion of the segment of the video content comprises a plurality of frames of the video content.

10. The method of claim 1 , wherein the server system does not transmit, to the client device, the plurality of frames of video content.

11. The method of claim 1 , wherein the GPU overlay instruction comprises an openGL command.

12. The method of claim 1 , further comprising, determining a second GPU overlay instruction for overlaying second content with a second respective portion of the segment of video content; and

sending, asynchronously from the frame rate of the plurality of frames of video content, the second GPU overlay instruction to the respective remote physical client device.

13. The method of claim 12 , wherein the second respective portion of the segment of video content is a different length than the respective portion of the segment of video content.

14. A non-transitory computer readable storage medium storing one or more programs for execution by one or more processors of a server system hosting one or more virtual client devices, each virtual client device corresponding to a remote physical client device that plays back video content received from a content server, the one or more programs including instructions for: receiving, from a respective remote physical client device, a digest of a segment of video content received by the respective remote physical client device, the segment of video content including a plurality of frames of video content; in response to receiving the digest: sending a playback command to the respective remote physical device to playback one or more of the plurality of frames of video content in the segment, wherein the plurality of frames of video content in the segment have a frame rate; determining a graphical processing unit (GPU) overlay instruction for overlaying content with a respective portion of the segment of video content; and sending the GPU overlay instruction to the respective remote physical client device, wherein a frame rate of the overlayed content is sent at a frame rate independent of the frame rate of the plurality of frames of video content and is variably determined by the server system.

15. A server system hosting one or more virtual client devices, each virtual client device corresponding to a remote physical client device that plays back video content received from a content server, the server system comprising one or more processors and memory storing one or more programs for execution by the one or more processors, the one or more programs including instructions for:

receiving, from a respective remote physical client device, a digest of a segment of video content received by the respective remote physical client device, the segment of video content including a plurality of frames of video content;

in response to receiving the digest:

sending a playback command to the respective remote physical device to playback one or more of the plurality of frames of video content in the segment,

wherein the plurality of frames of video content in the segment have a frame rate;

determining a graphical processing unit (GPU) overlay instruction for overlaying content with a respective portion of the segment of video content; and

sending the GPU overlay instruction to the respective remote physical client device, wherein a frame rate of the overlayed content is sent at a frame rate independent of the frame rate of the plurality of frames of video content and is variably determined by the server system.

Assignments (1)
CONFIRMATORY ASSIGNMENT Recorded Mar 26, 2024
From: BROCKMANN, RONALD A; HOEBEN, MAARTEN; HIDDINK, GERRIT WILLEM; GALL, ANDREW; UNGUREANU, SERBAN; BEYER, PHILIPP
To: ACTIVEVIDEO NETWORKS, LLC
Reel/Frame 066910/0288 →
Continuity (3)
Continuation PCTUS2022016720 · Feb 17, 2022
Provisional Application 63152277 · Feb 22, 2021
Related Publication 20230388578A1 · Nov 30, 2023
References Cited (8)
US 11128903B2 · Brockmann · 2021 [cited by examiner]
US 20080005676A1 · Evans · 2008 [cited by examiner]
US 20100135643A1 · Fleming · 2010 [cited by applicant]
US 20120185905A1 · Kelley · 2012 [cited by examiner]
US 20170270077A1 · Morard · 2017 [cited by examiner]
US 20180184178A1 · Hoeben · 2018 [cited by examiner]
WO WO2019006185A1 · 2019 [cited by examiner]
ActiveVideo Networks, Inc., International Search Report and Written Opinion, PCT/US22/16720, Jul. 19, 2022, 16 pgs. [cited by applicant]