There are known quirks about the use of the HTML5 media elements in mobile devices. For instance, Apple has been a big fan of HTML5 from the beginning, deciding against support for Flash on iOS devices in favor of HTML5 video. However, some things that work on the desktop don’t in an Apple mobile environment. As an example, using the
poster attribute caused the video element to fail in iOS 3, though this problem has been fixed in iOS 4. Another interesting little quirk was iPad’s only checking the first
source element, so you needed to place the MP4 video first in the list.
In addition, the iOS environment has its own native application for playback control, so it ignores the controls attribute.
Most importantly, the video capability itself is limited in mobile environments. There is the resolution/size issue, of course, but there are also issues with containers and codecs. Mobile devices don’t have the processing power our computers have, which means that the file sizes are larger (because of simpler compression techniques). At the same time, mobile devices have data access limitations as well as issues with storage, so larger files aren’t mobile-friendly.There’s also the challenge associated with the sheer number of mobile operating systems, mobile browsers, and devices—especially devices.
At this time, the iOS supports H.264, and the Android OS supports H.264 and WebM
(though without hardware acceleration). Since Google is making a move away from
H.264, we can assume the Android OS will, eventually, drop support for H.264. Maybe.In addition, the upcoming release of Windows Phone 7 from Microsoft, supposedly includes support for HTML5 video. Since Windows Phone 7 is Microsoft, we have to assume it will have H.264 support. Nokia is transitioning to Windows Phone 7, but is not offering HTML5 video and audio in its next release of its built-in Symbian operating system. However, you can run Opera Mobile on Symbian/S60, and get HTML5 video and audio support. Opera supports only Ogg and WebM. Blackberry supports H.264 video, but not the HTML5 video element—you’ll have to use a link.
What we can take away from all of this is that to support mobile devices, you’ll need to provide appropriately sized video files, as well as include support for both WebM/
Ogg Theora and H.264. But not just any H.264. You need to provide videos encoded
with the right profile.