🎞️ Clip Handling Logic
This page documents how the LCS Pipeline detects, classifies, and processes highlight clips from livestream sessions.
🗂️ Clip Categories
All clips are sorted into one of the following categories, each in its own subdirectory:
| Folder Name | Description |
|---|---|
| montages/ | Pre-edited reels combining multiple highlights. One file → one final video. |
| hits/ | Single standout moments (e.g., eliminations). Processed into individual highlight videos. |
| misses/ | Funny or frustrating fails. Each one becomes a clip. |
| outtakes/ | Manually triggered clips marked during stream (via button or voice). Not auto-processed. |
| timelapses/ | 3D print timelapses with their own rendering pipeline. Handled via exception path. |
📥 Input Assumptions
-
All clip files are placed in session folders named
YYYY.MM.DDorYYYY.MM.DD.N -
Each clip file = one standalone video
-
Files with
-vertsuffix are treated as vertical -
All other files default to widescreen
🧠 Classification Rules
The system infers:
-
Vertical format: filename ends in
-vertor-vertical -
Clip date: extracted from the parent folder name
-
Processing path:
-
If under
montages/→ auto-title screen -
Else → prompts for
notes.jsoninput
-
📄 Metadata Expectations
Each clip may be accompanied by a notes.json file containing:
-
highlight(required): Short descriptive sentence -
tags(optional): List of relevant keywords -
gag_name(optional): Alt-title or meme label
If missing, user will be prompted during processing.
🧪 Examples
2025.08.03/
├── hits/
│ └── shotgun-doublekill.mp4
│ └── shotgun-doublekill.notes.json
├── outtakes/
│ └── llama-bait-fail.mp4
├── montages/
│ └── fn-highlight-reel-aug3.mp4
└── rendered/
Next page: Metadata Extraction
This page documents how the LCS Pipeline detects, classifies, and processes highlight clips from livestream sessions.
🗂️ Clip Categories
All clips are sorted into one of the following categories, each in its own subdirectory:
| Folder Name | Description |
|---|---|
montages/ |
Pre-edited reels combining multiple highlights. One file → one final video. |
hits/ |
Single standout moments (e.g., eliminations). Processed into individual highlight videos. |
misses/ |
Funny or frustrating fails. Each one becomes a clip. |
outtakes/ |
Manually triggered clips marked during stream (via button or voice). Not auto-processed. |
timelapses/ |
3D print timelapses with their own rendering pipeline. Handled via exception path. |
📥 Input Assumptions
- All clip files are placed in session folders named
YYYY.MM.DDorYYYY.MM.DD.N - Each clip file = one standalone video
- Files with
-vertsuffix are treated as vertical - All other files default to widescreen
🧠 Classification Rules
The system infers:
-
Vertical format: filename ends in
-vertor-vertical -
Clip date: extracted from the parent folder name
-
Processing path:
- If under
montages/→ auto-title screen - Else → prompts for
notes.jsoninput
- If under
📄 Metadata Expectations
Each clip may be accompanied by a notes.json file containing:
highlight(required): Short descriptive sentencetags(optional): List of relevant keywordsgag_name(optional): Alt-title or meme label
If missing, user will be prompted during processing.
🧪 Examples
2025.08.03/
├── hits/
│ └── shotgun-doublekill.mp4
│ └── shotgun-doublekill.notes.json
├── outtakes/
│ └── llama-bait-fail.mp4
├── montages/
│ └── fn-highlight-reel-aug3.mp4
└── rendered/
Next page: [Metadata Extraction](https://chatgpt.com/c/Metadata-Extraction)