📖 JTM Cast — User Manual

Start here if you are unsure how something works. The "What's new" section lists recent changes. 日本語

1. The basics (preview → TAKE)

The single most important idea in JTM Cast is that the preview (your draft) and the live output (what the congregation sees) are two different things.

When you pick a verse or a hymn, it appears first in the preview in column 3. Nothing is visible to the congregation yet.

Only when you press TAKE (or Enter) does it go to the live projection.

This prevents the congregation from seeing you prepare the next item. While you are getting ready you can click freely — the live output does not change.
The console. Order of service on the left, verse list in the middle, prompter and stage previews with the TAKE button on the right
The whole console. Left: the order of service. Middle: where you choose verses and hymns. Right: the two output previews and TAKE. Nothing reaches the congregation until you press the red TAKE button.
※ Sample data. The worship scene in the background is an illustration.

Stepping scripture and lyrics after TAKE

After TAKE, next/previous scripture and lyric steps within the same song can update the live output without TAKE for every step. New selections, repeated clicks and history selections prepare the preview only. Use TAKE to project a selection again.

After changing hymn display settings, confirm them with TAKE before resuming live stepping. Pending settings do not travel with a lyric step. Individually clearing scripture, lyrics, slides or images also does not bring draft settings or waiting video into the live output.

Individual clears of text, images, banners or screen capture, and clear-all affect the live output while preserving the next prepared content, display settings and waiting media cue. Use TAKE to project the next item. Clear-all also stops live media playback, but screen sharing itself continues. Use "Stop screen sharing" to end the sharing session.

Clear everything

Esc or "🧹 Clear all" removes everything from the live output. TAKE confirms the current preview; it does not automatically restore the previous live output. Use "Undo clear" to restore the content from before the clear. Reselecting the same item also prepares it first: check the preview, then press TAKE.

🗔 The taskbar (tucking columns away and bringing them back)

Each of the four columns of the console behaves like a window: you can tuck it away and bring it back. Every one of those entry points lives on a single slim taskbar on the far left. Just like the taskbar of your computer, pressing an icon opens that column and pressing it again tucks it back into the bar.

  • The icons are 📅 order of service (column 2) and 📊 system status & streaming (column 1). An icon is highlighted while its column is open.
  • Column 3 (choosing) and column 4 (preview and TAKE) can never be closed, because they are the ones you look at during a service. To avoid buttons that do nothing, those two have no taskbar icon.
  • A 🪟 icon appears only while column 4 is detached into its own window. Press it to bring that window to the front, or the ↩️ next to it to put the column back into the console.
  • While column 1 is tucked away, its status lamps (connection, on air, composite mode, streaming, outputs) sit under the icon. Hover over one to read its full name.

Taskbar settings (⋯ or right-click)

Press on the taskbar (or right-click the taskbar) to choose the following. If you change something and lose your bearings, "⟲ Reset to defaults" in the same place always brings it back.

  • Taskbar positionleft, vertical (default) or top, horizontal. Placing it on top gives its width back to the middle columns.
  • Taskbar thickness — slim, icons only (default) or with labels.
  • When a column opens — columns 1 and 2 never open together (default), or open as many as you like. By default, opening column 1 tucks the order of service away so that the TAKE button stays on screen. What was tucked away is shown in one line inside the column you opened, and pressing 📅 on the taskbar brings it straight back.
  • Width when opening — remember the last width (default) or always the default width.
  • How to place — automatic (default: overlay only when the screen is narrow), always push aside, or always overlay.
These settings are stored on your computer only (the PC in the auditorium and the one at home usually need different layouts). They survive signing out and back in.

🧪 Beta features

Features that are still being verified are hidden by default, so that nobody presses them by accident during a service.

  • Currently in beta: "🎙️ AI assistance (experimental)" and "Low-latency streaming (experimental)".
  • To use them, tick "🧪 Show beta features" under ⚙️ System settings → Usability.
  • This setting is per church and is shared with the other computers in your church, so every console shows the same features.
  • ⚠ Only the buttons are hidden. If your church already had low-latency streaming on, streaming behaves exactly as before.

🖥️ Open, make full screen and close - all from the console

The projection goes to a projector or a display at the front of the room, and the operator cannot reach it with a mouse. Everything you need to do to a projection window is therefore in one place on the console: "🖥️ Projection window output" in the left column.

  1. Choose which display it goes to (local install only - see 🖥️ Choosing which display to project to).
  2. Open: press the button for the output you use (Prompter / 📡 Stage & stream). If you use dual output in external compositing mode, "🔑 Open key (matte) window" is in the same place.
  3. Make full screen: appears under each open output. It asks that projection window to go full screen and always tells you what happened. The key (matte) window has the same button.
  4. Close: in the same place. For the key (matte) window the close button appears once you have opened it from this console.
  • This group sits at the top of the left column, because opening a projection window is the first thing you do each service and the place you reach for in a hurry. To put it back lower down, use "⬇ Move down" next to the heading; "Reset to default" is in the same place. (The choice is stored on that computer only.)
  • "Make full screen" is not guaranteed to work. Browsers require a human gesture before a window can go full screen, and a click on the console is not guaranteed to count as one for the projection window. If it does not work, pick the display again and close and reopen the window - it then opens full screen on the display you chose (local install).

🖥️ Choosing which display to project to (local install only)

This is available on the local install only. The cloud edition, which you use in a browser, has no display chooser (why, and what to do instead: 🌐 Projection windows in the cloud edition).

Above "Projection windows" in the left column, press "🖥️ Detect and choose displays" to list the screens that are connected. You can pick a different screen for the prompter, for the stage, and - if you use the external-mixer two-output setup (fill+key) - for the key (matte) window as well.

  • Choose once and that is all. From then on, pressing a projection button opens the window fullscreen on that screen. You never have to drag it there yourself.
  • After it opens, the left column tells you what happened: shown fullscreen, filled the screen, or could not be placed. If it did not work, press "Try fullscreen on that display again" right there.
  • The choice is remembered on that computer only, so you do not have to choose again next Sunday.
  • The first time, the browser asks whether to allow window management. That prompt appears only when you press "🖥️ Detect and choose displays" - never in the middle of a service. Once allowed, later services open fullscreen with nothing to answer.
  • Chrome and Edge only, and only when you grant permission. Safari and others simply open windows the old way, with no chooser.
  • ⚠ The browser can refuse full screen and leave a frame around the window. If that happens, press "Make full screen" on the console (see Open, make full screen and close - all from the console) - you do not have to walk over to the projector.
  • 🚨 If the chosen display is disconnected, a red banner appears. Check the cable and choose again; reconnecting clears the banner. ⚠ We cannot stop the operating system from moving windows the moment a cable is pulled.

🌐 Projection windows in the cloud edition (used in a browser)

The cloud edition - the one you open in a browser at cast.mannasys.com - has no "choose which display" list. 🖥️ Choosing which display to project to above appears on the local install only (the edition you install on your own computer).

Nothing that used to work was taken away. Browsers do not let an app put another window into full screen on its own. On real hardware the window did move to the chosen screen, but it did not go full screen: the browser frame stayed until a person clicked that window once. A chooser you can set but that does not take effect is the most confusing thing to leave in front of an operator during a service, so we do not show it.

How to fill the screen you want, in the cloud edition (three steps)

  1. In the left column under "Projection windows", press the open button for the output you want (Prompter / Stage & streaming). Nothing has changed here.
  2. Drag the window with the mouse onto the screen you want (the projector, for example).
  3. Press "Make full screen" on the console (Open, make full screen and close - all from the console). ⚠ Browsers may refuse. They require a human gesture before a window can go full screen, and a click on the console is not guaranteed to count as one for the projection window. In the cloud edition, if it is refused, the only remaining way is to press F on the projection window itself. If you cannot reach the projection display, please use the local install - there, choosing a display is all you do.
  • To leave full screen, close and reopen the window from "🖥️ Projection window output".
  • Once it is full screen it stays that way for the whole service. ⚠ Re-opening the projection window drops it out of full screen, so repeat step 3 if you do.
  • On the local install, choosing a display is all you do: the window opens full screen on that display by itself. No dragging, no full-screen step. If you would like to shorten your weekly preparation, consider the local install (💻 Local install).

📖 Your church's default Bible versions

Under ⚙️ System settings → "📖 Default Bible versions" you can pick up to three versions your church normally uses.

  • These are the versions loaded the first time you open the app on a new computer.
  • Book names follow the first version as well.
  • Computers already in use are not changed silently, so versions never swap during your preparation. Press "Apply to this computer now" if you want them switched.
  • The setting is per church and is shared with your other computers.

🌐 Choosing the interface language (English / 日本語 / chiShona)

The 🌐 dropdown at the top right chooses the console language (English / 日本語 / chiShona): Bible, hymns, order of service, media, display settings, system settings, sign-up and password reset.

You can choose it before you sign in. The same 🌐 dropdown and a 📖 Manual link sit at the top right of the sign-in screen, the staff invitation screen and the password reset screen — so you can put the app into a language you read before you have an account.

  • chiShona is still being translated. Anything not yet translated is shown in English (never in Japanese).
  • Your choice is saved to your account, so it follows you to other computers.
  • The projected content does not change language. You can project Japanese scripture while operating in English. The reference line under a verse (for example "John 1:1") stays in the language of the version being projected.
  • In English, book names in the book grid are English (Genesis / Matthew …). Switching the version to KJV does not change them — the operator's language and the projected version's language are treated separately.
  • Hymn lyric language (A / B / C) is still chosen in column 3 and is unrelated to the interface language.
  • Error messages follow the interface language too, and so do the emails we send you (address confirmation, password reset, staff invitations).
The language is never detected automatically — it changes only when you choose it here. This keeps a browser or OS setting from changing your display in the middle of a service.

🆕 Creating a church account

Use "Start for free" on the sign-in screen. There is no approval to wait for.

  • You enter four things: church name, your name, email address and a password. You do not need to invent an ID — it is generated from the church name.
  • Your email address is your sign-in ID. The password must be at least 8 characters and can be changed later.
  • New accounts start on the Free plan. You can move up at any time from ⚙️ System settings → 💳 Subscription.
  • Invite the people who serve with you from ⚙️ System settings → Staff (how many depends on your plan).

👥 What administrators and staff can each do

Accounts come in two roles: administrator and staff. Running a service works exactly the same in either role. The differences are only in settings that affect the whole church.

  • Both roles can: run and project the order of service, Bible, hymns and slides; use favourites, set lists, history and search; change their own display settings; and import, tag, rename and delete media files (images, audio, video).
  • Administrators only: edit the libraries of Bible translations and hymns (add, import, delete); invite staff and manage accounts; configure streaming and start or stop a stream; export and import data; subscription and payment; and running updates in the installed edition.

Buttons you are not allowed to use are either disabled or not shown at all, so you never press something that fails every time.

💳 Subscription and payment

⚙️ System settings → 💳 Subscription shows your current plan (administrators only). Signing up, changing payment details and cancelling all happen here.

  • Payment is handled by Stripe. Card numbers are never stored on JTM Cast servers.
  • Four plans: Free / Standard ($18/mo) / Premium ($35/mo) / Ministry ($52/mo). Higher plans allow more simultaneous consoles and outputs (projection, stage, prompter), more staff and more storage.
  • Free never expires: 1 console, 1 output, 1 staff member, 100 MB, and a small "JTM Cast" mark on the projection.
  • Reaching a limit never stops what is already running. Only new additions are declined. Downgrading never deletes stored media or staff accounts.
  • Churches that belong to a parent church can receive family pricing — contact us and we will set it up.
  • In installations where payment is not used the tab is hidden entirely (for example the local install). Nothing else is affected.

❌ Clear projection (next to TAKE)

Clear by type: In the main and detached column 4 windows, clearing preparation leaves LIVE unchanged, while clearing LIVE preserves the next preparation. Types are Bible, hymn, text, slides, images, video/audio, YouTube and text bands. Absent types are disabled; a LIVE lock does not prevent clearing preparation. Saved media and programs are not deleted.

While Bible or hymn content is loading, clearing its preparation cancels acceptance of pending results and retries. Other prepared content and LIVE are retained. This does not guarantee immediate cancellation of the network request.

Screen sharing also supports type-specific clearing. Clearing preparation leaves LIVE unchanged; clearing LIVE preserves preparation and the sharing connection. LIVE clearing removes the shared picture and shared audio, without automatically switching to the camera. The console displays a clearing notice. If the same share remains prepared and its connection is still running, TAKE displays it again. "Stop screen sharing" or ending sharing in the browser ends the connection and removes it from both scopes. Starting a share still projects it immediately.

After this update, reload the console and all projection windows so they run the same version. Older windows may not complete the sharing connection checks.

In column 4, between "🖼️ Background logo" and "🧹 Clear all", there is an "❌ Clear projection" button. It is the button you are most likely to need in a hurry, so it is always within reach.

Loading, saving or syncing a background logo changes preparation only. Normally, use TAKE to apply it live. Explicitly turning on "🖼️ Background logo" immediately overlays the selected logo. Turning it off removes the overlay without applying another prepared logo or changing the live text.
  • It removes whatever is currently live — verses, lyrics, text, and also images, video, audio, YouTube and screen sharing.
  • When text and an image are shown together, the text goes first (usually what you want), and pressing again removes the image. "🧹 Clear all" removes everything at once.
  • The button is dimmed and unusable only when nothing is being projected. Hover to see what pressing it would remove.
  • Screen sharing is only taken off the projection; the share itself continues. Use TAKE to show a share that remains prepared.
  • The "❌ Clear projection" buttons inside the Bible and hymn tabs are active only when that kind of content is live.
  • The column 4 button can never be hidden. The ones in column 3 can be turned off under ⚙️ System settings → "🧭 Usability" — your escape route in a panic is deliberately not removable.
"❌ Clear projection" removes one layer at a time (text, then images and video); "🧹 Clear all" removes everything at once and switches every display layer off. To keep them apart, "Clear all" is slightly smaller, outlined in red, and separated by a divider.

⏪ Undo a clear

After clearing restorable content, a blue "⏪ Undo clear (restore previous projection)" bar appears under TAKE. It restores text, images, slides and banners using the saved live settings. Your next prepared content, display settings and waiting media cue remain unchanged.

  • We deliberately do not ask "Are you sure?". Under pressure people press "Yes" reflexively, which is more dangerous. Press first, undo if wrong.
  • The bar disappears when you TAKE the next item, so old content cannot come back by accident.
  • It appears whenever an undo is possible — clearing only the text over an image, clearing the image itself, or pressing "🧹 Clear all" twice in a panic.
  • Currently muted outputs stay muted. Explicitly enable audio and use TAKE if needed to bring sound back.
  • Video, audio and YouTube playback, and screen sharing taken off the live output, do not restart automatically. A state containing only those sources is not restorable. Prepare the media or share, use TAKE and start playback if needed. Full input and screen-sharing restoration remains under improvement.
  • TAKE projects the current preview; it is separate from Undo clear. When operation is locked, restoration is blocked and the saved snapshot is retained.

