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

# Build and schedule your playlist

> Add videos to a loop, reorder them, play them in order or on shuffle, layer a separate audio track, schedule when the loop goes live, and edit the playlist while you're streaming.

A loop plays a **playlist** — one video or many — to your destination on repeat. You can reorder
the videos, shuffle them, add a separate audio track, schedule when the loop goes live, and even
change the playlist while you're streaming.

This page assumes you've already [uploaded a video](/upload-your-video-and-audio-playlist).

## Add your videos

<Steps>
  <Step title="Open the Playlist tab">
    In your loop, open the **Playlist** tab and select the **Video** tab.
  </Step>

  <Step title="Add videos">
    Click **Upload** to add files from your computer (MP4, MOV, or MKV, up to 10 GB each), or
    **From URL** to import from Google Drive, a YouTube video, or a direct download link. You can
    also drag files straight onto the list.

    YouTube imports run end-to-end on Streamloop's servers and pull the **highest quality
    available** for the video — a merged MP4 up to 4K (2160p), including AV1 sources. If a link
    points at a YouTube playlist or a Google Drive folder, Streamloop imports the first item in
    it; paste each item's own link to add more than one.
  </Step>

  <Step title="Reorder them">
    Drag any video to change its position. The order you see is the order it plays.
  </Step>
</Steps>

## Choose how it loops

Under the playlist, the **Loop behavior** section controls the order each time the playlist
repeats:

* **In order** — play 1 → 2 → 3, then repeat.
* **Shuffle** — random order, with no repeats until every video has played.
* **Custom order** — describe the rule in plain language (a pre-roll that plays once,
  time-of-day stings, weighted rotations) and Streamloop turns it into a sandboxed program that
  picks the next item on every loop. See
  [Custom playlist order](/custom-playlist-order).

## Add a separate audio track

Switch to the **Audio** tab to add audio that plays *over* your video instead of its original
sound — useful for music, radio, and lofi channels. Upload MP3, WAV, FLAC, or AAC; like videos,
audio can be a single track or a whole playlist.

<Tip>
  Building a music or lofi channel? See [Build a 24/7 music or lofi channel](/lofi-music-channel)
  for the full recipe.
</Tip>

## Schedule when it goes live

In the loop's status panel you'll find the **Schedule** controls:

* **Schedule loop** — turn this on and enter a start time in plain language, like
  `in 2h` or `tomorrow 9am`. The loop shows as **Scheduled** and goes live on its own. You can
  **Start now** or **Cancel** at any time before it begins.
* **Loop expiration** — set a run length or a specific end time so the stream stops automatically.
* **Start on upload** — start the stream the moment your uploads finish, without scheduling.

<Note>
  Relative durations (like a 2-hour run length) start counting once the stream goes live, not when
  you set them.
</Note>

## Edit the playlist while you're live

You don't have to stop a running stream to change what's playing:

<Steps>
  <Step title="Make your changes">
    While the stream is live, add, remove, or reorder videos in the **Playlist** tab as usual.
    Nothing changes on air yet — your edits are a draft.
  </Step>

  <Step title="Publish">
    Click **Publish**. Use **View changes** first to review what's pending. The on-air playlist
    (shown as **Live (v1)**, **Live (v2)**, and so on) updates at the end of the current clip, so
    the broadcast keeps running without a restart. If a publish fails, click **Retry**.
  </Step>
</Steps>

<Note>
  Quality, frame rate, and destination changes still need a restart — only playlist changes go on
  air live. Next: [set up your destination](/set-up-your-destination) and
  [get your stream live](/get-your-stream-live).
</Note>
