- @carpasse infer MIME types from file extensions in the HTML5 and Flash techs (view)
- @mmcc updated the slider to allow for vertical orientation (view)
- @dmlap removed an ie6 hack for flash object embedding (view)
- @heff replaced Closure Compiler with Uglify for minification (view)
- @OleLaursen added a Danish translation (view)
- @dn5 Added new translations (Bosnian, Serbian, Croatian) (view)
- @mmcc (and others) converted the whole project to use ES6, Babel and Browserify (view)
- @heff converted all classes to use ES6 classes (view)
- @mmcc added ES6 default args and template strings (view)
- @dconnolly replaced JSON.parse with a safe non-eval JSON parse (view)
- @mmcc added a new default skin, switched to SASS, modified the html (view)
- @gkatsev removed event.isDefaultPrevented in favor of event.defaultPrevented (view)
- @heff added and
extends
function for external subclassing (view) - @forbesjo added the
scrubbing
property (view) - @heff switched to border-box sizing for all player elements (view)
- @forbesjo added a vjs-button class to button controls (view)
- @bc-bbay Load plugins before controls (view)
- @bc-bbay rename onEvent methods to handleEvent (view)
- @dmlap added an error message if techOrder is not in options (view)
- @dconnolly exported the missing videojs.plugin function (view)
- @mmcc added back the captions settings styles (view)
- @gkatsev updated the component.js styles to match the new style guide (view)
- @gkatsev added error logging for bad JSON formatting (view)
- @gkatsev added a sensible toJSON function (view)
- @bc-bbay fixed instance where progress bars would go passed 100% (view)
- @eXon began Tech 2.0 work, improved how tech events are handled by the player (view)
- @gkatsev added get and set global options methods (view)
- @heff added support for fluid widths, aspect ratios, and metadata defaults (view)
- @heff reorganized all utility functions in the codebase (view)
- @eXon made additional tech 2.0 improvements listed in #2126 (view)
- @heff Cleaned up and documented src/js/video.js and DOM functions (view)
- @mmcc Changed to pure CSS slider handles (view)
- @mister-ben updated language support to handle language codes with regions (view)
- @heff changed the 'ready' event to always be asynchronous (view)
- @heff fixed instances of tabIndex that did not have a capital I (view)
- @heff fixed a number of IE8 and Flash related issues (view)
- @heff Reverted .video-js inline-block style to fix Flash fullscreen (view)
- @mmcc switched to using button elements for button components (view)
- @mmcc increased the size of the progress bar and handle on hover (view)
- @mmcc moved the fonts into their own repo (view)
- @mmcc deprecated the options() function and removed internal uses (view)
- @carpasse enhanced events to allow passing a second data argument (view)
- @bc-bbay made the duration display update itself on loadedmetadata (view)
- @arwidt added Swedish and Finnish translations (view)
- @heff moved all the CDN logic into videojs/cdn (view)
- @mmcc fixed the progress handle transition jerkiness (view)
- @dmlap added support for the seekable property (view)
- @mmcc un-hid the current and remaining times by default (view)
- @pavelhoral fixed a bug with user activity that caused the control bar to flicker (view)
- @dmlap updated to videojs-swf@4.7.1 to fix a video dimensions issue on subsequent loads (view)
- @mmcc added the vjs-big-play-centered class (view)
- @thijstriemstra added a logged error when a plugin is missing (view)
- @gkatsev fixed the texttrackchange event and text track display for non-native tracks (view)
- @mischizzle fixed event.relatedTarget in Firefox (view)
- @mboles updated JSDoc comments everywhere to prepare for new docs (view)
- @mmcc added a currentTime tooltip to the progress handle (view)
- @pavelhoral fixed subclassing without a constructor (view)
- @dmlap fixed a vjs_getProperty error caused by a progress check before the swf was ready (view)
- @dmlap exported the videojs.log function (view)
- @gkatsev updated vttjs to fix a trailing comma JSON error (view)
- @gkatsev exported the videojs.bind() function (view)
- Insert cloned el back into DOM. Fixes #2214 (view)
- @heff sped up testing (view)
- pass fs state to player from enterFullscreen, split full-window styles into their own selector (view)
- Fixed vertical option for volumeMenuButton (view)
- @dmlap switched events to not bubble by default (view)
- @dmlap export videojs.createTimeRange (view)
- @dmlap export a basic played() on techs (view)
- @dmlap use seekable on source handlers when defined (view)
- @dmlap fire seeking in the flash tech, not the SWF (view)
- @dmlap expose the xhr helper utility (view)
- @misteroneill fixed internal extends usage and added a deprecation warning (view)
- @eXon added the poster to the options the tech receives (view)
- @eXon made sure the volume persists between tech changes (view)
- @eXon added the language to the options the tech receives (view)
- @mmcc Added "inline" option to MenuButton and updated VolumeMenuButton to be able to utilize it (view)
- @misteroneill restore some properties on window.videojs. (view)
- @misteroneill restore some 4.x utilities and remove deprecated functionality (view)
- @heff use a synchronous ready() internally (view)
- @nickygerritsen scrubbing() is a method, not a property (view)
- @sirlancelot change "video" to "media" in error messages (view)
- @nickygerritsen use the default seekable when a source handler is unset (view)
- @gkatsev always use emulated TextTrackLists so tracks survive tech switches (view)
- @misteroneill restore Html5.Events (view)
- @misteroneill removed the deprecated Component init method (view)
- @misteroneill restore videojs.formatTime (view)
- @misteroneill include child components with `true` in options (view)
- @misteroneill create video.novtt.js in dist builds (view)
- @misteroneill pass vtt.js option to tech (view)
- @forbesjo updated the sauce labs config and browser versions (view)
- @mmcc made sure controls respect muted attribute (view)
- @dmlap switched global options back to an object at videojs.options (view)
- @ogun fixed a typo in the Turkish translation (view)
- @gkatsev fixed text track errors on dispose and in cross-browser testing (view)
- @mmcc added type=button to button components (view)
- @mmcc Fixed IE by using setAttribute to set 'type' property (view)
- @misternoneill fixed vertical slider issues (view)
- @gkatsev moved default and player dimensions to style els at the top of HEAD (view)
- @gkatsev moved default and player dimensions to style els at the top of HEAD el (view)
- @gkatsev removed non-default track auto-disabling (view)
- @gkatsev exported event helpers on videojs object (view)
- @nickygerritsen fixed texttrack handling in IE10 (view)
- @gkatsev deep clone el for iOS to preserve tracks (view)
- @forbesjo switched automated testing to BrowserStack (view)
- @gkatsev fixed nativeControlsForTouch handling. Defaults to native controls on iphone and native android browsers. (view)
- @heff fixed cross-platform track tests by switching to a fake tech (view)
- @gkatsev improved tech controls listener handling. (view)
- @dmlap move seek on replay into the flash tech (view)
- @dmlap @gkatsev improve Flash tech error property and add an error setter to the base tech (view)
- @dmlap update to videojs-swf 5.0.0-rc1 (view)
- @dmlap expose start and end buffered times (view)
- @heff fixed a number of console errors after testing (view)
- @gkatsev made the sass files available via npm in src/css (view)
- @heff removed playerOptions from plugin options because it created an inconsistency in plugin inits (view)
- @heff added a default data attribute to fix the progress handle display in IE8 (view)
- @heff added back the default cdn url for the swf (view)
- @gkatsev fixed the default state of userActive (view)
- @heff fixed event bubbling in IE8 (view)
- @heff cleaned up internal duration handling (view)
- @heff fixed the UI for live streams (view)
- @gkatsev updated opacity of caption settings background color (view)
- @gkatsev made all sass variables !default (view)
- @heff fixed the inline volume control and made it the default (view)
- @forbesjo fixed webkit deprecation warnings (view)
- @forbesjo added Android and iOS browser testing (view)
- @heff improved css selector strengths (view)
- @heff moved scss vars to be private (view)
- @heff added a fancy loading spinner (view)
- @gkatsev added a mouse-hover time display to the progress bar (view)
- @heff added an attributes argument to createEl() (view)
- @heff made tech related functions private in the player (view)
- @heff removed the loadedalldata event (view)
- @dmlap switched to using raynos/xhr for requests (view)
- @heff Fixed double loadstart and ready events (view)
- @gkatsev fixed potential double default style elements (view)
- @imbcmdth extended createTimeRange to support multiple timeranges (view)
- @misteroneill rename "extends" to "extend" for ie8 (view)
- @forbesjo removed the PhantomJS dependency (view)
- @misteroneill re-exposed videojs.TextTrack (view)
- @heff removed a second copy of video.novtt.js from dist (view)
- @heff fixed timeranges deprecation warnings in tests (view)
- @misteroneill updated play control to use its state for icon (view)
- @gkatsev exposed isCrossOrigin and used it to enable CORS for textTrack XHRs (view)
- @misteroneill fixed tsml to be used as a tag for template strings (view)
- @eXon added support for a tech-supplied poster (view)
- @heff improved some skin defaults for external styling (view)
- @heff changed component child lists to arrays instead of objects (view)
- Updated to videojs-swf v4.5.4 to fix a potential security issue (view)
- Randomized the Google Analytics calls to stay under the limit (view)
- @heff fixed setting the source to an empty string (view)
- @gkatsev fixed disabling of default text tracks (view)
- @gkatsev fixed the track list reference while switching techs that use emulated tracks (view)
- @gkatsev fixed a Firefox error with the captions settings select menu options (view)
- @PeterDaveHello added a Traditional Chinese translation (view)
- @mmcc updated the hide/show functions to use a class instead of inline styles (view)
- @mister-ben added better handling of the additional videojs() arguments when the player is already initialized (view)
- @anhskohbo added a Vietnamese translation (view)
- @Sxmanek added a Czech translation (view)
- @jcaron23 added the vjs-scrubbing CSS class and prevented menus from showing while scrubbing (view)
- @dmlap fixed URL parsing in IE9 (view)
- @gkatsev Fixed issue where ManualTimeUpdatesOff was not de-registering events (view)
- @brycefisher Added a guide on player disposal (view)
- @toniher added a Catalan translation (view)
- @mmcc added a VERSION key to the videojs object (view)
- @mmcc fixed an issue with text track hiding introduced in #1681 (view)
- @dmlap exported video.js as a named AMD module (view)
- @dmlap fixed poster hiding when the loadstart event does not fire (view)
- @chikathreesix fixed an object delete error in Chrome (view)
- @steverandy fixed an issue with scrolling over the player on touch devices (view)
- @mmcc improved tap sensitivity (view)
- @mister-ben added a vjs-ended class when playback reaches the end of the timeline (view)
- @dmlap Add network and ready state properties (view)
- @woollybogger exported the hasClass function (view)
- @DevGavin fixed the Chinese translation (view)
- @iSimonWeb added font-path variable (view)
- @shoshomiga added a Bulgarian translation (view)
- @ragecub3 added a Turkish translation (view)
- @gkatsev greatly improved text track support and implemented vtt.js as the webvtt parser (view)
- @gkatsev fixed captions showing by default in Chrome and Safari (view)
- @mister-ben fixed a woff warning in Firefox (view)
- @heff exported missing source handler functions (view)
- @heff fixed type support checking for an empty src string (view)
- @carpasse fixed a bug in updating child indexes after removing components (view)
- @dmlap fixed a bug where native controls would show after switching techs (view)
- @H1D fixed an issue with file extension type detection (view)
- @bclwhitaker updated to v4.5.3 of video-js-swf (view)
- @gdkraus fixed a bug where you could no longer tab-navigate passed a menu button (view)
- @matteos exported the setSource functions so source handlers will work in the minified version (view)
- @matteos fixed RTMP playback (view)
- @mmcc fixed a bug where the playback rate menu would not open (view)
- @gkatsev fixed an issue with source handlers that caused subclasses of source handler classes to break (view)
- @heff fixed a code bug in track XHR requests (view)
- @rutkat updated sliders to use keydown instead of keyup for more responsive key control (view)
- @toloudis fixed an issue with checking for an existing source on the video element (view)
- @rafalwrzeszcz fixed the Flash object tag markup for strict XML (view)
- @thijstriemstra fixed a number of typos in the docs (view)
- @heff added the Source Handler interface for handling advanced formats including adaptive streaming (view)
- @azawawi added an Arabic translation (view)
- @mmcc added functions for better timeout and interval handling (view)
- @mmcc fixed the vdata exception when you dispose a player with tracks (view)
- @nemesreviz added a Hungarian translation (view)
- @heff updated the SWF to the latest version (view)
- @heff fixed checking for child options in the parent options to allow for 'false' (view)
- @heff fixed the VolumeMenuButton options to allow passing 'vertical' to the VolumeBar (view)
- @mmcc fixed localization of captions/subtitles menu off buttons (view)
@heff removed his own stupid error view
- @aptx4869 fixed an issue where the native JSON parser wasn't used (view)
- @andekande improved the German translation (view)
- @OlehTsvirko added a Ukrainian translation (view)
- @OlehTsvirko added a Russian translation (view)
- @thijstriemstra added a Dutch translation (view)
- @heff updated the poster to use CSS styles to display; fixed the poster not showing if not originally set (view)
- @mmcc fixed an issue where errors on source tags could get missed (view)
- @heff enhanced the event listener API to allow for auto-cleanup of listeners on other componenets and elements (view)
- @mmcc fixed an issue with the VolumeButton assuming it was vertical by default (view)
- @DevGavin added a Simplified Chinese translation (view)
- @heff Added the ability to set options for child components directly in the parent options (view)
- @heff turned on the custom html controls for touch devices (view)
- Bumped to videojs-swf v4.5.1 to fix a data sanitization issue (view)
- @deedos added a Brazilian Portuguese translation (view)
- @baloneysandwiches added a hasClass method (view)
- @mynameisstephen fixed an issue where slider event listeners were not being cleaned up (view)
- @alexrqs cleaned up the Spanish translation (view)
- @t2y added a Japanese translation (view)
- @chikathreesix fixed an issue where data-setup options could be missed (view)
- @seniorflexdeveloper added new translations and translation updates (view)
- @chikathreesix exported the videojs.Flash.embed method (view)
- @doublex fixed an issue with IE7 backwards compatibility (view)
- @mmcc made it possible to override the font-size of captions and subtitles (view)
- @philipgiuliani added an Italian translation (view)
- @twentyrogersc fixed the return value when setting the poster source (view)
- @heff updated to swf v4.5.0 to fix event issues (view)
- @rpless made the VolumeMenuButton volume more accesible via tab navigation (view)
- @mmcc added support for audio tags (html5 audio only) (view)
- Updated to the latest version of the swf to fix HLS playback (view)
- @gkatsev fixed isFullscreen reporting on iOS devices (view)
- @heff updated to the latest version of the SWF to 4.4.4 (view)
- @gkatsev fixed an IE11 bug where pause was not fired when the video ends (view)
- @dmlap fixed an issue where an error could be fired after player disposal (view)
- @dmlap fixed poster error handling (view)
- @dmlap fixed an issue with languages and subclassing the player (view)
- @mmcc fixed a few CSS issues with the poster and the error 'X' (view)
- @MrVaykadji and @Calinou added a french translation (view)
- @heff fixed an internal deprecation warning and missing deprecated functions (view)
- @andekande added a German translation (view)
- @mattosborn fixed a bug where getting the video element src would overwrite it (view)
- @songpete fixed a bug where keyboard events were bubbling and causing additional actions (view)
- @knabar made the inactivity timeout configurable (view)
- @seniorflexdeveloper added language files to the distribution for including specific languages (view)
- @gkatsev improved handling of null and NaN dimension values (view)
- @gkatsev fixed an issue where the controls would break if Flash was initialized too quickly (view)
- @mmcc fixed an issue where if no playback tech was supported the error could not be caught (view)
- Added function for adding new language translations, updated docs, and fixed the notSupportedMessage translation (view)
- Exposed the player.selectSource method to allow overriding the source selection order (view)
- Fixed a case where timeupdate events were not firing, and fixed and issue with the Flash player version (view)
- Fixed the broken bower.json config (view)
- Added cross-browser isArray for cross-frame support. fixes #1195 (view)
- Fixed support for webvtt chapters. Fixes #676. (view)
- Fixed issues around webvtt cue time parsing. Fixed #877, fixed #183. (view)
- Fixed an IE11 issue where clicking on the video wouldn't show the controls (view)
- Added a composer.json for PHP packages (view)
- Exposed the vertical option for slider controls (view)
- Fixed an error when disposing a tech using manual timeupdates (view)
- Exported missing Player API methods (remainingTime, supportsFullScreen, enterFullWindow, exitFullWindow, preload) (view)
- Added a base for running saucelabs tests from grunt (view)
- Added additional browsers for saucelabs testing (view)
- Added support for listening to multiple events through a types array (view)
- Exported the vertical option for the volume slider (view)
- Fixed Component trigger function arguments and docs (view)
- Now copying all attributes from the original video tag to the generated video element (view)
- Added files to be ignored in the bower.json (view)
- Fixed an error that could happen if Flash was diposed before the ready callback was fired (view)
- The up and down arrows can now be used to control sliders in addition to left and right (view)
- Added a player.currentType() function to get the MIME type of the current source (view)
- Fixed a potential conflict with other event listener shims (view)
- Added support for multiple time ranges in the load progress bar (view)
- Added vjs-waiting and vjs-seeking css classnames and updated the spinner to use them (view)
- Now restoring the original video tag attributes on a tech change to support webkit-playsinline (view)
- Fixed an issue where the user was unable to scroll/zoom page if touching the video (view)
- Added "sliding" class for when slider is sliding to help with handle styling (view)
- Fixed an issue where Flash autoplay would not show the controls (view)
- Updated to version 4.4.1 of the SWF (view)
- Fixed a minification issue with the fullscreen event. fixes #1282 (view)
- Fixed an issue with the firstplay event not firing when autoplaying (view)
- Udpated playbackRate menu to work in minified version (view)
- Updated the UI to support live video (view)
- The UI now resets after a source change (view)
- Now assuming smart CSS defaults for sliders to prevent reflow on player init (view)
- Fixed the title element placement in menus [view]
- Fixed title support for menu buttons (view)
- Fixed extra mousemove events on Windows caused by certain apps, not users [view]
- Fixed error due to undefined tech when no source is supported [view]
- Fixed the progress bar not finishing when manual timeupdate events are used [view]
- Added a more informative and styled fallback message for non-html5 browsers [view]
- Added the option to provide an array of child components instead of an object [view]
- Fixed casing on webkitRequestFullscreen [view]
- Made tap events on mobile less sensitive to touch moves [view]
- Fixed the default flag for captions/subtitles tracks [view]
- Fixed compilation failures with LESS v1.7.0 and GRUNT v0.4.4 [view]
- Added better error handling across the library [view]
- Updated captions/subtiles file fetching to support cross-origin requests in older IE browsers [view]
- Added support for playback rate switching [view]
- Fixed an issue with the loadstart event order that caused the big play button to not hide [view]
- Modernized the fullscreen API and added support for IE11 [view]
- Added cross-browser testing with SauceLabs, and added Karma as the default test runner (view)
- Fixed saucelabs integration to run on commits in TravisCI (view)
- Added a clearer error message when a tech is undefined (view)
- Added a cog icon to the font icons (view)
- Added a player option to offset the subtitles/captions timing (view)
- Updated release versioning to include bower.json and component.json
- Fixed a bug from the last release where canPlaySource was no longer exported
- Added component(1) support (view)
- Captions now move down when controls are hidden (view)
- Added the .less source file to the distribution files (view)
- Changed src() to return the current selected source (view)
- Added a grunt task for opening the next issue that needs addressing (view)
- Fixed Android 4.0+ devices' check for HLS support (view)
- Fixed bugs in IE9 Windows 7N with no Media Player (view)
- Fixed a bug with setPoster() in the minified version (view)
- Fixed module.exports in minified version (view)
- Added .npmignore so dist files wouldn't be ignored in packages
- Made the poster updateable after initialization (view)
- Exported more textTrack functions (view)
- Moved player ID generation to support video tags with no IDs (view)
- Moved to using QUnit as a dependency (view)
- Added the util namespace for public utility functions (view)
- Fixed an issue with calling duration before Flash is loaded (view)
- Added player methods to externs so they can be overridden (view)
- Fixed html5 playback when switching between media techs (view)
- Fixed Firefox+Flash mousemove events so controls don't hide permanently (view)
- Fixed a test for touch detection (view)
- Updated the src file list for karma tests (view)
- Added more tests for API properties after minification (view)
- Updated projet to use npm version of videojs-swf (view)
- Added support for dist zipping on windows (view)
- Fixed iOS fullscreen issue (view)
- Fixed touch event bubbling (view)
- Fixed ARIA role attribute for button and slider (view)
- Fixed an issue where a component's dispose event would bubble up (view)
- Quieted down deprecation warnings (view)
- Updated the seek handle to contain the current time (view)
- Added requirejs and browserify support (UMD) (view)
- Added Karma for cross-browser unit testing (view)
- Unmuting when the volume is changed (view)
- Fixed an accessibility issue with the big play button (view)
- Exported user activity methods (view)
- Added a classname to center the play button and new spinner options (view)
- Added API doc generation (view)
- Added support for codecs in Flash mime types (view)
- Fixed a race condition that would cause videos to fail in Firefox (view)
- Fixed an infinite loop caused by loading the library asynchronously (view)
- Added LESS as a CSS preprocessor for the default skin (view)
- Exported MenuButtons for use in the API (view)
- Fixed ability to remove listeners added with one() (view)
- Updated buffered() to account for multiple loaded ranges (view)
- Exported createItems() for custom menus (view)
- Preventing media events from bubbling up the DOM (view)
- Major reworking of the control bar and many issues fixed (view)
- Fixed an issue with minifiying the code on Windows systems (view)
- Added support for RTMP streaming through Flash (view)
- Made tech.features available to external techs (view)
- Minor code improvements (view)
- Updated time formatting to support NaN and Infinity (view)
- Fixed an
undefined
error in cases where no tech is loaded (view) - Exported addClass and removeClass for player components (view)
- Made the fallback message customizable (view)
- Fixed an issue with the loading spinner placement and rotation (view)
- Fixed an issue with fonts being flaky in IE8
- Turned on method queuing for unready playback technologies (flash) view
- Blocking user text selection on player components view
- Exported requestFullScreen() and cancelFullScreen() in the minified version view
- Exported the global players reference, videojs.players view
- Added google analytics to the CDN version (view)
- Exported fadeIn/fadeOut for the Component API (view)
- Fixed an IE poster error when autoplaying (view)
- Exported bufferedPercent for the API (view)
- Augmented user agent detection, specifically for Android versions (view)
- Fixed IE9 canPlayType error (view)
- Fixed various issues with captions (view)
- Added google analytics to current CDN version. (view)
- Fixed an bug with exiting fullscreen. view
- Correct version number for CDN swf url. Minify CSS. view
- Fixed old IE font loading view
- Improved performance through an 18% size reduction using Google Closure Compiler in advanced mode
- Greater stability through an automated cross-browser/device test suite using TravisCI, Bunyip, and Browserstack.
- New plugin interface and plugin listing for extending Video.js
- New default skin design that uses font icons for greater customization
- Responsive design and retina display support
- Improved accessibility through better ARIA support
- Moved to Apache 2.0 license
- 100% JavaScript development tool set including Grunt
- Updated docs to use Github markdown
- Allow disabling of default components
- Duration is now setable (need ed for HLS m3u8 files)
- Event binders (on/off/one) now return the player instance
- Stopped player from going back to beginning on ended event
- Added support for percent width/height and fluid layouts
- Improved load order of elements to reduce reflow
- Changed addEvent function name to 'on'
- Removed conflicting array.indexOf function
- Added exitFullScreen to support BlackBerry devices (pull/143)
- Updated docs with more options.
- Overhauled HTML5 Track support.
- Fixed Flash always autoplaying when setting source.
- Fixed localStorage context
- Updated 'fullscreenchange' event to be called even if the user presses escape to exit fullscreen.
- Automatically converting URsource URL to absolute for Flash fallback.
- Created new 'loadedalldata' event for when the source is completely downloaded
- Improved player.destroy(). Now removes elements and references.
- Refactored API to be more immediately available.
- 3.2.1 (2012-04-06) Fixed setting width/height with javascript options
- 3.2.2 (2012-05-02) Fixed error with multiple controls fading listeners
- 3.2.3 (2012-11-12) Fixed chrome spinner continuing on seek
- Added CSS fix for Firefox 9 fullscreen (in the rare case that it's enabled)
- Replaced swfobject with custom embed to save file size.
- Added flash iframe-mode, an experimental method for getting around flash reloading issues.
- Fixed issue with volume knob position. Improved controls fading.
- Fixed ian issue with triggering fullscreen a second time.
- Fixed issue with getting attributes in Firefox 3.0
- Escaping special characters in source URL for Flash
- Added a check for if Firefox is enabled which fixes a Firefox 9 issue
- Stopped spinner from showing on 'stalled' events since browsers sometimes don't show that they've recovered.
- Fixed CDN Version which was breaking dev.html
- Made full-window mode more independent
- Added rakefile for release generation
- Same HTML/CSS Skin for both HTML5 and Flash video
- Super lightweight Flash fallback player for browsers that don’t support HTML5 video
- Free CDN hosting
- 3.0.2 (2012-01-12) Started tracking changes with zenflow
- 3.0.3 (2012-01-12) Added line to docs to test zenflow
- 3.0.4 (2012-01-12) Fixing an undefined source when no sources exist on load
- 3.0.5 (2012-01-12) Removed deprecated event.layerX and layerY
- 3.0.6 (2012-01-12) Fixed wrong URL for CDN in docs
- 3.0.7 (2012-01-12) Fixed an ie8 breaking bug with the poster
- 3.0.8 (2012-01-23) Fixed issue with controls not hiding in IE due to no opacity support