This article will explain the best practice for optimizing the video quality for mobile devices. By following these best practices you will balance the performance of the progressive download with the quality of the video. The higher quality video you can provide the better experience your end user will have.
|Device ||Edge ||3G ||4G ||Wifi |
|phone ||80 kbps ||212 Kbps ||450 kbps ||750 kbps |
|tablet ||212 kbps ||450 kbps ||1500 kbps ||2500 kbps |
How to optimize:
Step 1 – Bandwidth Detection
Almost every mobile platform can tell an application what type of connection it is using. Ex: Edge, 3G, WiFi. The speed of the connection can give you a starting point for what bit rate you want to start at. Choosing a rate that is too high can cause a longer load time and create cause buffering pauses. Choosing a rate that is too low results in a poor user experience.
Step 2 – Monitor Buffer events and switch rates
Monitoring for buffering events allows your application to know if the device is having connection issues. When a buffering event is detected you can use the “start” option in the Video API to tell the player to use a lower kb rate and to start that video at the time when the video started to buffer. Ex: you are playing a 2500 kbps video on a tablet and it starts to buffer 35 seconds into the video. You can tell your player to use the URL to the 1500 kbps video and append the start option to the end of the URL; “&start=35”.
Detect Device: Tablet
Detect Connection: WiFi
Pass player video URL for 2500 kbps video file ( http://www.videodetective.net/player.aspx?cmd=6&fmt=4&customerid=12345&videokbrate=2500&publishedid=458293&e=1291562741&h= 1e7096ca5689034f5804be881c3c8c2d )
Event: Buffer at 35 seconds
Pass player video URL for 1500 kbps video file and append &start=35 to the end of the URL (http://www.videodetective.net/player.aspx?cmd=6&fmt=4&customerid=12345&videokbrate=2500&publishedid=458293&e=1291562741&h= 1e7096ca5689034f5804be881c3c8c2d&start=35)