↩ Recovery buttons for when something goes wrong (Undo / Video source)

These are the buttons for "put it back, now" during a service. They sit right below TAKE in column 4 and are shown by default.

  • ↩ Undo — stops live media playback and restores the previous restorable content. Your next prepared item is preserved. The same limits as Undo clear apply: current mute is retained, and sharing or playback does not restart automatically.
  • 🎥 Video sourceprojects only the live video input (camera or ATEM). The "escape to the camera" button for when you are no longer sure what is on screen. ⚠ It needs the video input to be ON with a device selected.
Both buttons also appear when column 4 is opened in its own window ("🪟 Pop out"), so the same actions are at hand when the projection seat is away from the console.
⚠ You can hide them under ⚙️ System settings → "🧭 Usability" → "↩ Recovery buttons" ("❌ Clear projection" and "⏪ Undo the clear" stay either way).

🔴 Always knowing what is live (LIVE indicator)

You can tell what the congregation is seeing from the console alone — there is no need to look at the projection screen. The same information appears in two places: directly above the TAKE button in column 4, and in the status list in column 1. When it says nothing is being projected, nothing is live.

  • Everything that is layered up is listed. With lyrics over a notice image you will see "🖼️ Notice + 🎵 Light of Life", listed back to front.
  • Image names, hymn titles (with the verse label) and scripture references are shown, so you can tell which one is live.
  • Anything switched off with the layer toggles — and therefore not visible on any output — is not listed, so you are never told something is out when it is not.
  • If no projection window is open it turns amber and says a projection window is not open. It has been sent live, but nothing is on the congregation screen yet. Open a projection window from column 1.
  • Working in the preview does not change it — only pressing TAKE does. It exists so that preview and live are never confused.
  • While streaming, the 📡 lamp in column 1 reads LIVE (otherwise OFFLINE).
⚠ It can be hidden under ⚙️ System settings → "🧭 Usability" → "🔴 LIVE indicator", but that removes one way of checking what is live, so we suggest leaving it on until you are used to the console.

🌫️ Smoother changes (Fade)

With the "Fade" checkbox in column 4 ticked (it is by default), projection changes cross-fade instead of cutting, which softens the brief black frame when videos and YouTube clips come and go.

Untick it if you want changes to be immediate and crisp — that often suits rooms where a switcher is already handling transitions.

🔒 Opening the console in more than one tab

If you open the console in two or more tabs on the same computer, only one of them can operate. The others show a red banner at the top: "⚠️ Another tab is in control (this tab is view-only)", and their projection, preview and streaming actions do not reach the live output.

  • Previously both tabs sent instructions to the projection window, so the projection could change to something you did not select.
  • Press "🔑 Take control" in the banner to operate from that tab instead; the other becomes view-only.
  • If you close the controlling tab, a remaining tab takes over automatically within a few seconds.
  • Projection windows (📽️ / 📡), the detached projection control and the key (matte) window are not affected — open as many as you like.
The tab without a banner is the one in control. If it feels like "nothing I do changes the live output", check for this banner first.

2. Bible tab

Opening a passage

Choose book, chapter and verse, or type into the field at the top — abbreviations and loose spellings are accepted. Full-text search uses the same field: type a keyword and keyword matches appear alongside the reference suggestions.

In full-text results, New Testament books are listed first, since they are looked up more often.

Reading a whole chapter (📜 All verses)

"📜 All verses" at the right of the book/chapter/verse row lists every verse in the chapter. Click any verse to load it into the preview (TAKE is still required).

Each verse is labelled at the left with 1 2a b …. Pressing that key jumps straight to that verse — the same as the hymn line list. See 12. Keyboard shortcuts.

Showing a second version, small, while you search

Under the version slots, "Reference version for the console" adds a small second rendering of each verse while you are searching. You can project KJV and still scan for the passage in a language you read more easily.

It appears in the screens you use to find things:

  • The "📜 All verses" list — under each verse.
  • Full-text search results — under each suggestion.
  • "🕒 History" — under each past passage.
Nothing about the projection changes. The congregation and the stream see exactly what they saw before. In the verse list, the larger text is what will be projected.
  • Any version can be chosen, in any language.
  • Choose "None" to turn it off.
  • Nothing is added when the reference version is in the same language as the projected version, to avoid printing the same text twice.
  • The setting is stored per computer and is not shared with the rest of the church.

Searching in a language you are not projecting

Full-text search used to look only inside the versions you had selected, so searching in Japanese while projecting KJV returned nothing.

The reference version above is now searched as well, so you can project one language and search in another.

  • A line above the suggestions tells you which additional version is being searched, and that the projection is unchanged.
  • Each suggestion shows which version it was found in; matches from a version you are not projecting are marked "(search only)".
  • The same passage found in several versions is collapsed into one suggestion.
The projected version never changes. Choosing a suggestion found in another version still projects the version in your first slot. Search only helps you find the passage.

Searching with one book put first

"Search within one book" is now "Prioritise the selected book". The book and chapter you have selected come first, and the search then keeps going through the whole Bible. You never have to search again.

Nothing to switch on. Once you have picked a book, that book is put first automatically, and you never have to type its name. The 🔍 mark on the search row shows that a book is being prioritised (hover it to see which one). Results are grouped, with a heading at each break:

  1. 1. The selected chapter of the selected book (e.g. "1. John 3 — 3 results")
  2. 2. The rest of that book (e.g. "2. Rest of John — 35 results")
  3. 3. The rest of the Bible, from Matthew onwards, excluding that book (e.g. "3. Rest of the Bible, from Matthew (John excluded) — 502 results")
  • The headings, plus the line above the results ("📖 Searching for … , John first"), always show where you are.
  • While it is ticked, selecting a different book or chapter moves the priority with it.
  • While it is ticked, everything you type is treated as the keyword (typing a book name will not be read as a book name).
  • If you have not selected a book yet, the screen tells you so. Pick one from the list below.
  • The list never comes back empty just because the word is not in that book. It continues into group 3. Only when the whole Bible has no match is that said on screen.

Typing the book name still works too. Type "book name, space, keyword".

  • Example: "John love" → verses in John come first, then the rest of the Bible. (No chapter was typed, so there are two groups here, 2 and 3.)
  • Full names and abbreviations both work.
  • If the first word is not a book name, the whole Bible is searched as before.

Leaving the search field (Esc)

With the cursor in the verse search field, Esc behaves like this:

  • Suggestions open → the first Esc closes the suggestions only; your text and cursor stay.
  • No suggestions, or a second Escclears the text and leaves the field, so Space work again immediately.
While an input method (IME) is composing, Esc still cancels the composition and does not clear the field. The hymn search field behaves the same way.
Esc in the search field never triggers "Clear all" — the live projection cannot disappear because you were typing.

Limiting the prompter to fewer versions

Just above the version slots there is a "📽️ Prompter:" row (shown when two or more versions are selected). The versions you press here are the only ones sent to the prompter. The stage and stream still show all selected versions.

Use it when the stage should show three versions but the reader wants one large version in front of them. Press to select, press again to deselect.

With nothing selected (the default) the prompter shows the same versions as the stage, exactly as before. Selecting all of them has the same effect.
The reference line at the end is also reduced to the versions being shown on the prompter.

Your version choice is remembered

The versions in the "Versions (up to 3)" slots are remembered on this computer and are still there next time you open JTM Cast.

This works independently of "💾 Restore last session" in system settings. That setting restores the book, chapter, verse and tab you had open; the version choice is remembered separately.

A remembered version cannot be shown if it belonged to another church or has been deleted. In that case an amber notice above the slots tells you which version was dropped and what replaced it — it never falls back silently.

Unreadable versions are removed from the selection, otherwise every load would fail. Dismiss the notice with "Close".

History

"🕒 History" inside the Bible tab returns you to recently opened passages.

🖼️ "Image cannot be loaded" in the image history

The 🖼️ Images section of "🕒 History" lists images you have projected. JTM Cast does not store those images — it stores only the URL, so your church's storage does not grow without limit.

If a web image later moves or is deleted at the source, history can no longer display it. This is not a fault in JTM Cast.

Instead of a black tile you get:

  • ⚠ Image cannot be loaded — stated plainly.
  • Source: (domain) — helps you find the same picture again.
  • 🌐 Open by URL — puts the URL back into the media tab's "🌐 Web search / URL" field, in case it was a temporary network problem.
  • 💾 Add to saved — imports it into your church's "📁 Saved images". This can work when only the browser was blocked (hotlink protection). If the original URL is truly gone it cannot be imported, and we say so honestly.
  • Broken tiles cannot be projected, so pressing one never puts a black screen on the wall.

A faint image is the small thumbnail kept for history. It is there to remind you which picture it was and cannot be projected — it would look coarse full screen.

Put images you will reuse into "📁 Saved images". After choosing an image in the media tab, press "💾 Save locally". History is for remembering; saved images are for reusing.
Thumbnails are stored per church and are never visible to another church. They are capped and the oldest are removed automatically.
"This image was stored in this church" means the image was deleted from your saved library, not that an external link broke.

Clear projection

"❌ Clear projection" in the Bible tab removes the verse from the live output but keeps your preview selection, so pressing TAKE again restores it.

This button can be hidden under ⚙️ System settings → "🧭 Usability". The column 4 button is always shown.

3. Hymn tab

Finding and choosing a song

The search field matches on title, number, reading and category. The song dropdown sits immediately to its right.

If your songs are grouped into categories, typing the category name filters to it. You do not need to remember the names — clicking the field lists the categories you have.

Once you type, an "✕" appears at the right; press it (or Esc) to clear the search and get all songs back. This stops a leftover search term from hiding the song you are looking for.

Pressing Esc again with the field empty moves the cursor out of the field, so Space work again (same as the Bible tab — see 2. Bible tab).

Choosing a song does not clear the search term, because you often look for several songs with the same word. Clear it with "✕" or Esc.
Categories are set in the per-song edit form under ⚙️ System settings → Hymn import.

If you cannot remember the title, type the words you do remember.

There is only one search field. Number, title, reading, category and lyrics are all searched together, so type whichever you can recall. During a service you should not have to decide which box to type into.

Songs found by their lyrics are grouped under "📝 Found in lyrics" in the dropdown, and the matching line is shown after the title, so you can see why the song appeared.

  • Full-width and half-width characters both match.
  • Lyrics A, B (translation or romanisation) and C are all searched, so a song you know in English can be found that way. The matching line is shown in the field it matched.
  • Lyric search starts at two characters. One character would match almost everything.
Title, number, reading and category filter instantly as you type. Only the lyric search runs slightly behind — "📝 Also searching the lyrics…" is shown meanwhile. It returns in about 0.1 seconds even with thousands of songs.

Lyrics A / B / C

Each song can hold three lyric fields: A (main), B (translation, romanisation, …) and C (reading aid). Because the contents of B differ from song to song, the fields are named neutrally rather than by language. Use the buttons at the top to show more than one at once.

🏷️ Project the title only

Once a song is selected, a "🏷️ Project title" button appears at the right of the search row. It puts the song title on the preview (and live, via TAKE) with no lyrics — useful as an announcement slide.

Sort order (by title / by number) and "reading"

⚙️ System settings → "🧭 Usability" → "🎵 Hymn list order" chooses how the song list is sorted. It lives in settings rather than on the tab because it is not something you change mid-service. Changes apply immediately.

  • 🔤 By title (default): alphabetical / kana order. Only the title is shown.
  • 🔢 By number: the order set with the ▲▼ buttons in the hymn import list. Shown as "number. title".
The choice is stored on your device only, because operators differ in what they prefer.

Songs whose titles begin with Japanese characters need a "reading" to sort correctly; English titles can leave it blank. Readings can be set in the per-song edit form or in a CSV column.

You never have to think about song numbers: new songs are numbered automatically, and re-importing a CSV preserves order, category and reading.

The line list

Selecting a song fills the lower half with a line list. Clicking a line puts it on the preview.

  • Each line wraps to at most two rows, so long lyrics are not cut off after a few words and you can find lines by the words themselves.
  • "1 col / 2 col ⇕ / 2 col ⇔" at the right of the toolbar changes the layout. On a narrow screen, or with long lines, choose "1 col" to double the width per line.
  • Section and line arrows (◀▶) are collapsed into one slim bar so that the height goes to the list instead. "⚡ Instant" and "❌ Clear projection" sit in the same bar; the latter can be hidden under ⚙️ System settings → "🧭 Usability".
  • Each line is only as tall as it needs to be, so short songs no longer get absurdly thick rows. At 1920×1080, 36 lines fit in two columns.
  • Press the key shown at the left of a line (1 2a b …) to jump straight to it (12. Keyboard shortcuts).
  • Space / move to the next line and / Shift+Space to the previous one. To move by section (verse 1, verse 2, refrain …) use Shift + / .

Lyric line counts per output (default and "this song only")

Valid per-song line-count settings are not automatically removed simply because there are more than 300. If saving on the device fails, an error is shown and previous settings remain. Turning off "this song only" also takes effect only after saving succeeds. This does not provide unlimited storage capacity.

How many lyric lines go out at once is set per output — for example six lines on the prompter, one on the main screen and four on a nursery monitor. Outputs you added yourself can be set the same way.

  • The default used by every song lives in the second column under "🎨 Display settings → 🎨 Text style → 🎵 Hymn lyrics". Open "📃 Lines" inside each output's panel.
  • To change it for the song you are on, tick "Change for this song only" at the top of the same "🎵 Hymn lyrics" section. Ticking it changes nothing on screen straight away; only what you change afterwards is kept for that song. Unticking it returns the song to the shared default.
  • Which one is in use is spelled out next to the tick box ("The shared default (every song) is in use" / "‘Title’ uses its own line counts").
  • The 📽️ 📡 numbers in the Hymn tab toolbar change the counts in place as well. While "this song only" is on, those boxes are outlined in colour so you can see that you are changing one song.
  • When "📡 Stage & stream" is in use, the prompter count can only be a multiple of the stage count, so that every line on the stage is always on the prompter too.
