In development — on air now

Station operations software

A DJ between the records. That never says anything untrue.

VoiceTrove reads the queue your automation just built, writes the break about the records actually either side of it, voices it, and drops finished audio onto a cart your system already plays — one element added to a rotation it never touches.

Built on a licensed FM, not a stream. Every claim in every break is checked against the queue before it can air.

Most automated stations don’t sound bad.
They sound unattended.

Song, sweeper, song, sweeper. Nothing that knows what just played. Nothing that knows what’s coming. And the moment you hand that gap to a generator, you get the second problem — a confident voice on your licensed signal, saying something that isn’t true. The wrong artist. A year that never happened. A back-announce for a record that finished an hour ago.

VoiceTrove is built around the second problem. That is what makes it safe to hand it the first one.

What makes it different

Three things nobody else is doing

Nothing airs unverified.

Eleven guards stand between the script and your transmitter

The writer is handed the two records in play, so naming music stops being forbidden and starts being required to match. Every script is checked against the queue it was written from before a single word is voiced. Name an artist who isn’t in play, point a past-tense cue at a song that hasn’t aired yet, claim a temperature that wasn’t fetched, invent a year — the break is rejected and rewritten, not shipped with a disclaimer.

Every rejection shown here is a real one, caught on a real render, on a real station. Fluent, confident and completely wrong is the normal failure mode of a language model. Catching it is the product.
× “That red corvette never existed outside Prince’s mind.” Wrong artist — Prince isn’t in this break
× “…and it’s twenty twenty-four.” Invented year — nobody told it the year, so it supplied one
× “That’s this Saturday.” Relative distance — the event is seven weeks out
× “Coming up right after this…” False immediacy — two other elements play first
“One minute we’re in a fortress. Next minute we’re on our knees in the driveway.” Cleared all eleven — on air

Your rotation is never touched.

It reads the live queue. It does not build the playlist

Most AI DJ tools want a playlist file — you hand them a .m3u and they hand you back an hour. VoiceTrove works the other way round. Your automation keeps choosing the music, on the fly, exactly as it does today. The queue cannot run dry. A live drop-in still works. A listener request still lands at the top. All this adds is one element to what rotation already decided.

That was a requirement, not an implementation detail. A generated playlist costs you both of those properties, and no amount of personality pays for them.

Finished audio is written to a fixed path that a permanent cart already points at. Nothing is written to the automation database — no library to keep clean, no import step to fail, nothing to undo if you switch it off.
Automation queue — live
nowToto — Africachosen by your rotation
+1Voice track slotthe one element added
+2Whitney Houston — How Will I Knowchosen by your rotation
+3Sweeperchosen by your rotation
+4Listener requestdropped in live — still works

It doesn’t settle into one shape.

Twelve angles, rotated — not twelve rewordings of one idea

Every AI DJ collapses into a rut eventually: “that was X, here’s Y”, break after break, because that shape scores well and the model keeps picking it. Similarity checks don’t fix it — they stop the same words, never the same idea.

VoiceTrove assigns each break an approach before it writes, and moves to the next one every run. The angle decides the whole break. If it means ignoring one of the two records, it ignores it. If it means eight words, it writes eight. An angle with no material for it is skipped rather than spent.

Five consecutive runs on the same pair of records produce five completely different breaks. That is the test it has to pass.
Back-announce Genre jump One record only Time of day An approved fact The station itself Forward tease A local event Deadpan The listener Short and flat The gap itself

One angle per run, advanced by a cursor that survives restarts. Illustrative set — the roster is configuration, per station.

When something goes wrong

The failure mode is never silence — and never a stale back-announce

The cart fires whether or not the generator succeeded, so something airs regardless. The dangerous default is leaving the slot alone: an hour-old “that was Peace Train” is a confident lie about your own station, and it will air every hour until someone notices.

On any failure — API down, guard rejection, internet gone — the slot is overwritten with a timeless break from a pre-rendered pool. Generic, correct, and logged as a failure so you know it happened. A generic line always beats a confident lie about what just played.

The pool costs nothing to use. It is rendered once and copied thereafter, so money is only ever spent on breaks about real records.

The clock

Every non-music element on one clock

Voice tracks on fixed minutes sit clear of everything else, instead of landing on top of a sweeper because rotation happened to put one there. Set the shifts, set the count, and the hour stops fighting itself.

