> 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/feature-reference/media-library-and-file-manager.md).

# Media Library and File Manager

CST+ has two ways to work with files on the server: **Media Library** for browsing and uploading content, and **File Manager** for full filesystem access within your content roots.

***

### Media Library

Go to **Media Library** in the sidebar.

The library shows all video files across your content folders in a grid view with thumbnails. From here you can:

* **Browse** by folder
* **Upload** new files directly from your browser
* **Preview** a file by clicking the thumbnail (plays in the built-in player)
* **Probe** a file to see its codec, duration, resolution, audio tracks, and bitrate
* **Rename** files
* **Delete** files

{% hint style="warning" %}
Deleting a file from the Media Library deletes it from disk permanently. If the file is part of an active channel's content folder, re-render that channel after deleting to remove it from the broadcast.
{% endhint %}

#### Uploading files

Click **Upload** and select one or more files from your computer. Files are uploaded directly to the server over HTTP. Upload speed depends on your local upload bandwidth and the server's inbound bandwidth.

For large libraries (hundreds of GB), it is faster to transfer files directly via `rsync` or `scp` over SSH and then refresh the library view.

#### Supported formats

Any container that ffmpeg can read is accepted: mp4, mkv, mov, avi, ts, and others. Mixed resolutions, codecs, and frame rates are fine. CST+ normalises everything during the render step.

***

### File Manager

Go to **File Manager** in the sidebar (or open it from the Media Library toolbar).

The File Manager is a full filesystem browser scoped to your configured content root directories. It shows files and folders in a tree view and supports:

* **Browse** folder tree
* **Upload** files to any folder
* **Create** new folders
* **Rename** files and folders
* **Move** files between folders (drag and drop)
* **Delete** files and folders
* **Search** by filename within the current folder tree
* **Probe** any file for media info (codec, duration, resolution, audio tracks)
* **Thumbnail** preview on hover

{% hint style="info" %}
The File Manager is scoped to content roots defined in your server configuration. You cannot browse outside these roots from the panel. This is intentional: it prevents accidental access to system files.
{% endhint %}

#### Bulk operations

Select multiple files with the checkboxes, then use the bulk action bar at the bottom to:

* Move selected files to another folder
* Delete selected files

#### Path roots

The File Manager shows all configured content root folders at the top level. By default this is `/opt/cstplus/content/`. Additional roots can be added in **Settings > Server > Content roots** if you want to serve content from other locations on disk (e.g. an external mount).

{% hint style="warning" %}
After adding a new content root in Settings, restart the control plane for the new root to appear in the File Manager:

```bash
systemctl restart cstplus-control
```

{% endhint %}

***

### Trimmer

Available on the channel page under the **Edit** tab for any file in the content library.

The Trimmer lets you set a precise **trim in** and **trim out** point for any clip. Applied per clip in the channel's content list, so the same source file can have different trim points in different channels.

| Control     | What it does                                                     |
| ----------- | ---------------------------------------------------------------- |
| Trim in     | Skip this many seconds from the start of the clip                |
| Trim out    | Stop this many seconds before the end of the clip                |
| Audio track | Which audio track to use for this clip (language, codec, layout) |

{% hint style="info" %}
Trim settings are applied at render time. Changing a clip's trim points requires a re-render of the channel.
{% endhint %}


---

# 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/feature-reference/media-library-and-file-manager.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.