These settings are stored on that computer (they are not synced between machines). Any line counts you were already using carry over as the shared default.
📃 A display macro can remember the line counts too. If "📃 Also remember the lyric line counts (per output)" is ticked when you save the macro, it keeps the counts you can see on screen at that moment. To sing different songs at different line counts, save a macro to suit each one and attach it to the order of service item — choosing the item then sets the line counts as well. ⚠ A macro applies the shared default. A song with "Change for this song only" switched on keeps its own counts (we do not quietly discard an exception you set). Untick the box and the macro will not remember line counts at all. To undo what a macro applied, pick the counts again under "📃 Lines" above.

Fitting more lines on screen

Reducing the interface scale with "− 100% +" at the top gives the extra height to the line list, so more lines are visible at once. At 80% on a 1920×1080 screen the list is roughly 1.6× taller.

Stepping the live song

Next/previous lyric steps in the song you have taken live also move the live output. Selecting another song or clicking the same item again changes only the preview. After preparing a different song or display settings, confirm them with TAKE.

4. Order of service

Build the flow of your service — verses, hymns, images, video and text, in order — as a "program".

  • "+ Add" adds a verse, hymn, image, link or text.
  • When adding a link (YouTube and so on), "⭐ Choose a saved link" saves you retyping URLs.
  • Reorder by drag and drop; rename (✏️), duplicate (⧉) and delete (🗑).
  • "▶ Run mode" gives you large Next / Previous buttons that load one item at a time into the preview. TAKE is still what goes live.
You can keep several programs and switch between them with the dropdown (Sunday service, prayer meeting, and so on).

Moving or removing several items at once

The checkbox at the left of each item lets you select several and move or remove them together.

  • Their relative order is preserved — the selection moves as a block and stops at the top or bottom.
  • Ticking a checkbox does not load the item.
  • Removing several asks for confirmation once. If some fail you are told how many, and the failures stay selected.
  • The new order is saved to the server immediately.
  • Checkboxes are hidden in compact width, exactly like ▲▼ and ✕, so a mis-tap in a hurry cannot scramble the service.

Cancelling a new program

After pressing "+" to name a new program, "✕" or Esc closes the field and discards what you typed. Nothing is created.

"+ Add" → "🎵 Hymn" opens a search field. Type a number, title or reading and the list narrows as you type — no scrolling through a long dropdown.

  • Digits match numbers first, so typing "305" puts song 305 at the top.
  • Any part of the title works.
  • Keyboard only: type → ↑↓Enter to confirm → Esc to close. Clicking works too.
  • The chosen song stays below as "✓ Selected: 305 (title)". Search again to change it.
Matching follows the same rules as the hymn tab. However lyric search is only in the hymn tab — if all you remember is a line of lyrics, identify the song there first, then add it here by number.

🖥️ Slides (place text and images anywhere)

Choose "+ Add" → "🖥️ Slide" to add a slide item to the order of service. You can place text and images anywhere, at any size, on a 1920×1080 canvas. Press on the item to open the editor.

  • Placing: "Add text" and "Add image" create a box. Drag a box to move it, and use the handles on the corners and edges to resize. The arrow keys nudge it one step at a time.
  • Text: choose size, colour, weight and alignment (left / centre / right). Line breaks you type are kept, and lines wrap to the width of the box.
  • Images: pick from the images you have already uploaded. Each box can either contain or cover its frame.
  • Background: choose a colour and an opacity. At 0% the background is not painted at all, so the slide sits on top of your camera or screen share. The editor shows a chequerboard so you can see what is transparent.
  • Several pages: "Add slide" adds a page (up to 30 per item). See the next section for how to send them.
Nothing reaches the live output until you press TAKE — including when you step to another page; it goes to the preview first. While a slide is showing, scripture, hymns and images step aside (video does not, so that you can overlay a transparent slide on it).
Nothing you place disappears silently. Positions pushed too far outside the frame, sizes that are too large, and image boxes with no image chosen are all reported on screen before you save, so you never find something missing just before a service.

🗂️ Sending slides (column 3)

When you select a slide item in the order of service, column 3 switches to the "🗂️ Slides" tab. That is where you send them out, and it works exactly like scripture and hymns.

  • The list: every page of that item, in order. The page you are on is highlighted, and pressing a row switches to it.
  • ◀ ▶: move one slide at a time. The position is always visible, for example "2/12".
  • Going to a number: type a slide number and press Enter (or "Go") to jump straight to it. A number outside the range is not silently ignored — you are told why.
  • Keyboard: or Space for the next slide, or Shift + Space for the previous one. The same keys that step hymn lines and scripture verses.
  • ⚡ Instant: normally a slide only goes to the preview, and reaches the live output when you press TAKE. Tick ⚡ and it goes live the moment you select it (the same ⚡ as on the hymn and scripture tabs).
  • ❌ Clear output: removes just the slide from the live output. Video and the background logo stay.
Once a slide is live, ◀ ▶ move the live output with you. You do not press TAKE again for every page — the same behaviour as stepping hymn lines. Before the first TAKE, paging only moves the preview.
There are also small ◀ ▶ buttons on the order-of-service row. Both control the same position, so column 2 and column 3 can never disagree, and the buttons do not disappear when you use "🗜️ Narrow".

Importing PowerPoint slides with their look

Inside "+ Add" → "🖥️ Slide" there is "Import from PowerPoint (.pptx)", which accepts your PowerPoint file as it is. It brings across not just the words but the photos, text positions, sizes, colours and background colour.

  • Nothing is added to your order of service when you choose the file. It is read first, and you are shown how many slides there were and anything that could not be imported. You then press the import button.
  • A different aspect ratio will not distort your slides. A 4:3 presentation is placed inside the 16:9 screen with margins at the sides. Nothing is stretched or cropped.
  • Photos inside the presentation are added to your saved images. You are told how many, so you can delete any you do not want from the media list.
  • Presentations of 31 slides or more are split into several items, and you are always shown what happened — for example "There were 45 slides, so they were split into 2 items". Nothing is silently cut off at 30.
  • Charts are imported — bar and column (including stacked), pie, doughnut, pie-of-pie, line, area, scatter, bubble, radar, stock and surface. The scale, category names, legend and percentages all come across. ⚠ 3-D charts come across flat. ⚠ A surface chart comes across as one line per series and a pie-of-pie chart as a single pie; the numbers themselves are unchanged. ⚠ If the chart's values are not stored in the presentation itself (some files keep them only in a separate spreadsheet), the chart cannot be read; a marker saying what was there is placed at that spot.
  • Tables and SmartArt are imported too. Table text is placed in the grid of cells, and SmartArt text in the positions of its shapes. ⚠ Ruled lines and shape decorations are not included, because a slide can only hold text and pictures.
  • A slide can hold up to 60 objects. If a presentation exceeds this, you are told which slide and how many objects did not fit.
  • After importing you can adjust the positions and text with , exactly like any other slide.
  • The design of the presentation — background bands, accents and logos — is imported too. Decorations placed on the slide master or layout used not to come across at all, which made an imported presentation look like a blank page. ⚠ Slides where you ticked "Hide Background Graphics" in PowerPoint keep them hidden, as you intended.
  • Shape colours and outlines are imported too. Rectangles, rounded rectangles, ellipses, triangles, diamonds, arrows, stars and hexagons are supported, with solid fills, gradients (approximated by the first colour), theme colours and outlines. ⚠ Any other named shape is approximated by a rectangle — its colour and position are still correct. Freeform shapes (hand-drawn curves and flourishes) are not imported, because turning them into rectangles made presentations look wrong. ⚠ A picture used as a shape fill comes across as well.
  • What is not imported: animations, slide transitions, WordArt effects (outlines, shadows and warps — the text itself does come across), shadow and blur effects, and objects embedded from other applications. Nothing disappears silently. Before you import, you are shown which slide and what — for example "bar chart on slide 10" — and a marker saying "A bar chart was here" is placed at that spot on the slide. You can delete the marker afterwards with .
  • The older .ppt format cannot be read. Open it in PowerPoint and save it again as .pptx, then try again.
  • If no slides at all can be read, the reason is shown on screen — including how many slides the file says it has and how many were actually found. The import button is never offered when there is nothing to import.
  • If a presentation does not import well, please send us the file as it is.

🚪 Closing the order-of-service column completely

When "🗜️ Narrow" is not enough, column 2 (the order of service) can be closed entirely. Press "◀ Close" at the top of column 2 and the whole column disappears; the space goes to the columns on the right (hymn and scripture controls, and the projection preview).

  • You can always bring it back. The 📅 icon on the taskbar on the far left simply goes dim — press it to reopen the column at any time. There is no way to get stuck with it closed.
  • The setting is stored on your device only, so it stays closed after a reload (the PC in the auditorium and the one at home usually need different layouts).
  • Useful when a service runs without an order of service (scripture and hymns only), or on a narrow screen.
If you do use the order of service but want the space, "🗜️ Narrow" is the better choice — switching programs and picking items still work while it is narrowed.

🗜️ Compact width

During a service you mostly touch column 3. "🗜️ Narrow" at the top of column 2 shrinks the order of service and gives the space to column 3. "↔️ Restore" puts it back.

  • While narrow you can still switch programs and select items (including "▶ Run mode").
  • Preparation controls are hidden while narrow (adding, reordering, deleting, creating/renaming/duplicating programs, stock, background logo, watermark). Restore the width to build a service.
  • Drag reordering is also disabled while narrow, so the order cannot be disturbed by accident.
  • Column 4 (preview and TAKE) never changes width.
  • Compact applies to the "📅 Program" tab only; the other tabs keep their normal width so their settings stay readable.
The choice is stored on your computer only. On narrow screens (1280×720) column 3 cannot grow further, so the benefit is less horizontal scrolling. Pressing 📊 on the taskbar tucks column 1 away and frees more room again.

5. Favourites

Keep frequently used verses, hymns, images, links and text in lists for instant recall, without building a program every week.

Clicking a YouTube link does not only fill the URL field — it projects straight away. Unlike verses and images it bypasses TAKE, so take care while projecting or streaming.

The "🔗 Links" list is the same one as "⭐ Saved links" in the media tab's 📺 YouTube section. There is a single storage location, so it does not matter where you add them.

After taking a YouTube video live, use the LIVE controls at the top of the YouTube tab to adjust its volume, pause, resume or stop. Preparing another URL does not change the target of these controls. The controls remain available when returning from another tab.

6. Media

Upload images, video and audio and manage them as a media library. Storage use is shown at the top of the list.

Under "Saved images" you can select several files from your computer at once; they upload one after another with a "n/n uploading…" indicator.

Projecting an image (choose → position → project)

Images follow the same three steps whether they come from "🌐 Web search / URL" or "📁 Saved images". Nothing appears the instant you click.

  1. Choose — clicking a tile loads it into "🖼️ Selected image preview" above the list. Still nowhere near the congregation.
  2. Size and position — use the "🔍 Projection size" slider and drag inside the preview to move it. "🎯 Re-centre" starts over. "Show on" can restrict it to the stream or the prompter.
  3. Project — "📤 Project" sends it to the column 4 preview. It goes live only on TAKE.

To inspect a saved image closely, press 🔍 at the top right of its tile.

Images that cannot be opened are removed before you click

Web search results include images whose source refuses downloads and images whose link is broken. Previously you only found out after clicking, and could hit several dead ends while preparing for a service.

Now, right after a search we check whether each result can actually be opened, and remove the ones that cannot. When any are removed you see "🔎 Removed ◯ image(s) that could not be opened", so nothing disappears silently.

Images we could not check (for example, the site did not respond) are not removed. Quietly deleting an image that would have worked is worse, because you would never know. For those, you still get the reason when you click, as before.

Image formats you can import

jpg, jpeg, jpe, png, gif, webp, bmp, avif, jfif, apng and ico.

Photos taken on an iPhone (HEIC) cannot be imported, because browsers cannot display that format. Setting [Settings] → [Camera] → [Formats] to "Most Compatible" on the iPhone saves new photos as JPEG. Photos you have already taken are converted to JPEG if you send them by email or a messaging app.

When search or loading is slow

Depending on your connection and the remote site, results or images can take a while. After 2.5 seconds the elapsed time and a "🔄 Retry" button appear. If a remote site does not respond we stop waiting and say why — you never get an endless spinner.

Details of the slowness (where, how long) are sent automatically. You are never asked to count attempts or check settings. Only timings, counts and the source site name are sent — never your search terms or the images.

Where are video and audio?

They are in "🎬 Media" → "🎞️ Video & audio", in the same column as Bible, hymns, images and text, so everything you need during a service is in one column.

  • It works with column 2 closed, so churches that prepare the service in advance can use a wider working area.
  • The playback bar (stop, restart) stays pinned while you scroll, so you can always stop what is playing.

Names and tags

🏷️ Tag suggestions (when adding a tag) are ordered by how often you use them, so your usual tags come first. The filter dropdown stays alphabetical — it is where you look for a tag you already know, so a stable order is easier to scan.

The name in the list is the file name as you uploaded it. Numbers are appended to the file stored on disk to avoid collisions, but they are never shown.

As the library grows, add tags. Press "🏷 Tags" on any row (inside the enlarged view for images), type a name and press "+ Add". Tag names are free-form.

  • Any number of tags per item (up to 10). Unlike folders, an item can be in several places at once.
  • "🏷️ All tags" beside the search field filters to one tag. "(No tag)" shows what you have not classified yet.
  • Tags work in both "🎞️ Media list" and "Saved images".
  • Tags are per church and are deleted with the item.

Video rows show a small thumbnail of the first frame — often faster than reading names.

Renaming

Files from a phone or camera arrive as "IMG_4821.png". Press "✏️" to rename it to something like "Offering announcement". Works for video, audio and saved images.

  • Both the new name and the original file name are searchable.
  • "Revert" while editing restores the original file name.
  • ⚠ Only the displayed name changes. Items already used in a program, favourites or as a background keep working.

Finding video and audio (order and usage)

The video and audio list can be sorted and filtered just like saved images. Next to the search box and tags there is an order selector (by name / newest first / oldest first). "Newest first" brings recent uploads to the top, so you no longer have to hunt for "that video from last week" in a list sorted by name.

  • Each item shows how many programs use it (for example 🔗 2 programs). Hover to see their names. Items used nowhere are marked "Unused".
  • Filter by "🔗 Not used anywhere" to tidy up video and audio you no longer need.
  • The order is remembered on this device only; other computers are unaffected.
  • ⚠ If usage cannot be determined, no badge and no filter are shown, so an item still in use is never labelled "Unused".

Which services use this image?

Each saved image shows how many programs use it (for example 🔗 2 programs). Hover to see their names. Unused images are marked "Unused".

  • Filter by "🔗 Not used anywhere" to tidy up, together with bulk delete.
  • ⚠ The count is programs, not occurrences.
  • ⚠ If usage cannot be determined, no badge and no filter are shown, so an image in use is never labelled "Unused".

