I just push the buttons….

M3U8 Validator Tool

leave a comment »

Recently I worked on a iPad video application setting up the video streaming solution for it. Videos had to be viewable over 3G and EDGE connections, so this meant that we had to use Apple Segmented HTTP Live Streaming . The app had VOD’s with durations ranging from 2mins, 10mins and 60mins. If you understand how “Segmented HTTP Streams” works then you understand that the amount of files that are created just for one VOD is quite large.

i.e  60mins VOD with 5 bitrates would be around 1800 files (*.ts / *.m3u8).

One issue I had was validating and debug the VOD’s when they where on the production environment. The mediastreamvalidator tools supplied by apple works well but can handle token/cookie authentication which was I had implemented for security. Also the tool only works on a mac.

So I decided to to create a AIR app with the ability to connect to the CDN by FTP that way bypassing the token/cookie auth and allowing the app to validate the m3u8 VODs.

Download from here

parse a index multi-bitrate M3U8 file and a single bitrate M3U8 file.
– It will validate that all *.ts segments files referenced in the M3U8 files exist and the VOD is not missing any files which make the clip
– It will validate that all the M3U8 files are of correct format and contain data.

Does Not
– calculate ts file bitrate  and average segment bitrate
– validate segment encryption

Note: When implementing Apple HTTP Live Streaming using the mediastreamvalidator to validate your VODs is the best way. This app is just designed to validate that all the *.ts files referenced in the *.m3u8 files exist.


Written by tomkaurin

January 31, 2011 at 6:47 pm

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: