> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lightloop.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Content Types Reference

> Complete reference for all media types supported by LightLoop.

## Summary table

| Type           | Icon | Storage         | Download required | Internet at playback | Notes                                 |
| -------------- | ---- | --------------- | ----------------- | -------------------- | ------------------------------------- |
| **Video**      | ▶    | Google Drive    | Yes               | No                   | H.264/MP4 recommended                 |
| **Image**      | 🖼   | Google Drive    | Yes               | No                   | JPEG, PNG, WebP                       |
| **Audio**      | ♪    | Google Drive    | Yes               | No                   | Soundtrack layer only                 |
| **Song**       | 🎵   | Google Drive    | Yes               | No                   | Requires Apple TV app v1.1+           |
| **Sermon**     | 🎙   | Drive + data    | Media slides only | No                   | Mixed slides; advance from iOS Remote |
| **Bible**      | 📖   | Server-rendered | No                | For refresh          | YouVersion Platform API               |
| **Birthday**   | 🎂   | Server-rendered | No                | No                   | Date-conditional display              |
| **Livestream** | 📡   | External (HLS)  | No                | Yes                  | .m3u8 URL                             |
| **Web**        | 🌐   | Cloudflare R2   | No                | For refresh          | Server-rendered JPEG                  |
| **Monitor**    | 📋   | Server-rendered | No                | Yes                  | PCO/Kidddo rosters                    |
| **Calendar**   | 📅   | Server-rendered | No                | Yes                  | Google/PCO calendars                  |

***

## Video

**File formats:** MP4, MOV, M4V\
**Recommended codec:** H.264 (AVC) for maximum compatibility\
**Max resolution:** 4K (3840×2160); 1080p for Apple TV HD\
**Audio:** Stereo AAC recommended

**Supported options:**

* Custom duration override (for looping short clips)
* In/Out markers (trim without re-encoding)
* Pause points (auto-pause at timestamps)

**Incompatibility:** If an Apple TV cannot decode the file, it flags the item as incompatible. The item is grayed out in the dashboard. Re-export as H.264 MP4 to resolve.

***

## Image

**File formats:** JPEG, PNG, WebP, GIF (static — first frame only)\
**Recommended resolution:** 1920×1080 (16:9 landscape) or 1080×1920 (9:16 portrait)

**Supported options:**

* Custom duration (how long to show the image, in seconds; default: 10s)

***

## Audio

**File formats:** MP3, M4A, AAC, WAV\
**Use:** Soundtrack layer only (background audio behind visual content)

Audio items cannot be added directly to a visual playlist as a primary content item — they are used as soundtracks assigned to a playlist.

**Supported options:**

* Loop (repeat the audio track)
* Shuffle (randomize track order when multiple tracks are in a soundtrack playlist)
* Volume (0–100%; independent of main content)

***

## Song

<Note>
  Requires **Apple TV app version 1.1+**.
</Note>

**What it is:** Synchronized lyric slides timed to a backing audio track — purpose-built for worship display.

**Components:**

* Lyric text divided into slides (blank lines = slide breaks)
* Optional audio track (MP3, M4A, AAC, WAV) — cached to the Apple TV
* Optional background image or video — cached to the Apple TV
* Timing markers — map each slide to a timestamp in the audio

**Style options:** Font family, size, weight, italic, all-caps, color, alignment (horizontal + vertical), drop shadow, text stroke (width + color), text background color/opacity, slide transition duration

**Playback behavior:** Audio begins from the local cache; lyrics cross-dissolve at each marker timestamp. If no audio is linked, slides advance on the playlist duration timer. If no markers are set, all lyrics display on slide 1 for the full duration.

See the [Songs guide](/web-app/songs) for full documentation.

***

## Sermon

<Note>
  Requires the latest **Apple TV app** and **iOS Remote** updates.
</Note>

**What it is:** A whole teaching/talk/presentation as one item — an ordered list of mixed slides advanced manually from the iOS Remote.

**Slide types:**

* **Text** — heading/reference + body, over the sermon's background media
* **Bible** — scripture inserted from the Bible integration
* **Media** — full-screen image/video/audio (fit-to-frame, optional blur fill, per-slide trim and stop/loop/advance)
* **Blank** — empty slide; shows the sermon's Title media (or black)