Finding an image once you have a lot of them (date added, sorting)

As your library grows, names and tags alone are not enough. "📁 Saved images" gives you more to go on.

  • Each image shows the date it was added (📅). Useful when you remember when you added it: "the Easter photo from last month".
  • You can sort (by name / newest first / oldest first). "Newest first" brings what you added recently to the top.
  • You can filter by use (all / in use / not used anywhere). See Which services use this image? for details.
  • Tags and names filter too. See Names and tags.
  • ⚠ Images whose date is unknown show no date at all (never "unknown"). This applies to images added with older versions.

Bulk delete and bulk tagging

Checkboxes at the top left of each saved image allow deleting or tagging several at once.

  • "☑ Select all" covers only what is currently visible — items hidden by a search or tag filter are not selected.
  • Bulk tagging adds tags; it never removes existing ones.
  • Deleting cannot be undone, so it asks once. Failures are reported with a reason and stay selected so you can retry.

Sort order for saved images

Beside the tag filter is a sort selector. "Newest first" brings recent uploads to the top.

  • By name (default).
  • Newest / oldest first — by the time the item was added.
Stored on your device only, and combines with tag filtering and search.
Dates themselves are not displayed. They come from the file's modification time, which can change when content is restored from a backup — good enough for sorting, not good enough to present as a record.

Projecting video and audio (preview → TAKE → ▶ play)

Video and audio go live in three steps, like verses and hymns. Nothing starts playing the instant you click.

  1. Choose — the file name (or "👁 Preview") loads it paused in the preview; video shows its first frame. The live output is unchanged.
  2. TAKE — it goes live, still paused.
  3. ▶ Play — in the "LIVE" bar at the top of the media list. Pause, stop and volume are in the same bar.

"✕ Cancel" discards a preview at any time without touching the live output.

To play the moment you click, tick "⚡ Instant" in the media list. It is off by default and returns to off when you reopen the tab.

Audio works the same way. It is silent in the preview (previews are always muted) and starts when you press "▶ Play" after TAKE.

Starting playback at TAKE (setting)

The default is: choose → paused preview → TAKE (still paused) → "▶ Play". This lets you check the content before the congregation sees it.

If you prefer playback to start with TAKE, turn on ⚙️ System settings → "🧭 Usability" → "🎬 Start playing video and audio at TAKE".

  • Choosing an item still never goes live. Only the moment of TAKE changes.
  • ⚠ With this on, sound reaches the hall the instant you press TAKE. Check your levels first.
  • The setting is per church, so every console behaves the same. Consoles behaving differently causes accidents.

Playlists

In "🎞️ Media list" you can build a "🎵 Playlist". Add one file with "+ List" on its row, or tick several and press "+ Add n selected to list" above the list.

Files are appended and duplicates are skipped (the number skipped is shown). You can add while playing. Reorder with ▲▼; moving the current track keeps playback on it.

"▶ Play playlist from the start" is itself a playback instruction, so it starts live immediately without TAKE, and moving to the next track does not ask for TAKE either — otherwise the audio would break up. To check one file first, use the preview → TAKE → ▶ Play flow above.

Playback time: under the live video or audio you see the current position and the total length, as in "0:42 / 3:15". The total length is shown before you press "▶ Play" and while paused as well, so you can check how long a piece runs before it reaches the congregation. The figures are refreshed once a second from what the live output is actually playing.

Seeking: press the progress bar under the live video or audio to jump there; drag for fine control. While dragging the live output does not move — it jumps once, when you release, so the congregation does not hear it stutter.

The controls stay available when you come back: if you switch the third column to "Bible" or "Hymns" while something is playing, going back to "🎬 Media" → "🎞️ Video & Audio" still shows the live bar for whatever is playing — position, progress bar and pause. The same is true while paused, so you can press "▶ Play" to carry on from where you stopped.

"⏭ Next" skips to the next item without waiting for the current one to end. It is disabled when there is nowhere to go: before you have started with "▶ Play from the start", and on the last item in "stop" mode. In "repeat" mode the last item wraps to the first.

🗂️ Save playlists under a name (as many as you need): build an order, type a name in the field above the playlist and press "💾 Save with a name". Saved playlists appear as name buttons, and one press of a name switches to that order. Keep separate lists for "Music before the service", "Offering music", "Children's service", and so on (up to 15 lists, 30 items each).

Pressing a name does not start playback — it only loads the order. Start as before with "▶ Play playlist from the start", so nothing reaches the congregation the moment you press a name.

The playlist you loaded is marked. Add or reorder items while it is loaded and a "💾 Update" button appears, which overwrites that saved playlist with the current order.

If saving on the device fails, an error is shown and the saved list remains unchanged. Saving, updating, renaming or deleting is not treated as completed; check the saved state before trying again.

Renaming, reordering and deleting appear only when you press "✏️ Organise", so delete cannot be hit by accident during a service. Deleting a playlist does not delete the media files.

Saved playlists are shared across your church. An order prepared on Saturday from a different account is there on Sunday for whoever sits at the desk. Other churches cannot see them. Previously there was only one playlist, it was never saved, and moving to another tab and back lost it; saved playlists now survive tab changes and reloading.

If a file was deleted after the playlist was saved, loading it tells you how many items could not be found. The saved playlist is left untouched, so putting the file back under the same name makes it play again.

Saved YouTube links

Paste a URL under "🎬 Media" → "📺 YouTube" and press "⭐ Save" to keep it (the label is optional — the video title is used). Saved links appear below; pressing one puts it in the preview.

This is the same storage as "⭐ Favourites" → 🔗 Links and the link picker in programs.
YouTube also requires TAKE before it goes live, like everything else. It used to be the one exception that went live on click, which was dangerous while streaming.

7. Display settings

Text size, the backing band behind the text, colours, outlines and layout are all adjustable. Settings belong to your account, so signing in on another computer gives you the same look (saved automatically, applied to other devices in real time).

How this panel is laid out (rebuilt 2026-09-04). "🎨 Display macros" at the top does not scroll away — you press it during a service, so it stays within reach. Everything below it is a single scroll area holding these sections. Press a heading to fold that section away (▼ means open, ▶ means folded). Everything starts open, and each computer remembers what you folded, so you do not have to fold it again every time.

  • 📐 Text size and position — size (with a pt guide) and position, per output
  • 📖 Scripture / 🎵 Hymn lyrics / 📝 Text — how the text looks, per kind of content
  • 🖼️ Media display layout — how images/video and the camera input are arranged
  • 📺 Video in monitor windows — how video behaves in monitor windows

Inside 📖 Scripture and the others, each panel (📽️ Prompter / 📡 Stage & Stream) is split into "🅰 Text look", "🎨 Background", "📏 Spacing & box" and "🧩 When it does not fit", and those fold away too. Folding one folds the same group in all the panels, so one press is enough.

🎨 Display macros

When directly adjusting text size or alignment with instant update enabled for an output, only the chosen setting goes live. Untaken changes for other outputs or axes remain unchanged. With instant update off or live output locked, only preparation changes. This applies specifically to text size and alignment controls.
Standard text styles and line-breaking settings are preparation settings. Editing or receiving them through sync does not send them directly live. Unlike explicit live adjustments, these settings require TAKE.

Open column 2 → the "🎨 Display" tab → "🎨 Text style settings" and "🎨 Display macros" sits at the very top. It saves the current style and text sizes under a name, so you can switch with one button — "small captions for the sermon, large for singing".

📐 Text size and position can be set here too. Just below the macros you will find "📐 Text size and position", where each output (📽️ Prompter / 📡 Stage) has its own text size (labelled with an approximate point size such as 36pt), text alignment, vertical position and horizontal position. These are the same settings as in the column 4 tuning panel — changing either changes both.

Why they are here as well: both have always been stored in a display macro, but this screen — the one with the save button — had no fields for them, so there was no way to tell whether they were included. What a macro stores is now also listed right under "💾 Save".
  • Save: arrange the look, press "💾 Save" to the right of the "🎨 Display macros" heading, and name it (up to 20).
  • Apply: press the macro's button to prepare its styles, text sizes and positions. TAKE is required to send them live, regardless of the "instant" checkboxes. Explicit live actions attached to the macro run separately.
  • Link to the order of service: the 🎨 selector beside a verse, hymn or text item attaches a macro to it. Selecting the item prepares its display settings; review the preview and use TAKE.
  • Macros are stored on the server, so every computer signed in with the same account has them. Deleting one does not break items that referenced it.

The position is remembered too. The vertical (top / middle / bottom), horizontal (left / center / right) and text alignment you set in the fourth column are saved with the macro. Link a macro to an item in your order of service and selecting that item sets the text size and the position together — no need to adjust them by hand for every item.

Macros you saved before this update do not contain position information. In that case the position is left unchanged, so your existing macros will not suddenly look different. To include the position, set it and save the macro again under the same name.

🎨 They also sit somewhere you can reach instantly (the macro row). The buttons for your saved macros appear at the very top of column 2, where you choose what to show. They are there for something that is not in the order of service — so you can set the look on the spot without opening settings.

  • They appear in the order you saved them, as many as fit the width. If any do not fit, a "…" button appears and lets you pick from all of them. Nothing is ever shown that you cannot press.
  • Pressing one does exactly what pressing the button inside the style settings does. Whether the text size and position reach the live output follows each output's "instant" checkbox.
  • Before you have made any, the row shows just "🎨 + Create a display macro". Pressing it takes you to the save box above, already open.
  • If you would rather keep column 2 taller, you can hide the row under ⚙️ System settings → "🧭 Usability" (shown by default).

🎬 Macros can also carry actions (TAKE, clear, video source, column width, display placement, shortcut)

Besides settings (style, text size, position, layers, situations) a display macro can remember what to do when pressed. Choose them at the bottom of the save box under "🎬 Also run these when pressed". The actions run in order after the settings have been applied.

  • 🔴 TAKE / Clear all / Cut to video source: these change what the congregation sees. A warning appears when you tick one, and the macro's button carries a 🔴 mark. They take effect the moment the button is pressed, so treat a marked button as a "send to live" button.
  • Narrow column 2 / Collapse column 2: tidy the operator screen. The congregation's screen is unchanged.
  • Open output windows full-screen on the displays chosen now (local install only; the option itself is not shown in the cloud edition): copies the display choice you made with "🖥️ Detect and choose displays" into the macro; pressing it opens the output windows you use full-screen on those displays. On a computer that has not yet granted display permission this action does nothing (so no dialog pops up during a service).
  • ⌨️ Shortcut: assign one of F1–F4, F6–F10 or Ctrl+Alt+1–9. The key name is shown beside the button. It is ignored while you are typing in a text box. Assigning the same key to another macro removes it from the earlier one, so it is never ambiguous which macro runs.
If you choose no actions the macro is a settings-only macro, exactly as before. Macros created before this update contain no actions, so pressing them will never change the live output by itself.

📁 Saving text you use every week

The "📝 Text" tab in column 3 is split into "✏️ Compose" and "📁 Saved". Type an announcement once and press "💾 Save"; afterwards just pick it from "📁 Saved".

  • Choosing puts it on the preview. As with images, the congregation sees it only after TAKE. The text also goes into the editor so you can adjust it first.
  • Search by name when the list grows; category filtering appears when you have more than one list.
  • There is one storage location. These are the same items as "⭐ Favourites → 📝 Text" in column 2.

📝 Choosing a look from the text tab

The display presets above are available directly in the "📝 Text" tab as a "🎨 Look" row, so you do not have to go back to the style panel.

  • Identical to pressing them in the style panel, so the look of verses and hymns changes too (a preset carries all three).
  • Text you are composing is not lost. Choose the look, then press "📝 Project".
  • If you have no presets yet, instructions appear instead of buttons.

📝 Showing text together with scripture (bottom band)

Announcements and offering notices can now appear as a band across the bottom of the screen, without clearing the scripture or lyrics already showing. In the "📝 Text" tab, tick "Show with scripture (bottom band)" below the input box, then press "📝 Send to preview".

  • Leave it unticked and nothing changes. Text still fills the screen exactly as before. Updating does not alter how your projection looks.
  • The congregation sees it only after TAKE, like every other kind of content.
  • The band stays when you change the verse — that is the point of it. To take it down, press "❌ Clear projection": while a band is showing it is the first thing cleared (press again for the text, then the image). "🧹 Clear all" removes it too.
  • It works over hymn lyrics as well, with the same steps.
  • The band uses the 📝 Text section of the text style settings. Long messages are shown up to three lines; anything beyond that is not drawn, so the band never takes over the screen.
  • A "📝 Text band" layer appears in the layer list in column 4, so you can switch just the band on and off.

📝 Text has its own look, separate from scripture

The style panel has three sections: 📖 Scripture, 🎵 Hymn lyrics and 📝 Text. Free text can therefore have its own colours, background and spacing.

  • The "🎨 Style" panel in column 4 follows suit: with text on the preview the heading reads "📝 Text" and your adjustments affect text only.
  • Situation settings gained a "when text is selected" entry, matching scripture and hymns.
  • Settings saved before this existed have no text entry yet and inherit the scripture settings, so nothing changes unexpectedly after an update.

📏 When it does not fit (scroll / shrink / leave as-is)

When lyrics or a passage do not fit on screen, you can choose one of three behaviours under "When it does not fit" in the text style settings. It is set separately for scripture, hymns and text, and separately for the prompter and for Stage & Stream.

  • Scroll — slowly scrolls so that everything is shown.
  • Shrink to fit — makes the text smaller until one line fits without wrapping (there is a limit, so it never becomes unreadable).
  • Leave as-is (clipped) — neither scrolls nor shrinks; whatever does not fit is cut off. Good when movement on screen is distracting, or for a prompter that should show a fixed number of lines.

Defaults: hymns use "Shrink to fit"; scripture and text use "Scroll" (unchanged from before).

With "Shrink to fit" on scripture, the text size changes from verse to verse, because verses differ in length (hymns can be sized against the whole song; scripture cannot). If you want a constant text size, choose "Scroll" or "Leave as-is".

Sliders also have "−" and "+"

Every slider has "−" and "+" buttons that move it exactly one step per press — 5% for the text-size sliders.

This matters most in column 4, which is narrow: dragging there jumps by more than one step and makes an exact value hard to hit. The slider is still there for large changes.

The current value is shown numerically beside the slider (105%, 40px). At the minimum or maximum the corresponding button greys out, so you are not pressing a button that does nothing.

📖 The colour of the reference line