:00Station ID & conditionstop of hour
:07Voice trackVoiceTrove
:11Sweeperrotation
:15Lead-in ▸ feature ▸ lead-outVoiceTrove bookends
:22Voice trackVoiceTrove
:26Sweeperrotation
:30Conditions & forecastWeatherTrove
:37Voice trackVoiceTrove
:41Sweeperrotation
:45Lead-in ▸ PSA ▸ lead-outVoiceTrove bookends
:52Voice trackVoiceTrove
:56Sweeperrotation

Bookends.

Your other elements stop appearing out of nowhere

A short feature, a PSA, a sponsored item — dropped into the hour with no introduction, they sound like a glitch. VoiceTrove writes a lead-in and a lead-out around them and airs all three as one adjacent segment, so the feature arrives with a reason and leaves with a hand-off.

Bookends guard the opposite of a voice track. The tool is told nothing about the item it is wrapping — automation picks that at fire time — so a bookend is forbidden from claiming anything about it at all. It reads slightly slower too: six words with no commas land about a third faster than a voice track, and padding the copy would stop it being a bookend.

One event · three elements · adjacent
:15:00“Something worth sitting still for.”lead-in
:15:04Short featurepicked by automation at fire time
:16:38“Back to the music.”lead-out

Accountability

You can see what it wrote, which path it took, and what actually aired

Two logs, kept separately on purpose. One records every run — the copy, the angle, which of the five paths it took, which guards it hit, what it cost. The other records what the automation system actually played, read back from the automation’s own history rather than from anything this tool believes.

When a break sounds wrong, you are not guessing. You have the script, the queue it was written from, and the timestamp it hit air.

Ask for a sample aircheck
06:06:00 slot 1 both-sides angle=genre-jump
06:06:01 queue: Toto/Africa → Whitney/How Will I Know
06:06:03 guards 11/11 pass · 24 words
06:06:07 tts 4.1s · -16 LUFS · flac written
06:07:02 AIRED vt-1 · alone
 
06:21:00 slot 2 one-side angle=time-of-day
06:21:04 guard REJECT invented-year “twenty twenty-four”
06:21:09 rewrite · guards 11/11 pass
06:22:01 AIRED vt-2 · alone
 
06:36:00 slot 3 api timeout
06:36:02 pool-after-failure · timeless · cost 0
06:37:01 AIRED vt-3 · alone

Core features

What it does, break by break

Back- and front-announce

Names the record that just finished and the one about to start, in the right direction, every time.

One-sided breaks

When only one neighbour is music it works from that one alone, instead of falling back to filler.

Forward teases

Nothing either side? It reaches a few items down the queue — without ever claiming that record is next.

Written for the minute it airs

Copy is built from the time it will air, computed — not the time it was written. Morning drive sounds like morning drive.

Approved facts

A human-reviewed fact file the writer may draw on. Nothing about your library is invented, and anyone a fact names is allowed past the artist guard.

Local events

Reads a station events table with hard repetition limits, and refuses any relative-date claim it cannot compute.

Current temperature

Fetched from your NWS station minutes before air, spelled in words, and rejected if it doesn’t match. Everything else about the sky is banned.

Bookends

Lead-in and lead-out around features, PSAs and sponsored items, aired as one adjacent segment.

Your station’s voice

How the station says its own name aloud, the phrases it never uses, and pronunciation fixes for anything a synthetic voice would mangle.

Broadcast-ready audio

Loudness-normalized FLAC with deliberate noise pads at the head and tail, sized so nothing clips the first or last syllable.

Length is refused, not clipped

A render past the cart ceiling is rejected and rewritten. On a comedy break the last three words are the joke.

Costs a few dollars a month

Pool breaks are free. Spend happens only on breaks about real records, and the log tells you exactly where it went.

Automation systems

It drops a file on a cart. That is the whole integration

VoiceTrove replaces the contents of a file your automation already points at, and lets a permanent event play it. There is no plugin to install, no API to expose and nothing written to the automation database — so any system that can play a cart from a fixed path on a schedule can run it.

RadioDJ StationPlaylist PlayIt Live SAM Broadcaster mAirList RadioBoss Rivendell NextKast Myriad PlayoutONE Raduga ProppFrexx

VoiceTrove is in development. RadioDJ is the system it runs on in production today; the rest are supported through the same cart-drop approach and are being brought up one at a time. Tell us what you run and we will tell you honestly where yours stands. Terrestrial and multi-station deployments are handled directly — that is the rest of what Nexus Broadcast does.

