Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 44 additions & 4 deletions lang/template.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,17 @@
" OK ": "",
" OK ": "",
"\"Fit each screen\" keeps the layout you see on a 1920×1080 screen, so moving the window to a laptop or a 1440p or 4K screen shows the same amount of everything. \"Same size in pixels\" ignores the display scaling set in Windows.": "",
"(all day)": "",
"(chosen files are used instead of the folder)": "",
"(deleted rule)": "",
"(not connected)": "",
"12+ characters": "",
"12-band": "",
"16 bands at most": "",
"A DovaFM Digital Entertainment Group brand. Free and open source under the MIT licence.": "",
"A copy of this event to change": "",
"A copy of this template to change": "",
"A different pattern for part of the day. The first one that covers the time is used; outside them the pattern above is.": "",
"A newer RadioMaster is on GitHub — click to see what's new and install it": "",
"A plugin controls RadioMaster by printing lines such as RM: VOLUME 60 or RM: PLAYLIST Evening.": "",
"AAC (ffmpeg)": "",
Expand Down Expand Up @@ -70,6 +74,7 @@
"Also appended to history.csv in the RadioMaster data folder.": "",
"Also the same song in different files": "",
"Another folder to look for moved files in (besides the library folders)": "",
"Another running order from the same template": "",
"Appearance / workzones": "",
"Append to playlist": "",
"Applies configuration changes; listeners are briefly disconnected": "",
Expand All @@ -80,6 +85,7 @@
"Artist separation": "",
"Assign audio file…": "",
"At": "",
"At the top of every hour": "",
"Attack": "",
"Audio FX": "",
"Audio devices": "",
Expand Down Expand Up @@ -144,6 +150,7 @@
"Connect to Remote Server…": "",
"Connect to Server…": "",
"Connect without saving": "",
"Connected to a server: Generate makes a new running order there.": "",
"Connection": "",
"Content type": "",
"Copies host + server type into the first encoder": "",
Expand Down Expand Up @@ -200,9 +207,11 @@
"Events": "",
"Every": "",
"Every 30 minutes on the clock = at :00 and :30. Off = 30 minutes after the last time.": "",
"Every 60 minutes on the clock = at the top of each hour. Off = counted from the start of the playlist.": "",
"Every change is listed in cleanup-log.csv in the data folder.": "",
"Every day": "",
"Every file is there and can be read.": "",
"Every hour on the hour, after the song that's playing": "",
"Every play (CSV / Excel)…": "",
"Every track overlaps the next by this much. Tracks with cues set in the track editor still use their own.": "",
"Everything": "",
Expand Down Expand Up @@ -273,12 +282,14 @@
"Input": "",
"Input (microphone / line in)": "",
"Insert": "",
"Insert a playlist item (time announcement, speech, stream…)": "",
"Insert after selected row": "",
"Insert as next": "",
"Insert file as next": "",
"Insert playlist": "",
"Insert tracks from playlist…": "",
"Insert voice track…": "",
"Inserts": "",
"Install now": "",
"Interface size": "",
"Intro sound": "",
Expand All @@ -287,7 +298,7 @@
"JINGLE": "",
"Jingles": "",
"Jingles & adverts (their rule's files)": "",
"Jingles, adverts and other inserts by time (counted along the generated running order):": "",
"Jingles, adverts, talk or a time announcement, like the advert / jingle rules: after a number of songs, every so often, or at set times. Timed ones go in after the song that's playing when the time comes.": "",
"Keep": "",
"Keep the music at full level": "",
"Keep the playing track near the top as songs finish (the last one played stays in view)": "",
Expand All @@ -305,6 +316,7 @@
"Leave out": "",
"Leave these empty to keep the password. At least 12 characters.": "",
"Length": "",
"Length and separation": "",
"Level the track to a common loudness": "",
"Library": "",
"Library cleanup": "",
Expand Down Expand Up @@ -425,7 +437,7 @@
"Parametric": "",
"Password": "",
"Password (12+ characters for setup)": "",
"Pattern (repeats until the length is reached):": "",
"Pattern": "",
"Pause": "",
"Pause the music, carry on after": "",
"Performance": "",
Expand Down Expand Up @@ -469,6 +481,7 @@
"Presenter notes are local text; they are not automatically broadcast.": "",
"Presets…": "",
"Press a key… (Esc cancels)": "",
"Preview": "",
"Preview (track editor)": "",
"Previous": "",
"Profile:": "",
Expand Down Expand Up @@ -507,11 +520,14 @@
"Remove the selected rows": "",
"Remove this MIDI control": "",
"Remove this key": "",
"Remove this step": "",
"Remove this time": "",
"Removed files:": "",
"Removing files": "",
"Render playlist to WAV…": "",
"Reorder, or drop on another playlist's tab to move them there": "",
"Repeat every": "",
"Repeats until the length is reached:": "",
"Report": "",
"Report (CSV / Excel)…": "",
"Reports": "",
Expand Down Expand Up @@ -556,6 +572,7 @@
"Seconds of each": "",
"Security": "",
"Security and web portal": "",
"See the running order first; nothing changes until you use it": "",
"Select a track in the playlist, then:": "",
"Select all": "",
"Select none": "",
Expand All @@ -571,6 +588,7 @@
"Set to the playhead / cursor position": "",
"Set volume (0-1)": "",
"Settings": "",
"Several genres: separate them with commas (Rock, Pop)": "",
"Shared by every song by this artist": "",
"Shortcuts and MIDI": "",
"Shortcuts and MIDI…": "",
Expand All @@ -594,6 +612,7 @@
"Song": "",
"Song Requests": "",
"Song requests come from AzuraCast. Set it up in Tools → AzuraCast → Connection.": "",
"Song separation": "",
"Songs": "",
"Sort by": "",
"Sound card buffer": "",
Expand Down Expand Up @@ -647,16 +666,19 @@
"The queue is empty.": "",
"The server has no sound cards.": "",
"The server was started with --no-audio, so it streams only until it is started without it.": "",
"The template's times of day and timed inserts follow the clock from where the new tracks start.": "",
"These belong to the server itself. Station settings (playlists, streams, adverts…) are in the usual places while you're connected.": "",
"Things that happen at a set time: a new playlist from a template, adverts, a playlist going on air, encoders, volume…": "",
"Things that happen at a set time, or again and again: a time announcement or any other playlist item, a new playlist from a template, adverts, a playlist going on air, encoders, volume…": "",
"This copy wasn't installed with the setup program, so download the new zip (or the installer) from the page.": "",
"This is what the stream hears. Outputs marked Studio monitor are always muted while the mic is on.": "",
"This page needs an AzuraCast API key.": "",
"This report": "",
"Threshold": "",
"Tick every device that should play the on-air mix. The first working device is the primary; the others get a copy (monitor / headphones / second sound card). Each has its own volume.": "",
"Time": "",
"Time announcement": "",
"Time until the next hour marker in the playlist": "",
"Times of day": "",
"Tip: create a Streamer/DJ account in AzuraCast, then use the “AzuraCast DJ preset” on the Streaming tab.": "",
"Title": "",
"Today": "",
Expand All @@ -666,6 +688,7 @@
"Track List Repeat Protection…": "",
"Track Title": "",
"Track editor": "",
"Tracks whose artist, title, genre or file name has one of these words are left out": "",
"Transitions": "",
"Translate RadioMaster: export the template, fill in the right-hand side of each line, save it as e.g. Deutsch.json in the lang folder, then pick it here. Share it on GitHub so everyone gets it.": "",
"Trim silence": "",
Expand Down Expand Up @@ -740,6 +763,9 @@
"a folder or chosen files": "",
"advert": "",
"adverts": "",
"after every": "",
"after the playlist (instead of replacing it)": "",
"after the track on air": "",
"all day": "",
"all files in order": "",
"all of them": "",
Expand Down Expand Up @@ -779,7 +805,6 @@
"https://radio.example.com/live.mp3": "",
"id:secret (for skip/upload)": "",
"identical files": "",
"insert": "",
"is lowered (set how far with the slider next to the Mic volume)": "",
"is muted (it keeps playing silently)": "",
"is paused, and carries on when the mic goes off": "",
Expand All @@ -791,6 +816,7 @@
"keeping": "",
"keeps playing at full level": "",
"last:": "",
"leave out": "",
"length": "",
"library": "",
"lower ↔ higher": "",
Expand All @@ -806,6 +832,7 @@
"none": "",
"not found (only needed for formats other than MP3)": "",
"not on air": "",
"now (the track on air moves on)": "",
"of each track (0 = off)": "",
"off": "",
"on air": "",
Expand All @@ -817,6 +844,7 @@
"password (12+ characters)": "",
"pause": "",
"pick a rule": "",
"pick an item": "",
"playlist row(s)": "",
"playlist rows removed": "",
"plays": "",
Expand All @@ -834,15 +862,19 @@
"target": "",
"text in the title": "",
"the Adverts list — each advert only in its own dates and days": "",
"the next time the clock reaches it": "",
"the same artist played in the last": "",
"the same song doesn't come back sooner": "",
"the same track played in the last": "",
"this advert": "",
"this band": "",
"this category": "",
"this event": "",
"this insert": "",
"this rule": "",
"this shortcut": "",
"this template": "",
"this time of day": "",
"this web panel": "",
"to": "",
"tools": "",
Expand All @@ -858,6 +890,8 @@
"voices on this computer": "",
"wait (silence) until the time": "",
"when under": "",
"words, e.g. live, remix": "",
"years": "",
"yes": "",
"{}": "",
"…or choose files": "",
Expand Down Expand Up @@ -908,6 +942,7 @@
"✏ Track editor…": "",
"✔ = cues set by hand": "",
"✔ Do it": "",
"✔ Put it in the playlist": "",
"✔ RadioMaster is up to date.": "",
"✖ Close": "",
"✖ not found — needed for AAC, Opus, Vorbis and FLAC streams": "",
Expand All @@ -924,11 +959,15 @@
"➕ Add pattern step": "",
"➕ Add streamer": "",
"➕ Add time": "",
"➕ Add time announcement": "",
"➕ Add time of day": "",
"➕ Advert rule": "",
"➕ Folder…": "",
"➕ Hourly time announcement": "",
"➕ Jingle rule": "",
"➕ New": "",
"➕ Playlist": "",
"⟳ Again": "",
"⟳ Refresh": "",
"⟳ Refresh devices": "",
"⟳ Reload plugins": "",
Expand All @@ -944,6 +983,7 @@
"🎤 Streamers/DJs": "",
"🎲 Playlist Generator Pro…": "",
"🏷 Genres": "",
"👁 Preview": "",
"👥 Listeners": "",
"👯 Duplicates": "",
"💾 Save as M3U…": "",
Expand Down
26 changes: 21 additions & 5 deletions site/guides/event-scheduler/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -113,8 +113,8 @@
<nav class="crumbs" aria-label="Breadcrumb"><a href="/">RadioMaster</a> / <a href="/guides/">Guides</a> / Event scheduler</nav>
<p class="eyebrow">Guide · Run the station</p>
<h1 class="page-h">How to automate with the event scheduler</h1>
<p class="lede" style="margin-top:16px">The event scheduler does things at set times so you don't have to be there: make a fresh playlist every morning, put Friday night's show on air at 19:00, start the second stream for a sports match, or run any station command.</p>
<nav class="toc" aria-label="On this page"><a href="#add">Add an event</a><a href="#actions">Actions</a><a href="#commands">Station commands</a><a href="#recipes">Recipes</a><a href="#rows">Events in the playlist</a></nav>
<p class="lede" style="margin-top:16px">The event scheduler does things at set times so you don't have to be there: make a fresh playlist every morning, put Friday night's show on air at 19:00, read the time every hour, start the second stream for a sports match, or run any station command.</p>
<nav class="toc" aria-label="On this page"><a href="#add">Add an event</a><a href="#repeat">Repeat</a><a href="#actions">Actions</a><a href="#items">Insert a playlist item</a><a href="#commands">Station commands</a><a href="#recipes">Recipes</a><a href="#rows">Events in the playlist</a></nav>
</section>

<section class="block">
Expand All @@ -128,10 +128,24 @@ <h2 id="add" style="margin-top:0">Add an event</h2>
<li>Choose what to <b>Do</b> (the actions are below) and fill in what it needs, such as a template, a playlist tab or a rule.</li>
<li>Press <b>▶ Run now</b> to try it straight away.</li>
</ol>
<p>Each event has its own on/off tick, so you can park one without deleting it.</p>
<p>Each event has its own on/off tick, so you can park one without deleting it, and <b>Duplicate</b> makes a copy to change.</p>

<h2 id="repeat">Repeat an event</h2>
<p>Tick <b>Repeat every</b> to run an event again and again: choose minutes or hours and the time it stops. The event's time becomes the first run. For example, from 06:00, repeat every 30 minutes until 22:00 runs at 06:00, 06:30, 07:00 … 22:00. A stop time earlier than the start runs over midnight (22:00 until 02:00).</p>
<p><b>➕ Hourly time announcement</b> adds a ready-made event that reads the time at the top of every hour, every day.</p>

<h2 id="actions">Actions</h2>
<div class="rundown-table"><table><thead><tr><th>Action</th><th>What it does</th></tr></thead><tbody><tr><td class="it">Generate a new playlist from a template</td><td>Replaces the playlist with a fresh one from a <a href="/guides/playlist-generator/">generator template</a></td></tr><tr><td class="it">Add tracks from a template after the playlist</td><td>Appends a template's tracks to the end</td></tr><tr><td class="it">Play adverts / jingles from a rule</td><td>Queues an <a href="/guides/advertisement-scheduler/">advert or jingle rule</a> after the song on air</td></tr><tr><td class="it">Put a playlist tab on air</td><td>Switches to another playlist tab, for example a show you prepared earlier</td></tr><tr><td class="it">Play the on-air playlist again from the top</td><td>Restarts the on-air playlist, which keeps a playlist looping</td></tr><tr><td class="it">Load playlist (M3U) and play</td><td>Opens an M3U file and plays it</td></tr><tr><td class="it">Play file now</td><td>Plays one file straight away</td></tr><tr><td class="it">Insert file as next</td><td>Puts a file after the song on air</td></tr><tr><td class="it">Stop playback</td><td>Stops the station</td></tr><tr><td class="it">Start encoder # / Stop encoder #</td><td>Starts or stops one of your <a href="/guides/stream-to-icecast-shoutcast/">streams</a>. Here the first encoder is #0</td></tr><tr><td class="it">Set volume (0-1)</td><td>Sets the master volume, 1 being full</td></tr><tr><td class="it">Run a station command</td><td>Any command below</td></tr></tbody></table></div>
<div class="rundown-table"><table><thead><tr><th>Action</th><th>What it does</th></tr></thead><tbody><tr><td class="it">Insert a playlist item</td><td>Puts a time announcement, text to speech or another item from the Playlist menu after the song on air, or plays it now. <a href="#items">More below</a></td></tr><tr><td class="it">Generate a new playlist from a template</td><td>Replaces the playlist with a fresh one from a <a href="/guides/playlist-generator/">generator template</a></td></tr><tr><td class="it">Add tracks from a template after the playlist</td><td>Appends a template's tracks to the end</td></tr><tr><td class="it">Play adverts / jingles from a rule</td><td>Queues an <a href="/guides/advertisement-scheduler/">advert or jingle rule</a> after the song on air</td></tr><tr><td class="it">Put a playlist tab on air</td><td>Switches to another playlist tab, for example a show you prepared earlier</td></tr><tr><td class="it">Play the on-air playlist again from the top</td><td>Restarts the on-air playlist, which keeps a playlist looping</td></tr><tr><td class="it">Load playlist (M3U) and play</td><td>Opens an M3U file and plays it</td></tr><tr><td class="it">Play file now</td><td>Plays one file straight away</td></tr><tr><td class="it">Insert file as next</td><td>Puts a file after the song on air</td></tr><tr><td class="it">Stop playback</td><td>Stops the station</td></tr><tr><td class="it">Start encoder # / Stop encoder #</td><td>Starts or stops one of your <a href="/guides/stream-to-icecast-shoutcast/">streams</a>, counting from 1 like the Streams tab</td></tr><tr><td class="it">Set volume (0-1)</td><td>Sets the master volume, 1 being full</td></tr><tr><td class="it">Run a station command</td><td>Any command below</td></tr></tbody></table></div>

