IP Library Granted Patent US 9,967,161
Granted Patent B2
US 9,967,161 · App. 15/484,516 · Granted May 8, 2018

Coordinating analytics between media player and server

Inventor: Scott Kellicker (Worthington, OH)
Assignee: WOWZA MEDIA SYSTEMS, LLC
H04L43/06H04L43/045H04L43/106H04L65/4069H04N21/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 9,967,161
App. No.
15/484,516
Granted
May 8, 2018
Kind
B2
Abstract

A method includes receiving a client report including an identifier and client analytics data, the client report received from a client device and the client analytics data associated with a media stream received by the client device from a streaming server. The method further includes receiving a server report including the identifier and server analytics data, the server report received from the streaming server. The method further includes, based on determining that the client report and the server report include the identifier, determining that the client analytics data and the server analytics data are correlated.

Claims (43)

1. A method comprising:

receiving, at a computing device, a first client report from a first client device and a second client report from a second client device, the first and second client report each containing:

a first identifier associated with a streaming server,

a second identifier associated with the respective client device, and

client analytics data associated with a respective media stream received by the respective client device from the streaming server;

receiving, at the computing device, a server report from the streaming server, the server report including the first identifier and server analytics data; and

based on determining that the first client report, the second client report, and the server report each include the first identifier, determining that the client analytics data of the first client report, the client analytics data of the second client report, and the server analytics data are correlated.

2. The method of claim 1 , further comprising sending a command to at least one of the first client device, second client device, or the streaming server.

3. The method of claim 2 , wherein the command includes a request for additional performance statistics or metrics, a command to execute a particular application or function, a command for the first client device, the second client device, or both to request a different stream, a command to perform error correction actions, or a combination thereof.

4. The method of claim 1 , wherein the first client report, the second client report, or both includes a client timestamp and the server report includes a server timestamp, and wherein determining that the client analytics data and the server analytics data are correlated is based further on determining that the client timestamp corresponds to the server timestamp.

5. The method of claim 1 , wherein the server analytics data includes data identifying a work load of the streaming server, a quality of media streams transmitted by the streaming server, errors occurring at the streaming server, a number of connections at the streaming server, or a combination thereof.

6. The method of claim 1 , further comprising generating a graphical user interface (GUI) based on the client analytics data of the first client report, the client analytics data of the second client report, the server analytics data, or a combination thereof.

7. The method of claim 1 , wherein the server analytics data identifies user input associated with a video that corresponds to the respective media stream, and wherein the user input includes input to play the video, rewind the video, fast forward the video, stop the video, or a combination thereof.

8. A computer-readable storage device storing instructions that, when executed by a processor, cause the processor to perform operations comprising:

receiving, at a computing device, a first client report from a first client device and a second client report from a second client device, the first and second client report each containing:

a first identifier associated with a streaming server,

a second identifier associated with the respective client device, and

client analytics data associated with a respective media stream received by the respective client device from the streaming server;

receiving, at the computing device, a server report from the streaming server, the server report including the first identifier and server analytics data; and

based on determining that the first client report, the second client report, and the server report each include the first identifier, determining that the client analytics data of the first client report, the client analytics data of the second client report, and the server analytics data are correlated.

9. The computer-readable storage device of claim 8 , wherein the client analytics data of the second client report is associated with a content stream received by the second client device from the streaming server.

10. The computer-readable storage device of claim 9 , wherein the operations further comprise:

sending a command from the first client device to at least one of the streaming server or the second client device in response to identifying a correlation between the client analytics data of the first client report and the client analytics data of the second client report, the correlation identified based on the first client report and the second client report,

wherein the command instructs the second client device to request a different content stream from the streaming server.

11. The computer-readable storage device of claim 10 , wherein the command instructs the streaming server to send test data to the second client device.

12. The computer-readable storage device of claim 10 , wherein the command includes a first request for performance statistics or metrics, a second request to execute a particular application or function, a third request to perform error correction actions, or a combination thereof.

13. The computer-readable storage device of claim 8 , wherein the operations further comprise determining that the first client report and the second client report include the first identifier.

14. The computer-readable storage device of claim 8 , wherein the operations further comprise:

in response to a determination that the first client report and the second client report include the first identifier, determining the client analytics data of the first client report and the client analytics data of the second client report are correlated.

15. The computer-readable storage device of claim 10 , wherein the command is sent to both the streaming server and the second client device.

16. The computer-readable storage device of claim 8 , wherein the first client report includes a first timestamp and the second client report includes a second timestamp, and further comprising determining the client analytics data of the first client report and the client analytics data of the second client report are correlated at least in response to a determination that the first timestamp corresponds to the second timestamp.

17. The computer-readable storage device of claim 16 , wherein the server analytics data of the server report from the streaming server includes data identifying an error at the streaming server, a number of connections at the streaming server, or a combination thereof, and wherein the client analytics data of the second client device includes data identifying user input received by a media player application of the second client device.

18. An apparatus comprising:

a network interface configured to receive, at a computing device, a first client report from a first client device and a second client report from a second client device, the first and second client report each containing:

a first identifier associated with a streaming server,

a second identifier associated with the respective client device, and

client analytics data associated with a respective media stream received by the respective client device from the streaming server;

a processor; and

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

receive, at the computing device via the network interface, a server report from the streaming server, the server report including the first identifier and server analytics data; and

based on determining that the first client report, the second client report, and the server report each include the first identifier, determine that the client analytics data of the first client report, the client analytics data of the second client report, and the server analytics data are correlated.

19. The apparatus of claim 18 , further comprising a display configured to generate a graphical user interface (GUI) based on the client analytics data of the first client report, the client analytics data of the second client report, the server analytics data, or a combination thereof.

20. The apparatus of claim 18 , wherein the server analytics data of the server report includes data identifying a work load of the streaming server, a quality of at least one content stream transmitted by the streaming server, or a combination thereof, and wherein the second identifier associated with the first client device identifies a media player application executing at the first client 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 Apr 18, 2017
From: KELLICKER, SCOTT
To: WOWZA MEDIA SYSTEMS, LLC
Reel/Frame 042040/0327 →
Continuity (2)
Continuation 15056971 · Feb 29, 2016
Related Publication 20170250881A1 · Aug 31, 2017