Before jumping-into adding background video to a website, you should review considerations and limitations:
The Just Because Clause
Don’t just use this technique because you can: video content must amplify a site’s message, not just be shown because it’s pretty. Unless it's really-really-really pretty.
The video will likely be set to autoplay, but it should be muted by default; ideally, it should not include sound at all. Please, and for the love of all things holy, MUTE. THAT.
The video should display a placeholder image, falling back to a static background image for browsers that do not support HTML5. The placeholder image will also be used a background on mobile devices: most phones and tablets do not support auto-play, for obvious reasons.
If too short, a video can feel repetitive (as most such videos will be set to loop), while too long becomes a narrative unto itself, and therefore deserving to be a separate design element.
A runtime of approximately 12 – 30 seconds will be ideal.
Accessibility & Contrast
Any text or (logo) image placed on top of the video should remain in high contrast throughout the length of the video. Considering that every frame of the video is different, this can be hard to achieve, but it's totally possible to add an "overlay filter" to the browser with CSS code to better add to the contrast. Users should have easy access to a UI control to pause the video*; ideally, the video should play through only once.
* It's an accessibility issue; flashing or strobing content can trigger epilepsy and migraines in susceptible individuals, and some will find it difficult to read content with moving images on the page. Those visitors should not visit the Squareflair 404 page.
Browsers Still Suck at HTML5 Video?
Is it a truth that all other browsers besides the one I use are horrible? OF COURSE! That's one way to look at it, but in reality, we always need to be aware of what users use (what people surf with sounded worser). For this, it's always a good idea to deliver the same video in various formats. The HTML5 <video> element works in the latest versions of all major browsers (IE9+, Firefox 7+, Chrome 14+, Safari 4+, and Opera 11+). But because different browsers prefer different native video formats (of course, why wouldn't they?) — a typical implementation of <video> in HTML5 looks like this: