# US 12,192,555 B2 · Methods and systems for discovery of a processing offloader

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,192,555 B2
- Document ID: US12192555B2
- Status: Granted
- Kind: B2
- Application number: 18/500,938
- Filed: 2023-11-02
- Published: 2024-02-29
- Granted: 2025-01-07
- Earliest claimed: 2018-12-28
- Assignees: DISH Network L.L.C.
- Applicants: DISH Network L.L.C.
- Inventors: Manuel Novoa, III; Kan Man Wong; Vishal Neeralike; Shiqiang Chu; Aram Semerjyan; Anthony Bond; Michael Song; Anthony Kallas; Derick Wong
- Web page: https://patentgrep.com/patent/US12192555B2

## CPC

- H04N 21/2662: Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
- H04N 21/4183: {providing its own processing capabilities, e.g. external module for video decoding}
- H04N 21/222: Secondary servers, e.g. proxy server, cable television Head-end {(provisioning of proxy services in data packet switching networks H04L67/56)}
- H04N 21/233: Processing of audio elementary streams {(monitoring, identification or recognition of audio in broadcast systems H04H60/58)}
- H04N 21/234: Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N 21/2402: {Monitoring of the downstream path of the transmission network, e.g. bandwidth available (traffic monitoring in data switching networks H04L43/00; monitoring data switching networks utilization H04L43/0876)}
- H04N 21/43078: {for seamlessly watching content streams when changing device, e.g. when watching the same programme sequentially on a TV and then on a tablet}
- H04N 21/431: Generation of visual interfaces {for content selection or interaction}; Content or additional data rendering
- H04N 21/4312: {involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations}
- H04N 21/436: Interfacing a local distribution network, e.g. communicating with another STB {or one or more peripheral devices} inside the home
- H04N 21/439: Processing of audio elementary streams
- H04N 21/44: Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N 21/44227: {Monitoring of local network, e.g. connection or bandwidth variations; Detecting new devices in the local network (configuring of peripheral devices in general G06F9/4411; monitoring connectivity in data switched networks H04L43/0811)}
- H04N 21/44245: {Monitoring the upstream path of the transmission network, e.g. its availability, bandwidth}
- H04N 21/443: OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N 21/4516: {involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available}
- H04N 21/6193: {involving transmission via a satellite (arrangements for data linking, networking or transporting, or for controlling an end to end session in a satellite broadcast system H04B7/18526)}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Introduced here are systems to manage and discover a processing offloader. A first multimedia device may identify a processing offloader in a networked environment. A first multimedia device may determine that a bandwidth of a second multimedia device in the networked environment falls below a threshold bandwidth, indicating that the second multimedia device may process instructions and render multimedia information with increased latency or delay. Based on this determination, the first multimedia device may forward instructions from the second multimedia device to the processing offloader for the processing offloader to process and render multimedia information on behalf of the second multimedia device based on the received instructions. The first multimedia device may forward rendered multimedia information from the processing offloader to the second multimedia device, and the second multimedia device may output the rendered multimedia information to an output device.

## Claims

### Claim 1

A method comprising:
identifying a processing offloader and a multimedia device in a networked environment;
determining that a processing bandwidth of the multimedia device falls below a threshold processing bandwidth;
forwarding multimedia content rendering instructions from the multimedia device to the processing offloader based on determining that the processing bandwidth of the multimedia device falls below the threshold processing bandwidth;
transmitting a communication to the multimedia device indicating a request to enable a proxy configured to output received multimedia content and disable a native user interface (UI) executing on the multimedia device; and
forwarding rendered multimedia content from the processing offloader to the multimedia device.

### Claim 2 (depends on 1)

The method of claim 1, wherein identifying the processing offloader further comprises:
transmitting a second communication to the processing offloader indicating a request to provide an identification indicator identifying the processing offloader; and
identifying the processing offloader based on receiving a third communication that includes the identification indicator identifying the processing offloader.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
upon identifying the processing offloader, synchronizing communications between the processing offloader and the multimedia device.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
synchronizing communications between the multimedia device and the processing offloader.

### Claim 5 (depends on 4)

The method of claim 4, further comprising detecting that the multimedia device is turned on, wherein synchronizing communications between the multimedia device and the processing offloader occurs in response to detecting that the multimedia device is turned on.

### Claim 6 (depends on 4)

The method of claim 4, further comprising detecting that the processing offloader is turned on, wherein synchronizing communications between the multimedia device and the processing offloader occurs upon detecting that the processing offloader is turned on.

