Streaming Audio News and Tips

RSAS 1.0 Released

RSAS 1.0 Banner - Rocket Streaming Audio Server Logo.

After more than a year of development, we're pleased to announce RSAS 1.0 is now available! First released 3 years ago, Rocket Streaming Audio Server (RSAS) is a high-performance webserver designed for delivering live streaming audio through the web, with low latency and high listener capacity.

This major milestone has something for all our users and delivers on our vision of creating an Icecast-compatible streaming server that brings live audio broadcasting into the 21st century. RSAS 1.0 offers exciting new features and higher performance than ever before. Each new feature has been designed with usability in mind, while continuing to offer the unmatched high performance we strive for.

Today, RSAS powers live streaming audio for thousands of radio stations, major sports teams, governments, national public broadcasters, emergency services, telecom operators, and our Radio Mast CDN.

➡️Get RSAS 1.0 now from our downloads page.

Upgrading on Linux? Please read our instructions on upgrading to 1.0.

We owe our amazing user community a big thank you for your feedback, feature suggestions, and bug reports that have helped shape RSAS. Special thanks to our partners at G&L Geißendörfer & Leschinsky and Andy Steven at North Broadcast for going the extra mile with bug reporting and testing.


What's new in RSAS 1.0?

HLS Audio

HLS is a modern streaming protocol designed for better reliability and lower battery usage on mobile devices. Until now, HLS for live streaming audio faced limited adoption by radio broadcasters due to a lack of support from encoders and streaming servers, as it remains unsupported by Icecast and SHOUTcast. HLS audio stacks in the wild often consist of ad-hoc shell scripts, obscure FFMPEG commands, and various webservers glued together which lack the robustness and observability expected by broadcast engineers.

We are excited to announce that RSAS now supports HLS for live audio, and provides broadcasters with an easy migration path to adopt HLS for more reliable streaming to mobile devices.

RSAS transmuxes your existing MP3 and AAC streams into HLS (without re-encoding), so no changes to your existing encoder setup are needed and effectively making HLS audio encoders obsolete. Additionally, HLS listeners are included in the listener statistics provided by /health and HLS listener sessions are reported in the access.log just like traditional HTTP streaming listeners, for compatibility with your existing listener statistics processing setup. This design allows broadcasters to easily adopt HLS without changes to your encoder or listener statistics setup. RSAS provides a tightly integrated HLS live audio solution that provides the benefits of HLS without the costs of rearchitecting your live streaming.

Some of the HLS features included in this release are:

  • Converting existing MP3 and HLS streams to HLS - just enable HLS and then add /hls.m3u8 to the end of your stream URL
  • ID3 metadata for HLS
  • Integration with /health listener counts and access.log listener session logging.
  • Relaying HLS streams from other RSAS instances (with intelligent caching)

To get started with HLS, head over to our HLS documentation.

Ad Insertion - Preroll, Midroll, and Postroll

RSAS now has the ability to play a preroll audio clip to for listeners when they connect, before playing your live audio. For convenience, your preroll can be specified as a URL to a remote audio file, which is downloaded and cached by RSAS. This powerful feature allows your preroll to be updated dynamically and saves you the hassle of distributing preroll audio files to multiple servers.

Preroll ads can also be dynamically customized on a per-listener basis via the Listener Authentication Webhook.

Midroll support allows you to insert audio clips (ads, jingles, etc.) in the middle of your stream. Ad breaks are triggerable via metadata from your encoder or via the Manage API. Midroll support is programmable and requires integration with your own midroll webhook handler, where your handler returns a list of audio files to insert into a stream.

Ad insertion is not yet supported with HLS, but is on the roadmap for a future release.

Visit our documentation on Ad Insertion for more information.

HTTP/1.1 and File Serving Performance Optimizations

RSAS is now an extremely fast webserver for serving static files too.

Since HLS involves serving audio in file-based segments, in order to optimize HLS performance on both the server and client side, we implemented HTTP/1.1 and revamped our static file serving code. RSAS now supports HTTP/1.1 "Keep-Alive" and range requests for seeking in static files such as podcasts or video files. (RSAS can serve MP4 video files with seeking out-of-the-box now!)

Static file serving is now fully asynchronous and is blazing fast.

How fast? On Windows, RSAS beats both nginx and Apache in static file requests per second. On Linux, RSAS beats Apache and ties with nginx in single threaded performance.

Requests per second benchmark comparing RSAS, Apache2, and nginx. RSAS scores the highest RPS.
Single-threaded benchmark serving an 88 KB file with Apache2 2.4.54, nginx 1.22.1, and RSAS 1.0.0. Linux tests performed on Ubuntu 22.04 on a Ryzen 2700X. Windows tests ran on Windows 11 and a Ryzen 5700G.

Overhauled Linux Packages

On Debian, Ubuntu, and CentOS, our RSAS packages have been upgraded to install RSAS as a systemd service and run as a separate rsas user. Our Linux static binary and FreeBSD tarballs also now include an installer script.

Upgrading from a pre-1.0 version? Read our upgrading instructions here.

Password Protection for /health

By popular demand, the /health endpoint can now be password protected to prevent enumeration of your streams. We've also introduced mount-specific /<mount>/health endpoints, which can also be password protected.

More Icecast APIs

For better integration with third party Icecast statistics platforms, RSAS now implements several missing Icecast APIs, including:

  • /admin/stats
  • /admin/listclients
  • /admin/listmounts


Use of these APIs requires an <admin-password> to be set in your configuration and enabling the Icecast-compatible status page.

For more information, please see our Icecast APIs documentation.

Release Notes and Mailing List

For the full list of new features and changes, please see the CHANGELOG. RSAS 1.0 includes a number of other smaller features as well as nearly 20 bugfixes.

We've also introduced a new low-traffic mailing list, rsas-announce, for release announcements and security advisories. If you're running RSAS in production, we recommend joining.

📡 Downloads and Getting Started

RSAS 1.0 is available today for Linux, Windows, and FreeBSD. The Free Edition supports up to 100 concurrent listeners.

Upgrade to RSAS Pro to handle up to 1 million concurrent listeners. RSAS Pro licenses are available from our shop.

RSAS for Windows includes a friendly user interface for easy administration and installs as background service.

We recommend taking a quick skim over our documentation after you download RSAS. Linux users will need to create a configuration file and can get started with one of our examples.

What's Next?

We expect a number of small bugfix point releases to roll out over the coming weeks as we receive feedback on the 1.0 release.

The next major features under consideration are ad insertion support for HLS (preroll, midroll, postroll), support for kernel TLS to improve HTTPS performance on modern kernels, and support for other streaming protocols. We'd also like to have RPMs for Alma Linux and Rocky Linux (which may still work with our existing CentOS 8 packages).

📧 Feedback and Feature Suggestions

RSAS 1.0 is the culmination of years of feedback from broadcasters. Your feedback is essential in steering the future of live streaming audio. If you have feedback or feature suggestions, we'd love to hear from you.