IP Library Granted Patent US 9,686,339
Granted Patent B2
US 9,686,339 · App. 15/209,049 · Granted Jun 20, 2017

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

Inventor: Robert Elsner (Pine, CO)
Assignee: WOWZA MEDIA SYSTEMS, LLC
H04L65/604H04L65/4069H04L65/4084H04L65/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 9,686,339
App. No.
15/209,049
Granted
Jun 20, 2017
Kind
B2
Abstract

A method includes receiving, at a media player at a computing device, a first portion of a media stream, and initiating playback of the first portion of the media stream. The method also includes 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. The method further includes compiling the platform-independent representation of the source code to generate a platform-specific component that is executable by the computing device. The method includes executing the platform-specific component at the computing device during execution of the media player at the computing device.

Claims (35)

1. A computing device comprising:

a processor; and

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

receive a first portion of a media stream;

initiate playback of the first portion of the media stream;

receive 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;

compile the platform-independent representation of source code to generate a platform-specific component; and

execute the platform-specific component.

2. The computing device of claim 1 , wherein the memory further stores a compiler configured to compile the platform-independent representation without interruption of playback of the media stream.

3. The computing device of claim 2 , wherein the compiler is part of the media player.

4. The computing device of claim 1 , further comprising a network interface configured to receive the first portion and the second portion in accordance with a streaming protocol.

5. 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.

6. The computing device of claim 1 , wherein the media player is part of an operating system.

7. The computing device of claim 1 , further comprising a network interface configured to download the media player via a network.

8. The computing device of claim 1 , wherein the platform-independent representation comprises an abstract syntax tree (AST).

9. The computing device of claim 1 , wherein the processor is configured to execute the platform-specific component without interruption of playback of the media stream.

10. The computing device of claim 1 , wherein the platform-specific component comprises a plugin of the media player.

11. The computing device of claim 10 , wherein the plugin comprises a social networking client that enables communication via a social network.

12. The computing device of claim 10 , wherein the plugin enables communication with a server associated with the media stream.

13. The computing device of claim 1 , wherein the memory further stores the platform-specific component, and further comprising a network interface configured to receive a signal to re-execute the platform-specific component, and wherein the processor is configured to retrieve the platform-specific component from the memory and to re-execute the platform-specific component without recompilation of the platform-independent representation.

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

15. A method comprising:

sending a first portion of a media stream from a media server to a destination device during a streaming session;

after sending the first portion of the media stream, sending a platform-independent representation of source code from the media server to the destination device during the streaming session; and

after sending the platform-independent representation, sending a signal to the destination device during the streaming session, the signal requesting execution of a platform-specific software component generated by compilation of the platform-independent representation.

16. A method comprising:

receiving a compiler at a computing device; and

executing a media player at the computing device, wherein executing the media player includes, during playback of a media stream and without interrupting playback of the media stream:

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

invoking the compiler to compile the AST to generate a platform-specific component; and

executing the platform-specific component.

17. The method of claim 16 , further comprising receiving the media player at the computing device, wherein the compiler is part of the media player.

18. The method of claim 16 , wherein the compiler is distinct from the media player.

19. The method of claim 16 , further comprising receiving, in the media stream, a signal to re-execute the platform-specific component.

20. The method of claim 16 , further comprising receiving, in a second media stream, a signal to re-execute the platform-specific component.

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 Jul 13, 2016
From: ELSNER, ROBERT
To: WOWZA MEDIA SYSTEMS, LLC
Reel/Frame 039147/0239 →
Continuity (2)
Continuation 14697202 · Apr 27, 2015
Related Publication 20160323347A1 · Nov 3, 2016