MediaPlayer::load() currently tries to find a media engine that supports the specified MIME type, if there is one, but it uses the first registered engine if none claims the type so the media engine can sniff the data (if it wishes) and handle misconfigured servers. This is reasonable in the case where no type is specified in the markup, but it should not ask a media engine to open a url if the markup has a type attribute, and canPlayType() would return "" for that type.
Created attachment 65010 [details] proposed patch
http://trac.webkit.org/changeset/65779
Revision r65779 cherry-picked into qtwebkit-2.2 with commit 0386972 <http://gitorious.org/webkit/qtwebkit/commit/0386972>