Real time QoE monitoring of several MPEG-2 and MPEG-4/AVC programs
MPEG Monitor is UNIQUE. It enables to monitor the perceived quality (also called QoE: Quality of Experience) of several MPEG-2 or MPEG-4/AVC (H.264) programs in real time and on a single machine.
MPEG Monitor is mainly designed for:
But more than this, MPEG Monitor is unique due to the way it works.
Indeed, classical monitoring systems measure packets loss (QoS systems) or check the syntax of Transport Streams (verification of values like PCR) but they can't know the impact on perceived video quality (QoE) of the errors they measure. On the opposite, MPEG Monitor PERFORMS the video decoding in order to KNOW EXACTLY how the decoding was done and how are the pictures which are presented to the end-user. Therefore, MPEG Monitor is a REAL Quality of Experience (QoE) monitoring solution!
Because even if only one video packet is lost, depending on the packet which was lost, distortions can be invisible or they can lead to 12 seconds of black screen! So you need to precisely monitor your video transmissions and know the consequences of each lost packet, from the end-user point of view!
To be more precise, MPEG Monitor catches information from the decoder and injects it in a Human Vision model which outputs quality scores in real time.
For each decoded image, MPEG Monitor catches lots of information from the software video decoders, like the decoded image, the type of frame (I, P, B), bitrate, the QP (quantization parameter) value of each macro-block, the motion vector of each macro-block and the decoding status of each macro-block (correctly decoded, badly decoded due to some missing information, not decoded at all).
So, unlike classical QoS (Quality of Service) metrics which measure packet loss rate (and other parameters) but don't know the impact of a lost packet on visual quality, MPEG Monitor DOES decode and therefore KNOWS the impact of a lost packet on QoE.
For each monitored audio video program, the quality scores computed in real time by MPEG Monitor can be used to trigger alerts (by SNMP traps or emails) and to save audio video samples of problems. All measured data are saved so that they can be consulted later (locally or remotely).
When a problem of quality loss is detected, audio and/or video samples can be saved for later examination. These samples can be saved from X seconds BEFORE the problem to Y seconds AFTER the problem (X and Y are user-defined).
MPEG Monitor is a software product for Windows. It has additional features if external audio video devices are detected (like a Decklink rendering card from Blackmagic Design, for example). It can run on virtually any PC. It can even run on a laptop. If possible, the recommended configuration is: CPU with 4 cores (or more), 4 GB of RAM, 1920x1080 (or more) video graphics card.
On a PC with Intel Core i7 (model: 950), MPEG Monitor can process up to 16 MPEG-2 SD streams simultaneously, or 12 H.264 SD streams, or 4 to 6 H.264 HD streams. Of course, you can monitor a combination of MPEG-2 and MPEG-4/AVC (H.264) programs, in SD and in HD. For example, you can monitor 4 MPEG-2 SD streams, 3 MPEG-4/AVC SD streams and 2 MPEG-4/AVC HD streams.
At start up, MPEG Monitor displays a window which mainly contains three parts. On the top of the window, you can see the SAP announces and detect streams corresponding to these SAP announces or coming from a particular server (manually entered). On the middle of the window, the detected audio and video streams are displayed. On the bottom of the window, the programs are displayed. Each program is an association of one video stream (or none) and one or two audio streams (or none).
A stream is identified by its IP address, its port number and possibly the IP address of the interface it arrives on and the IP address of the streaming server).
MPEG Monitor can detect one or several streams from UDP, RTP, RTSP, HTTP or HLS (HTTP Live Streaming). Each Transport Stream can contain one or several programs. For each program, the video can be encoded in MPEG-2 or MPEG-4/AVC (H.264). Concerning the audio encoding, you just have to install the appropriate DirectShow decoder(s) and MPEG Monitor will support your audio streams. MPEG Monitor can process streams coming from one or several servers. Each server can stream in unicast or multicast.
When streams are detected from an SAP announce or from the IP address and port you specifed, these streams are displayed in the list located in the middle of the window.
As you may see, MPEG Monitor is really well adapted to IPTV monitoring. It can also be used with IP outputs of video encoders. For an encoder with ASI output, an ASI to IP converter is required.
For a quick start, you can create programs by associating the first video stream with the first audio stream, the second video stream with the second audio stream, etc.
You can also create programs that contain only one video stream or only one audio stream (or only two audio streams).
You can also create custom associations between video streams and audio streams. And several buttons can help you by creating associations automatically.
You could even combine a video stream coming from one server with an audio stream coming from the same Transport Stream AND a second audio stream coming from another server.
When you start the monitoring, MPEG Monitor displays one main window which shows all the monitored programs. For each program, the decoded video is displayed in real time and the volumes of the audio streams are indicated (if there are associated audio streams).
And for each program, one audio quality score and three video quality scores are computed:
MPEG Monitor also displays other windows showing:
And if you have any video and/or audio rendering cards installed on your PC (like Blackmagic Design cards for example), they wil be detected when MPEG Monitor starts and buttons (as the ones labelled "0" and "1" on the presented screenshot) will enable you to send the video and audio streams of a given program to these audio video devices. So you are able to see each program on a separate screen, to view it in full size. There is even one option to automatically display programs having problems on this separate screen.
Some windows (the curves and the system clock) can be displayed using transparency. The transparency percentage is chosen by the user.
On the presented screenshot, button "0" enable to send a program to a video output card with HDMI output (HD-SDI output is also possible).
Monitoring in real time is interesting. Sending alerts and saving samples is interesting too. But having the possibility to check the monitoring remotely, to draw quality and bitrate curves between two user-chosen dates, to compute statistics between two user-chosen dates and to easily browse and play the saved audio video samples... this is even more interesting!
To do this, MPEG Monitor includes its own web server. No need to install a separate web server (like Apache): the web server is already fully included in the application.
All you have to do is opening a web browser (Internet Explorer, Mozilla Firefox, Chrome, Safari, Opera...) and go to URL "http://IPADDRESSOFTHEMACHINE" (replace IPADDRESSOFTHEMACHINE by the IP address of the machine which runs MPEG Monitor).
On the local machine (that runs MPEG Monitor), you can use the URL "http://127.0.0.1" to display the web interface. By default, the web server uses port 80 but if you already have a server listening on port 80, you can change this port number. The first page of this web interface is the main menu which proposes different choices.
To protect from non-authorized users, you'll need to log in using an administrator password before you can use the functionalities of the web server.
First, the web server enables you to remotely see the video and audio quality scores (value and bargraph) of each monitored program, but also a thumbnail of each video stream.
This page is refreshed regularly (every second).
MPEG Monitor also enables to remotely view the quality and bitrate curves (for video and audio) of each monitored program.
This page is also refreshed regularly (every second).
For video and for audio, you can define two dates (thanks to a calendar, with a granularity of one minute) between which all the saved quality (or bitrate) measurement data will be processed.
Then MPEG Monitor will display the curves (for quality, for bitrate), statistics (mean value, min, max) and the saved samples over the selected period of time.
For video, you just have to indicate to program for which you want to compute curves and statistics. For audio, you will also have to precise which audio stream you want to consider for this program.
Between the two dates you have chosen, the following statistics will be given (for video results consultation):
A curve also displays the data saved over the selected period of time. Thanks to a menu, this curve can show any of the seven first statistics described above (quality scores and bitrate).
The different types of quality scores will enable you to quickly find the cause of the problems (encoding artifacts and/or transmission errors) and their importance.
Below the curve, you'll find the list of the saved samples (if any). Just click on a filename to download it through the web server and play it on your machine (locally or remotely).
MPEG Monitor uses size quotas on every folder it manages. When a folder has reached its size quota, its older file is deleted. That way, you'll never run out of disk space.
All size quotas are chosen by the user.
You can play the saved sample using your favorite player. Just click on a saved video sample in the web interface. Of course, you can also choose to save the file.
Media Player Classic is recommended.
In the web interface, all curves are interactive: if you click on one point of the curve, it will put this point at the center and zoom by a factor of 2. And if you drag your mouse to select a portion of the curve, it will zoom on this selection.
Of course, when you zoom or unzoom, the statistics will be adapted to the range of time of the new curve.
Like for video, the web server will enable you to compute statistics on audio measurement data, draw audio quality and audio bitrate curves, and download audio samples (if any).
Of course, the audio curves are interactive too.
Thanks to its operating mode, MPEG Monitor is the state-of-the-art solution to monitor MPEG-2 and MPEG-4/AVC (H.264) broadcasting and streaming. And its many features make it a really useful tool to detect problems, report them and help to identify their causes.
And unlike classical QoS (Quality of Service) metrics, MPEG Monitor DOES decode and therefore KNOWS the impact of encoding and lost packets on QoE (Quality of Experience).
MPEG Monitor enables to:
Therefore, MPEG Monitor is the best solution for:
Thanks to its real time operating and its functionalities to save samples when problems happen, MPEG Monitor can also be used to debug and validate audio and video encoders using live audio and video streams as input (instead of always using the same test sequences that all end in passing the tests successfully, using live streams can speed up validation).