- Introduction to Video
- Stream video files
- Start live streaming
- Configure broadcast software
- Live streaming from your app
- Reduce live stream latency
- Manage Stream Keys
- Stream recordings of live streams
- Live streaming FAQs
- Stream live to 3rd party platforms
- Use a custom domain for live streaming
- Handle live stream disconnects
- Stream simulated live
- Debug live stream issues
- Add your own live captions
- Add auto-generated live captions
- Build real-time video experiences
- Make API requests
- Play your videos
- Enable static MP4 renditions
- Download for offline editing
- Embed videos for social media
- Listen for webhooks
- Secure video playback
- Create clips from your videos
- Get images from a video
- Create timeline hover previews
- Adjust audio levels
- Add watermarks to your videos
- Add subtitles to your videos
- Minimize processing time
- Upload files directly
- Autoplay your videos
- Synchronize video playback
- Integrate with your CMS
Live Streaming FAQs
Answers to common questions relating to Live Streaming.
What is Mux’s latency for live streams?
For a standard live stream, latency is expected to be greater than 20 seconds and typically about 25 - 30 seconds. We offer a reduced latency mode which will reduce latency to about 12 - 20 seconds. A low-latency live stream BETA can go as low as 4 seconds of glass-to-glass latency but the latency can vary depending on your viewer's geographical location and internet connectivity.
Does Mux support WebRTC for live streaming?
We currently do not support WebRTC directly as an ingest technology. We accept RTMP and RTMPs because they are the most universal formats.
How can I go live from a browser?
To go live directly from a browser, you need to convert the browser stream into a format that can be consumed by RTMP on our end.
For example, we’ve had customers use Zoom to provide the video from a browser, and use its RTMP-out feature to broadcast a stream with Mux for streaming to a larger conference-like audience.
Is Mux Live Streaming API suitable for 2-way video communication applications?
Mux is not best suited for 2-way video communication applications. The Mux Live streaming API was built primarily for large-scale, 1-to-many broadcasts.
As a tradeoff, Mux intentionally expects that a built-in latency of 20 - 30 seconds is permissible while providing customers with reliable and scalable broadcast services.
Is it possible to rewind live content while the live stream continues?
DVR (Digital Video Recorder) mode is a live stream feature that lets it rewind. Mux supports DVR and non-DVR modes for live streams.
non-DVR mode is enabled by default for live streams and only has access to the most recent 30 seconds of the live stream.
DVR mode is possible by utilizing the live stream's active_asset_id
. When constructing the playback URL, the playback_id
for the associated active_asset_id
is used. When the live video ends, the Playback IDAPI associated with the active_asset_id
will automatically transition to an on-demand asset for playback instead.
For more information and caveats behind these two modes, refer to our Stream recordings of live streams guide.
What is the maximum live stream duration?
Currently, we have a 12 hour limit for continuous streaming to our live endpoints. The live stream is disconnected after 12 hours.
If the encoder reconnects, Mux will transition to a new asset with its own playback ID.
Do I need to create stream keys for every live event?
No, stream keys can be re-used as many time as you want. It's common for applications to assign one stream key to each user (broadcaster) in their system and allow that user to re-use the same stream key over time.
Is there a limit to creating stream keys and live steams?
There is no limit on how many stream keys and live streams you can create.
Once created, stream keys are persistent and can be used for any number of live events.
Do you charge for creating stream keys?
We don’t charge for creating stream keys, only when sending us an active RTMP feed.
Can I live stream a pre-recorded video?
Mux does not support generating simulated live from on-demand assets. Such a service is also called a "Playout service".
However, you can run a simulated live stream using a tool like OBS and Wirecast to send your on-demand asset to us as an RTMP stream. See how to configure your RTMP encoder on our Configuring Broadcast Software docs page.
For a more comprehensive guide and common options we recommend for work-arounds, see this guide of how to Stream simulated live.
Can I restream/simulcast my live stream to social platforms like Facebook?
Yes. Mux Video live service supports up to six simultaneous restreams to third party platforms that support RTMP feed.
Read more in this blog post: Help Your Users be in 5 Places at Once: Your Guide to Simulcasting.
Is my content saved after the live broadcast is over?
Yes. Mux will automatically create an on-demand (VOD) assetAPI after your live stream ends, which can be streamed again instantly after the live stream ends.
Can I get access to my live event's recording?
Yes, you can enable downloading of the entire event recording using Master access feature.
With Master access enabled, you will receive a Webhook notification after the live stream ends, indicating that the master copy of the video asset is available to download.
Can I generate thumbnails/GIFs while the live stream is active?
Yes. You can use our thumbnail and animated GIF API while the live event is active.
Many customers use thumbnails or GIFs to show what content is currently playing or to as a way to promote the live stream.
Can I test Mux live streaming for free?
Yes. You can create free test live streams to help evaluate the Mux Video APIs without incurring any cost.
We give you access to create an unlimited number of test live streams. Test live streams are watermarked with the Mux logo, limited to 5 minutes, and disabled after 24 hours.
Can I add multiple audio channels or tracks to my live stream?
No, we currently support only one audio track for all videos and live streams.
You may want your users to be able to select a language on the player and view a stream showing the same video content but play different audio. One workaround would be first, ingest multiple streams with one in each language. Then add logic to the player to switch between different playback URLs and the complete stream when the user changes the language.