The reference line under a projected verse (for example "John 1:1 KJV") takes its colour from "Reference colour" in the style panel. Pressing "Follow body colour" clears the override and matches the body text.

"Follow body colour" now means exactly the same intensity as the body — it used to be drawn slightly faded, which did not match the label. If you want it dimmer, choose a darker colour explicitly.

This also applies to fill/key output, where the reference line used to be grey on the key and therefore semi-transparent after compositing.

💧 Watermarks

A watermark — your church logo, for example — sits on top of everything, at all times, independent of what is being projected (scripture, hymns, images). Set them up under "💧 Watermark settings" in column 2; turn them all on or off with "💧 Watermark" in column 4.

  • Up to five. "+ Add watermark" adds one and "✕" removes it. The checkbox at the left of each row turns that one on or off.
  • Size %100 is the image’s own size; 50 is half, 200 is double. This is the same convention an ATEM switcher uses.
  • Position (X, Y)0,0 is the centre of the screen. X is positive to the right (+100 = right edge), Y is positive upwards (+100 = top edge). The coordinate is where the centre of the image lands.
  • The ◤ ◥ ✛ ◣ ◢ buttons are shortcuts to the four corners and the centre; they simply fill in X and Y, which you can then edit.
  • Opacity % — 100 is fully solid, 0 is invisible. This could not be changed before.
Watermark settings are not saved. They are cleared when you reload or close the browser, so set them up before the service.
With fill/key output the watermark is placed on the key by its shape, so a transparent PNG never gets a white box around it.

8. Output mode (PC / external compositing)

"🎛️ Output mode" at the top of column 1 decides what JTM Cast sends out. The default is "🖥️ PC compositing", which behaves exactly as before. Churches without a switcher never need to touch it.

Press "▶ ℹ️ About this mode" under the buttons for a full explanation (collapsed by default to keep column 1 short). Even collapsed, the heading states which mode you are in.

🖥️ PC compositing (default)

The JTM Cast computer takes the camera feed (from an ATEM or similar), overlays the lyrics and verses, and sends the result to the projection windows. The camera signal passes through the computer, which handles both the hall screen and the stream.

Stage output: a scripture verse over the camera feed on a translucent band
📡 Stage & stream (congregation and stream). Text position can be top, middle or bottom.
Hymn lyrics on the stage output
Hymn lyrics use the same look, so size and position are kept as you move between verses and lyrics.
Prompter output: a scripture verse at a comfortable reading size over the video
🎤 Prompter (for whoever is speaking). It has its own text size and position, so it can be set for comfortable reading on a monitor.
※ Sample data. The worship scene in the background is an illustration.

🎛️ External compositing

The stage window (📡 Stage & stream) sends text on a black background only, and your switcher (ATEM or similar) composites it over the camera. This is the approach ProPresenter and similar tools use.

The main benefit: the camera feed never passes through the computer, so if the computer freezes, the picture and sound keep going. The hall screen and the stream do not fail together.
Only the stage window becomes text-only. The prompter window can still show video with text over it.

In this mode:

  • The computer does not capture the camera or microphone for the stage. "🎙️ Audio input" and "⏱️ Audio delay" disappear, since there is no video path to align to.
  • "📹 Video input" remains — it feeds the prompter window. Leave it off if unused.
  • "🔊 Audio output" remains, for sending played media to the switcher over HDMI. YouTube audio is the exception and always uses the computer's default playback device.
  • Video, images and YouTube still come from JTM Cast, so "verse over video" still works. Only the camera moves to the switcher.
  • Streaming is done by the switcher, so the streaming controls are hidden. Column 1 permanently explains why, so you never think a setting has vanished.
  • Column 1 is collapsed by default here, giving more room to columns 2 and 3. Press 📊 on the taskbar to open it.
  • "🎛️ External compositing" is shown at the top right so you always know the current mode.

Wiring it up (ATEM)

  1. Connect an HDMI output of the computer to a spare ATEM input.
  2. Under "🖥️ Projection window output" on the console, choose the display connected to the ATEM and press "📡 Stage & stream" to open it. Making it full screen and closing it are both done from the console (see Open, make full screen and close - all from the console).
  3. On the ATEM, apply an upstream keyer set to luma key to that input. Black is keyed out and only the text overlays the camera.
The screen resolution must be 1920×1080. ATEMs accept computer input only at 1920×1080p, 50 / 59.94 / 60 Hz. Anything else shows as "no input" and no text appears at all.
JTM Cast watches the projection window's resolution and shows a warning with instructions at the top of the console if it is not 1920×1080.
Output mode is stored on that computer only, since venues differ. You can return to "🖥️ PC compositing" at any time.

🎤 Keeping video + text on the prompter

Only the stage window becomes text-only. The prompter can still show text over video, because it never passes through the ATEM — the speaker looks at it directly.

To do that, send a camera-only feed back to the computer: set an ATEM HDMI output to clean feed and capture it with an HDMI capture device.

  1. ATEM HDMI Out 1Program (camera + text) → the hall screen.
  2. ATEM HDMI Out 2clean feed (camera only) → HDMI capture back into the computer.
  3. Turn on "📹 Video input (for the prompter window)" in column 1 and select that capture device.
  4. Open "🎤 Prompter", move it to the speaker's screen and make it full screen.
This video never reaches the stage window. The feed to the ATEM stays black-with-text, so your luma key setup is unaffected.
Feeding Program back instead of the clean feed creates an infinite video loop, because text would be layered onto a picture that already has text. Check that the ATEM output is set to clean feed.
The backing band's opacity from the style panel applies normally on the prompter, even in fill+key mode — only the feed to the ATEM draws it opaque.
Microphone audio is not captured in external compositing, on the prompter either; audio is the switcher's job.

🔑 One output or two (fill + key)

In the local edition, “Open stage + key pair / reopen key” opens two windows that share drawing within the same process. Opening the key first does not create a separate standalone key. If the stage already exists, only its child key is reopened; the stage is not restarted. Closing only the key from the console keeps it closed until you explicitly reopen it. If an older standalone key remains, use its close button as instructed. Update both the console and projection windows to the same version to use this window management.

Selecting external compositing reveals "🔑 Outputs to the ATEM". The default is one output, as described above.

One output (default)

Text on black, keyed by the ATEM's luma key. One HDMI cable is all you need.

With one output you cannot make only the backing band translucent. A luma key treats brightness as transparency, so fading the band fades the text with it. Use two outputs if you want a translucent band.

Two outputs (fill + key)

The computer sends two video signals, as ProPresenter and similar tools do.

  • fill — the actual colours of the band and the text.
  • key — a black-and-white signal describing opacity: white = opaque, grey = translucent, black = transparent.

Because opacity travels separately, the band can be translucent while the text stays fully solid. That is the decisive difference.

🎚️ Band opacity

With two outputs, "🎚️ Band opacity" appears (0–100%).

  • 0% (default) — no band; text alone over the camera. Looks the same as one output.
  • 50% — the camera shows faintly through the band.
  • 100% — the band hides what is behind it.
Why 0% is the default: the band's default colour is black, which a luma key removes, so bands were never visible before. Having one suddenly appear on switching would be a surprise, so it only appears as you raise the slider. Change its colour in the style panel.
The text never fades, however low you go. This setting appears only with two outputs, because it has no effect with one — we do not show settings that cannot work. While two outputs are active, this value overrides the background opacity in the style panel.

Wiring two outputs

  1. Provide two HDMI outputs and connect them to two spare ATEM inputs (first = fill, second = key).
  2. Under "🖥️ Projection window output", choose the first screen and press "📡 Stage & stream" to open the fill window.
  3. In the same place, choose the second screen for the key (matte) window and press "🔑 Open key (matte) window". Both have a "Make full screen" button in the same place (see Open, make full screen and close - all from the console).
  4. On the ATEM, set the keyer's fill source to the first input and key source to the second.
Both screens must be 1920×1080. A mismatch misaligns colour and opacity, leaving coloured fringes around the text or a band that overhangs. JTM Cast watches both windows and warns at the top of the console.
You are also warned if the key window is not receiving anything, so text never silently fails to appear.
Video, images and YouTube work normally with two outputs; while they play, their area is treated as fully opaque so the camera cannot show through.

9. Streaming (local install)

Live streaming to YouTube and similar services is available in the local install only (the cloud version does not stream).

  • Register the URL and stream key in the streaming settings.
  • While streaming, column 1 shows measured bitrate, fps and send-queue depth.
  • Frames are dropped automatically when the connection is congested, and restored when it recovers.
  • Pressing F5 or closing the tab while streaming asks for confirmation.
Audio and video are designed to stay in sync, but there is currently no automatic correction for drift caused by severe network congestion. Contact support if you see it.

📶 The server connection, and when streaming will not start

Status: CONNECTED (green) at the top right means the console holds a live connection to the server. CONNECTING… means it is connecting, or reconnecting after a drop.

  • Streaming cannot start without that connection. Pressing Start Streaming stops with "Streaming cannot start because there is no connection to the server". ⚠ The point is that it never silently looks like it is streaming — that used to happen.
  • Drops reconnect by themselves. If it returns to CONNECTED after a few seconds, you can start streaming as normal.
  • If it does not return, reload the page. ⚠ Reloading during a stream stops the stream, so check before you do.
  • The details are kept in the "📶 Streaming status" log in column 1. Leaving it open while you retry often shows the cause.
Just after signing in you may see "Connecting to the server…". The console becomes usable once the connection is confirmed — please wait.

📤 Reading the numbers shown while streaming

Once streaming starts, the figures below the button show what is actually getting out, refreshed every second. They exist so you can confirm, in numbers, that nothing has stalled.

  • 📤 Sent (browser → server): NN kbps / NN fps — measured, not the value you configured. It reflects what the line and the machine can really do.
  • · Waiting to send: NN KB (about N.N seconds) — data still queued on your side. If this keeps growing, the line is not keeping up. The seconds are a rough measure of the delay.
  • · Engine: WebCodecs / MediaRecorder — how video is compressed. WebCodecs can adjust the outgoing rate mid-stream; MediaRecorder cannot, so congestion is handled by dropping frames only. Where WebCodecs is unavailable the app falls back automatically and notes it in the streaming log.
  • · A/V difference: ±NN ms (video − audio) — the measured gap (WebCodecs only). Growing over time means drift; steady means a fixed offset, which 🎚️ A/V offset can correct.
You do not need to read all of them. The one to watch is whether "Waiting to send" keeps growing. If it does, see what happens on a slow line below.

📉 On a slow line, quality drops instead of the stream

When the line cannot carry everything, the app reduces what it sends rather than stopping. Staying on air — even a little rougher — beats cutting out mid-service.

  • While reducing, the console says "Congestion detected: quality is being adjusted so the stream continues", and "Line recovered: send quality restored" when it is over.
  • How it reduces depends on the engine: WebCodecs lowers both bitrate and frame rate; MediaRecorder can only drop frames.
  • This is automatic and never stops the stream. There is nothing to press.
Higher "quality" costs more on both your PC and the server. If the congestion message appears often, check whether the configured quality, resolution and bitrate are simply too high for the venue's line — not just the line itself. On the shared server (cast.mannasys.com), setting them too high can destabilise the stream itself.

⚡ Low latency (experimental)

A checkbox in the streaming settings inside "📶 Stream status". Off by default; leaving it alone keeps the previous behaviour exactly. Turning it on makes the streaming server buffer less, reducing the delay to viewers.

Picture quality can drop during fast motion. It narrows the range available for compression in exchange for less delay — a trade between latency and quality. Quiet scenes are barely affected; processions and children's activities are the most affected.

Turn it off again if it causes problems — the next stream picks that up immediately. We suggest trying it in a weekday rehearsal first.

We have not measured the improvement on a real service stream. Bench tests improved by 0.2–0.5 s under some conditions, and at the normal quality setting (1080p / 4500 kbps) we expect very little. That uncertainty is why it is experimental and off by default. We cannot promise a noticeable difference.

The setting is shared with the other computers in your church, like other streaming settings.

🎤 Microphone processing (turn it off for line input)

"Microphone processing" in the streaming settings decides whether the browser's automatic echo cancellation, noise suppression and gain control are applied to the streamed microphone.

  • Standard (browser default)the default. Keep this if you are using the computer's built-in microphone.
  • Raw input (for line input, lower latency) — all three are disabled. If the audio arrives via a mixer or audio interface they are unnecessary, and removing them shortens the audio path.
Do not choose raw input with a built-in microphone. Without echo cancellation feedback howl becomes likely and air-conditioning noise passes straight through.
Stored on this computer only. Other streaming settings are shared across the church, but which microphone is plugged in differs per computer. Choose again if you change streaming computer.
We have not measured how much latency this saves — only that fewer processing stages means less delay. Always listen and check the audio quality after switching.

🎚️ Audio offset for the stream

A slider in the streaming settings shifts only the streamed audio so that it lines up on YouTube (±500 ms, 10 ms steps). Positive delays the audio; negative advances it.

The default is 0 ms. The prompter, the stage projection and your monitor audio are unaffected. You can change it while streaming; it applies from the next frame.

How to set it: the clap test
With the stream running, clap once in front of the camera. If the sound arrives after the picture on YouTube, move the slider negative; if it arrives before, move it positive. Repeat until they coincide. "Reset to 0" returns to the default.
Stored on this computer only, because the required offset depends on that computer's capture hardware and performance.
This works only when streaming uses WebCodecs (automatic in Chrome and Edge). With MediaRecorder the browser muxes audio and video together and the audio cannot be shifted; a red notice is shown when that is the case.
Each adjustment inserts a moment of silence or a freeze into the stream timeline, so set the value in rehearsal and leave it alone during the service.

📶 Seeing that audio is arriving

Turning on "🎙️ Audio input" in column 1 adds a thin horizontal meter below the selector. A green bar grows with the incoming level.

  • No movement → first check the meter status. If it is active but not moving, check the cable, mixer output and selected device.
  • Green: a good level. Yellow: a little hot. Red: close to distortion — turn it down at the mixer.
The thin white line marks the recent peak, useful for judging where speech peaks.
If the browser suspends metering, a click or key action attempts to resume it, reducing the need to toggle input off and on. Device permission or connection problems still need separate attention. Resume is not guaranteed on every hardware and browser combination.
It works without choosing an output device, so you can confirm audio is arriving even on the default setting.
The meter does not affect the audio path in any way, and stops when you turn audio input off.

🔊 Audio output device

"🔊 Audio output (capture card, etc.)" sits under "🎙️ Audio input" in column 1. Two things play through the device you choose:

  • Video and audio files played from the media list.
  • Monitoring of the captured audio input (only while "🎙️ Audio input" is on).
