StageMaster User Guide (Concise Edition)

⚠️ This Software Is a Test Version

StageMaster is currently a test version, still being verified for readiness for professional use. Specifications may change without notice, and bugs may remain.

Before any live stage or broadcast use, always run a thorough rehearsal. Please confirm operation under production conditions, using the actual equipment, audio/video sources, and cue data you plan to use.

The author provides no compensation whatsoever in the event of an accident. See "17. Disclaimer" for details.

If you notice anything during use, or encounter a bug, please contact shimada@jscf.pro.

1. About StageMaster

StageMaster is an application for time-managing the progress of a stage show, presentation, or event.

Supported Content

Two Roles


2. Getting Started

First Launch After Installation

  1. Select a language: File > Preferences > Select Language (Japanese/English)

  2. Select a theme: View > Style (Default/Light/Dark)

  3. Configure the timeline: File > Preferences > Timeline Settings


3. Basic Workflow

Step 1: Create New or Load

Create new:   File > New   or   Cmd/Ctrl+N
Load existing file: File > Load   or   Cmd/Ctrl+O

Step 2: Add a Page (Scene)

  1. Click the Append button → a dialog appears

  2. Configure the following:

  3. Click Save → the page is added

Step 3: Add Multiple Pages (Scenes)

Repeat the above (Append → fill in → Save)

Icon Insertion (Stage / Lighting Notes)

The "Insert Icon" button below each of the Stage notes and Lighting notes fields lets you embed an image icon in the text.

  1. Add image files (PNG/JPG/GIF/WEBP/SVG) to the StageMasterIcons folder, which is created automatically in the same location as the application itself
  2. Click the "Insert Icon" button below the field → a dialog shows the icons found in the folder
  3. Double-click the icon you want to insert → it is embedded at the cursor position (e.g. (~/StageMasterIcons/icon0001.png))
  4. In the list view, the image icon is displayed inline with the text at the position where it was inserted
  5. If the folder contains no images yet, the dialog shows you where the folder is located

Step 4: Save the File

File > Save   or   Cmd/Ctrl+S
→ saved as a .stg file (ZIP file format)

Step 5: Show Day

File > Load → open the saved .stg file
Start button → the progress timer begins

4. The Three Content Types in Detail

4.1 Text

Use: speech scripts, cue notes, slide narration

Fields:

Markdown support:

Link click behavior:

Playback:


4.2 Sound

Use: BGM, sound effects, narration

Required field:

Convenient features:

FeatureDescription
Cue-inspecify the start position (set by dragging on the waveform)
Lockfix the cue-in position (playback resumes from the same position even after saving)
Auto Cueautomatically detect the end of a silent section
Gainadjust output gain (in dB, per cue)
Standbyonce locked, the play button becomes instant playback (shown as "Standby")

Meter bar: displays the L/R channel levels

Multi-track editing: You can layer multiple audio tracks onto a single cue (additional tracks). In the per-track detail panel of the edit dialog, you can individually configure:

Pan (left/right, front/back positioning): You can move the sound's position over time.


4.3 Video

Use: footage, YouTube streaming

File selection:


4.4 DAW Integration (MCU MIDI Sending)

Use: send a MIDI command such as "start recording" to an external DAW (recording/audio software) in sync with a cue's playback start (can be configured on any page, regardless of type)

Fields (on each page row in the list, next to the auto-advance icons 🔁/🎯/⏭):

Behavior: When this cue's playback starts, a Mackie Control Universal (MCU) format MIDI command corresponding to the chosen action is sent to the single MIDI output port configured in Preferences. This is not a feature that switches the destination port per DAW.

Advance preparation required: The app itself does not create a virtual MIDI port. In advance, create a virtual MIDI port — the IAC Driver in "Audio MIDI Setup" on macOS, or loopMIDI etc. on Windows — and assign that port to the DAW's MCU control surface input. For selecting the port itself, see "14. Changing Settings."


5. Playback Control

Using the Play Button

First click: starts playback

Clicking during playback:

Stop button "⏹":

Frame Controls (Sound/Video)


6. Auto-Advance (For Rehearsal)

Three Modes

