Media stream monitoring
A stream monitor device includes at least one processor configured to implement a get stream module, which obtains, from a streaming server, stream records associated with media streams to be monitored. The at least one processor is further configured to implement a stream monitor module configured to perform event-driven monitoring of monitored media streams. The at least one processor is further configured to implement a graphical user interface (GUI) module that generates displays related to a status of the monitored media streams.
1 . A stream monitor device comprising:
at least one processor configured to implement a get stream module configured to obtain, from a streaming server, stream records associated with media streams to be monitored, the media streams to be monitored including media streams being currently delivered to stream requestors;
the at least one processor further configured to implement a stream monitor module configured to perform event-driven monitoring of monitored media streams, the event-driven monitoring including intercepting packets included in the media streams being currently delivered to the stream requestors; and
the at least one processor further configured to implement a graphical user interface (GUI) module configured to generate displays related to a status of the monitored media streams.
2 . The stream monitor device of claim 1 , wherein information included in the stream records includes:
protocols to be used to connect to individual media streams.
3 . The stream monitor device of claim 2 , wherein the stream monitor module is further configured to:
use the information included in the stream records to connect to a plurality of the individual media streams concurrently; and
monitor the plurality of the individual media streams individually.
4 . The stream monitor device of claim 1 , wherein the stream monitor module is further configured to:
disconnect from a group of the monitored media streams in response to completing monitoring of all media streams in the group.
5 . The stream monitor device of claim 1 , wherein the stream monitor module is further configured to:
monitor the monitored media streams for at least one of the following:
connection errors, media content errors, or metadata errors.
6 . The stream monitor device of claim 1 , wherein the stream monitor module is further configured to:
deliver stream status notifications to a database on a per-stream basis immediately upon completion of testing of an individual media stream.
7 . The stream monitor device of claim 1 , wherein the stream monitor module is further configured to:
report successful streams in an asynchronous Hypertext Transfer Protocol (HTTP) request.
8 . A system comprising:
a streaming server configured to transmit packetized media content in individual media streams to each of a plurality of requestors over separate network connections;
a stream monitor device configured to monitor the individual media streams to verify that broadcast content is being properly transmitted to the plurality of requestors, wherein the stream monitor device includes:
at least one processor configured to implement a get stream module configured to obtain, from the streaming server, stream records associated with media streams to be monitored, the media streams to be monitored including media streams being currently delivered to the plurality of requestors;
the at least one processor further configured to implement a stream monitor module configured to perform event-driven monitoring of monitored media streams, the event-driven monitoring including sampling packets included in the media streams being currently delivered to the plurality of requestors; and
the at least one processor further configured to implement a graphical user interface (GUI) module configured to generate displays related to a status of the monitored media streams.
9 . The system of claim 8 , wherein information included in the stream records includes one or more of:
protocols to be used to connect to the individual media streams, an address to be used to connect to the individual media streams, a host name of a host hosting the individual media streams, media stations associated with the individual media streams, stream type descriptions of the individual media streams, or tokens used to connect to the individual media streams.
10 . The system of claim 9 , wherein the stream monitor module is further configured to:
use the information included in the stream records to connect to a plurality of the individual media streams concurrently; and
monitor the plurality of the individual media streams individually.
11 . The system of claim 8 , wherein the stream monitor module is further configured to: disconnect from a group of the monitored media streams in response to completing monitoring of all media streams in the group.
12 . The system of claim 8 , wherein the stream monitor module is further configured to: monitor the monitored media streams for at least one of the following: connection errors, media content errors, or metadata errors.
13 . The system of claim 8 , wherein the stream monitor module is further configured to: deliver stream status notifications to a database on a per-stream basis immediately upon completion of testing of an individual media stream.
14 . The system of claim 8 , wherein the stream monitor module is further configured to: report successful streams in an asynchronous Hypertext Transfer Protocol (HTTP) request.
15 . A method comprising:
obtaining, at a stream monitor, stream records associated with media streams to be monitored, the media streams to be monitored including media streams being currently delivered to stream requestors;
connecting to the media streams using information included in the stream records;
monitoring the media streams for errors by reading packets included in the media streams being currently delivered to the stream requestors; and
reporting statuses of individual media streams of the media streams based on the monitoring.
16 . The method of claim 15 , wherein the information included in the stream records includes tokens used to connect to the individual media streams.
17 . The method of claim 16 , further comprising: connecting to a plurality of the individual media streams concurrently.
18 . The method of claim 17 , further comprising:
disconnecting from the plurality of the individual media streams after monitoring of the plurality of the individual media streams has been completed.
19 . The method of claim 15 , further comprising:
monitoring the media streams for at least one of the following: connection errors, media content errors, or metadata errors.
20 . The method of claim 15 , further comprising:
reporting the statuses of each of the individual media streams immediately upon completion of testing each of the individual media streams.