**Sermon-level settings:** Background media (behind text slides), Title media (on blank slides), reference + text styles (same engine as Songs/Bible).

**Playback behavior:** Renders natively on Apple TV. Operator advances slides from the iOS Remote (Control Mode sub-grid). In TV Wall mode, text slides drive the lower-third, media slides go full-screen, and the Stage quadrant shows current/next (with thumbnails for media slides).

See the [Sermons guide](/web-app/sermons) for full documentation.

***

## Bible

**Sources:** YouVersion Platform API (popular English translations) **and** the Free Use Bible API (1,200+ translations / 1,000+ languages, searchable)\
**Requires internet:** Only when fetching/rendering a passage; cached after

**YouVersion translations:** NIV, NASB, NASB2020, AMP, BSB, NIrV, NIVUK, TPT, WEBUS, WMB, ASV, LSV, GNV, EASY, CPDV, FBV, PEV, TOJB2011\
**Free Use Bible:** any of 1,200+ public-domain / openly-licensed translations across 1,000+ languages — pick **Free Use Bible (all languages) — search…** in the translation picker

**Style options:** Font family, size, weight, italic, all-caps, color, alignment, vertical alignment, drop shadow, text stroke, text background color/opacity, background image

**Passage entry:** Book + chapter + verse or range (e.g. `John 3:16`, `Psalm 23:1-6`). Multi-verse passages are split automatically into multiple slides.

See the [YouVersion Bible guide](/integrations/youversion) for full details.

***

## Birthday

**Source:** Name, photo, and date entered manually\
**Render:** Server-side JPEG\
**Requires internet:** No — rendered once and cached

**Behavior:** Date-conditional — the slide is only displayed on the configured birthday date and skipped on all other days. Multiple birthday items can coexist in a playlist; only the matching one(s) will play on any given day.

**Style options:** Custom background, message text, font, and colors.

***

## Livestream

**Format:** HLS (.m3u8 URL)

**Requires internet at playback:**

**NO** — If you're streaming a local HLS stream (say from an HLS encoder in your Worship Center e.g. [http://192.168.1.111/stream.m3u8](http://192.168.1.111/stream.m3u8)) to a TV elsewhere on campus) - you do not need internet connection - just local area network connection.

**Yes** — if the HLS source feed is hosted online, the Apple TV streams the HLS URL in real time over the internet.

**Download:** None — the URL is sent to Apple TV as metadata

If the stream is unavailable when it's time to play, the Apple TV skips to the next item rather than stalling.

***

## Web

**What it is:** A server-side screenshot of a live website, stored as a JPEG and updated at a configurable interval.

**Device profiles:**

| Profile | Viewport  | Use case                         |
| ------- | --------- | -------------------------------- |
| Mobile  | 375×812   | Mobile-optimized pages           |
| Tablet  | 768×1024  | General websites                 |
| TV      | 1920×1080 | Pages designed for large screens |

**Refresh interval:** How often LightLoop re-renders the page (e.g., every 5 minutes)

**Use cases:** Google Slides decks, church bulletins, event websites, custom HTML pages

***

## Monitor

**What it is:** A server-rendered live roster from Planning Center Check-In or Kidddo.

**Supported sources:**

* Planning Center Check-In (polls every few seconds)
* Kidddo (webhook-triggered)

**Refresh:** Automatically — no configuration needed\
**Requires internet:** Yes — renders live from PCO/Kidddo data

***

## Calendar

**What it is:** A server-rendered upcoming-events display from Google Calendar or Planning Center.

**Supported sources:**

* Google Calendar (`calendar.readonly` OAuth scope)
* Planning Center Calendar

**Display options:** Event count, date range, text size, multi-calendar color coding\
**Refresh:** Automatic — always shows current upcoming events\
**Requires internet:** Yes — pulls live calendar data

***

## Orientation options

Every media item can override the feed-level orientation. Options:

| Value              | Description                         |
| ------------------ | ----------------------------------- |
| **Inherit**        | Use the feed's orientation setting  |
| **Landscape**      | 16:9 horizontal                     |
| **Portrait Left**  | 9:16, rotated 90° counter-clockwise |
| **Portrait Right** | 9:16, rotated 90° clockwise         |

Item-level orientation override is useful when one screen in a lobby is vertical and the rest are horizontal but share a feed.