<h2 id="items">Insert a playlist item</h2>
<p>Pick <b>Insert a playlist item</b>, then choose the item from the list next to it. These are the same items as in the Playlist menu, set up in the same dialogs:</p>
<ul>
<li><b>Time announcement</b>: reads the current time</li>
<li><b>Text to speech</b>: any text in a computer voice, with <code>{time}</code>, <code>{next}</code> and the other fill-ins, for example "You're listening to Radio X, it's {time}"</li>
<li><b>Track List</b>: one random track from a folder, with repeat protection, which suits station IDs</li>
<li><b>Container</b>, <b>URL</b> (an internet stream), <b>Line Input</b>, <b>Teaser</b>, <b>Timed pause</b> and <b>Command</b></li>
</ul>
<p>Use <b>✏ Edit…</b> to change it later. Choose whether it plays <b>after the track on air</b> (the song isn't cut) or <b>now</b>. If the last one is still waiting to play, for example while playback is stopped, another copy isn't added.</p>

<h2 id="commands">Station commands</h2>
<p>The same commands work in an event, in a playlist <b>Command</b> row (<kbd>Alt+C</kbd>) and from a <a href="/guides/plugins/">plugin</a>.</p>
Expand All @@ -144,8 +158,10 @@ <h2 id="recipes">Recipes</h2>
<li><b>A sponsored news intro</b>: 07:59, weekdays, Play adverts / jingles from a rule → <i>News sponsor</i>.</li>
<li><b>A second stream for a match</b>: Saturday 14:45, Run a station command → <code>ENCODER START 2</code>, and 17:15, <code>ENCODER STOP 2</code>.</li>
<li><b>Quieter overnight</b>: 00:00, Set volume 0.8; 06:00, Set volume 1.</li>
<li><b>The time every hour</b>: ➕ Hourly time announcement, or from 00:00 repeat every 1 hour, Insert a playlist item → Time announcement.</li>
<li><b>A spoken station ID every half hour in the daytime</b>: from 06:30, repeat every 30 minutes until 22:00, Insert a playlist item → Text to speech.</li>
</ul>
<p class="tip"><b>Something every hour?</b> An event runs at one time of day. For a station ID or a top-of-the-hour jingle every hour, make a jingle rule that plays <b>every 1 hour on the clock</b> in the <a href="/guides/advertisement-scheduler/">advertisement scheduler</a>, or an insert in your <a href="/guides/playlist-generator/">generator template</a>.</p>
<p class="tip"><b>Jingles on the clock?</b> For jingles and adverts with play counts and reports, use a rule that plays <b>every 1 hour on the clock</b> in the <a href="/guides/advertisement-scheduler/">advertisement scheduler</a>, or an insert in your <a href="/guides/playlist-generator/">generator template</a>.</p>

<h2 id="rows">Events in the playlist</h2>
<p><b>Playlist → Add event</b> puts an Event row in the running order. When playback reaches it, it runs a scheduler action, for example ending a show's playlist with "Put a playlist tab on air → Main" so Main carries on where it left off instead of dead air.</p>
Expand Down
Loading
Loading