### Claim 7 (depends on 4)

The method of claim 4, wherein synchronizing communications between the multimedia device and the processing offloader comprises synchronizing an internal timer of the multimedia device and an internal timer of the processing offloader.

### Claim 8 (depends on 4)

The method of claim 4, wherein synchronizing communications between the multimedia device and the processing offloader comprises synchronizing the proxy executing on the multimedia device and a multimedia device UI of the processing offloader, wherein the multimedia device UI is configured to process the multimedia content rendering instructions transmitted by the multimedia device.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
identifying the processing bandwidth of the multimedia device by comparing utilized processing resources and maximum processing resources of the multimedia device.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
identifying a processing bandwidth of the processing offloader by comparing a utilized processing resources and a maximum processing resources of the processing offloader, wherein forwarding the multimedia content rendering instructions from the multimedia device to the processing offloader is based on a differential between the utilized processing resources and the maximum processing resources of the processing offloader exceeding a threshold processing offloader bandwidth.

### Claim 11 (depends on 1)

The method of claim 1, further comprising:
transmitting a second communication to the processing offloader to generate a multimedia device UI at the processing offloader, where the multimedia device UI is associated with the multimedia device and configured to process the multimedia content rendering instructions transmitted by the multimedia device.

### Claim 12 (depends on 1)

The method of claim 1, further comprising:
identifying a second multimedia device;
determining that the processing bandwidth of the multimedia device is less than a processing bandwidth of the second multimedia device; and
forwarding the multimedia content rendering instructions from the multimedia device to the processing offloader in response to determining that the processing bandwidth of the multimedia device is less than the processing bandwidth of the second multimedia device.

### Claim 13 (depends on 12)

The method of claim 12, further comprising:
determining an updated processing bandwidth of the processing offloader indicating available processing resources of the processing offloader upon receipt of the multimedia content rendering instructions from the multimedia device;
determining that the updated processing bandwidth of the processing offloader exceeds a threshold processing offloader bandwidth; and
in response to determining that the updated processing bandwidth of the processing offloader exceeds a threshold processing offloader bandwidth, forwarding second multimedia content rendering instructions from the second multimedia device to the processing offloader.

### Claim 14 (depends on 1)

The method of claim 1, wherein the multimedia content rendering instructions comprise user interface graphics rendering instructions.

### Claim 15

A system, comprising:
a memory that includes instructions for discovering a processing offloader, wherein the instructions, when executed by at least one processor, cause the at least one processor to perform operations including:
identifying a processing offloader and a multimedia device in a networked environment;
determining that a processing bandwidth of the multimedia device falls below a threshold processing bandwidth;
forwarding multimedia content rendering instructions from the multimedia device to the processing offloader based on determining that the processing bandwidth of the multimedia device falls below the threshold processing bandwidth;
transmitting a communication to the multimedia device indicating a request to enable a proxy configured to output received multimedia content and disable a native user interface (UI) executing on the multimedia device; and
forwarding rendered multimedia content from the processing offloader to the multimedia device.

### Claim 16 (depends on 15)

The system of claim 15, wherein the operations further comprise:
forwarding the multimedia content rendering instructions from the multimedia device to the processing offloader and forwarding the rendered multimedia content from the processing offloader to the multimedia device simultaneously so that the processing offloader and the multimedia device receive information simultaneously.

### Claim 17 (depends on 15)

The system of claim 15, wherein the operations further comprise:
synchronizing communications between the multimedia device and the processing offloader by synchronizing an internal timer of the multimedia device and an internal timer of the processing offloader.

### Claim 18 (depends on 15)

The system of claim 15, wherein the multimedia device communicates with the processing offloader via a universal serial bus interconnect.

### Claim 19 (depends on 15)

The system of claim 15, wherein the multimedia device comprises a satellite device.

### Claim 20

One or more tangible, non-transitory computer-readable media storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
identifying a processing offloader and a multimedia device in a networked environment;
determining that a processing bandwidth of the multimedia device falls below a threshold processing bandwidth;
forwarding multimedia content rendering instructions from the multimedia device to the processing offloader based on determining that the processing bandwidth of the multimedia device falls below the threshold processing bandwidth;
transmitting a communication to the multimedia device indicating a request to enable a proxy configured to output received multimedia content and disable a native user interface (UI) executing on the multimedia device; and
forwarding rendered multimedia content from the processing offloader to the multimedia device.
