> For the complete documentation index, see [llms.txt](https://docs.cstplus.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cstplus.org/documentation/guides/schedule-mode.md).

# Schedule Mode

By default, CST+ loops your content folder continuously. Schedule mode gives you a different model: you build a 24-hour day programme with specific titles at specific times, and CST+ repeats that exact day every 24 hours like a real broadcast schedule.

This is what FAST channels do. Viewers tune in at 8pm and know they will catch the show that airs at 8pm, every day.

***

### How it works

When you enable schedule mode, CST+ does the following:

1. Takes the ordered list of blocks you set up (your day programme)
2. Fills any remaining airtime with clips from a filler folder you choose
3. Renders everything into a single 24-hour reel, padded to exactly 24:00:00
4. Loops that reel forever
5. On every restart, seeks to the correct clock position automatically

{% hint style="info" %}
If your schedule says a movie starts at 20:00 and a viewer tunes in at 20:15, they join the movie in progress at the right point. The EPG shows the correct now-playing title at the correct time.
{% endhint %}

***

### Setting up a schedule

Open a channel, go to the **Schedule** tab, and switch the mode from **Loop** to **Schedule**.

#### Building the day programme

The left panel is your content library. Browse to a folder, tick the files you want, and click **Add selected**. CST+ probes each file's duration on the server, so times in the timeline are accurate.

Each block shows the **title** (editable inline, shown in EPG), the **start time** (calculated automatically), and the **duration**.

You can reorder blocks by dragging and delete any block with the X button.

Per block you can also set:

| Option             | What it does                                         |
| ------------------ | ---------------------------------------------------- |
| Audio track        | Pick which track to use (language, codec layout)     |
| Trim in / Trim out | Cut the start or end of the clip for this block only |

#### Filler folder

Set a **Filler folder** below the block list. CST+ picks clips from that folder to fill whatever airtime is left after your scheduled blocks. Consecutive filler collapses into a single EPG entry.

{% hint style="danger" %}
If your blocks do not add up to exactly 24 hours and no filler folder is set, the render will fail. Watch the remaining time counter at the top of the timeline.
{% endhint %}

#### Auto-fill

Click **Auto-fill** and CST+ builds the rest of the day automatically: shuffled clips, no back-to-back repeats, exact fill.

{% hint style="success" %}
Auto-fill only touches unscheduled time. Your manually placed programme blocks stay exactly where you put them.
{% endhint %}

***

### Save and render

Click **Save and render** when your day programme is ready.

{% hint style="info" %}
If the channel was already on air, it keeps running the old reel during the render and switches over seamlessly when done. No downtime.
{% endhint %}

***

### EPG in schedule mode

Schedule mode anchors the EPG to **local midnight** using the timezone set in Settings > General. The guide shows the same titles at the same times every day. Consecutive filler blocks are collapsed into a single EPG entry so the guide stays clean.

***

### Loop vs schedule at a glance

|                  | Loop mode                 | Schedule mode                   |
| ---------------- | ------------------------- | ------------------------------- |
| Playback order   | Continuous / shuffled     | Fixed 24h day programme         |
| EPG              | Projected from loop       | Real clock times, repeats daily |
| Re-render needed | Only on content change    | On schedule or block change     |
| Best for         | Background / VOD channels | FAST, news, sport, kids         |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.cstplus.org/documentation/guides/schedule-mode.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