YouTube audio is the one exception. The YouTube player is theirs, and browsers do not let us route it. YouTube plays through the computer's default playback device. To send it to a switcher, make that device the system default in Windows Sound settings (or macOS System Settings → Sound → Output).

The default is "Follow the system setting": media plays through the default device and no monitoring is performed — the same behaviour as before this feature existed.

Press "▶ ℹ️ About audio output" to read this on screen (collapsed by default). The heading always states the current device. The YouTube caveat is never collapsed, because missing it causes real trouble.
The manual Windows workaround ("Listen to this device" in the Recording tab) is no longer necessary. This needs no administrator rights and survives a restart.

🔊 Play a test tone

"🔊 Play test tone" plays about 1.6 seconds of sound through the selected device: left, then right, then both. No mixer or microphone required. The screen says which side is playing, so you can confirm:

  • Whether there is any sound at all (cable and device selection).
  • Whether left and right are swapped.
  • Whether one side is silent (a broken speaker or cable).
The tone does not reach the projection or the stream — but if the chosen device feeds the hall speakers or the streaming computer, it will be heard there. Avoid it during a service.
If the chosen device cannot be used (unplugged, for example) we do not fall silent: the tone plays through the system default and the screen says so.
  • No sound: re-select the device, check the cable, press "🔄 Refresh" to re-detect.
  • To hear the monitored input, turn "🎙️ Audio input" on.
  • "Follow the system setting" returns to the previous behaviour.
  • If the chosen device disappears (HDMI unplugged), audio switches automatically to the system default and keeps playing, with a notice at the top of the console and under the selector (nothing appears on the projection). Reconnecting switches back automatically, also with a notice.
Choosing an output device requires Chrome or Edge. In Safari the selector is replaced by "ℹ️ This browser cannot choose an output device (please use Chrome or Edge)".

⏱️ Delaying the monitored audio

The slider under "🔊 Audio output" delays the audio to match the video (0–3000 ms in 10 ms steps; default 0 ms).

Video takes time to travel capture → processing → projection window, while this audio path does not go through processing. In a chain such as ATEM → JTM Cast → streaming computer, the receiving end therefore often hears the audio early. Add the difference here.

How to set it: the clap test
1. Turn audio input on and select an output device so audio is flowing.
2. Clap once in front of the camera.
3. At the receiving end, see which comes first — the hands meeting or the sound.
4. Sound first → increase by 10–20 ms. Picture first → decrease.
5. Stop when they coincide, and check with a few more claps.
  • If the picture arrives first this setting cannot help (audio cannot be sent earlier). Reset to 0 and contact support.
  • Changing it during a service does not interrupt the audio, but set it in rehearsal all the same.
  • Stored on this computer only, since the right value depends on the hardware.
  • "Reset to 0" returns to the previous behaviour.
This affects only the "🔊 Audio output" path. For drift in the local install's own streaming, use "Audio offset" in the streaming settings.

10. Cloud ↔ local sync

"☁️ Sign in with your cloud account" on the local install's sign-in screen uses the same account as the web version. Each sign-in synchronises Bible versions, hymns, programs, favourites and media in both directions; the more recent edit wins. You can also switch to one-way "cloud is authoritative" sync.

A banner warns you at the top of the screen if more than seven days have passed since the last sync.

📦 How much you can store (local install vs. cloud)

The local install has no storage limit. As long as the computer has free disk space, you can keep as many videos and audio files as you like. Churches that use a lot of video do not need to count files or watch a total.

This section is about stored data only. The number of operator computers you may use at once, the number of outputs (screens), and the number of staff are a different matter from the "no limit" described here. The numbers that apply to you are shown on the 💳 Subscription tab (Subscription).
Local installCloud (cast.mannasys.com)
Total storageNo limit — up to the computer's free disk spaceYour plan's allowance (Subscription)
Size of one fileNo limitUp to 1 GB per file
What the bar showsHow much you have used and the free disk spaceHow much you have used and your plan's limit (📦 Storage bar)
You are always told when disk space runs low. The indicator in the media list changes colour, and if space does run out an import is refused with "This computer is out of disk space (free X GB, needed Y GB)" — naming both figures. Nothing fails silently and nothing is left half-written. A small amount of disk space is always kept free on purpose, so the application's database can still be written.
Cloud storage is still governed by your plan, exactly as before. If you use the local install together with the cloud, read "Syncing when you have large videos" below.
When the cloud is full, imports are refused on the spot. Once you reach your plan's allowance, new media is not accepted, and you are told why. Nothing already stored is deleted or overwritten to make room. So that you see it coming, the media list shows a bar with how much you have used and your limit (📦 Storage bar). To free space, either delete media you no longer use or move to a larger plan.

🎬 Syncing when you have large videos (what always arrives, and what may not)

Compatible versions confirm media by name, size and modification time, reducing repeat uploads and downloads during two-way sync. Downloads recheck the actual local files; missing or changed files trigger a full download. Older versions and cloud-wins mode keep the previous download method. Large inventories, Bible and hymn exports, and general-upload images are not optimized.

Two-way sync tracks successful settings uploads separately from successful media uploads. Media blocked by storage capacity remains pending; finishing the download does not mark it as uploaded. Unsent edits made during sync remain pending too.

Shared macros distinguish received content from edits on this computer.Edits within the same second or during upload remain pending unless they match the acknowledged upload. A successful connection alone does not acknowledge content the cloud did not retain. Manual file imports count as local changes. This improvement covers shared macros; other settings may still cause an additional prompt.
Update the cloud before local installations.If an older cloud cannot confirm the retained content, the macro stays pending for safety. Media blocked by capacity remains pending separately and does not undo a confirmed macro acknowledgement.

If media cannot be imported for lack of space, its transfer-completion record is not advanced. Missing media is not treated as synced, while successfully synced settings and other data remain synced. Free up space, then sync again.

The local install has no limit, but the cloud has your plan's allowance. A large video on your computer may therefore not fit in the cloud. Sync handles this by sending two separate parcels.

  1. The light things first — programs, favourites, setlists, Bible versions, hymns, and your display and streaming settings.
  2. Then the media files themselves — videos, audio and images.
If parcel 2 cannot get through, parcel 1 has already arrived. A large video never stops your programs and settings from syncing. When media had to be left behind, the sync result says so — for example "N item(s) could not be imported because there was not enough space".
Kind of dataCloud sync
Programs, favourites, setlistsAlways synced
Bible versions and hymn lyricsAlways synced
Display and streaming settingsAlways synced (Saving settings and applying them on other PCs)
Media files themselves (video, audio, images)Carried as far as they fit. If one does not fit, only that file is left behind
Settings tied to the room's wiring
(audio output, audio delay, output mode, camera/microphone choice, window placement)
Never synced — they are saved on that computer only, because the right value differs between the church PC and a PC at home (Saving settings and applying them on other PCs)
"Display and streaming settings" are shared between PCs signed in with the same account. Within one church, an administrator account and a staff account keep separate settings (Saving settings and applying them on other PCs). Programs, favourites, setlists, Bible versions and hymns are shared across the whole church, so those look the same whichever account you use.
A single upload to the cloud carries up to roughly 500 MB. Media beyond that is not carried — but everything marked "always synced" above still arrives. In the cloud, media beyond your plan's storage allowance (📦 Storage bar) is also not taken in. These are cloud-side limits and say nothing about how much you may keep on the computer (📦 How much you can store).
Coming the other way — cloud to local install — there is no 500 MB limit. Everything held in the cloud can be received in full, as long as the computer has the disk space.

Media that did not arrive never disappears silently. The program list and the media list show "⚠ Not on this computer", and the item will not load into the preview. That is deliberate: it stops you pressing TAKE on an empty item and blanking the congregation screen. The same item still works normally on a computer that does have the file.

A colleague opening the same program in the cloud sees exactly the same thing. A video that only ever lived on one computer has, from the cloud's point of view, not arrived. That item carries the same "⚠ Not on this computer" mark, the item itself stays in the program, and selecting it will not send anything to the output. Nothing happens silently, and the congregation screen is never blanked without warning.
To use that video from the cloud as well, either keep it small enough to fit your cloud allowance, or place it directly on each computer that needs it. Either way the program itself stays in sync.
Large videos can also be placed directly on each computer instead of travelling through the cloud (add them from the media list). Since the local install has no size limit, this is the most reliable route. Your programs stay in sync while the video files live locally on each machine.

🔀 Sync mode

⚙️ System settings → "📦 Data" → "🔄 Cloud sync" offers two modes.

  • Two-way (newer wins)the default. Edits on this computer and in the cloud are compared and the later edit is kept.
  • Cloud is authoritativethe cloud is copied down to this computer and this computer's edits are never sent up. Suited to "prepare in the cloud, the hall computer just receives it".
Stored per installation, so the hall computer can be "cloud is authoritative" while your home computer stays two-way.

Confirmation before anything is overwritten

With "cloud is authoritative", cloud content can replace edits made on this computer. When that would happen, you are shown a list before anything is imported.

  • [Import] — overwrite with the cloud content. The previous state is backed up automatically, so "↩ Undo" can restore it once.
  • [Not this time]this computer's edits are kept. You will be asked again next time.
Everything unrelated to the confirmation syncs normally while you decide. A new program created in the cloud arrives without waiting for your answer.
No confirmation appears when nothing would be replaced. The list names the type and count, such as "Programs: 2 (Sunday service, Evening service)".
The automatic sync after sign-in also never imports such changes silently. The confirmation waits for you in the sync banner or under "📦 Data".

☁️⬆️ "Send your work to the cloud edition?" before you close

If you use the app installed on your computer, work was only sent to the cloud when you signed in with your cloud account and when you pressed "🔄 Sync now". Signing in happens before you start working, so if you prepared programs and images after that and simply closed the app, none of it reached the cloud edition.

Now, when you close the app, anything that has not reached the cloud edition yet is listed and you are asked about it.

  • [☁️ Send to the cloud edition, then close] … sends it there and then. You can see it progressing.
  • [Send later (close now)]closes straight away. You are never kept waiting right after a service. Everything stays on the computer and is sent together the next time you sign in with your cloud account.
  • [Always send automatically, without asking] … from then on there is no question; sending simply starts when you close.
When nothing is waiting, you are not asked at all. The app just closes. The list shows the kind, the count and as many names as fit, for example "Programs 2 (Sunday service, Evening service)".
If something could not be sent, the screen says what is left. It never finishes in silence. Whatever is left is sent again at the next sync.

Changing how this check behaves

Go to ⚙️ System settings → "📦 Data (bundle)" and look in "🔄 Cloud sync (linked)" for "Asking before you close". There are three choices.

  • Ask only when something has not reached the cloud yet … this is the default.
  • Send automatically, without asking … no question; sending starts when you close. It finishes in the background on this computer, so you are never kept waiting.
  • Do not ask … nothing is shown when you close. Sending happens at your next cloud sign-in, or when you press "🔄 Sync now".
You can always go back with "Restore the default" in the same place. This setting is saved per computer (per installation).
While "Cloud is the source of truth" is selected, this computer never sends anything to the cloud, so this check does not appear.
This check belongs to the locally installed edition only. In the cloud edition (using the app in a browser) your work is already in the cloud, so there is nothing to send.

How lyric fields A / B / C are merged

Editing the same song on several computers often leaves lyric C filled in on one of them only.

Sync keeps the later edit, but an empty field never erases content. A lyric field present on only one side is merged into both. If you add lyric C in the cloud and then correct lyric A on another computer, both the correction and lyric C survive.

When a merge happens, the sync summary says so, naming the field and the number of songs.

To empty a lyric field completely, empty it on every computer you sync. Clearing it on one side only means the other side restores it at the next sync. We deliberately favour keeping what was typed.

🎯 Manual import (when things go wrong) / ↩ Undo

Normal sync is automatic and two-way. For the case where the hall computer and the cloud disagree and you want to decide which one wins, use "🎯 Manual import" under ⚙️ System settings → "📦 Data".

  • ☁️ Import everything from the cloud — the big button. Usually all you need.
  • 📁 Import everything from a ZIP — from an export made on another computer.
  • ▸ Choose what to importonly when troubleshooting. Pick from Bible, hymns, programs, favourites, set lists and media; unchecked types are left alone. The numbers in brackets are what you currently have (that is, what would be overwritten).
A manual import overwrites regardless of which side is newer — that is the difference from automatic sync. A confirmation screen lists what will be overwritten. It does not change how automatic sync behaves.

↩ Undo — a backup is taken immediately before an import, so you can return to the previous state if the result was not what you expected.

Only the most recent import can be undone, and only once — after that the button disappears. Edits made after the import are lost too, so check before pressing.

11. System settings

Named additional outputs

You can add up to three named outputs alongside Prompter and Stage. After a successful save, follow the prompt to reload the console. If saving fails, an error is shown; neither the list nor the saved value is updated as if the save succeeded.

Existing catalogs with four or more additional outputs are not automatically truncated when read. While over the limit, only removing existing outputs can be saved. Reduce the catalog to three additional outputs or fewer before renaming, replacing or adding outputs. Settings for outputs you keep are preserved.

🧭 Usability (showing and hiding controls)

"🧭 Usability" turns individual buttons and fields on and off to suit how your church runs a service. These are stored on your device only.

  • ❌ "Clear projection" in column 3 (on by default) — turning it off hides the button in the hymn, scripture and text tabs and frees the space. The column 4 button is never hidden, so your escape route in a hurry always exists. All three tabs switch together.
  • 🎤 Prompter preview / 📡 Stage preview in column 4 (both on) — turning one off makes the other larger.
    ⚠ Only the preview inside the console is hidden; the projection windows are untouched. Turning both off shows instructions for getting them back.
  • 🎵 Hymn list order — see 3. Hymn tab.

🎛️ Choosing the outputs you use (Prompter / Stage & Stream)

If your church never uses a prompter, or leaves the auditorium screen to a switcher, settings for the output you do not use only get in the way. Under ⚙️ System settings → "Outputs you use" (its own section, just above "🧭 Usability") you can remove the output you do not use from the console entirely.

  • What disappears — the button that opens the projection window in column 1, the image destination selector and "Limiting the prompter to fewer versions" in column 3, and the preview and adjustment panel (text size, alignment, text style, display layers) in column 4.
  • ⚠ At least one output always remains. With both removed there would be nowhere to project, so trying to remove the second one is declined with an explanation.
  • This setting is shared across the PCs signed in with the same account. If you want just one PC to differ, turn on "Use a different setting on this PC only".
  • Screen-share audio (e.g. Zoom) follows this setting too. With "📡 Stage & Stream" in use the stage projection window plays it; with it turned off the prompter projection window does (only ever one of them, otherwise you would hear an echo). The device it comes out of is the one chosen in "🔊 Audio output" either way.
  • Hymn line counts follow this setting too. With "📡 Stage & Stream" turned off, the prompter line count can be any value from 1 to 20, because there is nothing to match it to. When you turn Stage & Stream back on, the count snaps to the nearest valid value and the console tells you what it changed it to (it must be a multiple of the stage line count so that every line on the stage also appears on the prompter).
