MediaTracker v2.2 Readme ======================== Mingzhe Li lmz@cs.wpi.edu [Last Update: Wed Dec 13 14:24:00 EST 2006] New in version 2.2 ================== 1. Buffer counts (including init-buffer) 2. Instaneous Frame rate. (reversed computed from the smoothed frame rate report by windows media core) 3. Provide UTC time of each sample. 4. PlayerState (playing, buffering, reconnecting... etc.) 5. Tested for Windows Media Player v10 and v11. New in version 2.1 ================== 1. Fixed the bug that MediaTracker may crash on those urls with space in the path/file name. For Advanced User ================= If you are familiar with Windows Media Player (c) and how it works, you don't need read all the readme file. But you should read this section before you start using MediaTracker. 1. MediaTracker was developed on WMP 9.0 Beta. I recommend you have WMP 9 beta or later version installed on the computer. However, I have tested that MediaTracker works fine with WMP 7.0. The limitation of using WMP 7.0 is that the .wpl playlist will not work (WMP 7.0 supports .asx but not .wpl) and the screen resize is not perfect. 2. The Command line parameters: MediaTracker.exe [playlist.wpl|playlist.asx] [logfile.dat] If only one parameter is given, it will be treat as the playlist file. And the MediaTracker will generate a logfile name use the current date for you such as "20021025153112.dat" and put it in the same directory with the MediaTracker. Please note, if the playlist file is not located in the same directory with Mediatracker.exe, you should give the playlist path in URL format, such as: file:///C:/Mediatracker/Playlist1.wpl The logfile could take the regular file path format (absolute or relative path) but you should make sure that the path exists. CONTENTS ======== Overview Features Usage Playlists Data file Source Code Links Copyright Overview -------- MediaTracker is a customized version of Windows Media Player developed using Windows Media Software Development Kit (SDK) (C). MediaTracker provides the basic ability of playing back Windows Streaming Media clips, such as .wmv and .asf files using MMS protocol through the Internet. And the main purpose of MediaTracker is providing windows media researcher the ability to record application statistic information while playing back the media clips, such as the bandwidth, playing bit rate, and frame rate and etc. MediaTracker is developed for the multimedia research project of the Congestion Control Group (http://perform.wpi.edu/cc) CS department of Worcester Polytechnic Institute. System Requirement: 1. Recommended: Windows Media Player (c) version >= 9.0 beta. 2. Required: Windows Media Player (c) version >= 7.0. Compatility: MediaTracker was developed on WMP 9.0 Beta. I recommend you have WMP 9 beta or later version installed on the computer. However, I have tested that MediaTracker works fine with WMP 7.0. The limitation of using WMP 7.0 is that the .wpl playlist will not work (WMP 7.0 supports .asx but not .wpl) and the screen resize is not perfect. Features -------- 1. Windows Media clip playback. MediaTracker uses the Windows Media Player (C) core, and therefore support all kinds of media type that supported by WMP. 2. Application and network data recording every 500 ms. The data recorded includes: bandWidth: the current bandwidth of the clip. bitRate: the current bit rate being received. buffering Progress: the percentage of buffering completed. encoded FrameRate: the video frame rate specified by the content author. frame Rate: the current video frame rate. frames Skipped: the total number of frames skipped during playback. lost Packets: the number of packets lost. max Bandwidth: the maximum allowed bandwidth. received Packets: the number of packets received. reception Quality: the percentage of packets received in the last 30 seconds. recovered Packets: the number of recovered packets. source Protocol: the source protocol used to receive data. 3. WMP playlist format support: .asx and .wpl. 4. Command line interface support: MediaTracker supports command parameters parsing, which can be used for easy integrated in automatic scripts. 5. Automatic shutdown: after finish all the clips in the playlist, the MediaTracker will automatic shut down in 15 secs. Usage ----- GUI use: 1. Double click on the MediaTracker icon, MediaTracker will started and the GUI is a simple dialog based windows application. 2. Click the "Open" button, input the URL or use the "Browser "button to locate the playlist file. Then click on the "OK" button of the Open dialog box, and MediaTracker will automatically start to playback the URL or the playlist and record data. 3. For the GUI interface, the logfile name is automatically generated by MediaTracker and saved in the same directory as the MediaTracker.exe file. You cannot change the name or the location. 4. After the clip/playlist is finished, the auto shutdown messagebox will pop up. You can click on the "OK" buotton to shut down or click on the "Cancel" button to stop the auto shutdown progress. If you do nothing, MediaTracker will shutdown after 15 seconds. Command Line Interface use: 1. The command line interface format: MediaTracker.exe [playlist] [logfile] If no parameters are given, the MediaTracker will started just like double clicks on the icon. If only one parameter is given, the parameter will be treated as a playlist (or URL). MediaTracker will generate a logfile name using the current date, such as "20021025153112.dat", and put it in the same direstory as MediaTracker. The playlist can be .wpl and .asx file or an URL. If the playlist file is located in the same directory as MediaTracker.exe, you can just give the name of the playlist file, otherwise, you need to input the playlist path in a URL format, such as: file:///C:/Mediatracker/Playlist1.wpl The logfile can take the regular file path format (absolute or relative path) but the path must exist. If no path is given, the logfile will be put in the same directory as Mediatracker.exe. 2. After the clip/playlist is finished, the auto shutdown messagebox will pop up. You can click on the "OK" button to shut down or click on the "Cancel" button to stop the auto shutdown progress. If you do nothing, MediaTracker will shutdown after 15 seconds. Playlists --------- You can create playlists to playback multiple media clip one after there another. There are two major kinds pof laylist files: .wpl and .asx. You can use either format to create the playlist, but if you are running WMP 7.0, you will not be able to use .wpl playlist since it is only available for WMP 9.0. The simplified formats of these two playlists are shown below: asx playlist: Playlist1 ... wpl playlist: Playlist2 ... In both the playlist files, the url can be either a "mms://clip.asf" URL or a "http://clips.asx" URL that points to another playlist. There are two sample playlists that come with MediaTracker. You can create your own playlists following the samples. Data File --------- The data file record the following data from the playing back every 500 ms: Time: The sampling time, reset to 0 at each clip beginning. Buf_Progress: buffering progress (percentage) Bit_Rate: Current playing bit rate (may change due to media scale) BandWidth: Current bandwidth usage Max_BandW: Current available bandwidth (related to WMP network setup) Frame_Rate: Current frame rate (frame/second) Rncode_Fr: Encoded frame rate (Due to unknown reasons, it is always 0, bug?) Fr_Skipped: Current skipped frame Received_Pkts: Number of packets received until now (application layer packets) Lost_Pkts: Number of packets lost until now (application layer packets) Recover_Pkts: Number of packets recovered until now (application layer packets) Quality: reception Quality (the % of packets received in the last 30 seconds) Protocol: The protocol used for the playback (mmst = tcp, mmsu = udp) At the beginning of each single clip in the play list, the timer will be reset to 0 and the clip info will be written to the log file, including the source URL (clip source, not playlist), the resolution, the length of the clip (in both min:sec and secs). The info will use upto two lines. All the data is separated by a tab ('\t') and each sample is written to the file in one line (samples are separated by newlines ('\n'). The file can be opened with MS Excel directly, MS writer or some other text editor. Notepad is not recommended since it won't process the '\n' correctly. Source Code ----------- The source code for MediaTracker is also available for compilation in MS VC++. To modify the source code, you need to have WMP SDK 9.0 (c) installed on your computer. All the header files starting with wmp*.h come with the WMP SDK, and do not need modification. If you use some functions in those header files, you need include them in the MediaTrackerDlg.h. Links ----- For more information, please visit the project homepage: http://perform.wpi.edu/real-tracer/ Copyright --------- Copyright (C) Computer Science Department, Worcester Polytechnic Institute, All rights reserved. Modified history: Oct 29, 2002: Initial version by Mingzhe Li (lmz@wpi.edu) Nov 18, 2002: new in v2.1 added by Mingzhe Li (lmz@wpi.edu) Nov 09, 2004: new in v2.2 added by Mingzhe Li (lmz@wpi.edu)