On Github heff / browser-apis-talk
fetch('/video-segment.mp4').then(function(response) { var responseStream = response.body.getReader(); sourceBuffer.appendStream(responseStream); });
fetch('segment.ts')
document.registerElement('my-element', MyElement); // html <my-element></my-element> // js document.createElement('my-element'); document.querySelector('my-element'); // css my-element { color: red; }Custom elements with custom functionality that the browser recognizes
<x-playlist loop> <video src="..." controls="" preload="none"></video> <video src="..." controls="" preload="none"></video> <audio src="..." controls="" preload="none"></audio> </x-playlist>github.com/heff/x-playlist
<player> <button is="play-toggle"></button> <range is="volume-slider"></range> <range is="media-timeline"></range> <button is="player-setting"></button> <button is="player-fullscreen"></button> </player>All of the individual controls can be custom elements With video.js we've done a lot of work to make that easy, but you still have to learn the video.js API. You don't walk into the project already knowing how to move controls around, but if it were all native looking elements. You know already know how to work with HTML.
Connection type:
(try changing your connection)Battery status: Battery charging:
http://bit.ly/1M4Y8L8
ConnectionType: Spaceship Wifi
fetch('war.webm')
Steve Heffernan / @heff Video.js Brightcove
Imagery from The Fifth Element © 1997 Gaumont