Liquidsoap
Liquidsoap is available in the NetActuate Marketplace as a one-click, open-source appliance you can deploy into any NetActuate PoP. Headless scriptable radio-automation and stream-playout engine for Icecast and HLS. It is grouped under the Media & Streaming category.
What It Does
Liquidsoap is a powerful, open-source tool for building audio and video streams. You describe your stream in a small, expressive scripting language (.liq): pull from playlists, live inputs, jingles and fallbacks, mix and normalize, schedule by time, and send the result to Icecast, HLS, files, or other outputs. It is the engine behind countless internet radios and playout chains. This appliance bundles the official Liquidsoap 2.4.5 release and gives you a ready-to-use playout box you drive over SSH.
Key features
- Scriptable radio automation and stream playout in the .liq language
- Feed Icecast (MP3/AAC/Ogg), package HLS, or write to files and other sinks
- Playlists, live inputs, crossfades, jingles, fallbacks and scheduling
- Ships the official, unmodified Liquidsoap 2.4.5 engine (GPL-2.0+)
- A bundled sample script runs on boot (a synthesized playlist to an internal output), so the engine is demonstrably alive out of the box
- A small co-located landing page documents scripting and Icecast/HLS usage and runs a first-boot fail-closed self-check (liquidsoap --version plus a script check)
- No web console and no credentials to manage: a pure scripting workflow
Use cases
- Run an internet radio: playlists, live shows, jingles and fallbacks to Icecast
- Build a playout chain that packages HLS for a player or CDN origin
- Automate scheduled audio (announcements, loops, time-of-day programming)
Why run it on the NetActuate edge Running the playout engine in a PoP close to your Icecast/CDN origin and your listeners shortens the delivery path and keeps your automation on infrastructure you control.
Deployed from the NetActuate marketplace, the appliance boots with Liquidsoap installed, the sample stream running, and the landing page serving on the instance IP. SSH in, edit /opt/liquidsoap/scripts/sample.liq or drop your own scripts, and point output.icecast(...) at your server. Optionally seed an Icecast target and it is surfaced on the landing page as guidance.
Vendor and Project
Liquidsoap is an open-source project, offered here under the Open Source listing with best-effort community support.
- Project home: www.liquidsoap.info
NetActuate supports the underlying infrastructure. Application-level support follows the listing SLA class (open-source, best effort).
Sizing
| vCPU | RAM | Disk | |
|---|---|---|---|
| Minimum | 1 | 1 GB | 20 GB |
| Recommended | 2 | 4 GB | 50 GB |
No VPU (hardware acceleration) is required for this appliance. Choose a size at deploy based on your expected load.
Configuration Fields
When you deploy, you provide these fields. They are written into the appliance at first boot.
| Field | Required | Default | Notes |
|---|---|---|---|
| Landing page port | No | 80 | TCP port for the co-located nginx landing/instructions page, published on the instance IP (default 80). The Liquidsoap engine itself is driven over SSH via .liq scripts. |
| Icecast target (optional) | No | none | Optional Icecast URL/target (e.g. icecast://source:pass@host:8000/stream) surfaced on the landing page as guidance. Purely informational: the boot sample streams to an internal output; wire your own output.icecast(...) in a .liq script to go live. |
Using the Appliance
Put a stream on air in minutes
- Confirm the box is up. Browse to http://YOUR_VM_IP:80/ for the instructions page (HTTP 200); it shows the liquidsoap version self-check. There is no web console. A sample stream is already running on the engine.
- SSH in and check the engine. Run
liquidsoap --version, then edit the boot demo at /opt/liquidsoap/scripts/sample.liq or add your own script under /opt/liquidsoap/scripts . Theliquidsoapcommand on the PATH runs the bundled container against your working directory (type-check withliquidsoap --check my_radio.liq). - Feed Icecast or HLS. In your script use output.icecast(%mp3, host=..., port=8000, password=..., mount="/stream", mksafe(radio)) for Icecast, or output.file.hls(...) for HLS. The landing page lists ready-to-copy examples. If you seeded an Icecast target it is shown there for reference.
Exposure posture: the landing page serves plain HTTP on the landing port and is informational only. Drive the engine over SSH; put access control in front of the box before exposing it on an untrusted network.
FAQ
Is there a software license fee? No. Liquidsoap is open source and free to run. You pay only for the NetActuate infrastructure and bandwidth.
Which port does the appliance serve on?
The primary service is published on port 80 by default; see the configuration fields for any adjustable ports.
Who supports it? NetActuate operates the underlying infrastructure. The application itself is community-supported open source (best-effort SLA class).
Version and Changelog
| Version | Status | Released |
|---|---|---|
| 2.4.5 | Current (default) | 2026-07-14 |
Deploy
- Deploy in the portal: Deploy Liquidsoap
- View the listing: portal.netactuate.com/platform/marketplace/l/liquidsoap
- Public listing: netactuate.com/marketplace/liquidsoap
Need Help?
Contact support@netactuate.com or open a support ticket from the portal.