JW Player was the video player chosen and used by YouTube back when they first launched, before becoming the world's biggest video sharing service.
The player is rendered in HTML regardless if the chosen playback method is HTML5 or Flash.
JW Player supports playback of any video format Adobe Flash Player and HTML 5 can handle. These include H.264, WebM, YouTube videos, FLV, MP4, MP3, AAC, JPG, PNG and GIF.
What is new in this release:
- displaytitle has been re-added as a configuration option
- displaydescription can be used to toggle the display of a file's description field
- visualplaylist has been add as a configuration option. The default value is true, setting this to false will remove the visual playlist from the controlbar
- Improved replay icon appearance in seven skin.
- Player skins are now loaded via CDN instead of being built directly into the player
- Removed legacy GA events
- Custom providers can now be implemented in Premium edition players
- Added support for Akamai HDS provider. Contact Akamai for the latest version.
- Clicking "Live" will bring you to the Live position in a DVR stream
- Updated DASH support streams with startNumber with values of 0
- HLS is now enabled by default for Android devices. To turn HLS off set androidhls:false
- Hovering over the player in HTML5 shows mouseover cursor.
- Corrected buffer display prior to ad playback
- Improved ad schedule handling
- Removed unstyled icon appearances during player setup
- More reliable handling of ad errors
What is new in version 6.12:
- Improved adaptive heuristics for HLS.
- HLS playback now supported on Chromecast.
- Updated UX in the Chromecast Receiver application.
- Key-value pair replacement for Google IMA ad requests.
- Support for Microsoft HLS Azure Clearkey + Playready AES tokenization.
What is new in version 6.11:
- Support for HLS Protocol Version 6 features
- A new model for sending events to Google Analytics with the built in plugin
- Casting mp4 videos from a Flash Player via our Chromecast integration
What is new in version 6.10:
- Schedule ads per playlist item instead of having a global schedule for an entire playlist.
- Schedule ads in content more accurately using a new format - hh:mm:ss.mmm.
- The ads control bar no longer blocks content during ad playback. It fades away after the ad starts playing.
- Waterfalling between ad tags is now even easier with built in support. You can now pass in multiple ads into an advertising block as well as into the playAd() API to fall back to multiple ad tags.
- Cast videos from Chrome on iOS using built in casting controls.
- Control closed captions with the JW Player support. Includes FCC caption styling support.
- Setting up the player for Chromecast requires publishers to configure their application with JW Player Chromecast receiver URL.
- Fixed a bug setting up Youtube in HTML5 mode.
- VMAP should support VASTAdData as well as VASTData.
- Fixed an issue where VPAID ad creatives were taking up more space than defined.
What is new in version 6.9:
- Support for Google Universal Analytics in the built in GA plugin. Maintains support for older data models.
- JW Player will now supports YouTube HTML5 chromeless player! This allows HTML5 YouTube videos to played in the JW Player on mobile and desktop!
- Keyboard shortcuts! JW Player can now be controlled with simple keyboard controls in both Flash and HTML5. Tab into the player and use space to begin playback, arrow keys to seek and adjust volume, and the ability quickly and enter/exit fullscreen.
- Second precise seeking in HLS. When seeking in an HLS stream, instead of seeking to the beginning of a fragment you can seek directly to a second.
- On Android Chrome fullscreen video playback is customizable with JW Player skins.
- onMeta returns ID3 metadata for the current fragment playing of an AAC HLS audio stream.
- JW Player now supports AES decryption of high quality HD HLS streams. The player decrypts and plays encrypted HD content 6x faster than previously, making it possible to stream high quality protected content.
- JW Player recognizes HLS from Azure without any additional configuration.
- JW Player would sometimes fail to load if it could not reach the CDN where external plugins were hosted. The player will now start up even if certain plugins can't be loaded.
- Updated FullScreen usage to comply with deprecated browser API calls.
- Updated the Twitter logo in the sharing plugin to comply with brand standards.
What is new in version 6.8:
- Support for IAB video ads standards VMAP1 and VAST3 which enables users to schedule ads, use ad pods, and employ skippable ads.
What is new in version 6.6:
- One-finger playlist scrolling on mobile devices
- Flash player doesn't show divider left of CC button
- Content plays through playAd() in onBeforePlay in Flash
- M3U8 parsing issue playing specific HLS live stream
What is new in version 5.10:
- httpmodel flv with startpos fail.
- Overlaid playlist pops up when returning from fullscreen.
- Fullscreen in flex without resizing bugs.
- First playlist item visible on top of video space.
- Scrollbar jumps to 0 on an HTTP seek.
What is new in version 5.9:
- HTML5 is now the default playback mode on Android Devices
- Cleaner User Interface on iOS Devices
- Saved Volume in HTML5 Mode
What is new in version 5.8:
- JW Player 5.8 introduces support for HTML5 video advertising.
- Increased Stability in HTML5.
- Secure Plugin Loading.
What is new in version 5.7:
- Visual Playlist Support in HTML5.
- Improved Plugin Control Over UI Elements.
- Additional Playlist Format Support in HTML5.
What is new in version 5.6:
- YouTube AS3 API Support.
- HTML5 Audio Support.
What is new in version 5.2:
- Font Control - Can now create skins with full control over the color, size and face of all fonts in the controlbar and playlist.
- Controlbar Layout - Can have the ability to specify the order of and/or hide individual buttons, sliders and text in the controlbar.
- Buffer Animation - Can have more control over the buffer icon animation, with the ability to change the speed and direction of the rotation.
- Skinning: removing volume slider in a skin.
- Seeking with XMoov has unexpected behavior.
- Dock icons incorrectly colorized.
- Progress bar flashes at 100% on HTTP streaming replay.
- Provide mechanism for plugins to enable/disable controlbar buttons.
- Skinning: Show Flash stage if components have transparent elements and no background color.
What is new in version 4.3:
- add transparency to display by setting an alpha screencolor.
- offer plugins to claim screenspace
- hd switch
- respect the user-defined 'duration', so chapterlists ate working
- set default x,y,width,height for plugins
- Check what player does if video.width > monitor.width
- set fullscreen width to video width if videowidth > monitorresolution/2
- add random() to YT proxy querystring to fix multiple YT connections
- save the volume as a cookie again
- allow different streamer for each playlist entry
- http smoothness: no download bar, smaller bufferlength and only show activity after a few seconds.
- only show overlaid playlist when idle/completed.
- rtmp redirection support
- add TextModel and extend models instead of having a flat list.
- plugin vars-retrieval functionality introduces lots of changes
- if the player is IDLE, displayclick should be 'PLAY'
- new button should respect width of the icon
- manage plugin stack in one place
- insert code documentation in wiki
- hd switch: kill start offset and add controlbar button
- add new flashvars and calls to testpage
- add loading http switch
- implement ATOM enclosure
- add download link to source zip in readme.html
- add z-indexing to plugin array
- change all skins so custom buttons work
- change all plugins to use the new resizing while staying compatible with the old
- amend plugin screenspace setting and custom controlbar buttons to YT plugin tutorial
- Bug fixes:
- playlist still visible if set to none?
- check revolt plugin for crossdomain check
- add one-time metadata load to RTMP
- when lightcolor but no backcolor, playlistbutton rollouts error
- httpmodel flv with startpos fail
- with a small width, the timeslider sticks to the fsbutton
- loading a lot of thumbs sometimes fails on IE6
- uints are seen as numbers in configger - issue with parsing colors
- error in Display.as when moving from playlistentry with thumb to entry without one
- getID() of RTMPModel makes wrong assumptions on non-mp4 extensions
- attempting a seek before metadata is received glitches HTTPModel playback
- new plugin-screenspace functionality breaks fullscreen scaling and introduces too many new flashvars
- overlaid playlist pops up when returning from fullscreen
- accessibility: tighter mp3 sync + timeout needed
- having a frontcolor but a skin without 'icon' buttons will raise an error
- scrollbar jumps to 0 on an http seek
- When reloading a YouTube item, the duration isn't sent again.
- playlist visible in fullscreen
- controlbar strangely offset in fullscreen
- substract the '-1.xx' from plugin names
- fullscreen in flex without resizing bugs
- controlbars of skins without icons are colored.
- this should work: flv
- First playlist item visible on top of video space
- displayclick=none must not have bttonMode / mouseChildren entries
- when switching items in fullscreen, the cursor pops up
- MP3 extensions in uppercase hide the preview image
- config.width not set to displaywidth on fullscreen with resizing
- when exiting the plaer with [ESC] the mouse stays hidden
- JS playerReady must be sent after plugin loading
- HTML 5 enabled browser
- Adobe Flash Player