Mcaster1Studio
Getting Started Guide — First-time user walkthrough — v0.2.0-alpha — 2026-03-14
Welcome to Mcaster1Studio
Mcaster1Studio is a professional broadcast automation suite built for radio broadcasters,
podcasters, worship leaders, and content creators.
This guide walks you through your first launch, audio setup, and getting on the air.
Whether you are streaming live to thousands or recording a podcast episode, everything starts here.
1. Welcome and Overview
Mcaster1Studio combines audio playback, live encoding, metadata management, effects processing,
video switching, and podcast production into a single, modular application. Choose a
Surface for your workflow and you are ready to go.
Key Capabilities
DJ / Radio Broadcasting
- Dual-deck audio player with waveform, EQ, and crossfader
- 7-codec encoder with Icecast/Shoutcast/DNAS support
- AutoDJ playlist scheduling with clock templates
- ICY 2.2 rich metadata push (70+ fields)
- CartWall for instant jingles and sound effects
Church / Worship Services
- 12 dedicated church modules
- Lyrics display with section-based arrangement
- Scripture lookup with 6 Bible translations
- Program/Preview video switcher with transitions
- Service rundown manager with auto-advance
Podcast Production
- 13 dedicated podcast modules
- Multi-track recording with take management
- DAW-style waveform editor
- RSS feed generation and publishing
- Remote guest support for up to 4 participants
2. System Requirements
| Component | Minimum | Recommended |
| Operating System |
Windows 10 (64-bit) |
Windows 11 Pro (64-bit) |
| Processor |
Intel Core i5 / AMD Ryzen 5 |
Intel Core i7 / AMD Ryzen 7 or better |
| Memory |
8 GB RAM |
16 GB RAM or more |
| Storage |
500 MB for application + media library space |
SSD with 50+ GB free for media |
| Audio Interface |
Built-in sound card (WDM/WASAPI) |
Professional ASIO audio interface (e.g., Focusrite, MOTU, RME) |
| Display |
1920 × 1080 |
2560 × 1440 or dual monitors |
| Network |
Broadband for streaming |
Wired Ethernet for reliable live broadcasts |
Audio interface recommendation: While Mcaster1Studio works with any Windows sound device,
a dedicated ASIO audio interface provides significantly lower latency (under 10 ms round-trip),
more reliable playback, and better audio quality. ASIO is strongly recommended for live broadcasting.
3. First Launch
When you launch Mcaster1Studio for the first time, you will see the main window with its three primary regions.
Main Window Layout
Window Structure
- AppRibbon (top, 48 px) — drag-and-drop widget bar with Clock, Weather, VU Meter, and ON AIR toggle
- Surface Tabs (below ribbon) — one tab per open surface; click
+ to add more
- Module Docks (center) — resizable, dockable panels for each module on the active surface
- Sub-Surface Panels — secondary tabs within a surface for organizing module groups
- Status Bar (bottom) — audio engine status, sample rate, buffer info
Default Surface: Alpha
- Your first launch opens the Surface Alpha workspace, preconfigured for radio broadcasting
- Includes 5 starter modules: VU Meter, Deck A/B, Playlist, Encoder, and Metadata
- Modules appear as dockable panels that you can drag, resize, float, or close
- The layout auto-saves across sessions — your arrangement persists on next launch
Quick Device Setup Walkthrough
On first launch, Mcaster1Studio uses your system default audio device. To configure your preferred
audio interface, open Edit → Preferences (or press Ctrl+,)
and navigate to the Audio tab. Select your output device, input device, and CUE (headphone)
device. Click OK to apply.
- 1 Launch Mcaster1Studio. The main window opens with Surface Alpha.
- 2 Open Preferences: Edit → Preferences or press Ctrl+,
- 3 Select your audio devices in the Audio tab (output, input, CUE).
- 4 Import music: Open the Media Library module and add a folder to start scanning tracks.
- 5 Drag a track to Deck A and press Play. You should hear audio through your selected output device.
4. Audio Device Setup
Mcaster1Studio uses PortAudio for audio I/O, supporting ASIO, WASAPI, and WDM drivers.
Correct device setup is essential for reliable playback and low-latency broadcasting.
Opening Preferences
Navigate to Edit → Preferences from the menu bar, or use the keyboard shortcut
Ctrl+, (Ctrl and comma). Select the Audio tab on the left.
Device Selection
| Device | Purpose | Example |
| Output Device |
Main audio output — speakers, broadcast feed, or audio interface outputs |
Focusrite USB ASIO, Realtek WASAPI |
| Input Device |
Microphone or line-in for PTT, recording, and podcast modules |
Audio interface mic input, USB microphone |
| CUE Device |
Headphone pre-listen output — cue tracks before they go on-air |
Secondary output on audio interface, separate USB headphone adapter |
ASIO vs. WDM / WASAPI
ASIO (Recommended)
- Lowest latency — typically 3–10 ms round-trip
- Direct hardware access, bypasses Windows audio mixer
- Exclusive device mode — other applications cannot use the device simultaneously
- Requires an ASIO-compatible audio interface or ASIO4ALL driver
- Best for live broadcasting and real-time monitoring
WDM / WASAPI
- Works with any Windows sound device including built-in audio
- Higher latency (20–50 ms typical) but no special driver needed
- Shared mode: other applications can use audio simultaneously
- Good for testing, podcast editing, and non-critical playback
- WASAPI Exclusive mode offers better latency than standard WDM
Sample Rate and Buffer Size
| Setting | Recommended | Notes |
| Sample Rate |
44100 Hz or 48000 Hz |
44100 Hz matches CD quality and most streaming services; 48000 Hz is standard for video production |
| Buffer Size |
256 or 512 samples |
Lower values reduce latency but increase CPU load; 256 is ideal for ASIO, 512 is a safe default |
Buffer size tip: If you hear crackling, pops, or dropouts, increase the buffer size.
Start at 512 samples and reduce to 256 or 128 only if your system handles it without glitches.
A buffer of 256 samples at 44100 Hz gives approximately 5.8 ms of latency.
Mcaster1AudioPipe (Optional Virtual Routing)
Mcaster1AudioPipe is an optional virtual audio cable that routes audio between
Mcaster1Studio and other applications. Use it to send your studio mix into OBS, Discord, Zoom,
or any application that accepts a Windows audio input. Configure AudioPipe as an output device in
Mcaster1Studio and as an input device in the receiving application.
5. Understanding Surfaces
A Surface is a purpose-built workspace containing the right set of modules for a specific
workflow. Think of surfaces as different studio configurations you can switch between instantly using
tabs along the top of the window.
Built-in Surface Types
Alpha
5 modules · Primary broadcast
- VU meters, dual-deck, playlist, encoder, metadata
- Your default main on-air workspace
Beta
3 modules · Backup broadcast
- Lean fallback layout: deck, encoder, playlist
- Quickly switch if Alpha has issues
DJ
4 modules · Live performance
- Dual decks, effects rack, media library
- Crossfader, BPM matching, waveforms
Company
4 modules · Corporate streaming
- Encoder, metadata, monitor, playlist
- Scheduled automation for business broadcasts
Entertainment
3 modules · Video automation
- Video module, encoder, playlist
- QMediaPlayer with video output
Social
3 modules · Social media streaming
- Encoder, metadata, monitor
- Optimized for social platform broadcasting
Church
17 modules · Live worship production
- Lyrics, scripture, graphics, video switcher
- Service rundown, stage monitor, mixer
Podcast
17 modules · End-to-end production
- Recording, editing, encoding, transcription
- RSS feed, publishing, analytics
Custom
User-defined · Build your own
- Choose a name and pick any combination of modules
- Perfect for specialized workflows
Managing Surfaces
Adding a Surface
- Click the
+ button at the end of the surface tab bar
- Select a surface type from the dropdown menu (Alpha, DJ, Church, Podcast, Custom, etc.)
- The new surface opens as a tab with its preconfigured modules
- For Custom surfaces, a dialog lets you name the surface and select which modules to include
Surface Tab Actions
- Click a tab to switch surfaces
- Double-click a tab to rename it inline
- Right-click a tab for context menu: Rename, Close, Add Module
- Right-click → Add Module to add any of the 40+ modules to the current surface
- At least one surface tab is always kept open
6. Working with Modules
Modules are the building blocks of every surface. Each module provides a specific capability —
audio playback, encoding, effects, metadata, and more. Modules live inside dock widgets
that you can freely arrange within the surface.
Adding Modules to a Surface
- Right-click the surface tab and select Add Module from the context menu
- Choose from the module list (Deck, Media Library, Encoder, Effects Rack, etc.)
- The module appears as a new dock panel in the surface
Moving and Resizing Docks
- Drag a dock by its title bar to move it to a new position within the surface
- Drop indicators appear showing where the dock will snap (left, right, top, bottom, center)
- Resize by dragging the edge between two docks
- Float a dock by dragging it outside the main window — it becomes its own window
- Close a dock using the × button on its title bar (re-add via Add Module)
- All dock positions and sizes persist automatically across sessions
Key Broadcast Modules
| Module | What It Does | ID |
| VU Meter |
Stereo peak + RMS level meters with green/amber/red thresholds and clip indicator |
com.mcaster1.vumeter |
| Deck A / B |
Dual audio players with waveform display, 3-band EQ, cue points, loop, BPM detection, and HTTP stream playback |
com.mcaster1.deck |
| Media Library |
Music database with tag scanning, search, album art, and drag-to-deck loading |
com.mcaster1.library |
| Encoder |
7-codec streaming encoder with per-slot DSP chain, 7-state machine, ICY metadata push, and reconnect watchdog |
com.mcaster1.encoder |
| Effects Rack |
Virtual 19-inch rack with EQ31, Sonic, Compressor, AGC, MicPre, and Stereo Width effects |
com.mcaster1.effects |
| Playlist |
Clock-based scheduling with rotation engine, broadcast log, and AutoDJ auto-advance |
com.mcaster1.playlist |
| Metadata |
ICY 2.2 metadata editor with 70+ fields across 8 groups, ICY 1.x fallback, HTTP PUT to DNAS |
com.mcaster1.metadata |
| PTT |
Push-to-Talk microphone with Armed/Live/Off states and encoder duck attenuation |
com.mcaster1.ptt |
| CartWall |
Hot-start audio pads for jingles and sound effects with drag-from-library loading and one-shot/loop modes |
com.mcaster1.cartwall |
| Monitor |
Server stats: polls Icecast2/Shoutcast/DNAS for listener count, bandwidth, and uptime with chart display |
com.mcaster1.monitor |
| Video |
Video player with playlist, QMediaPlayer backend, RTMP streaming stub |
com.mcaster1.video |
AUX Decks — Auxiliary Players
In addition to the primary Deck A and Deck B, you can add AUX Deck modules to any surface.
Each AUX Deck is a fully independent audio player with its own audio routing, EQ, and transport controls.
Use AUX Decks for background music beds, pre-recorded segments, or additional playback channels
that run alongside your main decks.
The Media Library module manages your audio file collection. It scans folders for music files,
reads ID3/Vorbis/FLAC tags using TagLib, stores metadata in a database, and provides
fast search and drag-to-deck loading.
Importing Music
- Open the Media Library module on your surface
- Click Add Folder and select a directory containing your audio files
- Mcaster1Studio scans the folder recursively, reading tags from MP3, OGG, FLAC, WAV, AAC, Opus, and other formats
- Tracks appear in the library table with Title, Artist, Album, Duration, BPM, and other metadata
- Use the search bar at the top to filter by artist, title, or album
Playing Tracks
- Double-click a track in the library to load it into the next available deck
- Drag and drop a track onto Deck A or Deck B to load it directly
- Right-click a track for additional options (Load to Deck A, Load to Deck B, Add to Playlist, etc.)
- Drag tracks from the library to CartWall pads for instant hot-start buttons
Database Backend Options
Default backend: Mcaster1Studio uses SQLite out of the box. No database server
installation is required — your library database is stored locally at
%APPDATA%/Mcaster1Studio/mcaster1studio.db. For multi-user or enterprise deployments,
switch to a networked database backend in Preferences.
| Backend | Use Case | Default Port |
| SQLite |
Single-user, embedded, zero-configuration (default) |
N/A (file-based) |
| MySQL / MariaDB |
Enterprise multi-user deployments with shared media libraries |
3306 |
| PostgreSQL |
Enterprise deployments requiring advanced SQL features |
5432 |
| Firebird |
Lightweight networked database, embedded or server mode |
3050 |
| SQL Server (MSSQL) |
Windows-native enterprise environments using Microsoft SQL Server |
1433 |
To change your database backend, go to Edit → Preferences → Database tab.
Select your backend, enter connection details (host, port, username, password), and click
Test Connection to verify. If a networked backend connection fails, Mcaster1Studio
automatically falls back to SQLite so you are never left without a working library.
Per-Surface Database Isolation
Each surface can be assigned its own database server and schema. This means your Church surface
can use a dedicated database for worship media while your DJ surface uses a separate library for
music tracks. Configure per-surface assignments in Preferences → DB Servers.
Changes take effect immediately without restarting the application.
8. Broadcasting
Mcaster1Studio can encode and stream audio to Icecast2, Shoutcast, and Mcaster1DNAS servers.
The Encoder module supports 7 audio codecs, a 7-state connection machine with
automatic reconnection, and per-slot DSP processing.
Setting Up an Encoder
- Open the Encoder module on your surface
- Double-click an encoder slot (or click Add) to open the Encoder Configuration dialog
- Configure the 5 tabs:
Connection Settings
- Server type: Icecast2, Shoutcast v1/v2, or Mcaster1DNAS
- Host: your server address (e.g.,
stream.example.com)
- Port: server port (default 8000 for Icecast)
- Mount: mount point (e.g.,
/live)
- Password: source password for authentication
Codec Settings
- MP3 — 32–320 kbps, widest compatibility (requires LAME)
- Opus — best quality-per-bit, 32–256 kbps
- Vorbis (OGG) — open format, quality -1 to 10
- FLAC — lossless compression for archival streams
- AAC-LC / HE-AAC v1 / HE-AAC v2 — efficient for low bitrates (requires fdk-aac)
Encoder States
Idle
→
Starting
→
Connecting
→
Streaming
Streaming
→
Reconnecting
→
Sleep
→
Error
The encoder automatically reconnects if the connection drops. The Reconnecting state
retries at increasing intervals. After repeated failures, the encoder enters Sleep mode,
which you can wake manually using the wake() action.
Per-Slot DSP Chain
Each encoder slot has its own real-time DSP processing chain applied before encoding:
Input Gain
→
10-Band EQ
→
AGC + Limiter
→
PTT Duck
→
Encoder
ICY Metadata
ICY 1.x metadata (StreamTitle, StreamUrl) is sent automatically when tracks change.
When streaming to Mcaster1DNAS, Mcaster1Studio also sends ICY 2.2 metadata
with 70+ fields across 8 groups (Station, Show, Track, DJ, Social, Podcast, Broadcast, Content Flags).
Use the Metadata module to edit and push rich metadata in real time.
Streaming Server Compatibility
| Server | ICY Protocol | Notes |
| Icecast2 |
ICY 1.x only |
Open-source, widely deployed, mount-point based |
| Shoutcast v1/v2 |
ICY 1.x only |
Classic streaming server, SID-based |
| Mcaster1DNAS |
ICY 1.x + ICY 2.2 |
Full rich metadata, 70+ fields, YAML config, admin XML API |
AutoDJ / Playlist Scheduling
AutoDJ Mode
- Enable AutoDJ in the Playlist module to automatically advance tracks
- When Deck A finishes a track, AutoDJ loads and starts the next track from the playlist
- Crossfade between tracks for seamless transitions
- Works with both manual playlists and clock-scheduled rotation
Clock Templates
- Define a clock template with time-based slots for different content types
- Slots can specify: category (Music, Jingle, Promo), duration, and rotation rules
- The rotation engine fills slots from matching library tracks
- A broadcast log records every track played with timestamps
9. Church Surface
The Church surface provides a complete production environment for live worship services.
It includes 12 church-specific modules on top of the 5 core broadcast modules, covering everything
from lyrics and scripture display to video switching and service rundown management.
The 12 Church Modules
TimerClock
Master clock with named timers
- Countdown, count-up, time-of-day
- Warning (amber) and alarm (red) thresholds
GraphicsEngine
Theme-based visual renderer
- Custom themes with fonts, colors, images
- Renders lyrics, scripture, titles, lower thirds
LyricsCaster
Worship song lyrics display
- Song library with sections and arrangements
- Live transport: Previous / Blank / Next
ScriptureCaster
Bible verse lookup and display
- 66 books, 6 translations (KJV, NIV, ESV, etc.)
- Dual scripture side-by-side mode
AnnounceCaster
Announcement slide manager
- Date-range scheduling, loop playback
- Lower third overlays
TelePrompter
Scrolling script display
- Adjustable speed and font size
- Mirror mode for beam-splitter rigs
MediaCaster
Video and image playback
- Drag-drop playlist, cue points, loop mode
- 9 media formats with volume control
StageMon
Confidence monitor
- Worship, Sermon, and Combined modes
- Clock bar with active timer countdowns
AudioMix
8-channel mixing console
- Per-channel gain, EQ, compressor, VU bars
- Master bus recording to WAV
TranscribeRec
Sermon recording and transcription
- Record/Pause/Resume with timestamps
- Export: WAV, TXT, SRT formats
SwitchCaster
Program/Preview video switcher
- 7 sources, CUT/DISSOLVE/FTB transitions
- LIVE badge, 60fps transitions
ServiceRunner
Service order rundown
- 11 segment types with auto-advance
- JSON template save/load
Setting Up a Worship Service
- 1 Open the Church surface by clicking
+ on the tab bar and selecting Church
- 2 Configure your GraphicsEngine theme — set background colors, fonts, and logo for your church branding
- 3 Add songs to LyricsCaster — enter song titles, lyrics sections (Verse, Chorus, Bridge), and arrangement order
- 4 Prepare scripture readings in ScriptureCaster — look up passages by book, chapter, and verse
- 5 Build your service rundown in ServiceRunner — add segments (Welcome, Worship, Prayer, Sermon, etc.) with durations
- 6 Set up SwitchCaster sources — assign Lyrics, Scripture, Announce, and Media to switcher inputs
- 7 Go live — use SwitchCaster to transition between sources during the service; ServiceRunner advances the rundown
Church Module Wiring
Church modules are automatically wired together when the surface loads. The GraphicsEngine
feeds themed visuals to LyricsCaster, ScriptureCaster, and AnnounceCaster. The SwitchCaster
aggregates all visual sources into a Program/Preview bus. ServiceRunner orchestrates
timers, switching, recording, and mixing. No manual wiring is needed.
GraphicsEngine
→
Lyrics / Scripture / Announce
→
SwitchCaster
→
Program Out
ServiceRunner
→
TimerClock + SwitchCaster + TranscribeRec + AudioMix
10. Podcast Surface
The Podcast surface covers the entire production pipeline from recording through
distribution. Each module is self-contained — no cross-module wiring is needed. Multiple
Podcast surfaces can run independently for different shows.
The 13 Podcast Modules
Recording Stage
- PodMixer — 6-channel mixer (Host, Guest 1-2, Soundboard, Music, Phone) with per-channel EQ and aux sends
- PodPTT — Enhanced push-to-talk with Hold, Toggle, AlwaysOn modes, cough button, and VAD
- PodRecorder — Multi-track WAV recorder with show/episode metadata, markers, and take management
- PodSoundboard — Sound pad grid with banks (Intro/Outro, SFX, Beds), OneShot/Toggle/Loop modes
- PodFX — 7-processor voice chain: Noise Gate, Compressor, De-Esser, EQ, HPF, Limiter, LUFS
- PodRemote — Remote guest manager for up to 4 guests with audio levels and mute controls
Post-Production and Distribution
- PodEditor — DAW-style waveform editor with regions, markers, cut/trim, zoom, and playback
- PodEncode — Multi-format export (MP3, AAC, OGG, FLAC, Opus) with LUFS normalization and job queue
- PodTranscribe — Transcript editor with speaker labels, timestamps, SRT/VTT export
- PodShowNotes — WYSIWYG editor with templates, chapter markers, guest bios, HTML/Markdown export
- PodRSS — RSS 2.0 + iTunes namespace feed generator with validation and XML preview
- PodPublisher — Multi-target distribution (Local Copy, SFTP/FTP/HTTP) with progress tracking
- PodAnalytics — Episode statistics dashboard with downloads, subscribers, growth trend, CSV export
Recording a Podcast
- 1 Open the Podcast surface by clicking
+ on the tab bar and selecting Podcast
- 2 Configure PodMixer — assign your microphone to the Host channel, set gain and EQ
- 3 Set up PodFX — enable the voice processing chain (noise gate, compressor, de-esser) for broadcast-quality audio
- 4 Load sound effects into PodSoundboard — assign intro/outro clips, stingers, and bed music to pads
- 5 Start recording with PodRecorder — enter show/episode info, then click Record. Use markers to flag key moments.
- 6 Edit in PodEditor — trim silence, cut mistakes, arrange segments on the timeline
- 7 Export with PodEncode — choose format (MP3 at 128 kbps is standard), apply LUFS normalization, add ID3 tags
Publishing Your Podcast
PodRecorder
→
PodEditor
→
PodEncode
→
PodRSS
→
PodPublisher
- Transcribe: Use PodTranscribe to generate a text transcript with speaker labels and timestamps
- Show Notes: Write show notes in PodShowNotes using the WYSIWYG editor; add chapter markers and guest bios
- RSS Feed: Use PodRSS to generate an RSS 2.0 + iTunes feed with your show settings and episode metadata
- Publish: Distribute via PodPublisher to your hosting platform (local copy, SFTP, FTP, or HTTP upload)
- Track: Monitor downloads and subscriber growth in PodAnalytics
11. Tips and Troubleshooting
Theme Switching
Mcaster1Studio ships with three themes: Dark (default, deep navy),
Classic (medium gray), and Light (bright). Switch themes in
Edit → Preferences → Appearance. The theme applies immediately to all
surfaces, modules, and dialogs. All themes use the Fusion Qt style for consistent rendering.
Session Auto-Save
Your entire workspace — open surfaces, module layouts, dock positions, floating window locations,
splitter sizes, and ribbon box arrangement — is saved automatically when you close
the application and restored on next launch. There is no manual save step needed.
Keyboard Shortcuts
| Shortcut | Action |
| Ctrl+, | Open Preferences |
| Space | Play/Pause active deck |
| Ctrl+N | New surface |
| Ctrl+W | Close current surface |
Common Issues and Solutions
No Audio Output
- Check Preferences → Audio — ensure the correct output device is selected
- Verify your audio interface is powered on and connected
- If using ASIO, ensure no other application has exclusive access to the device
- Try switching to WDM/WASAPI temporarily to confirm the issue is driver-related
Audio Crackling or Dropouts
- Increase the buffer size (try 512 or 1024 samples)
- Close other CPU-intensive applications
- Ensure your audio interface has the latest drivers installed
- Disable power-saving modes that may throttle your CPU
Encoder Won't Connect
- Verify the server address, port, and mount point are correct
- Check that the source password matches the server configuration
- Ensure your firewall allows outbound connections on the streaming port
- Confirm the streaming server is running and accepting sources
- If in Sleep state, click Wake to retry the connection
OGG/Vorbis Files Won't Play
- Mcaster1Studio uses the FFmpeg media backend, not Windows Media Foundation
- The FFmpeg backend is set automatically at startup via
QT_MEDIA_BACKEND=ffmpeg
- If OGG files fail to decode, verify FFmpeg libraries are present in the installation directory
Database Connection Failed
- The application automatically falls back to SQLite if a networked database cannot be reached
- Check your database server is running and accepting connections
- Verify credentials in Preferences → Database
- Use the Test Connection button to diagnose issues
Modules Missing or Not Loading
- Right-click the surface tab and select Add Module to re-add any removed module
- Plugin modules require DLL files in the
plugins/modules/ directory
- Check that plugin API versions match (
MCASTER1_PLUGIN_API_VERSION)
Per-Surface Database Isolation
Each surface can use a different database server and schema, configured in
Preferences → DB Servers. This isolation ensures that your Church worship
media library, DJ music collection, and Podcast episode database remain separate and organized.
Changes to database assignments are pushed to running modules in real time — no restart required.
Plugin System
Mcaster1Studio supports third-party plugins via DLL C ABI factory functions. Place
module plugins in plugins/modules/ and effect plugins in plugins/effects/.
Plugins are loaded via QLibrary and must export mcaster1_plugin_info() and
mcaster1_create_module() functions. The plugin API version must match the host application.
Getting Help