Get your Mcaster1DNAS streaming server up and running
This guide will walk you through the essential steps to set up a basic streaming server using Mcaster1DNAS v2.5.1-rc1. Whether you're creating an internet radio station or a private streaming service, this guide covers everything you need to get started.
A complete streaming setup consists of two major components working together:
Each Mcaster1DNAS server can host multiple broadcasts simultaneously, each called a mountpoint. A listener can only listen to one mountpoint at a time. This allows you to:
.ogg (e.g., /stream.ogg)/stream) or .mp3.aac or .aacpAfter installing Mcaster1DNAS (via source compilation, package manager, or Docker), you'll have the following directory structure:
| Directory | Purpose |
|---|---|
bin/ |
Contains the mcaster1 server binary |
conf/ |
Configuration files including mcaster1.yaml (recommended) or mcaster1.xml (legacy) |
admin/ |
XSLT files for the web-based administration interface |
web/ |
Static web content and status pages |
logs/ |
Server log files (access.log and error.log) |
Mcaster1DNAS v2.5.1 supports both YAML and XML configuration formats. YAML is strongly recommended as XML support will be deprecated in future releases.
Edit your mcaster1.yaml file and configure these essential settings:
server:
hostname: stream.example.com
location: Your City, Country
admin: admin@example.com
authentication:
source_password: changeme_source # Used by encoders to connect
admin_user: admin
admin_password: changeme_admin # For admin interface access
listen:
- socket:
port: 8000
bind_address: 0.0.0.0
paths:
basedir: /usr/local/mcaster1dnas
logdir: /var/log/mcaster1
webroot: /usr/local/mcaster1dnas/web
adminroot: /usr/local/mcaster1dnas/admin
mount:
- path: /stream
username: source
password: hackme
max_listeners: 100
stream_name: "My Radio Station"
stream_description: "24/7 Music"
stream_url: https://example.com
genre: Various
bitrate: 128
public: false
Once your configuration file is ready, start Mcaster1DNAS with:
mcaster1 -c /path/to/mcaster1.yaml
For example, if your config is in /etc/mcaster1/mcaster1.yaml:
/usr/local/mcaster1dnas/bin/mcaster1 -c /etc/mcaster1/mcaster1.yaml
Check the error log for the startup message:
tail -f /var/log/mcaster1/error.log
You should see something like:
[2026-02-15 12:00:00] INFO main/main Mcaster1DNAS 2.5.1-rc1 server started
Verify the server is running by accessing the statistics page:
http://yourserver:8000/admin/stats.xml
You'll be prompted for credentials. Use username admin and the password you set in
admin_password. You should see XML output showing server statistics.
Now that the server is running, configure your source client (encoder) with these settings:
| Setting | Value |
|---|---|
| Server/Host | Your server IP or hostname |
| Port | 8000 (or your configured port) |
| Protocol | Icecast or ICY |
| Mount Point | /stream (or your chosen mountpoint) |
| Username | source |
| Password | Your source_password value |
Once your source client is connected and streaming, listeners can access your stream in several ways:
http://yourserver:8000/stream
http://yourserver:8000/stream.m3u
The .m3u extension generates a playlist file that most media players can open. This works for any audio format, not just MP3.
192.168.1.100:8000 with mountpoint
/stream.ogg, listeners would use:
http://192.168.1.100:8000/stream.ogg.m3u
To confirm your setup is working correctly:
http://yourserver:8000/admin/stats.xmltail -f /var/log/mcaster1/access.logNext Steps: Learn about advanced configuration options in the Configuration File Reference or explore the Admin Interface.