You can still stream with "📡 Stage & Stream" removed. The output window that sends the video opens automatically when you start streaming and closes again when you stop.
That small window stays on screen while you are streaming — please do not close it (closing it stops the stream). Being small does not reduce the quality of the stream.
⚠ Do not minimise it or hide it behind other windows. Browsers stop drawing hidden windows, so the video you are streaming appears to freeze (measured: 31 fps normally, 4 fps when minimised). Please leave it somewhere visible.
Controls for unused outputs are hidden from columns 1 and 4. With Stage disabled, column 4 does not keep a "📡 How the stream looks" adjustment panel, even when streaming is enabled.

💾 Where settings are saved, and how they reach your other PCs (and "Adopt settings")

Startup settings sync distinguishes your edits from settings received from another device. Edits made during loading, and newer settings received during that load, are protected from being rolled back by an older response arriving later.

Situations, text styles, display layers, streaming settings and the like are saved on the server and shared automatically between the PCs signed in with the same account. Change something on one PC and the other one updates straight away — there is no need to sign in again.

  • ⚠ Sharing happens within one account only. In the same church, an administrator account and a staff account keep separate settings. When "it looks different on someone else's PC", this is usually why.
  • The most recent change wins. An older device coming back online never rolls a newer change back.

To copy another account's settings wholesale, use "🎛 Adopt settings" under ⚙️ System settings → "⚙️ General". Pick another account in your church and their settings are copied into yours. After the copy the two are independent, so later changes on either side do not affect the other.

Anything tied to the wiring in the room is deliberately not shared.
🔊 Audio output, ⏱️ Audio delay, the output mode (PC / external compositing), 🎚️ A/V offset, column widths and "Use a different setting on this PC only" are stored on that PC alone. The right value differs between the auditorium PC and the one at home, and sharing it would break one of them.

🧑‍🏫 The guided tour (for your first time)

The first time you sign in, a short tour walks you through the main controls. Use "Next" to move on, or "Skip" to leave it.

  • You can see it again at any time from "❓" at the top of the console (the "Getting started" tab) — handy when someone new takes over the console.
  • The tour also has a "📖 Manual" button that opens this manual in another tab.
  • To stop it opening by itself, turn off "🧑‍🏫 Guided tour" under ⚙️ System settings → "🧭 Usability" (it stays available from "❓").

✉️ Contact us (when something goes wrong)

Each local outbox item has a stable ID. Retrying that ID does not create another cloud record, and the item stays pending unless a matching acknowledgement arrives. A new enquiry created by pressing Send again is separate. Exactly-once email delivery is not guaranteed.
Messages are limited to 4000 characters; some characters, including emoji, count as two. The UI, API and relay share this limit and reject oversized messages instead of silently shortening them for storage or delivery.

The form also explains the expected response time before you send. We welcome your questions. We review each message and aim to reply within a few days. Some enquiries may take a little longer to look into, but we will work through them in turn.

"❓" at the top of the console has a "Contact us" tab. Write to us straight from there — something not working, something confusing, or something you would like us to add.

  • There is nothing for you to look up. Your operating system and browser and their versions, the app version, the screen you had open, your church and the account you are signed in as are all collected automatically. We will not ask you what you are running (the form shows you exactly what is sent).
  • The reply address is filled in from the account you are signed in as. Change it there if you would rather we replied somewhere else.
  • You will get an acknowledgement email right away. A real person then reads your message, and we aim to reply within a few days. A busy week can take a little longer, but nothing you send us is left unread.
  • If it cannot be sent, what you wrote is not lost. It is kept as a draft on this computer, so you can send it again once you are back online.
  • In the local edition, when there is no internet connection the screen says clearly that the message has not been sent yet. It is saved on this computer and sent automatically once you are back online - there is nothing to retype.
💡 It is safe to use during a service. Opening this form has no effect on projection or streaming, and an unfinished message is kept if you close it.

🎨 Display macros (the button row above column 2)

A row of buttons that applies a display macro without opening the settings. It sits at the very top of column 2, for when something not in the order of service comes up and the text size, position and style need fixing on the spot.

  • Pressing a button applies that macro's text size, position and style immediately.
  • Macros that do not fit the width move into "…", which lists all of them — nothing becomes unreachable.
  • Before you have made any, the row shows "🎨 + Create a display macro". Pressing it takes you straight to where they are saved, so there is nothing to hunt for in the settings.
  • Hide the row with "🎨 Display macros" under ⚙️ System settings → "🧭 Usability" — worth doing on a narrow screen.
  • The macro you have applied is named to the left of the button row, including when you picked it from "…", so there is nothing to remember. The badge next to the name is its state. "Ready" — applied, but not live yet (TAKE sends it). "Live" — those settings are what the congregation is seeing. "Changed" — you edited something by hand afterwards, so what you have now is no longer that macro. "Live/edited" — the congregation still has the macro, but the settings here have moved on.
  • The badge is not simply the name of the last button you pressed. It is worked out by comparing what was actually sent to the live output against your current settings, every time. It never claims a macro is in effect when it is not.
Whether a press reaches the live output depends on the "⚡ Immediate" setting. With it off, only the preview changes and the live output waits for TAKE, exactly like preview → TAKE everywhere else.

🔄 New version notice

When the app has been updated, "🔄 A new version is available" appears at the top of the screen. Click it to see what to do.

  • Nothing switches on its own. You decide whether and when to reload.
  • Please do not reload during a service or a live stream. The screen goes blank for a moment and projection is interrupted for a few seconds. Please do it at a convenient moment.
  • Once shown, the notice stays until you reload, so it is not missed in the middle of a service.
💡 If you leave the console open for days, you stay on the version it loaded with until you reload. Fixes do not reach you until then, so please reload once when you notice the message.

🔁 Roll back or move forward a version (local install)

If you run JTM Cast installed on your own computer, you can roll back to an earlier version, or move forward again, from inside the app: ⚙️ System settings → "🖥️ Local edition" → "🔁 Switch version".

  • Available versions are listed newest first, and the one you are running is marked with ✅.
  • Older versions offer "⬇ Roll back to this version", newer ones "⬆ Move forward to this version", so you know which way you are going before you press.
  • The server stops for a moment and comes back within one to a few minutes. Progress is shown on screen while it does.
  • Your Bibles, hymns, programs, settings and images all stay exactly as they are.
  • ⚠ Please reopen the projection window after switching.
  • You cannot switch while streaming. Stop the stream first.
🔴 If the app will not start, you cannot press these buttons. Double-click the "Roll JTM Cast back to the previous version" shortcut that setup created (on your Desktop and in the Start menu). While the app is still running you can open that location at any time from "Open the roll-back folder" in the version-switch settings. It works with no network connection. The same folder also has a shortcut to move forward again.
⚠ The "previous version" in the rollback folder is kept automatically whenever the app updates. On a fresh install that has never been updated there is nothing to go back to yet, and it says so. This folder is Windows-only for now; on a Mac, use "🔁 Switch version" above.

📦 Storage bar

The media list shows how much storage you are using against your limit, so you notice before an upload is refused. The limit comes from your plan (Subscription).

The local install has no limit, so instead of a bar it shows "X used (no limit, Y free)" — what you have used and the computer's free disk space. The figure changes colour when space runs low (📦 How much you can store).
Hide it with "📦 Storage bar" under ⚙️ System settings → "🧭 Usability".

🖥️ Full-text panel for scripture and hymns

The scripture and hymn tabs can show the full text of the verse or section you have selected (it is off by default). Turn on "🖥️ Full-text panel" under ⚙️ System settings → "🧭 Usability".

  • When the text is too long for the screen, scrolling this panel by hand also moves what is shown on the projection — useful for working through a long passage.
  • How the projection itself looks is set under display settings; this panel is for the operator to read the whole text.

Importing a Bible translation (CSV)

Under ⚙️ System settings → 📖 Bibles & translations → 📥 Bulk Bible import, you can bring in the translation your church reads from as a CSV file. The version code is taken from the file name (without its extension), and several files can be chosen at once.

Start with "📄 Download sample CSV". It gives you a file whose header row is written in the language the screen is currently showing. Replace its rows with your own translation and import it.

There are six columns: Version, Book ID, Book, Chapter, Verse, Text. One row per verse. Book ID (GEN for Genesis, PSA for Psalms, JHN for John, REV for Revelation) may be left out, but with it the book names may be written in any language and still land in the right book.

The header row may be written in any language the app supports — English, Japanese or Shona headers are all read as the same columns, so a file that already worked keeps working. Capitalisation, spaces and underscores do not matter either (Book ID, book_id and BOOKID all work).

Exporting a translation you have already imported gives you a CSV whose header row is in the language you are using. It doubles as a template to hand to whoever supplies your translation.

Importing hymns

Import in bulk from CSV, or add and edit songs one at a time. Rows with the same title are merged into one song. The per-song form covers number (internal; assigned automatically for new songs), title, reading, category and lyrics A / B / C.

CSV may include a reading column. The full ZIP export includes it too, so you can export, edit and re-import.

Column names may be written in English. A header row of Title, Yomi, Section type, Section name, Line number, Lyrics A, Lyrics B, Lyrics C, Background color is understood, and capitalisation and extra spaces do not matter. Only Title and Lyrics A are required — leave out any column you do not need. The "📄 Download sample CSV" button gives you this layout already filled in with an example, so the easiest route is to start from that file.

Importing a CSV without a reading column does not erase existing readings, and neither does an empty cell. Readings typed by hand are not lost to a careless re-import. To clear one, empty it in the per-song form.

Importing from ProPresenter

⚙️ System settings → 🎵 Hymns → "📥 Import from ProPresenter" accepts ProPresenter files (.pro / .pro6 / .pro5 / .pro4), several at a time.

  • Nothing is registered when you choose the files. You review the contents and then press "Import", so hymns in use are never overwritten unexpectedly.
  • ProPresenter group names (Verse 1, Chorus, …) become section names.
  • ProPresenter has no numbers, so numbering continues after your highest existing number. Existing songs are never overwritten.
  • Unreadable files are reported individually with a reason, and the rest still import.
  • Copyright details are saved too — song number (CCLI), author, artist, publisher and copyright year. Songs that carry them are marked with 🔖 in the hymn list, and you can read the details by opening the song under "Add / edit individually". They survive edits to the title and lyrics, and travel with CSV export and import, with data you take out of the app, and with cloud sync. They are never shown on the projection.
  • Verified against sample files exported by ProPresenter 4 to 7. If a file still does not import, please send it to us as is.

Importing hymn lyrics from PowerPoint

⚙️ System settings → 🎵 Hymns → "📥 Import from PowerPoint or ProPresenter" accepts PowerPoint files (.pptx). You may mix them with ProPresenter files in the same selection.

Only the lyrics (text) are brought across here. If you want the look of the slides — photos, layout, background — as well, see Importing PowerPoint slides with their look. This page is about registering the lyrics as hymns.

  • Nothing is registered when you choose the files. You review the contents and then press "Import".
  • One slide becomes one verse. Line breaks inside a slide are kept where they are.
  • If a slide has presenter notes, they are used as the name of that verse (Verse 1, Chorus, …).
  • The song title comes from the file's title property, or from the file name when that is empty.
  • Numbering continues after your highest existing number, so existing songs are never overwritten. If a song of the same name already exists, you are told before importing.
  • Only text is read. Images, layout, animations and backgrounds are not imported.
  • The older .ppt format cannot be read. Open it in PowerPoint and save it again as .pptx.
  • Up to 20 MB per file. Presentations with many images can exceed this even though only the text is imported. Remove some images, or split out just the slides you need into a separate file.
  • This has not yet been verified against real PowerPoint files. If one does not import, please send it to us.

Backup and migration

Export and import all data, or migrate from the cloud in one click.

Account

Email confirmation, password change and sign-out.

When a verse or hymn fails to load

If the text does not appear, the connection may have dropped briefly. The app retries twice automatically, so it usually appears anyway.

If it still fails, a red bar saying "Could not load" with a "🔄 Retry" button appears directly below the selector. You do not need to change tabs or re-select anything mid-service.

"Your session may have expired" cannot be fixed by retrying — reload the page (F5) and sign in again.

Diagnostic data

When an unexpected error occurs, its details (message and location) are recorded so we can investigate. This happens in both the cloud and local versions. Anything that looks like personal data, such as an email address, is masked first.

The "location" we record is only as much as tells us which operation failed. Everything after ? in the address is stripped before recording, so what you type — search words, text you enter, the names of your material or programs — is not recorded. Neither is the content on your screen (scripture text, lyrics, program items).

Environment information is recorded too, so that we never have to ask you "which browser version are you on?" in the middle of a service:

  • Operating system and browser with versions, CPU type, graphics adapter name
  • Screen resolution and window size, CPU core count, whether the network is reachable
  • Cloud or local install, and the application version
  • The number of connected cameras, microphones and speakers, and the current video/audio state (resolution, frame rate)

Nothing personally identifying is recorded. No names, email addresses, church names or IP addresses. Device names are not recorded either — only how many there are. No new camera or microphone permission is requested.

In the local install these records are also sent to us automatically (on by default) so that problems are found without you having to send logs. To disable it, set the environment variable MC_NO_TELEMETRY=1 when starting the server. The cloud version does not send them, because the data is already there.

12. Keyboard shortcuts

KeyAction
EnterTAKE (send to the live output)
Space / Next (hymn tab = next line, Bible tab = next verse)
/ Shift + SpacePrevious
Shift + / Hymn tab: start of the next / previous section
EscClear all
BackspaceUndo
?Show the shortcut list
19 0 azJump straight to that line (hymn tab) or verse (Bible tab)
Alt + 16Switch tab (1 Bible / 2 Hymns / 3 Media / 4 Screen share / 5 Slides / 6 History). Works while typing
/Jump to the verse search field (switching to the Bible tab if needed)
While you are typing, only Alt + 15 works, because it types nothing and cannot corrupt your input. Enter (TAKE), Esc (clear all) and Space are disabled while typing, so the live output cannot change by accident. Leave a search field with Esc (see above). All shortcuts are disabled while system settings or the shortcut list is open.
When the 4th column is detached into its own window, that window also accepts Enter (TAKE), Esc (clear all), Space / / (step through lines) and Backspace (undo). Stepping only moves the preview; nothing reaches the live output until you press Enter (TAKE). Tab switching (Alt + number) and the verse jump (/) belong to the main console, so they are not available in the detached window.