ModeSymbolBehaviorExample use
Loop🔁replays the same page repeatedlystandby BGM, slideshow
Goto🎯jumps to a specified page numberconditional branching, returning to a specific scene
Nextauto-advances to the next pageproceeding in order

How to Configure

Click a page's auto-advance button (🔁 / 🎯 / ⏭)

Important Restriction

While the progress timer is running via the Start button, auto-advance (all three modes — Loop/Goto/Next) is disabled

The Difference Between Auto-Advance and Auto-Execute (similar names — be careful)

Each page row has an "Auto-Execute" checkbox, separate from the auto-advance buttons (🔁/🎯/⏭). Both are "trigger the next action automatically" features, but they operate under opposite conditions.

 Auto-Advance (🔁/🎯/⏭)Auto-Execute (checkbox)
When it operatesOnly while Start is OFF (during rehearsal)Only while Start is ON (the show's progress timer is running)
What it doesDecides how to connect to the next page once this page's playback/timer ends (loop / move to a specified page / go to next)The instant the elapsed time since Start (or the pre-show countdown) reaches this page's scheduled position on the timeline, it automatically presses the Play button
Where to configure itThe 🔁/🎯/⏭ buttons on each page rowThe "Auto-Execute" checkbox on each page row

7. Keyboard Operations

KeyFunctionNote
↑ Up arrowmove selection to the previous page 
↓ Down arrowmove selection to the next page 
Spacebartoggle play/stop for the selected pageMaster role only
Cmd/Ctrl+Nnew document 
Cmd/Ctrl+Oload file 
Cmd/Ctrl+Ssave file 

8. Master/Slave Collaboration (Live Operation)

Switching Roles

Master (in charge of running the show):

  1. Click the "Master" button in the header (default)
  2. Operate as usual

Slave (in charge of remote display):

  1. Click the "Slave" button in the header
  2. A dialog to enter the Master's IP address appears
  3. Enter e.g. 192.168.0.10 → OK
  4. Connects automatically (retries roughly every 3 seconds)

What the Slave Displays

Sync Playback (having the Slave machine actually play audio/video too)

By default, as described above, the Slave is "display only" and produces no audio or video of its own. Turning on "Slave performs sync playback" in File > Preferences switches to a mode where the Slave machine actually executes the Master's play/pause/stop/ stop-all actions itself, and actually plays the audio or video (e.g. simultaneous playback across multiple venues or multiple screens).

Prerequisites for using sync playback:

Chat Feature


9. File Management

Save Format (.stg)

Auto-Saved Files

FileContentsSave location
data.jsonthe last cue sheet openeduser data folder
config.jsontimeline settingsuser data folder
settings.jsonlanguage/theme settingsuser data folder

Save locations:


10. Screen Overview

Header

Main Operation Area

ButtonFunction
Startstarts the progress timer
Stopstops the progress timer (two-step confirmation)
Appendadds a new page
Loadloads a file
Savesaves the file
Deletedeletes a page (only active once a deletion target is selected)

Each Page Row's Background Color

The header area of each page row in the list (next to the Edit button) has a color picker. Clicking it and choosing a color immediately reflects it as that page row's background color. The chosen color is saved (kept in the .stg file) and persists the next time the file is loaded. This is intended for color-coding individual pages — e.g. "this page is a blackout" or "needs attention" — so they're easier to spot in the list during the show.

Blacking Out the External Monitor

Selecting View > Blackout External Monitor overlays the external monitor's display (the projection window) with black, instantly blacking it out. Selecting it again removes the overlay and restores the original display (video/YouTube/web link projection, etc.). Video and narration playback itself is not stopped — this only hides what's visible, so whatever was playing is still there when you turn the blackout off.

Main Commands in the File Menu

CommandFunction
Preferencessettings for the timeline, audio output, DAW integration (MIDI), Slave sync playback, and more
Channel Mixera tool that combines up to three stereo audio files per channel, burning in a test tone as well, to export a file for multi-channel verification (for creating a new file only — a separate feature from the 4ch/6ch routing settings used during live playback)
Master Metershows the master (final stage) level meter at all times in a separate window
Data Folderopens the folder containing the saved data

Time Display (4 lines)

Elapsed 00:00:00              ← time elapsed since the timer started
Remaining --:--:--             ← time remaining until the configured end time
00:00:00                       ← the current wall clock time
Predicted end time: --:--      ← the predicted end time

Timeline


11. Troubleshooting

Q: An audio file doesn't play

Q: The Slave can't connect

Q: No sound / nothing plays with the Slave's sync playback

Q: A YouTube playback error

Q: "File not found" when saving a file


12. Common Usage Scenarios

Scenario 1: Running a Lecture Event

  1. Mix Text (running script) + Sound (pre-show BGM) + Video (keynote footage)
  2. Auto-advance: set to Next to proceed in order
  3. Lock the cue-in position for each audio clip
  4. Manage show timing with Start

Scenario 2: Rehearsal

  1. Test auto-advance with the Start button OFF
  2. Verify conditional branching with Loop/Goto
  3. If there's an issue, fix it with Edit → test again

Scenario 3: Syncing Multiple Venues

  1. Run the show from the Master machine
  2. Synchronized display on each screen/operator console via Slave machines
  3. Communicate between threads using the chat feature

13. Keyboard Shortcuts

Cmd/Ctrl+N     New document
Cmd/Ctrl+O     Load file
Cmd/Ctrl+S     Save file
↑              Select previous page
↓              Select next page
Space          Play/stop the selected page (Master only)

14. Changing Settings

Changing the Language

File > Preferences > Select Language
→ choose Japanese / English → reflected across the entire screen immediately

Changing the Theme

View > Style
→ choose Default / Light / Dark

Reconfiguring the Timeline

File > Preferences > Timeline Settings
→ change the start time, end time, and interval

Configuring 4ch/6ch (Multi-Channel) Output

File > Preferences > Audio Settings
→ Number of output channels: 2ch / 4ch / 6ch
→ Output device (for multi-channel): choose from the list

This feature sends 4ch/6ch source material (channels 1-2-3-4, or 1-2-3-4-5-6) straight through to the corresponding channels on the output interface.

The material's channel count is auto-detected from the WAV/AIFF header (mp3 is always treated as 2ch, since it tops out at 2ch by spec). Ordinary 2ch material's behavior never changes regardless of this setting. Separated output up to 6 channels has been confirmed on real hardware even on a 20-channel-class interface (e.g. TASCAM US-20x20).

Always explicitly select the output device. It will still work if left on "the system's default output," but it will break if the OS's default output changes before the show.

⚠️ Restart the application after changing this setting. Changing "number of output channels" or "output device" does not take effect for a source that is already in a standby state (a locked cue). This is because standby begins waiting using the state that existed before the setting was changed. After changing an audio setting, always restart the application before checking it and going into the show.

Prerequisites for Multi-Channel Output on Windows

The Windows build uses the native audio engine by default (ASIO preferred, WASAPI as a fallback). The VoiceMeeter-based setup required in earlier versions is now generally unnecessary.

  1. Install the ASIO driver for the audio interface you're using
  2. In StageMaster's Preferences, from the output device list, directly choose that interface's ASIO device (the display name will include the channel count, e.g. (ASIO, 4ch))

Windows has no concept of a "default ASIO," so if nothing is chosen, the default becomes a 2ch WASAPI endpoint. To use 4 or more channels, you must explicitly select the ASIO device in Preferences. The same hardware may appear in the list under both an ASIO name and a WASAPI name — for multi-channel use, choose the ASIO one.

Only when more advanced routing is needed — for example, verifying a configuration with more than 8 channels — can the traditional method of going through VoiceMeeter (Virtual ASIO) also be used.

Prerequisites for Multi-Channel Output on macOS

  1. In "Audio MIDI Setup," create an "Aggregate Device" that includes the interface
  2. In StageMaster's Preferences, choose that aggregate device as the output device

Selecting the interface on its own directly can result in channels 3 and beyond not being output, and getting mixed into channels 1-2 instead.

If the Setting Is Not Correct

If the above prerequisites are missing, sound plays normally, but is downmixed to 2ch. StageMaster detects this and displays a warning (once per app launch). If the warning appears, check the output device selection and the prerequisites above.

Always confirm multi-channel playback in rehearsal before the show. Because sound still plays even when downmixed, you won't notice unless you check. Confirm not just by ear, but also that each channel is registering a signal on the physical meters on the audio interface itself.

Configuring the DAW Integration (MIDI) Output Port

File > Preferences > DAW Integration (MIDI)
→ MIDI output port: choose from the list

The Play/Rec/Stop settings configured on each page (see "4.4 DAW Integration") are sent as Mackie Control Universal (MCU) format commands to the MIDI output port chosen here. In advance, create a virtual MIDI port — the IAC Driver in "Audio MIDI Setup" on macOS, or loopMIDI etc. on Windows — and assign that port to the DAW's MCU control surface input (the app itself does not create a virtual port). If nothing appears in the list, either no virtual MIDI port has been created, or StageMaster has not been granted access to MIDI.


15. Support Information

Checking the Data Save Location

File > Data Folder
→ check data.json / config.json using the OS's file manager

Version Information

Help > About StageMaster
→ shows the Node.js / Chromium / Electron versions

16. Contact / Complaints

If you have questions, feature suggestions, or bug reports, please feel free to get in touch.

📧 Contact: shimada@jscf.pro

Feedback received will be used to improve StageMaster going forward.


Thank you for using StageMaster.

For anything not covered in this guide, please check config.json via "Data Folder" at the bottom right of the screen, or refer to the in-app help.


17. Disclaimer

17.1 How the Software Is Provided; It Is a Test Version

StageMaster (hereinafter "this Software") is provided "AS IS." The author makes no warranties of any kind, whether express or implied, including but not limited to merchantability, fitness for a particular purpose, and non-infringement. The author does not warrant that this Software will operate without interruption or that it is free of errors.

This Software is currently a test version. It is still being verified for readiness for professional use; specifications may change without notice, and bugs may remain.

17.2 Limitation of Liability; Disclaimer of Compensation

The author provides no compensation whatsoever for any accident or damage arising in connection with the use of this Software.

The author is not liable for any damages arising from the use or inability to use this Software, including but not limited to:

17.3 User Responsibility

This Software is intended for use in live stage and broadcast productions, but it does not guarantee the success of any performance or broadcast.

Before any production use, always run a thorough rehearsal. Please confirm operation under production conditions, using the actual equipment, audio/video sources, and cue data you plan to use. The following in particular require caution, because they will appear to work normally at a glance even if misconfigured:

Depending on the nature and scale of the production, we also strongly recommend preparing backup means that do not depend on this Software (such as a spare playback device).

17.4 License for This Software

This Software is provided under the Apache License, Version 2.0. The full text of the license is bundled at LICENSE-StageMaster-Apache-2.0.txt in the licenses folder at the installation location.

Copyright (c) 2026 Masao Shimada

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

17.5 Third-Party Software

This Software bundles and makes use of the following open-source software. These are separate pieces of software from this Software, and each is subject to its own license. The author bears no responsibility for their behavior. A full breakdown is provided in NOTICE.txt, in the licenses folder at the installation location.

The ASIO drivers for each audio interface, and VoiceMeeter (provided by VB-Audio Software), which may be used for verifying configurations with more than 8 channels, are not included with this Software. Users must obtain and install these themselves, and the author bears no responsibility for their behavior either.

17.6 Copyright of Source Material

Any rights clearance for the audio/video source material played back with this Software is the user's own responsibility. If using the YouTube playback feature, please comply with YouTube's Terms of Service. The author bears no responsibility whatsoever for rights infringement by a user.

17.7 Export Control

When exporting, re-exporting, or providing this Software, please comply with all applicable export control laws and regulations, including Japan's Foreign Exchange and Foreign Trade Act. The user agrees not to provide this Software to any country or region subject to economic sanctions or an embargo, or to any individual or entity with whom transactions are prohibited.

17.8 Governing Law

This disclaimer is governed by, and shall be interpreted in accordance with, the laws of Japan. However, where a mandatory provision of the law of the country or region in which the user resides as a consumer exists that cannot be excluded by contract, that provision shall take precedence.


Author: Masao Shimada Contact: shimada@jscf.pro

Version 1.2 — August 19, 2026