IP Library Granted Patent US 10,305,956
Granted Patent B2
US 10,305,956 · App. 15/594,613 · Granted May 28, 2019

Systems and methods of communicating platform-independent representation of source code

Inventor: Robert Elsner (Pine, CO)
Assignee: WOWZA MEDIA SYSTEMS, LLC
H04L65/604H04L65/4069H04L65/4076H04L65/4084H04L65/605H04L65/608H04L67/34H04L67/02
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,305,956
App. No.
15/594,613
Granted
May 28, 2019
Kind
B2
Abstract

A computing device includes a processor and a memory storing a media player. The media player is executable to cause the processor to, during playback of a media stream, receive an abstract syntax tree (AST) in the media stream, invoke a compiler to compile the AST to generate a platform-specific component, and execute the platform-specific component.

Claims (37)

1. A computing device comprising:

a processor; and

a memory storing a media player executable to cause the processor to, during playback of a media stream:

receive an abstract syntax tree (AST) in the media stream;

invoke a compiler to compile the AST to generate a platform-specific component comprising code executable on a specific platform;

execute the platform-specific component; and

detect a signal to re-execute the platform-specific component, the signal associated with the media stream or another media stream.

2. The computing device of claim 1 , further comprising a network interface configured to receive the compiler.

3. The computing device of claim 1 , further comprising a network interface configured to receive the media player, wherein the compiler is part of the media player.

4. The computing device of claim 1 , wherein the compiler is distinct from the media player.

5. The computing device of claim 1 , wherein the memory is configured to store an operating system that includes the media player.

6. The computing device of claim 1 , wherein the memory is configured to store the media player, the compiler, or both.

7. The computing device of claim 1 , wherein the processor is configured to re-execute the platform-specific component in response to detection of the signal in the media stream.

8. The computing device of claim 1 , wherein the processor is configured to re-execute the platform-specific component in response to detection of the signal in the other media stream.

9. The computing device of claim 1 , wherein the processor is configured to delete the platform-specific component after execution of the media player.

10. The computing device of claim 1 , wherein the processor and the memory are included in a laptop computer, a desktop computer, a tablet computer, a mobile phone, a game console, a set-top box, a television, or any combination thereof.

11. A computer-readable storage device storing a media player that is executable by a processor of a computing device to perform operations comprising:

receiving a first portion of a media stream;

initiating playback of the first portion of the media stream;

receiving a second portion of the media stream during the playback of the first portion of the media stream, the second portion of the media stream including a platform-independent representation of source code;

compiling the platform-independent representation of the source code to generate a platform-specific component comprising code executable on a specific platform; and

executing the platform-specific component.

12. The computer-readable storage device of claim 11 , wherein the platform-independent representation is compiled without interruption of playback of the media stream.

13. The computer-readable storage device of claim 12 , wherein the platform-independent representation is compiled by a compiler that is part of the media player.

14. The computer-readable storage device of claim 11 , wherein each of the first portion and the second portion is received in accordance with a streaming protocol.

15. The computer-readable storage device of claim 11 , wherein the platform-independent representation comprises an abstract syntax tree (AST).

16. The computer-readable storage device of claim 11 , wherein the platform-specific component comprises a plugin of the media player.

17. The computer-readable storage device of claim 16 , wherein the plugin comprises a social networking client configured to enable communication via a social network.

18. The computer-readable storage device of claim 16 , wherein the plugin is configured to enable communication with a server associated with the media stream.

19. A media server comprising:

a network interface;

a processor; and

a memory storing a media player executable to cause the processor to:

send a first portion of a media stream via the network interface to a destination device during a streaming session;

after the first portion of the media stream is sent to the destination device, send a platform-independent representation of source code via the network interface to the destination device during the streaming session; and

after the platform-independent representation is sent to the destination device, send a signal to the destination device during the streaming session to request execution at the destination device of a platform-specific software component that is generated by compilation of the platform-independent representation.

20. The media server of claim 19 , wherein the media player, when executed by the processor, further causes the processor to establish a streaming session with the destination device.

Assignments (2)
SECURITY INTEREST Recorded May 28, 2021
From: WOWZA MEDIA SYSTEMS, LLC
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 056422/0263 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2017
From: ELSNER, ROBERT
To: WOWZA MEDIA SYSTEMS, LLC
Reel/Frame 042369/0778 →
Continuity (3)
Continuation 15209049 · Jul 13, 2016
Continuation 14697202 · Apr 27, 2015
Related Publication 20170251041A1 · Aug 31, 2017