Jumping straight to a line or verse

In the hymn line list and the Bible "📜 All verses" list, each row is labelled 1 29 0 a bz. Press that key to go straight there — faster than stepping with when the order is not sequential (repeats, skips, going back). Shift is not required, but holding it works too.

Labels are assigned from the top and stop at row 36; later rows have no label and cannot be jumped to.

To prevent accidents, the keys do nothing while you are typing, while a dropdown is open, or while settings are open. Holding Alt gives priority to tab switching. While the keys are inactive the labels are dimmed, so you can see at a glance why nothing happens; leaving the field with Esc restores them.

Jumping directly with a line shortcut changes only the preview. Press Enter (TAKE) to project it. This is different from using next/previous to step through the same song already taken live.

1 col / 2 col ⇕ / 2 col ⇔ at the top right changes the layout. 2 col ⇔ (default) reads left, right, next row; 2 col ⇕ fills the left column top to bottom first. Your choice is remembered.

Switching tabs with number keys

The column 3 tabs are Alt+1 Bible, 2 Hymns, 3 Media, 4 Screen share, 5 History. The number is shown permanently at the top right of each tab heading.

"/" jumps to the verse field

/ moves the cursor to the Bible tab's "🚀 Jump / full-text search" field, switching to that tab first if necessary.

So /Ps 119:137Enter reaches any passage without touching the mouse — much faster than a dropdown for a chapter with 176 verses.

13. What's new

Loaded automatically from changelog.json — the same source as the in-app history. Where a "📖 Open the manual" link is offered, it jumps to the related section here.

Loading…

14. Troubleshooting

  • A badge at the top says "Running as Cloud edition (assumed)" or "Edition mismatch": the server could not tell for certain whether it is the local install or the cloud service. You can keep working, but plan limits may be applied to the wrong edition, which can leave you able to open only one projection window. On a local install, run the setup again (your data is kept). If the badge stays, contact us — the app already sends us what we need to find the cause.
  • Black screen, or the console does not open: reload the page. If that does not help, clear the browser cache (hard reload).
  • The projection does not change: check whether it is still in the preview. Nothing goes live until TAKE. Also check for the "another tab is in control" banner.
  • Cannot sign in: invalid credentials always return you to the sign-in screen. Use "Forgot your password?" to reset it — the reset email arrives in the language your console is set to.
  • Data does not appear on another computer: cloud installations sync automatically. For the local install, use "Sign in with your cloud account" or "Sync now" in system settings.
  • If none of this helps, please contact support.

🛡️ If a security warning appears while setting up the local edition

When you run the setup for the local edition, Windows or macOS may show a warning. This is normal. It is the operating system's standard check, and it means "this publisher does not have much of a track record yet". It does not mean a virus was found. Follow the steps below and you can carry on safely.

Why it appears: to stop the warning we have to pay the operating system vendors for a certificate called a "signature". We are working on that. Until then, please use the steps below. You do not need to change any security settings on your computer.

🪟 On Windows

  1. If the browser says "This type of file can harm your computer" while downloading, choose Keep (or Continue).
  2. When you double-click the downloaded file, a blue screen may say "Windows protected your PC".
  3. Click More info on that screen. A Run anyway button appears below it — click that.
  4. A black window titled JTM Cast Setup opens and the setup begins.
No administrator password is needed. The setup only writes inside your own user folder, so you will not be asked "Do you want to allow this app to make changes to your device?".
If "Windows Defender Firewall has blocked some features of this app" appears the first time it starts, choose Allow access (this is needed when you open JTM Cast from another computer in the building).

🍎 On a Mac

  1. Expand the downloaded ZIP and double-click the .command file inside it.
  2. If macOS says "cannot be opened because it is from an unidentified developer", use either method below.

Method A (macOS 14 and earlier): right-click (control-click) the file, choose Open, then click Open again in the dialog that appears.

Method B (works on every version): open Terminal (Applications → Utilities), paste the single line below and press return.

curl -fsSL https://cast.mannasys.com/downloads/setup-mac.command -o ~/Downloads/JTMCast-setup.command && bash ~/Downloads/JTMCast-setup.command

This way no warning appears at all — it downloads and starts the setup in one step.

From the second time onwards you can simply double-click it. Once the setup has run successfully it clears the "unidentified" mark from itself, so you will not need these steps again.
macOS 15 (Sequoia) removed the "right-click → Open" shortcut. If Method A does not work for you, go straight to Method B. If neither works, there is nothing for you to investigate — just contact support.

🖼️ What the preview shows on a slow connection

Where the connection is slow, an image can take a while to appear after you press TAKE. While you wait, the preview shows "🖼️ Loading the image…".

  • There is no need to press again. The image appears by itself once it arrives.
  • If it cannot be loaded you will see "⚠ The image could not be loaded". Press TAKE again, or try a different image.
  • This notice appears only in the preview. Nothing is ever drawn on the live screen your congregation sees.
  • If another image was already showing, the screen does not go blank — the previous image stays until the new one arrives.

🧾 Sending a crash report (local version)

If something keeps going wrong, you do not have to investigate it. Just send us what the app has already recorded.

  1. Open ⚙️ System settings → Data export.
  2. Press "🧾 Export crash report" at the bottom.
  3. A single file named jtmcast-crash-report-(date-time).json appears in your usual Downloads folder. The file name is shown on screen as well.
  4. Send us that file as it is. There is no need to open it or work out what it says.
It contains the problems the app has recorded most recently (up to 200) plus the version and operating system. No verses, hymns or sign-in details are included.
This export exists only in the local (standalone) version. On the cloud version we monitor the records ourselves, so pressing it simply says it is not needed here.

🔌 When a device connection changes

Cameras and audio devices can change the way the computer identifies them — after waking from power saving, when a driver re-detects the hardware, or after another app has used the device. This can happen without warning while you are working, even if nobody touched a cable.

When it does, JTM Cast reselects the same device automatically wherever it can, and tells you what happened in a one-line banner just above the "📹 Video input" selector in column 1. There are three kinds.

  • Green — "🔌 The device connection changed, so the same device (…) was reselected automatically. No action needed."
    Everything is back to normal. Carry on.
  • Yellow — "⚠ The device you were using (…) was not found. …"
    It could not be restored automatically. Check the cable and power, then press "🔄 Refresh" or pick the device again from the list.
  • Yellow — "⚠ Camera/microphone access was not granted (…). …"
    Another app is holding the device, or the browser permission has expired. Close the other app, then press "🔄 Refresh".

On top of that, if the camera you picked simply cannot be opened (for example another app is holding it), JTM Cast switches to another connected camera so you still get a picture. When it does, a blue banner in the same place says "The video input you selected could not be opened (it is in use). You are now seeing "…" instead", naming the device you are actually seeing. It never switches silently. To go back, close the app that is using the original device and press "🔁 Try the selected device again" just below the banner. If it succeeds, the banner disappears.

The preview frame itself tells you too. While a preview in column 4 (📽️ Prompter / 📡 Stage) has no picture, the frame shows "📷 Reconnecting to the video input…", and once the automatic attempts have been used up, "📷 Could not open the video input. Check the cable and power." Both lines end with "Projection, streaming and operation can continue as they are." If you keep column 1 collapsed, the one-line banner is replaced by a small dot on the collapsed strip, so the same information is written in the frame you are actually looking at. This text never appears on the live projection or stage window.

The banner disappears on its own as soon as the devices look healthy again. There is nothing to dismiss. (The blue "switched" banner stays until you pick a device again — so that it is never unclear that you are seeing a device you did not choose.)
If a yellow banner stays and video or audio does not come back, please contact support. You do not need to open the browser console or count how many times it failed — the app records what we need automatically.

15. System requirements

This is what JTM Cast needs in order to run. Everything listed here is something we have actually checked. An environment that is not listed is not necessarily unsupported — it simply means we have not verified it. If you are unsure, please ask support.

🌐 Browser

We recommend the latest Google Chrome or Microsoft Edge.

BrowserVersion needed
Google Chrome / Microsoft Edge (recommended)111 or later
Mozilla Firefox114 or later
Safari (macOS / iPadOS)16.4 or later

The following features are available in Chrome and Edge only. In other browsers the control simply is not shown, or the reason is displayed instead. Nothing else stops working.

  • 🖥️ Choosing which display to project on (local install only; not shown in the cloud edition - see 🌐 Projection windows in the cloud edition. In Safari and others the picker is not shown even on the local install, and the windows open the way they always did)
  • 🔊 Choosing which speaker the audio goes to
  • 🔤 Picking from the fonts installed on the computer (typing the font name works in any browser)
  • 🎙️ The browser speech-recognition option of AI assist (experimental)
Streaming compresses video with a newer mechanism (WebCodecs). Browsers that do not support it fall back to the older mechanism automatically — the stream does not stop, and the switch is recorded in the streaming log.

🖥️ Screen size

  • 1280 × 720 or larger is required. Every test run checks that every control on the console can still be reached at that size.
  • 1600 × 900 or larger is recommended. 1280 × 720 is the size at which things still fit — it is not a comfortable one.
  • On a small screen, use the display scale (− / +) in the heading of ⚙️ System settings to shrink everything and fit more in.
  • Phones and tablets are not supported. The console is built as four columns side by side; there is no narrow-screen layout.

📶 Internet connection

  • Cloud edition: a permanent connection is required. Make sure your church network lets HTTPS and WebSocket through (if a proxy blocks WebSocket, the badge at the top right stays on CONNECTING... — see 📶 The connection to the server).
  • When streaming: at the default settings (1080p / 60fps / 4500kbps plus 128kbps audio) you need roughly 5 Mbps of upload. On a thin line the quality is reduced automatically rather than stopping the stream (see 📉 On a thin line we lower the quality instead of stopping).
The "about 5 Mbps" above is calculated from the settings, not measured in a venue. Please allow some headroom.

💻 Local install

There are two ways to project, and the default is Compatibility mode.
Direct mode opens the console and all outputs in one dedicated browser. Switch under Settings → Local edition → Local projection method, then restart the local app after your session for the change to take effect. Saving never closes outputs that are already open, and you can return to Compatibility mode at any time. This choice is stored on this device only and is not synced to other devices.

With Direct mode, use only the console in the dedicated browser on that computer. A console opened from another computer on the same network cannot control the projection windows, because those windows live inside the dedicated browser. If you need to operate from another computer, stay on Compatibility (default).
If you do try to open a projection from another computer while Direct mode is on, the console tells you why and no window is opened — you will never be left with a window you cannot control.
ItemWhat is needed
Operating systemWindows (64-bit) / macOS (both Apple Silicon and Intel)
Free disk spaceAbout 250 MB for the application itself, plus room for your Bibles, hymns, images and video
First-time setupAn internet connection is required (about 45 MB is downloaded). After that it starts without going online
Port used3001 (if another application is using it, setup stops and says so)
  • You do not need to install Node.js yourself — the setup script fetches it for you.
  • There is no setup script for Linux.
  • Streaming to YouTube and similar services is available in the local install only (the cloud edition has no streaming).
If you open a local install from another computer on the same network — as http://192.168.…:3001/ — the camera, microphone and screen sharing will not work. Browsers do not hand those devices to a page served over an unencrypted connection. To use them, open http://localhost:3001/ on the computer itself.

🎙️ If you use AI assist (experimental)

  • The option that recognises speech inside the browser downloads a recognition model the first time you use it (about 145 MB with the standard setting, about 40 MB with the lighter one).
  • That download happens once. On a venue with a thin line we recommend trying it once before the service rather than on the day.
  • 🎬 Listening pauses automatically while video, music or YouTube is playing, and resumes by itself when playback stops. The panel says so while it is paused. Listening during playback makes the video noticeably heavier (measured: browser CPU 1.35x, dropped frames 0% to 13-17%).
  • On a computer with little memory, simply having the AI started can make video heavy. The recognition model takes a lot of memory once loaded (measured on our test machine: the rendering process went from about 360 MB to 1.3-1.7 GB). For a service that uses a lot of video or YouTube, please leave AI assist stopped.

16. Two-factor authentication

In addition to your password, this asks for a 6-digit code shown in an authenticator app on your phone. Even if someone learns your password, they cannot sign in without that phone.

Turning it on

  1. Open "⚙ System settings" and press "Turn on" in the "Two-factor authentication" section.
  2. Enter your current password.
  3. Scan the QR code shown on screen with an authenticator app (Google Authenticator, 1Password, Authy and so on). If it will not scan, use the key shown underneath it: in the app choose "Enter a setup key" or "Enter manually" and type the key exactly as shown.
  4. Enter the 6 digits shown in the app and press "Confirm and turn on". It is not turned on until those 6 digits match. This is deliberate, so that you are never locked out because the key was not added correctly.
  5. Ten recovery codes are shown. Once you close this screen they can never be shown again. Save them there and then with "📋 Copy all" (all ten to your clipboard) or "💾 Save to a file" (downloads a .txt named after your church and the date). The list is also laid out so that it prints without breaking up.
  6. We tell you plainly whether the file really was saved. If your browser lets you choose where to save (Google Chrome, Microsoft Edge and so on), we check that the file was written before saying "Saved". If it cannot be checked (Firefox, Safari and so on) we say "The download has started — please check your download folder", so please confirm the file is really there before moving on. If you cannot find it, take your copy with "📋 Copy all" instead.
  7. Once you have your copy, press "I have my copy — close". We ask you once more before closing, because the recovery codes can never be shown again after that.

Signing in afterwards

Enter your ID and password as before; a field for the 6 digits then appears. Type the number shown in your authenticator app. The number changes every 30 seconds. A code that has been used once cannot be used again — wait for the next one.

If you lose your phone

When the sign-in screen asks for the 6 digits, press "🆘 Can't use your authenticator app? Enter a recovery code". The field changes to the XXXXX-XXXXX shape.

  • Enter just one code. Any one of the ten you saved will do.
  • You can paste all ten at once — the field keeps only the first one.
  • Hyphens are optional, letter case does not matter, and stray spaces or line breaks are fine. Paste straight from your notes and the field tidies it up for you.
  • Each code works once; the other nine stay usable.

Once you are signed in, turn two-factor authentication off and set it up again on your new phone. Setting it up again also replaces the recovery codes with ten new ones.

Turning it off

In "⚙ System settings", in the "Two-factor authentication" section, enter both your current password and a code from your authenticator app (or a recovery code), then press "Turn off". Neither one alone is enough.