Show your ministry slides and videos from Rock, full screen on every Apple TV. Setup takes about an hour and only needs doing once. After that, your team loads each series from a single page in Rock.
You’ll need
- Rock RMS 19 or later, and a Rock administrator.
- An Apple TV (tvOS 18 or later) in each room.
- About 15 minutes for Cloudflare, if you want videos hosted outside Rock (recommended).
What lives where
- Slide images live in your Rock.
- Videos live in your Cloudflare R2 bucket.
- Rock Your Screens has no servers and never sees your content.
1 Create the Rock template (5 minutes)
- Go to Admin Tools > Power Tools > SQL Command.
- Paste in all of
rock-your-screens-setup.sql. - Set Selection Query? to No. (With Yes, Rock quietly undoes everything.)
- Click Run. A green message means it worked. A red message means nothing was changed.
- Clear Rock’s cache: Admin Tools > Settings > Cache Manager > Clear Cache.
- Go to Admin Tools > Settings > File Types > Rock Your Screens Media and click Save once, without changing anything. (This makes Rock load the file type’s storage settings. If you skip it, images uploaded right after setup may not display.)
This creates:
- five content channels: RYS – Ministries, Rooms, Series, Weeks, Slides
- a shared Image / Media URL / Video / Notes field set
- a Rock Your Screens Media file type that is stored on disk and viewable without signing in, so the Apple TV can load the images
Optional: rename the channels to fit your church (for example “Rooms” to “Age Groups”). The Apple TV shows your names. Ministries that don’t use rooms or series can skip those levels.
2 Create a read-only key for the Apple TVs (5 minutes)
- Go to Admin Tools > Settings > REST Keys > Add. Name it “Rock Your Screens (read-only)”, check Active, and save. Copy the key.
- Go to Admin Tools > Security > Security Roles > Add and name the role
RSR - Rock Your Screens Reader. Add the REST key’s person to it. - Go to Admin Tools > Security > REST Controllers. Give that role View on each of these v1 controllers. They’re the entries without
/v2/in their route:ContentChannelsContentChannelItemsContentChannelItemAssociations
Good to know: this key can read all of your content channels, not only the RYS ones. That’s how Rock’s REST security works. It can’t change anything, and it only lives on your Apple TVs. Don’t put sensitive information in content channels if that concerns you.
3 Set up video hosting on Cloudflare R2 (15 minutes)
Follow the Cloudflare R2 guide. In short:
- Create a free Cloudflare account and turn on R2.
- Create a bucket named
rys-media. - Create a Worker named
rys-media, paste inr2-upload-worker.js, connect the bucket asBUCKET, and setALLOWED_ORIGIN,PUBLIC_BASEand the secretUPLOAD_TOKEN.
Your domain does not need to be on Cloudflare.
Costs: the first 10 GB of storage is free each month, then about $0.015 per GB. Video downloads to your Apple TVs are always free.
4 Add the Load Screens page (10 minutes)
Follow the Load Screens guide:
- Fill in the Worker address and token at the top of
load-screens-block.html. - Paste it into an HTML Content block on a new Rock page. Use the code editor,
</>. - Restrict the page to the Screens Editors role, which you’ll create in step 5.
- Click Check setup on the page. You should see two green checks.
5 Give your team access (10 minutes)
- Create the
Screens Editorssecurity role and add the people who load slides. - Grant the role these permissions:
| Where | Permission |
|---|---|
| REST Controllers > ContentChannels (v1) | View |
| REST Controllers > ContentChannelItems (v1) | View, Edit |
| REST Controllers > ContentChannelItemAssociations (v1) | View, Edit |
| Each RYS – content channel > Security | View, Edit |
| File Types > Rock Your Screens Media > Security | View, Edit |
| The Load Screens page > Security | View |
- Test it as one of them: open a team member’s profile in Rock and use Impersonate. Then publish one test slide on the Load Screens page. If you see “Not authorized to edit … on Image” or “… on MediaUrl”, also give Screens Editors Edit on those two fields. They’re on the “Rock Your Screens” content channel type.
6 Add your first content
- In RYS – Ministries, add your ministries (for example Kids, Students, Lobby).
- Open a ministry and use Child Items → + to add rooms. Do the same in a room to add a series.
- Open Load Screens. Pick the ministry, room and series. Add weeks, drop in each week’s files, and click Publish.
- Images (JPG, PNG): one slide each.
- Videos (MP4): one slide each. These upload to R2, and there’s no size limit.
- PDF: one slide per page. Export PowerPoint, Keynote, Canva or Google Slides decks as PDF.
- ZIP: a curriculum download is unpacked in file-name order.
- Give each week a Start Date on its Sunday. The Apple TV highlights the nearest week as “This week”.
7 Set up each Apple TV
- Install Rock Your Screens from the App Store.
- Enter your Rock address (for example
rock.yourchurch.org) and the read-only key from step 2. You can type on an iPhone when the keyboard appears. - In Settings on the Apple TV, choose whether videos start automatically (off by default) and whether image slides advance on a timer. Auto-advance suits lobby screens.
Teachers:
- Pick the ministry, then the room, then the week.
- Swipe left or right to change slides.
- Press Play/Pause for videos.
- Click to show or hide the slide bar.
- Press Back to leave.
Troubleshooting
| What you see | What to do |
|---|---|
| Apple TV: “Rock didn’t accept the key” | The key is wrong or inactive, or the role is missing View on the three v1 controllers (step 2). |
| Apple TV: “channels aren’t set up yet” | Run the setup script (step 1) and clear Rock’s cache. |
| Images show on Rock but not on the TV | Make sure the file type has Requires View Security turned off, then Save it once (step 1.6). |
| “This slide’s Media URL is a Vimeo page” | Media URLs must link straight to a file (.mp4, .jpg, .png), not to a Vimeo, YouTube or Google Drive page. Upload the video through Load Screens instead. |
| Load Screens: “couldn’t reach” the video host | Check the Worker address starts with https://, and that ALLOWED_ORIGIN is exactly your Rock address. |
| Load Screens: “you don’t have permission” | Add the person to Screens Editors and check the permissions table (step 5). |
| A week shows nothing on the TV | It has no slides yet. Add them in Load Screens, or delete the empty week. |