News
[Release] Stable release 3.6 out now
Edit: 21st of April 2025, Fixed an issue with the download links/scripts for Linux/ARM builds. Sorry about that!
Hey everyone, we've just released our 3.6 update! Most excitingly, we're finally back to having a unified version of MistServer across all platforms! It took quite a while, but we're finally there. A few final steps are still needed to bring them all to the same level of quality, but the biggest hurdle has been cleared.
Downloads can be found here, and the full changelog can be found here.
Noteworthy Changes
MistServer MacOS builds are available again
We've resumed our support for MacOS builds, and they are now available once more. They're full-featured and should be nearly identical to the Linux version, except they do not rely on shared memory. This results in only a slight performance hit.
MacOS builds may still complain on boot about having no available RAM, but that message can be safely ignored on that platform.
SRT working on Windows again
SRT should now work for both input and output once more. We managed to work around an issue caused by how Windows handles socket binding. The Windows builds use significantly more CPU time to serve SRT compared to the other platforms, but latency and the SRT protocol functionality itself are otherwise normal.
WebRTC on Windows
WebRTC on Windows is almost fully functional. Currently, it supports a single viewer simultaneously only due to a bug. We didn't want to delay the release for this, so it will be fixed in an upcoming patch.
WebRTC now has multi-path & single socket support
WebRTC now supports migrating connections between mobile and Wi-Fi networks and can operate from a single listening socket. This means you only need to expose one port for WebRTC instead of the entire ephemeral range. It's especially helpful when running MistServer in virtualized environments like Docker/Kubernetes, where forwarding large port ranges is tricky. The setup required to get WebRTC to work has also been made much more simple, and the default configuration should work out of the box for most people.
Tag support improved
The active_streams
call now returns stream tags, and you can now start pushes using tags by specifying #some_tag
instead of a stream name. Automatic pushes will not start inactive streams, but a single push command will.
Push outputs will now report their current file target in the push status API
Previously, if dynamic variables were used, the API would only show the variable name instead of the final file target. You had to wait until the RECORDING_END trigger to know the result. Now, the push status API displays the final file target, and updates in real-time for segmented pushes.
The autopush API now supports JSON objects
The automatic push commands push_auto_add
, push_auto_remove
, and push_auto_list
have been updated to use JSON objects. The old format remains available for backward compatibility. We'll be updating our documentation to reflect this change.
Push interface improvements
The push interface now allows you to enable/disable automatic pushes. When disabled, they won't trigger a new push under any condition, although existing pushes remain active. This makes managing pushes easier and gives more control.
Additional improvements include: - Quick filtering for showing & stopping pushes - Right-click options to edit, change, or stop pushes - Clicking stream names to visit their preview pages - Categorized push parameters and stream process options for a cleaner interface
Several other bugfixes and improvements
We've made various other minor changes to improve performance and user experience. We recommend checking the full changelog for the complete list.
[Release] Bugfix release 3.5.1
Hey Everyone, we've got some bugfixes and added features in this release. Most notable getting Firefox fast again & fixing TS multicast input for IPv4.
Downloads can be found here, and the full changelog can be found here.
Noteworthy Changes
Firefox speed ups
We've noticed that the hexagon background of the new dark skin was slowing things down on Firefox. We've turned it off on Firefox for now.
TS UDP multicast input (IPv4)
TS over UDP multicast was broken as it was accidentally trying IPv6, we've fixed it.
Better tagging support
A small bugfix for the backend to allow triggers to see tags before a stream is live.
For the interface:
You can now set tags during stream creation, meaning a stream would inherit these tags when it becomes active. This works for both live & VoD streams.
We've also added support for pushing using tags. Instead of a stream name
you can now select a tag by configuring a push for #tag
. Any stream that has that tag active will then follow the push instructions given.
Mac Support
We've improved our MacOS support to now finally be compatible with MistServer 3.X versions. Expect a MacOS build showing up in the download page soon! If you don't want to wait, compiling it yourself on a Mac should now work out of the box!
[Release] Stable release 3.5
Hey everyone, we've released the long awaited 3.5 update! We're quite happy with the changes and hope you'll enjoy them as well.
Downloads can be found here, and the full changelog can be found here.
Noteworthy Changes
Interface Updates
We've added the necessary web glitter and dark skin sleekness to ensure the interface is deemed "slightly prettier". The change isn't too different from our old interface; however, it's much easier on the eyes, and a few sections have been made more compact.
The biggest change is to the "Streams" page, where we have moved most of the subpanels under the new "Actions" button, which can also be accessed by right-clicking when the stream is highlighted.
Clicking on the stream name will bring you to the preview page, and hovering over the stream name will display the source.
Several other actions, such as stopping the stream, invalidating the sessions, or hard restarting through a "nuke stream" command, are available as well.
(f)MP4 Input Support
We have added fragmented MP4 support to our MP4 capabilities for both MP4 files and HLS (CMAF) streams. This means MistServer should now be compatible with almost all HLS URLs, unless the codecs within the HLS are unsupported.
(Haivision) SRT Updated & Full-Featured Single Port Setup
SRT has been updated to version 1.5.4, and versioning has been added to the protocol in INFO-level messaging. The version will also appear in the protocol panel during setup.
We’ve also managed to update SRT to fully spawn separate processes using the same port, which increases both stability and efficiency.
To learn more, we recommend attending FOSDEM 2025 (February 1–2, 2025), where Jaron will explain how we achieved this and what the advantages are. Details can be found here. Once recordings are available, we’ll share them in a follow-up post.
Creation Time Added to MKV/WebM Outputs
This update makes it easier to identify the creation date of a recording and allows UTC timestamps within the recordings. It adds flexibility, especially when timing is important.
Windows Installer – Fixed Permissions for Microsoft Accounts
Windows users with Microsoft accounts previously experienced MistServer with partial permissions, leading to various issues during usage. We’ve rebuilt and properly configured the installer to resolve this problem.
If you use a Microsoft account, we recommend running the updated installer.
Various Small Updates & Improvements
Several smaller improvements have been made to the code, resulting in better resource usage.
Known Issues: Windows UDP-Based Protocol Support Not Working
During updates to our UDP socket implementation, we encountered a limitation in Cygwin that breaks Windows support for the latest improvements. We are working on a fix to enable Windows to use WebRTC, SRT, and RTSP over UDP with a native Windows UDP socket implementation.
If SRT is critical for your setup, we recommend using our 3.4 build for Windows in the meantime!
New Guides Available
We’ve updated several guides in the online documentation, including:
- WebRTC Playback
- Adding GStreamer Encoding
- How to Generate Live Streams
- Example on Geo-IP Blocking
We’ve also refreshed our documentation on starting Docker builds.
[Blog] How-to Encode using Matroska In/Out with FFmpeg
Hello everyone!
We've added a new guide on how to add encoding to a stream using stream processes and FFmpeg. We're planning on adding a Gstreamer version as well as we can't be playing favorites.
Encoding is something that is often requested and hopefully this guide will help explaining how to set it up within MistServer. Just keep in mind that your encoding possibilities very much depend on your own server resources!
If you have any questions or wonder how to set something up specifically feel free to contact us
[News] Exhibiting at IBC2024
Hello everyone!
We will be returning to IBC this year as well This year you'll find at booth 5.F43. Joining us this year will be Sipradius, together we've made some exciting solutions we'll be proudly showing off.
So be sure to drop by if you want to see the last things we've been working on. Pick our brain about how to solve something, or simply drop by to steal our chocolates.