Media Format Support
This guide lists all media formats JW Player 6 officially supports.
JW Player 6 supports 9 distinct media formats: 3 video file types (MP4, WebM, FLV), 3 audio file types (AAC, MP3, Vorbis), YouTube videos (through their Chromeless Player API) and 2 streaming protocols (HLS, RTMP). Under certain circumstances, JW Player may play additional formats (like Ogg videos or ShoutCast streams), but only these 9 are cross-browser tested and officially supported.
JW Player 6 does not decode audio or video itself, but instead relies upon two underlying browser technologies: the HTML5 <video> element and the Adobe Flash plugin. Whether a format can play in HTML5 and/or Flash varies by browser. Therefore, we list below which formats are supported in each browser. See Supported Browsers & Devices for more details.
The JW Player tries to recognize a file format by its extension (e.g. .mp4 for MP4 videos). If the extension of your files is not recognized, the player will display an error. However, if you know your file is in a supported format, you can use the type playlist option to force the player to recognize the file as being of that format. See Working with Playlists for more info.
When using RSS feeds to load media, the type option must always be set to the mimetype of the format. These mimetypes are listed below. See Loading RSS Feeds for more info.
JW Player 6 supports three types of video files:
- MP4 videos using the H.264 video codec and the AAC audio codec. MP4 is of high quality and can be played in all browsers and devices. It is today's video format of choice.
- FLV videos using the H.263 video codec and the MP3 audio codec. FLV is of lower quality than MP4 and only supported in browsers that run Flash. Many existing video libraries are encoded in FLV.
- WebM videos using the VP8 video codec and the Vorbis audio codec. WebM is royalty free and of comparable quality to MP4. It has limited browser and device support.
Here is an overview of the recognized file extensions and mimetype for these formats, plus their browser playback support:
|Extension(s)||mp4, m4v, f4v, mov||flv||webm|
|Internet Explorer||html5, flash 1||flash||-|
- HTML5 playback as of Internet Explorer 9.
- WebM support as of Android 4.
See our MP4 Video Encoding Guide for hints and tools on converting your video library to MP4.
JW Player 6 supports three types of audio files:
- AAC audio files. AAC is of high quality and supported by all browsers and devices.
- MP3 audio files. Though not as good in quality as AAC, MP3 is very widely used. Many existing audio libraries are encoded in MP3.
- Vorbis audio files. Vorbis is royalty-free, but has limited browser and device support.
Here is an overview of the recognized file extensions and mimetypes for these formats, plus their browser playback support:
|Extension(s)||aac, m4a, f4a||mp3||ogg, oga|
|Internet Explorer||html5, flash 1||html5, flash 1||-|
|Chrome||html5, flash||html5, flash||html5|
|Safari||html5, flash||html5, flash||-|
- HTML5 playback as of Internet Explorer 9.
- Vorbis support as of Android 4.
In addition to self-hosted audio and video files, JW Player includes native support for playing YouTube videos. This is possible through built-in support for the Chromeless Player API. YouTube videos are embedded by linking to their page, using one of the following schemes:
The YouTube API requires the Flash plugin at present. Therefore, it is supported only on desktop browsers. On iOS and Android, limited playback support is available as part of the Download Fallback. YouTube's experimental iFrame API will likely introduce full HTML5 support in the future.
Some additional notes on YouTube support:
- If no poster image is provided, JW Player will automatically load a poster image from YouTube.
- YouTube videos are mostly available in multiple qualities, which means a quality selector is automatically displayed in the controlbar.
- YouTube may place ads over the video during playback. These ads can not be disabled. Neither can the YouTube logo in the bottom right corner.
- In addition to single videos, JW Player supports YouTube playlists. They have to be in RSS format, like this one.
JW Player 6 supports two types of streaming protocols:
- Adobe's RTMP protocol, using either a single MP4, FLV, AAC or MP3 file or a SMIL manifest. RTMP is mature and has broad CDN and encoder support. It requires dedicated server software though, and is sometimes blocked by firewalls. See Using RTMP Streaming for more info.
- Apple's HLS protocol, using M3U8 manifest files and TS media files. HLS builds upon standard HTTP, making it easy to deploy and firewall resilient. All JW6 editions support HLS on iOS, but only the Premium and Ads editions support HLS on desktop browsers. See Using Apple HLS Streaming for more info.
Here is an overview of the recognized file extensions and mimetypes for these protocols, plus their browser playback support:
|rtmp (direct)||rtmp (manifest)||hls (direct/manifest)|
|Internet Explorer||flash||flash||flash 2|
|Safari||flash||flash||html5, flash 2|
- A direct RTMP stream is recognized by the URL starting with rtmp.
- HLS in Flash is only supported in the JW6 Premium and Ads editions.
- Android SDK available for 2.3 and above. Contact us for more information.
Note JW Player supports neither RTMP nor HLS on Android. Although HLS is officially supported as of Android 3.0, a number of critical bugs prevents a satisfying playback experience. See our Android HLS blog post for more info.