As people have pointed out, even if you have opted-in for html5 videos in settings page and have perfectly html5 capable browser, Youtube refures to play some content in html5 player unless you switch your UA e.g. to iPad (so the html5 version clearly exists).
(Edit: this happens at least with Safari on OS X (not having WebM support), not sure about Chrome, which of course plays WebM as well.)
This is seriously lame act from Youtube. Anybody from Youtube/Google can explain?
On desktop it does not fall forward to html5 when there are ads. Or rather, it falls back to Flash to display ads. Sometimes it seems it thinks ads might be displayed and refuses to use html5.
The problem is that it if you (like me) have no Flash installed, it is impossible to play certain videos, unless you switch UA string (i.e. the limitation is artificial).
even applying &html5=1 to video GET query strings doesn't work either on most videos
i took this screenshot http://i.imgur.com/GYhj4.png - which shows that html5 trial enabled still doesn't fix the issue, the only fix is the extension right now :)
Videos with ads play perfectly fine with mobile clients (i.e. without Flash) or with Desktop browser faking mobile UA string, so there are no technical limitations.