CHANGELOG.md 192 KB

6.13.0 (2018-12-05)

Features

Bug Fixes

  • lang: Fixed typos in cs translation (#5407) (2241e77)
  • text track display: update on playerresize and orientationchange (#5447) (ae23f1e)
  • text-tracks: cuechange handler not triggering correctly (#5446) (404afb7), closes #5308
  • TextTrackSetting: Do not use default button type. (#5512) (3f6b909)
  • add support for :focus-visible selector (#5483) (9592a69), closes #5474
  • blob urls being ignored as valid sources (#5525) (1295d90), closes #5504
  • make sure all attributes are updated before applying to tag (#5416) (933a6c0), closes #5309
  • Prevent ResizeManager from being clicked on safari, fix playerresize on firefox (#5522) (7f6441f)
  • Set correct techName after call to reset() (#5453) (baf64be), closes #5411

Chores

  • package: update npm-run-all to 4.1.5 to remove event-stream (#5614) (30fa2a8)

Documentation

Tests

6.12.1 (2018-08-14)

Bug Fixes

  • sourceset: ignore blob urls when updating source cache (#5371) (f02b825)
  • always return a promise from play, if supported (#5227) (63e234f)
  • change time tooltips to be absolutely positioned (#5355) (91839d8), closes #5351

Chores

  • https: update a lot of links to be https (#5372) (513d317)

6.12.0 (2018-07-26)

Features

Bug Fixes

Documentation

  • remove duplicate [@deprecated](https://github.com/deprecated) which throws error when minifying via google closure compiler (#5342) (041d28c)

6.11.0 (2018-07-09)

Features

  • autoplay: extend autoplay option for greater good (#5209) (e630e26)
  • Add an Audio Description icon to an audio track name in the track menu if it is "main-desc" kind. (#4599) (efcfc84)
  • show mute toggle button if the tech supports muting volume (#5052) (89f6397), closes #4478
  • browser: include iOS Chrome UA pattern when detecting Google Chrome (#5262) (4754c4d)
  • fullscreen-toggle: disable fs button if fullcreen is unavailable (#5296) (c0f0350), closes #5290
  • middleware: make setSource be optional (#5295) (aab48c8)
  • text-track-display: Extend the constructColor function to handle 6 digit hex codes (#5238) (f8e8633)

Bug Fixes

  • browser: TOUCH_ENABLED detection with Win10 (#5286) (4b15d02), closes #3306
  • autoplay throws 'undefined promise' error on some browsers. (#5283) (ab3a9b9)

Chores

  • npmignore: don't publish zip file to npm (#5249) (2027762), closes #5248
  • README: use travis 6.x branch badge (ce31e3a)

Performance Improvements

6.10.3 (2018-06-11)

Bug Fixes

6.10.2 (2018-06-05)

Bug Fixes

Documentation

  • component: fix typo (#5226) (c25c15d)
  • examples: update doc examples and README to use video.js v6.10 (#5207) (af6d3bf)

6.10.1 (2018-05-17)

Bug Fixes

6.10.0 (2018-05-11)

Features

  • add 'autoSetup' option (#5123) (592c255), closes #5094
  • copy properties from to the media el from (#5039) as (#5163) (c654c7d)
  • update the players source cache on sourceset from (#5040) as (#5156) (72f84d5)
  • Bug Fixes

    • time-display: restore hidden label text for screen readers. (#5157) (baa6b56), closes #5135
    • sourceset and browser behavior inconsistencies from (#5054) as (#5162) (e1d26d8)
    • Reduce the multiple-announcement by screen readers of the new name of a button when its text label changes. (#5158) (79fed25), closes #5023
    • Remove spaces from element IDs and ARIA attributes in the Captions Settings Dialog (#5153) (e076cde), closes #4688 #4884
    • Remove unnecessary ARIA role on the Control Bar. (#5154) (9607712), closes #5134

    6.9.0 (2018-04-20)

    Features

    • Queue playback events when the playback rate is zero and we are seeking (#5061) (eaf3c98), closes #5024

    Bug Fixes

    Code Refactoring

    • move seekbar event handler bindings into a function (#5097) (7c3213c)
    • move sourceset code out of tech (#5049) (e2b9d58)

    Documentation

    Tests

    • fix queue playing events test for ie8 (for real this time) (#5110) (5dec1a0)
    • fix queued events test with playbackrate in IE8 (#5105) (c4a05eb)

    6.8.0 (2018-03-19)

    Features

    • add mimetype type to source object when possible (#4469) (#4947) (62ff3f6), closes #4851
    • Allow techs to change poster if player option techCanOverridePoster is set (#4921) (8706941), closes #4910
    • format time: add setFormatTime for overriding the time format (#4962) (2f96914), closes #2931
    • require enableSourceset option for event (#5031) (1b3c827)
    • sourceset event (#4660) (df96a74)
    • Use CSS grid for Caption Settings dialog to begin making it more responsive (#4997) (d2f63ad)

    Bug Fixes

    • don't add captions settings menu item when TextTrackSettings is disabled (#5002) (ba6a71e), closes #4996
    • sourceset: set evt.src to empty string or src attr from load (#5016) (46d8b37)

    Chores

    Documentation

    • component: fix misspellings (#5017) (1532df3)
    • component: fix misspelllings (#5019) (ebbe868)
    • react guide: update guide to prevent memory leaks when components are disposed of (#4998) (1fa9dfb)
    • time-ranges: fix misspellings (#5025) (bd6b31c)
    • time-ranges: fix wrong comment for getRange function (#5026) (d7f45ba)

    Reverts

    Tests

    • ResizeManager: only listen for one playerresize to make test not flaky (#5022) (4e83cd3)

    6.7.4 (2018-03-05)

    Bug Fixes

    • Fix an issue where disabling the progress control would throw an error. (#4986) (5b5cc50)
    • events: triggering with an object had incorrect target property on event object (#4993) (9c4ded8)
    • package: update videojs-vtt.js to version 0.12.6 (#4954) (2d64977)
    • text-tracks: keep showing captions even if the text track settings were disabled (#4974) (7facc44), closes #4964

    Chores

    • package: update grunt-accessibility to version 6.0.0 🚀 (#4968) (270a231)

    6.7.3 (2018-02-22)

    Bug Fixes

    Chores

    • add first-timers-issue-template.md (#4958) (f5c7373)
    • re-enable Greenkeeper 🌴 and make it update package-lock.json (#4967) (aa5f3bf)

    Documentation

    6.7.2 (2018-02-13)

    Bug Fixes

    • cache middleware instances per player (#4939) (29a8ee1), closes #4677
    • Only select TextTrackMenuItem if unselected (#4920) (6189baa)
    • progress control: Fix the video continuing to play when the user scrubs outside of seekbar (#4918) (a1cef80)

    Documentation

    • Fix the advance plugin example in documentation (#4923) (4afabc2)
    • middleware: update the middleware guide with setTech and other corrections (#4926) (a434551)

    6.7.1 (2018-01-31)

    6.7.0 (2018-01-30)

    Features

    Bug Fixes

    • do not patch canplaytype on android chrome (#4885) (f03ac5e)

    Chores

    Documentation

    • Update COLLABORATOR_GUIDE.md and CONTRIBUTING.md to include label meanings (#4874) (a345971)

    Tests

    • add project and build names to browserstack (#4903) (41fd5cb)

    6.6.3 (2018-01-24)

    Bug Fixes

    • hide volume slider when the slider is not active and mute toggle button is in focus (#4866) (e628ccd)

    Chores

    • docs site: use git commit message for netlify build (#4900) (ddfaf14)
    • package: update remark-cli to version 5.0.0 (#4894) (aee4e6b)
    • package: update remark-parse to version 5.0.0 (#4892) (2c59476)
    • package: update remark-stringify to version 5.0.0 (#4893) (5b76bb1)
    • package: update shelljs to version 0.8.1 (#4899) (87cbd23), closes #4875

    Documentation

    6.6.2 (2018-01-05)

    Bug Fixes

    • progress bar time tooltips bug by adding word-break css reset (#4859) (98212c4), closes #2964
    • silence unhandled promise rejection in Safari when seeking (#4860) (baf0982), closes #4853

    Chores

    • netlify: add some debug info in the netlify command (#4862) (8f450ea)
    • package: update karma to version 2.0.0 (#4834) (22fcd03)

    Documentation

    • wait for text track load with addRemoteTextTrack (#4855) (7c393e5)

    6.6.1 (2018-01-04)

    Bug Fixes

    • lang: Complete the Simplified Chinese translations (zn-CN.json) (#4827) (98773dd)
    • lang: Complete the Traditional Chinese translation (zh-CT.json) (#4828) (eb4bd9f)
    • Fix an issue where hookOnce failed for the 'beforesetup' hook. (#4841) (a6f4444)
    • replace   with \u00a0 (#4825) (98fe49f), closes #4309
    • wrap audio change handler rather than bind so a player dispose doesn't affect other players (#4847) (4eb0047)

    Chores

    6.6.0 (2017-12-15)

    Features

    • add support for debug logging (#4780) (ba0f20e)
    • playerresize event on Player dimension API calls (#4800) (e0ed0b5)
    • css: add a delay before showing loading spinner (#4806) (f47a083)

    Bug Fixes

    • package: update videojs-font to version 2.1.0 (#4812) (1117587)
    • modify debug log tests to accomodate old IE stringification (#4824) (5f89570)

    Chores

    6.5.2 (2017-12-14)

    Bug Fixes

    Chores

    • remove unused popup classes (#4792) (295889b), closes #4725
    • lang: Add translation for "caption settings" in zh-CN.json (#4815) (15cd32e)
    • lang: Add translation for "caption settings" in zh-TW.json (#4816) (029955a)

    6.5.1 (2017-12-04)

    Bug Fixes

    • cannot drag on progress bar in IE9 (#4783) (2337c1b), closes #4773
    • null check closest.getAttribute (#4763) (0f1b260)
    • off text tracks should be set based on current state (#4775) (904989d)
    • Remove listener used to test if passive listeners are supported (#4787) (e582c3c)

    Chores

    Documentation

    • clarify text tracks are meant for any usage of Video.js, both video and audio (#4790) (1672a6d)
    • deploy docs using netlify (#4774) (4dd000c), closes #4609

    6.5.0 (2017-11-17)

    Features

    • add a version method to all advanced plugin instances (#4714) (acf4153)
    • allow embeds via element (#4640) (d8aadd5)
    • Bug Fixes

      • Avoid empty but shown title attribute with menu items and clickable components (#4746) (dc588dd)
      • Player#play: Wait for loadstart in play() when changing sources instead of just ready. (#4743) (26b0d2c)
      • being able to toggle playback with middle click (#4756) (7a776ee), closes #4689
      • make the progress bar progress smoothly (#4591) (acc641a)
      • only allow left click dragging on progress bar and volume control (#4613) (79b4355)
      • only print element not in DOM warning on player creation (#4755) (bbea5cc)
      • trigger timeupdate during seek (#4754) (1fcd5ae)

      Chores

      Code Refactoring

      Documentation

      Performance Improvements

      • null out els on dispose to minimize detached els (#4745) (2da7af1)

      Tests

      6.4.0 (2017-11-01)

      Features

      • lang: add Hebrew translation (#4675) (32caf35)
      • lang: Update for Russian translation (#4663) (45e21fd)
      • Add videojs.hookOnce method to allow single-run hooks. (#4672) (85fe685)
      • add warning if the element given to Video.js is not in the DOM (#4698) (6f713ca)
      • allow progress controls to be disabled (#4649) (a3c254e)
      • set the play progress seek bar to 100% on ended (#4648) (5e9655f)

      Bug Fixes

      • css: update user-select none (#4678) (43ddc72)
      • aria-labelledby attribute has an extra space (#4708) (855adf3), closes #4688
      • Don't enable player controls if they where disabled when ModalDialog closes. (#4690) (afea980)
      • don't throttle duration change updates (#4635) (9cf9800)
      • Events#off threw if Object.prototype had extra enumerable properties, don't remove all events if off receives a falsey value (#4669) (7963913)
      • make parseUrl helper always have a protocl (#4673) (bebca9c), closes #3100
      • Make sure we remove vjs-ended from the play toggle in all appropriate cases. (#4661) (0287f6e)
      • player.src() should return empty string if no source is set (#4711) (9acbcd8)

      Chores

      Code Refactoring

      Documentation

      Tests

      6.3.3 (2017-10-10)

      Bug Fixes

      • a possible breaking change caused by the use of remainingTimeDisplay (#4655) (b1de506)

      Documentation

      6.3.2 (2017-10-04)

      Bug Fixes

      • Fix a typo in current time display component. (#4647) (4658c7b)

      Documentation

      • Document how to add a version number to a plugin (#4642) (85a34d1)

      6.3.1 (2017-10-03)

      Bug Fixes

      • Make sure time displays use correctly-formatted time. (#4643) (20f7fe9)

      6.3.0 (2017-10-03)

      Features

      • Add remainingTimeDisplay method to Player (#4620) (445eb26)
      • display currentTime as duration and remainingTime as 0 on ended (#4634) (f51d36b)
      • Do not set focus in sub-menus to prevent undesirable scrolling behavior in iOS (#4607) (1ac8065)

      Bug Fixes

      • reset to a play/pause button when seeking after ended (#4614) (335bcde)

      Chores

      Code Refactoring

      • Create a base time display class, and use it (#4633) (fa6f884)

      Documentation

      6.2.8 (2017-09-01)

      Bug Fixes

      Documentation

      • COLLABORATOR_GUIDE: how to release Video.js (#4586) (9588602)
      • update to width and height doc comments (#4592) (006fb3b)

      6.2.7 (2017-08-24)

      Bug Fixes

      Chores

      • package: update rollup to version 0.47.5 (#4572) (7b251d0)

      6.2.6 (2017-08-16)

      Bug Fixes

      • make boolean attributes set and check both the associated property and the attribute (#4562) (d668c49), closes #4351
      • playback rate default text (#4558) (a6b8425)
      • remove 'use strict' from rollup because vttjs isn't strict (#4551) (db55bbd)
      • set width and height for vjs-button like the SubsCaps button (#4548) (cd2f510), closes #4547
      • lang: typos in ar.json (#4528) (3e63bf3)

      Chores

      Documentation

      • updates to faq, language guide, and minor edits (#4556) (1f3375e)

      6.2.5 (2017-07-26)

      Bug Fixes

      • only change focus from BPB if not a mouse click (#4497) (ee014e2)

      Chores

      • greenkeeper: ignore webpack and uglify (#4518) (fe95a77)
      • package: update remark-cli to version 4.0.0 (#4508) (7c80e13)
      • package: update remark-parse to version 4.0.0 (#4507) (abb5d67)
      • package: update remark-stringify to version 4.0.0 (#4506) (bbd92ab)

      6.2.4 (2017-07-14)

      Chores

      6.2.3 (2017-07-14)

      Chores

      • gh-release: add prerelease flag and find right zip (#4488) (b1ac2e0)

      6.2.2 (2017-07-14)

      Bug Fixes

      • playback rate menu: cycling rates via click (#4486) (4f43616)

      Chores

      Documentation

      • Fix Player#src API documentation. (#4454) (7579fc1)
      • make jsdoc generate anchor names so ToC links work (#4471) (03fd402)

      Tests

      6.2.1 (2017-06-28)

      Bug Fixes

      • auto-removal remote text tracks being removed when not supposed to (#4450) (82c8b80), closes #4403 #4315
      • IE10 issue for disableOthers when property access results in "permission denied" (#4395) (7f7ea70), closes #4378
      • player.duration() should return NaN if duration is not known (#4443) (f5cc165)
      • Safari picture-in-picture triggers fullscreenchange (#4437) (b636663)
      • Update translations to match correct string (#4383) (e0824c8)
      • Use passive event listeners for touchstart/touchmove (#4440) (b4dc4f8), closes #4432

      Chores

      Documentation

      • Fix links in API docs for several Player events. (#4427) (cc6e824)
      • Fixing player.remoteTextTracks jsdoc (#4417) (9329e3e)
      • Update name of FullscreenToggle in documentation (#4410) (9702155)

      Performance Improvements

      6.2.0 (2017-05-30)

      Features

      Chores

      • package: update grunt-contrib-cssmin to version 2.2.0 (#4345) (d57f09f)
      • package: update videojs-flash to version 2.0.0 (#4375) (9816070)
      • update translations needed (#4380) (a5a68e8)

      Tests

      • TextTrackDisplay: Removing incorrect test techOrder (#4379) (eade52e)

      6.1.0 (2017-05-15)

      Features

      • Add 'beforepluginsetup' event and named plugin setup events (e.g. 'pluginsetup:foo') (#4255) (0a19cf0)
      • add 'playsinline' player option (#4348) (8d80a58)
      • Add a version class to the player (#4320) (ae423df)
      • Add getVideoPlaybackQuality API (#4338) (483e5a2)
      • deprecate firstplay event (#4353) (35df351)
      • remove playbackRate blacklist for recent Android Chrome (#4321) (da0f1ee)

      Bug Fixes

      Chores

      Documentation

      • react-guide: Use a React component as a VJS component (#4287) (cff2e50)

      6.0.1 (2017-04-13)

      Bug Fixes

      Chores

      Documentation

      6.0.0 (2017-04-03)

      Features

      Bug Fixes

      • accessibility bugs with the VolumeBar (#4023) (da2a1e0), closes #4021 #4022
      • add buildWrapperCSSClass methods to all menu buttons (#4147) (61d427c)
      • Add lang attribute to player el, so that css :lang() is correct (#4046) (17143fd)
      • addChild instance names should be toTitleCased (#4116) (576ac19)
      • allow changing volume in full height of volume control (#3987) (f87ada1)
      • copy basic plugin properties onto the wrapper (#4100) (127cd78)
      • cues at startTime 0 do not fire (#4152) (a2b1a33)
      • Disable all time tooltips in IE8, as they are broken (#4029) (60bcc99)
      • disable title attribute on menu items (#4019) (04f23c1), closes #3699
      • Do not create element for MediaLoader (#4097) (1cb0a97)
      • early play should wait for player ready, even if source is available (#4134) (3bbf019), closes #4057
      • EventTarget is also evented (#3990) (e34335b)
      • fix the structure of elements in menus to comply with ARIA requirements (#4034) (1b1ba04)
      • focus play toggle from Big Play Btn on play (#4018) (4f79e1e), closes #2729
      • hide font-icons from assitive technology (#4006) (24d2e7b), closes #3982
      • improve French translation (#4062) (dc4c1eb)
      • keep minimum volume after unmuting above 0.1 (#4227) (16c1e0a), closes #4054
      • localize aria-labels (#4027) (0ac1269), closes #2728
      • Make Player#techCall_() synchronous again (#3988) (3585af0)
      • make load progress buffered regions height 100% (#4190) (424fa51)
      • make mergeOptions behave the same across browsers (#4088) (0da9324)
      • make sure audio track hides with one item (#4202) (0fd7aad)
      • Muting with MuteToggle sets ARIA value of VolumeBar to 0 (#4099) (181a19f), closes #4064
      • not showing default text tracks over video (#4216) (dbfba28)
      • Patch a memory leak caused by un-removed track listener(s). (#3976) (4979ea7)
      • Progress holder gaps cause tooltips misalignment and time tooltip outlines (#4031) (be27f2a), closes #3645
      • remaining time display width on IE8 and IE9 (#3983) (866a3f3)
      • MenuButton: Unify behavior of showing/hiding (#4157) (c611f9f)
      • remove focus ring from player itself (#4237) (e98c65d)
      • audio-tracks-button: add wrapper CSS builder to audio tracks menu button (#4163) (d9ec7bc)
      • cues: only copy cue props that don't exist (#4145) (0f57341)
      • dom: getBoundingClientRect check that el is defined (#4139) (fb88ae2)
      • icon-placeholder: align icons on ie8 properly (#4174) (1770f00)
      • ie8: various minor ie8 fixes (#4175) (cb890a9)
      • package: update xhr to version 2.4.0 (#4101) (5265624)
      • playback rate menu: playback rate menu items should be selectable (#4149) (a9f8fcb)
      • sass: import path has cwd once again (#4061) (caff93f)
      • sass: import path no longer has cwd (#4001) (19b429b), closes #3998
      • subs-caps-button: add hide threshold to subs-caps button (#4171) (88ee6af)
      • remove redundant Html5#play() (405b29b)
      • removeCue should work with native passed in cue (#4208) (f2b5a05)
      • Set MuteButton controlText correctly (#4056) (3c1108c)
      • silence play promise error (#4247) (0908d91)
      • Solve a typo in translation files (#4063) (5540868)
      • support empty src in Player#src (#4030) (6541467)
      • synchronously shim vtt.js when possible (#4083) (e1b4804)
      • trap tab focus in modal when hitting s-tab (#4075) (1f7a842), closes #4049
      • updating time tooltips when player not in DOM (#3991) (22aade1)
      • subs-caps-button: add wrapper CSS builder to subs caps button (#4156) (e5af0a5)
      • subs-caps-button: captions items should hide icon from SR (#4158) (2ee133f)
      • text track settings: focus subs-caps button if exists over CC button (#4155) (db901c5)
      • tracks: allow forcing native text tracks on or off (#4172) (67634cf)
      • vttjs: wait till tech el in DOM before loading vttjs (#4177) (ddde644)

      Chores

      • 6.x build updates (#4228) (6d876ee)
      • Add flash as a dev dependency for testing (#4016) (4949619)
      • change accessibility test in grunt.js to remove unnecessary warning message. (#4143) (dacf0ca)
      • package: update remark-validate-links to version 6.0.0 (#4128) (1395677)
      • ignore qunit and sinon from greenkeeper (#4242) (29d733d)
      • increase browserstack/karma timeouts, dispose player in tests (#4135) (6874fa2)
      • only report errors during linting in the build process, not warnings (#4041) (6208e4b)
      • remove bower.json (#4238) (0d19a05), closes #4012
      • package: update webpack to version 2.3.0 (#4219) (0223057)
      • Remove component.json and remove references to it (#3866) (0bba319)
      • docs: Use Elephants Dream video files from CDN for docs/examples/elephantsdream/ (#4181) (af1c6e3)
      • package: pin karma to 1.3.0 (#4002) (5b8b41e)
      • package: update remark-cli to version 3.0.0 (#4126) (dc9ed1c)
      • package: update remark-lint to version 6.0.0 (#4129) (9ef2d07)
      • package: update remark-toc to version 4.0.0 (#4127) (d5a619d)
      • package: update uglify-js to version 2.8.8 (#4170) (bf787bd), closes #4138
      • package: update videojs-vtt.js to version 0.12.3 (#4221) (7d12c9e)
      • package: update xhr to version 2.3.3 (#3914) (924fb27)
      • switch from ghooks to husky (#4074) (c3b1d68)
      • sandbox: Fix poster image to match the video in the 'combined-tracks.html' example in sandbox (#4164) (5ffe1cd)
      • sandbox: Use Elephants Dream video files from CDN for the sandbox/descriptions.html.example. (#4137) (715f584)
      • test: silence plugin warning from test (#4173) (05e6494)
      • tests: make tests not print out errors (#4141) (f95815b)

      Code Refactoring

      Documentation

      Tests

      BREAKING CHANGES

      • setting the source is now asynchronous. sourceOrder option removed and made the default.
      • remove deprecated features.
      • volume panel: remove VolumeMenuButton, introduce a new default volume control: VolumePanel.
      • removal of keepTooltipsInside option.
      • some externally accessibly functions for tracks are now private.
      • player methods no longer return a player instance when called. Fixes #3704.
      • removal of component.json
      • remove flash tech from core.
      • restoring the outlines changes the skin slightly and potentially break users. Fixes #3200.
      • registerComponent now throws if no name or not a component is passed in.
      • remove the double loadstart handlers that dispose the tech/source handlers if a secondary loadstart event is heard.
      • remove ability to add children with options as a boolean.
      • removing ability to use TimeRange methods without an index.
      • button component will always use a button element.
      • play() no longer returns the player object but instead the native Promise or nothing.

      5.19.1 (2017-03-27)

      Bug Fixes

      • not showing default text tracks over video (#4217) (4653922)
      • removeCue should work with native passed in cue (#4209) (3974944)

      Chores

      • package: update videojs-vtt.js to 0.12.3 (#4223) (ad770fb)

      5.19.0 (2017-03-15)

      Features

      • Make pause on open optional for ModalDialog via options (#4187) (4ec3b56)

      Bug Fixes

      • make load progress buffered regions height 100% (#4191) (398c6e9)
      • make sure audio track hides with one item (#4203) (c069655)

      5.18.4 (2017-03-08)

      Bug Fixes

      • vttjs: wait till tech el in DOM before loading vttjs (#4176) (ad86eec)

      5.18.3 (2017-03-06)

      5.18.1 (2017-03-03)

      Bug Fixes

      • cues: only copy cue props that don't exist (#4146) (de08669)
      • cue-points with a startTime of 0 (#4148) (e7d4b47)
      • make sure that cues copy over their id (#4154) (072c277)
      • MenuButton: Unify behavior of showing/hiding (#3993) (4367c69)
      • playback rate menu: playback rate menu items should be selectable (#4150) (288edd1)

      Chores

      5.18.0 (2017-02-27)

      Features

      Bug Fixes

      • sass: import path has cwd once again (#4076) (c02c6c6)
      • addChild instance names should be toTitleCased (#4117) (fa97309)
      • make mergeOptions behave the same across browsers (#4090) (ce19ed5)
      • synchronously shim vtt.js when possible (#4082) (b5727a6)

      5.17.0 (2017-02-07)

      Bug Fixes

      • Patch a memory leak caused by un-removed track listener(s). (#3975) (bca44c0)
      • remove title attribute on menu items, fixes #3699 (#4009) (91874a3)

      Chores

      • change accessibility test in grunt.js to remove unnecessary warning message. (#4008) (daad492)
      • package: update swf to 5.2.0 (#4040) (dab893b)

      Documentation

      • minor fix to currentTime() comment: "setting" not "getting" (#3944) (6578ed9)

      5.16.0 (2017-01-12)

      Features

      • Show big play button on pause if specified (#3892) (b547214)

      Bug Fixes

      Chores

      Code Refactoring

      • require videojs-vtt.js via require rather than concat (#3919) (d290db1)

      Documentation

      5.15.1 (2016-12-23)

      Bug Fixes

      5.15.0 (2016-12-22)

      Features

      • player: ingest a player div for videojs (#3856) (74530d8)
      • deprecate the use of starttime in player.js (#3838) (22cf3dd)

      Bug Fixes

      • html5: (un)patchCanPlayType could set native canPlayType to null (#3863) (559297a)
      • seeking: don't always pause in mouse down (#3886) (e92db4f), closes #3839
      • don't emit tap events on tech when using native controls (#3873) (42507f8)
      • remote text track deprecation warnings (#3864) (a7ffa34)
      • remove vjs-seeking on src change (#3846) (83cbeec), closes #3765

      Chores

      • docs: Documentation Linting and TOC generation (#3841) (0493f54)
      • faq: move FAQ and troubleshooting guide to docs/ (#3883) (26789e7)
      • package: update dependencies (enable Greenkeeper) 🌴 (#3777) (d20e9ce)
      • videojs-standard: update to version 6.0.1 (#3884) (eb389c5)

      Documentation

      • move examples out of code into docs (642ad4b)

      Tests

      • hooks: move vjs hooks QUnit module into separate file (#3862) (87cd26d)
      • hooks: remove errors logged in tests (#3865) (3f724f9)

      5.14.1 (2016-12-05)

      Bug Fixes

      • throttle: Fix error in Fn.throttle that broke MouseTimeDisplay (#3833) (014c6b8)

      Tests

      5.14.0 (2016-12-02)

      Features

      Code Refactoring

      • html5: remove confusing references to player in a tech (#3790) (d69551a)

      Documentation

      • FAQ: add an faq (#3805) (1d5562d)
      • guides: Manual Documentation Improvements (#3703) (d24fe40)
      • jsdoc: Update the jsdoc comments to modern syntax - Part 1 (#3694) (1a0b281)
      • jsdoc: Update the jsdoc comments to modern syntax - Part 2 (#3698) (cfc3ed7)
      • jsdoc: Update the jsdoc comments to modern syntax - Part 3 (#3708) (eb2093e)
      • jsdoc: Update the jsdoc comments to modern syntax - Part 4 (#3756) (15ce37e)
      • jsdoc: Update the jsdoc comments to modern syntax - Part 5 (#3766) (ba3cf17)
      • jsdoc: Update the jsdoc comments to modern syntax - Part 6 (#3771) (c902279)
      • add a troubleshooting guide (#3814) (54ff1f9)
      • fix typo, extends -> extend (#3789) (c5d1152)

      Tests

      5.13.2 (2016-11-14)

      Bug Fixes

      • html5: exit early on emulated tracks in html5 (#3772) (252bcee)
      • HtmlTrackElementList: allow to reference by index via bracket notation (#3776) (430be94)

      Chores

      • fix CHANGELOG 5.13.1 header (23f0fa0)
      • fixup CHANGELOG for 5.13.1 release (2a05633)
      • package: update karma-detect-browsers to version 2.2.3 (#3770) (6b477bb)
      • pr_template: add checkbox to verify changes in a browser (#3775) (72fcb6c)

      5.13.1 (2016-11-09)

      Features

      • clickable-component: Disable interaction with disabled clickable components (#3525) (de1b363)
      • component: attribute get/set/remove methods (202da2d)
      • fluid: use default aspect ratio for fluid players if width unknown (#3614) (2988f6a)
      • add a safe computedStyle to videojs. (#3664) (9702618)
      • add ability to get current source object and all source objects (#2678) (028559c), closes #2443
      • Components are now accessible via camelCase and UpperCamelCase (#3439) (9d77268), closes #3436
      • lang: update ru.json (#3654) (d11fd50)
      • lang: update uk.json (#3675) (8f7eb12)
      • implement player lifecycle hooks and trigger beforesetup/setup hooks (#3639) (77357b1)
      • option to have remoteTextTracks automatically 'garbage-collected' when sources change (#3736) (f05a927)

      Bug Fixes

      • allow rounded value for fluid player ratio test (#3739) (2e720af)
      • aria-live="assertive" only for descriptions (685404d), closes #3554
      • currentDimension can return 0 for fluid player on IE (#3738) (74cddca)
      • Suppress Infinity duration on Android Chrome before playback (#3476) (ed59531), closes #3079

      Chores

      • changelog.md: update 5.12.6 and 5.12.3 (#3715) (254683b)
      • pin karma-detect-browsers to 2.1.0 (#3764) (4859bb9)
      • package: update grunt-accessibility to version 5.0.0 (#3747) (b6d521f)

      Code Refactoring

      • texttracksettings: DRYer code and remove massive HTML blob (#3679) (fb74c71)
      • remove un-needed contructor and function overrides (#3721) (6889e92)

      Documentation

      • Change registerSourceHandler param doc from first to index (#3737) (b2c5b2a)
      • collaborator_guide: add collaborator guide (#3724) (8d51235)
      • contributing.md: update CONTRIBUTING.md with latest info (#3722) (11a096d)

      Performance Improvements

      • Dispatch Flash events asynchronously (#3700)
      • Cache currentTime and buffered from Flash (#3705) (45ffa81)
      • Use ES6 rest operator and allow V8 to optimize mergeOptions (#3743) (5f42130)

      Tests

      5.12.6 (2016-10-25)

      Bug Fixes

      5.12.5 (2016-10-19)

      Bug Fixes

      • move html5 source handler incantation to bottom (#3695) (7b9574b)

      5.12.4 (2016-10-18)

      Bug Fixes

      • logging failing on browsers that don't always have console (#3686) (e932061)
      • Restore timeupdate/loadedmetadata listeners for duration display (#3682) (44ec0e4)

      Chores

      • grunt: fix getting changelog by switching to npm-run (#3687) (8845bd3), closes #3683

      Documentation

      • options.md: Remove Bad Apostrophe (#3677) (16c8559)
      • tech.md: Add a note on Flash permissions in sandboxed environments (#3684) (66922a8)

      5.12.3 (2016-10-06)

      Features

      • lang: add missing translations in fr.json (280ecd4)
      • lang: add missing translations to el.json (eb0efd4)

      Bug Fixes

      • controls: fix load progress bar never highlighting first buffered time range (ca02298)
      • css: remove commented out css (5fdcd46), closes #3587
      • disable HLS hack on Firefox for Android (#3586) (dd2aff0)
      • proxy ios webkit events into fullscreenchange (#3644) (e479f8c)
      • html5: disable manual timeupdate events on html5 tech (#3656) (920c54a)

      Chores

      • move metadata to hidden folder and update references (86f0830)
      • deps: add the bundle-collapser browserify plugin (816291e)
      • package: remove es2015-loose since it's an option for es2015 (#3629) (c545acd)
      • package: update grunt-contrib-cssmin to version 1.0.2 (#3595) (54e3db5)
      • package: update grunt-shell to version 2.0.0 (#3642) (2032b17)
      • refactor redundant code in html5 tech (#3593) (6878c21)
      • refactor redundant or verbose code in player.js (#3597) (ae3e277)
      • update CHANGELOG automation to use conventional-changelog (#3669) (d4e89d2)
      • update object.assign to ^4.0.4 (08c7f4e)

      Documentation

      • fix broken links in docs index.md (4063f96)

      Tests

      • a11y: add basic accessibility testing using grunt-accessibility (7d85f27)

      5.12.2 (2016-09-28)

      • Changes from 5.11.7 on the 5.12 branch

      5.12.1 (2016-08-25)

      • Changes from 5.11.6 on the 5.12 branch

      5.13.0 (2016-08-25)

      • Ignored release

      5.12.0 (2016-08-25)

      5.11.9 (2016-10-25)

      • greenkeeper updated karma dependencies (view)
      • update to latest uglify to fix preserve comments issue. Disable screw ie8 option. (view)
      • remove sourcemap generation (view)

      5.11.8 (2016-10-17)

      • @misteroneill restore timeupdate/loadedmetadata listeners for duration display (view)

      5.11.7 (2016-09-28)

      • @gkatsev checked throwIfWhitespace first in hasElClass (view)
      • @misteroneill pinned grunt-contrib-uglify to ~0.11 to pin uglify to ~2.6 (view)
      • @gkatsev set playerId on new el created for movingMediaElementInDOM. Fixes #3283 (view)

      5.11.6 (2016-08-25)

      5.11.5 (2016-08-25)

      5.11.4 (2016-08-16)

      (none)

      5.11.3 (2016-08-15)

      5.11.2 (2016-08-09)

      (none)

      5.11.1 (2016-08-08)

      5.11.0 (2016-07-22)

      5.10.8 (2016-08-08)

      • @gkatsev re-published to make sure that the audio button has css

      5.10.7 (2016-06-27)

      5.10.6 (2016-06-20)

      • @gkatsev fix not fully minified video.min.js file.

      5.10.5 (2016-06-07)

      • @gkatsev pinned dependencies to direct versions (view)
      • @gkatsev fixed minified vjs in ie8 when initialized with id string (view)
      • @IJsLauw fixed unhandled exception in deleting poster on ios7 (view)

      5.10.4 (2016-05-31)

      • Patch release to fix dist on npm

      5.10.3 (2016-05-27)

      • @BrandonOCasey fixed source handlers being disposed multiple times when a video is put into the video element directly (view)

      5.10.2 (2016-05-12)

      5.10.1 (2016-05-03)

      5.9.2 (2016-04-19)

      • @gkatsev grouped text track errors in the console, if we can (view)

      5.9.1 (2016-04-19)

      • @benjipott updated IS_CHROME to not be true on MS Edge (view)
      • @mister-ben blacklisted Chrome for Android for playback rate support (view)
      • @gkatsev made the first emulated text track enabled by default (view)
      • @gkatsev fixed removeRemoteTextTracks not working with return value from addRemoteTextTracks (view)
      • @forbesjo added back the background color to the poster (view)
      • @gkatsev fixed text track tests for older IEs (view)

      5.9.0 (2016-04-05)

      5.8.8 (2016-04-04)

      • @vtytar fixed auto-setup failing if taking too long to load (view)
      • @seescode fixed css failing on IE8 due to incorrect ie8 hack (view)
      • @seescode fixed dragging on mute toggle changing the volume (view)

      5.8.7 (2016-03-29)

      5.8.6 (2016-03-25)

      5.8.5 (2016-03-17)

      • @gkatsev cleared vttjs script handlers on dispose. Fixed tests (view)

      5.8.4 (2016-03-17)

      • @gkatsev changed emulated tracks to in novtt to wait for vttjs to load or error before parsing (view)

      5.8.3 (2016-03-10)

      5.8.2 (2016-03-09)

      5.8.1 (2016-03-07)

      5.8.0 (2016-02-19)

      5.7.1 (2016-02-11)

      5.7.0 (2016-02-04)

      • @forbesjo updated emulated tracks to have listeners removed when they are removed (view)
      • @incompl improved the UX of time tooltips (view)
      • @gkatsev updated README to include links to plugins page and getting started and cleaner link to LICENSE (view)
      • @hartman Corrected adaptive layout selectors to match their intent (view)
      • @mister-ben updated Umuted to Unmute in lang files (view)
      • @hartman updated fullscreen and time controls for more consistent widths (view)
      • @hartman Set a min-width for the progress slider of 4em (view)
      • @misteroneill fixed iphone useragent detection (view)
      • @erikyuzwa added ability to add child component at specific index (view)

      5.6.0 (2016-01-26)

      5.5.3 (2016-01-15)

      • @gkasev updated vjs to correctly return already created player when given an element (view)
      • @mister-ben updated CDN urls in setup guide (view)
      • @rcrooks fixed a couple of docs link and a jsdoc comment (view)

      5.5.2 (2016-01-14)

      • make sure that styleEl_ is in DOM before removing on dispose (view)

      5.5.1 (2016-01-08)

      5.5.0 (2016-01-07)

      5.4.6 (2015-12-22)

      • @gkatsev fixed vertical slider alignment in volume menu button (view)

      5.4.5 (2015-12-15)

      5.4.4 (2015-12-09)

      5.4.3 (2015-12-08)

      • @gkatsev updated options customizer and github-release options (view)

      5.4.2 (2015-12-08)

      5.4.1 (2015-12-08)

      5.3.0 (2015-11-25)

      • @forbesjo updated formatTime to not go negative (view)
      • @imbcmdth added sourceOrder option for source-first ordering in selectSource (view)

      5.2.4 (2015-11-25)

      5.2.3 (2015-11-24)

      5.2.2 (2015-11-23)

      5.2.1 (2015-11-16)

      • @dmlap Check a component is a function before new-ing (view)
      • @ksjun corrected the registerTech export (view)

      5.2.0 (2015-11-10)

      5.1.0 (2015-11-02)

      5.0.2 (2015-10-23)

      • @imbcmdth fixed an issue with emulateTextTracks being called before the tech dom was ready (view)
      • @gkatsev bumped obj.assign to fix uncaught SecurityError in iframes. Fixes #2703 (view)
      • @gkatsev updated contrib update and have contrib release only update local branches (view)
      • @gkatsev bumped chg to fix stalling issues (view)

      5.0.0 (2015-09-29)

      • @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)

      4.12.15 (2015-08-31)

      • @dmlap update to videojs-swf 4.7.4 (view)
      • @bc-bbay migrate seeking on replay to the flash tech (view)
      • Updated to v4.7.5 of the swf (view)

      4.12.14 (2015-08-21)

      4.12.13 (2015-08-10)

      4.12.12 (2015-07-23)

      • @imbcmdth updated source handlers to use bracket notation so they wont break when using minified videojs (view)
      • @imbcmdth fix potential triggerReady infinite loop (view)

      4.12.11 (2015-07-09)

      • @saxena-gaurav updated swf to 4.7.2 to fix flash of previous video frame (view)
      • @gkatsev updated the vtt.js version to fix JSON issues (view)
      • @dmlap fixed an error caused by calling vjs_getProperty on the swf too early (view)

      4.12.10 (2015-06-23)

      • @dmlap update to video-js-swf 4.7.1 (view)
      • @imbcmdth src() should not return blob URLs with MSE source handlers (view)

      4.12.9 (2015-06-15)

      4.12.8 (2015-06-05)

      4.12.7 (2015-05-19)

      • @tjenkinson Added background-color to vjs-poster to remove transparent borders around scaled poster image (view)
      • @bc-bbay fixed a bug where the player would try to autoplay when there was no source (view)
      • @bc-bbay update time display on loadedmetadata (view)
      • @dmlap update swf to 4.7 to pick up preload fix (view)

      4.12.6 (2015-05-07)

      4.12.5 (2015-03-17)

      • Updated to videojs-swf v4.5.4 to fix a potential security issue (view)

      4.12.4 (2015-03-05)

      • Randomized the Google Analytics calls to stay under the limit (view)

      4.12.3 (2015-02-28)

      • @heff fixed setting the source to an empty string (view)

      4.12.2 (2015-02-27)

      4.12.1 (2015-02-19)

      • @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)

      4.12.0 (2015-02-17)

      4.11.4 (2015-01-23)

      • @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)

      4.11.3 (2014-12-19)

      • @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)

      4.11.2 (2014-12-17)

      • @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)

      4.11.1 (2014-12-04)

      • @heff fixed a code bug in track XHR requests (view)

      4.11.0 (2014-12-04)

      • @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)

      4.10.2 (2014-10-30)

      • @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)

      4.10.1 (2014-10-29)

      @heff removed his own stupid error view

      4.10.0 (2014-10-28)

      • @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)

      4.9.1 (2014-10-15)

      • Bumped to videojs-swf v4.5.1 to fix a data sanitization issue (view)

      4.9.0 (2014-09-30)

      4.8.5 (2014-09-25)

      • Updated to the latest version of the swf to fix HLS playback (view)

      4.8.4 (2014-09-23)

      • @gkatsev fixed isFullscreen reporting on iOS devices (view)

      4.8.3 (2014-09-22)

      • @heff updated to the latest version of the SWF to 4.4.4 (view)

      4.8.2 (2014-09-16)

      • @gkatsev fixed an IE11 bug where pause was not fired when the video ends (view)

      4.8.1 (2014-09-05)

      • @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)

      4.8.0 (2014-09-03)

      • @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)

      4.7.3 (2014-08-20)

      • 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)

      4.7.2 (2014-08-14)

      • Fixed a case where timeupdate events were not firing, and fixed and issue with the Flash player version (view)

      4.7.1 (2014-08-06)

      • Fixed the broken bower.json config (view)

      4.7.0 (2014-08-05)

      • 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)

      4.6.4 (2014-07-11)

      • Fixed an issue where Flash autoplay would not show the controls (view)

      4.6.3 (2014-06-12)

      • Updated to version 4.4.1 of the SWF (view)
      • Fixed a minification issue with the fullscreen event. fixes #1282 (view)

      4.6.2 (2014-06-10)

      • Fixed an issue with the firstplay event not firing when autoplaying (view)

      4.6.1 (2014-05-20)

      • Udpated playbackRate menu to work in minified version (view)

      4.6.0 (2014-05-20)

      • 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)

      4.5.2 (2014-04-12)

      • Updated release versioning to include bower.json and component.json

      4.5.1 (2014-03-27)

      • Fixed a bug from the last release where canPlaySource was no longer exported

      4.5.0 (2014-03-27)

      • 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)

      4.4.3 (2014-03-06)

      • Fixed bugs in IE9 Windows 7N with no Media Player (view)
      • Fixed a bug with setPoster() in the minified version (view)

      4.4.2 (2014-02-24)

      • Fixed module.exports in minified version (view)

      4.4.1 (2014-02-18)

      • Added .npmignore so dist files wouldn't be ignored in packages

      4.4.0 (2014-02-18)

      • 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)

      4.3.0 (2013-11-04)

      • 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)

      4.2.2 (2013-10-15)

      • Fixed a race condition that would cause videos to fail in Firefox (view)

      4.2.1 (2013-09-09)

      • Fixed an infinite loop caused by loading the library asynchronously (view)

      4.2.0 (2013-09-04)

      • 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

      4.1.0 (2013-06-28)

      • 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)

      4.0.4 (2013-06-11)

      • Added google analytics to current CDN version. (view)

      4.0.3 (2013-05-28)

      • Fixed an bug with exiting fullscreen. view

      4.0.2 (2013-05-23)

      • Correct version number for CDN swf url. Minify CSS. view

      4.0.1 (2013-05-22)

      • Fixed old IE font loading view

      4.0.0 (2013-05-09)

      • 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)

      3.2.0 (2012-03-20)

      • 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.

      Patches

      • 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

      3.1.0 (2012-01-30)

      • 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

      3.0.0 (2012-01-10)

      • 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

      Patches

      • 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