When playing video for your viewers, we almost always recommend the HLS video format (Mux's default, a.k.a. M3U8).
- Widely supported by pretty much every browser and device.
- A better viewing experience because it supports adaptive bitrate (ABR) streaming.
However, there are some use cases where you may want or need to fall back to good ol' MP4s:
- Downloading the video for viewing offline.
- Embedding in Open Graph cards for sharing on social media.
- Supporting obscure and really old devices.
Often video apps/sites will give the option to users to download a video and save it for watching later. Viewers like this feature because it gives them flexibility and control over when they can watch, such as:
- They're about to get on a subway/plane and want to watch without an internet connection.
- They have an expensive mobile data plan and would rather download the video on their cheaper home internet before heading out.
- They just want to save the video for easy access later.
MP4 is a better format for these use cases because it's a self-contained, single-quality version of the video. This makes it easier to download and store than HLS which is made up of many different files.
Our MP4 support feature makes it possible for you to offer the video at different qualities. Your users can select which version they’d like to get so they can choose whether they’d prefer to save on bandwidth or have the highest quality video.
Examples of UI for downloading different resolutions.
In a nutshell, open graph tags let you control how content is displayed when users share a link to social media. The most common social media platforms for sharing, Facebook and Twitter, both support open graph tags for video, though they of course do so in their own unique ways. Here’s the best guidance we were able to find for Facebook and for Twitter.
When you post a URL, open graph tags tell Facebook what image, title, and description to automatically display.
As of this writing, neither support HLS but they do support MP4s. So with this new feature, you’ll now be able to use open graph tags for your videos on these platforms and any others that support MP4s.
The last use case for MP4s is for use on obscure and old devices. The one that’s specifically worth a mention is old Android devices with Android versions less than 4.1 (when HLS support was introduced in a decent way). The official Android version dashboard pegs this at 0.5% of Android users as of November 2018. So this is likely a very small percentage of your total audience, not to mention the video experience on those devices is pretty bad for reasons besides video format. But in the case that your audience has a lot of these users, we’ve got you covered with MP4s. If you know of other devices where MP4 support is required, let us know because we’d love to compile a list.
What did we miss? If there's other reasons you need MP4 files when delivering video to your viewers, let us know! We don't want to miss anything.
Not included here is the option to get the original quality version of a video in MP4 format. For example if someone live streams a video using Mux and then wants to download a high quality version of the recording to edit it. We're calling that "Master Access," "Master" referring to the original version, and it's a feature that's right on the heels of this one.
To add MP4 support, just add the "mp4_support": "standard" option when you create a Mux Asset and you're good to go. You'll have up to three MP4 quality versions for your viewers to choose from. See our MP4 Support Guide for more details.
Like many of the features on our backlog, this one was borne from customer feedback. Let us know what you think and what else you’re looking forward to seeing from Mux Video!