Proven on air

Running on a licensed FM, not a demo stream

Every behaviour on this page was built because something went wrong on a real station and had to be fixed by the next hour. The guards exist because breaks got through. The angle rotation exists because it went dull after three hours. The pool-on-failure exists because a stale back-announce aired twice before anyone caught it.

4voice tracks an hour, around the clock
11guards run before anything is voiced
12angles rotated so it never settles
0changes to your rotation or music library

Better together

The same clock already carries your weather

WeatherTrove produces the station’s forecast and current-conditions breaks the same way — National Weather Service data through script, voicing and a finished file on an existing cart, with every measured figure verified before it can air. Run both and the non-music side of your hour is handled by one approach, one set of station branding, and one pronunciation list.

Pricing

What this costs, and what it costs everywhere else

One station, one price, no minimum term. Enterprise AI DJ platforms are priced for groups and sold on annual contracts; consumer tools are cheap and work from playlist files. VoiceTrove is priced per station and works from the live queue.

Internet radio

$549
per year, per station

Streaming and unlicensed stations.

  • Every claim verified against the live queue
  • Rotation and music library untouched
  • Timeless fallback break on any failure
  • Full aircheck log of copy, path and cost
Ask about early access
Most stations

Licensed station

$1,188
per year · LPFM, FM or AM

One licensed signal, supported by broadcast engineers.

  • Everything in the internet tier
  • Built and proven on a licensed FM
  • Deployment onto your existing carts and events
  • Support from the engineers who wrote it
  • Pairs with WeatherTrove on one clock
Ask about early access

Station group

Quoted
per station, three or more

Networks and multi-signal operators.

  • Per-station rate below the single-station price
  • One voice and one fact set across the group, or one per station
  • Rollout handled signal by signal
  • Custom work quoted alongside — see the software page
Talk to us

Founding stations

$1,499 once, then never again

One payment, no renewal, licensed or internet. Limited to the first twenty-five stations, after which it closes for good.

first 25 stations

Both tools

$1,588 per year, licensed station

VoiceTrove and WeatherTrove together — the whole non-music side of your hour, one set of station branding, one pronunciation list.

See WeatherTrove

Early-access stations keep the rate they join at. VoiceTrove is in development and taken on a small number of stations at a time, so pricing is confirmed in writing before anything is installed. AI and text-to-speech usage is billed to the station’s own accounts and typically runs to a few dollars a month — fallback breaks cost nothing. No figure on this page is a price for another company’s product.

Questions

The things stations ask first

Does it change my rotation or my music library?

No. Nothing is written to the automation database. Your rotation keeps choosing the music and filling the queue exactly as it does now; this adds one element to what rotation already decided, by replacing the contents of a file a permanent cart already points at. Switching it off leaves nothing to undo.

What happens if the internet or the AI service goes down?

The cart still fires, so something still airs — and that something is a timeless break from a pre-rendered pool, written to the slot the moment the run fails. It never leaves an hour-old back-announce in place, because that is a confident lie about your own station rather than a gap.

Can it invent things about my records?

It can try. That is what the guards are for. Any artist named who is not one of the two records in play, any past-tense cue pointing at a song that has not aired, any year, any temperature that was not fetched for that break — rejected before voicing. Facts it is allowed to use come from a file a person reviewed.

What automation system do I need?

Anything that can play a cart from a fixed path on a schedule — which is nearly all of them. RadioDJ is the system it runs on in production today, and the others are supported through the same cart-drop approach as the product is brought up. Get in touch and we will tell you honestly where yours stands.

Will it sound like the same break over and over?

That is the failure mode this was rebuilt to fix. Breaks are assigned a rotating approach before they are written, and the angle decides the whole break — including ignoring one of the records, or coming in at eight words. Five runs on the same pair of records produce five different breaks.

Can I use my own voice?

The voice is configuration, including reading rate, the station’s own name as it should be said aloud, and pronunciation fixes. Voice cloning depends on the text-to-speech account the station brings — ask and we will walk through the options.

Is it available now?

Not generally. It runs on a licensed FM today and is being prepared as a product for other stations. Early-access stations are being taken on a small number at a time so each deployment gets real attention.

Hear what your gaps could sound like

Tell us what you run, how your hour is built, and what you want between the records. We will tell you what VoiceTrove would do with it — and what it would refuse to say.