Method and apparatus for measuring stream availability, quality and performance
First Claim
1. A method for measuring the quality of a stream of data packets received by a media player, the media player having a first component that receives the data packets, and a second component that receives the data packets from the first component and renders the data contained therein, comprising;
- intercepting a set of useful data packets of a given stream as each useful data packet of the set exits the first component and before such useful data packet enters the second component; and
capturing a first stream quality metric from the intercepted useful data packets.
1 Assignment
0 Petitions
Accused Products
Abstract
A streaming measurement agent designed to experience, measure, and report on a media stream as an actual end user would experience the stream. Preferably, agent resides transparently within a streaming media player itself so that it can monitor stream packet flows within the player as the measured streams are being played. In an illustrative embodiment, the agent comprises a performance monitoring module (PMM), which is software that resides in an interface between an existing core module and a renderer of a media player. The agent PMM intercepts each useful packet as it goes from the core to the renderer and, as a result, it is able to compute quality metrics about the playback. The agent functions “transparently” to the media player by presenting the core with an application programming interface (API) that emulates the API that the renderer normally presents to the core. Thus, when the core believes it is calling the renderer, it is actually calling the agent PMM, which can then receive all the packets from the core and process them. After computing relevant performance metrics using the packets it receives, the agent PMM calls the renderer. A set of performance agents can be managed by a service provider to enable a content provider to determine how a stream is perceived by end users.
-
Citations
20 Claims
-
1. A method for measuring the quality of a stream of data packets received by a media player, the media player having a first component that receives the data packets, and a second component that receives the data packets from the first component and renders the data contained therein, comprising;
-
intercepting a set of useful data packets of a given stream as each useful data packet of the set exits the first component and before such useful data packet enters the second component; and
capturing a first stream quality metric from the intercepted useful data packets. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. Apparatus for use in monitoring stream performance in a streaming media player having a first component that receives the data packets, and a second component that receives the data packets from the first component and renders the data contained therein, comprising:
-
code for intercepting each useful packet of a given stream as the useful packet exits the first component and before the useful packet enters the second component; and
code for capturing a given metric from the intercepted useful packets, wherein the given metric is a statistic computed from the intercepted useful data packets. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. Apparatus, comprising:
-
a core;
a renderer; and
a first set of code located intermediate the core and the renderer for generating a first metric as a stream of useful data packets are passed between the core and the renderer, wherein the first metric is a statistic computed from the intercepted useful data packets. - View Dependent Claims (15, 16, 17)
-
-
18. A stream monitoring system, comprising:
-
a first sub-system for provisioning a given stream quality test;
a set of monitoring agents positioned at given network locations for executing the given stream quality test, each of the monitoring agents associated with a streaming media player having a core and a renderer, each agent comprising;
code for intercepting each useful packet of a given stream as the useful packet exits the core and before the useful packet enters the renderer;
code for capturing a given stream quality metric from the intercepted packets; and
code for outputting data associated with the given stream quality metric;
a second sub-system for collecting the data from the set of monitoring agents.
-
-
19. A stream monitoring method, comprising:
-
delivering a media stream to each of a set of agents, each agent having a core and a renderer;
at each agent, intercepting useful packets of the stream as those packets cross an interface between the core and the renderer;
capturing a given stream quality metric from the intercepted useful packets; and
collecting data from each of the agents. - View Dependent Claims (20)
-
Specification