Created Project Overview (markdown)
45
Project-Overview.md
Normal file
45
Project-Overview.md
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
# Project Overview
|
||||||
|
|
||||||
|
Welcome to the **Llama Chile Shop Video Automation Project**! This system automates the end-to-end process of preparing, rendering, uploading, and promoting Fortnite gameplay videos extracted from livestream sessions.
|
||||||
|
|
||||||
|
## Project Goal
|
||||||
|
|
||||||
|
Build a robust pipeline that transforms raw stream recordings into polished video content (montages, hits, misses, outtakes), enriched with branded intros/outros, AI-generated descriptions, and automated uploads to YouTube, PeerTube, Mastodon, and Bluesky.
|
||||||
|
|
||||||
|
## Project Structure
|
||||||
|
|
||||||
|
```
|
||||||
|
Z:\ # NAS-mounted project root
|
||||||
|
├── 2025.06.20/ # Stream session directory (date-based)
|
||||||
|
│ ├── hits/ # One video file per hit clip
|
||||||
|
│ ├── misses/ # One video file per death clip
|
||||||
|
│ ├── montages/ # Pre-edited full montage files
|
||||||
|
│ ├── outtakes/ # Marked for manual post-processing
|
||||||
|
│ └── rendered/ # Output folder for all generated clips
|
||||||
|
├── assets/ # Branding assets (intros, outros, fonts, logos)
|
||||||
|
├── modules/ # Modular helper libraries
|
||||||
|
├── logs/ # Diagnostic logs and output
|
||||||
|
├── .env # API keys and environment configuration
|
||||||
|
├── .gitignore
|
||||||
|
├── main.py # Entry point for daily automation pass
|
||||||
|
├── upload_youtube_montage.py # Standalone script to test YouTube upload flow
|
||||||
|
└── README.md
|
||||||
|
```
|
||||||
|
|
||||||
|
## Versioning
|
||||||
|
|
||||||
|
* **v0.0.1**: Initial clean commit of montage rendering pipeline with FFmpeg, branding assets, intro+title composition, and output to `rendered/`.
|
||||||
|
* **v0.1.1** (WIP): Adds YouTube upload support with dynamic OpenAI-generated descriptions.
|
||||||
|
* **v0.1.2**: Adds PeerTube upload using same modularized description system.
|
||||||
|
* **v0.2.0**: Adds Mastodon support with dynamic toot generation.
|
||||||
|
* **v0.2.1**: Adds Bluesky support with dynamic toot generation.
|
||||||
|
|
||||||
|
## Current Focus
|
||||||
|
|
||||||
|
Locking down proof-of-concept for `upload_youtube_montage.py`: passing in a montage clip, deriving stream date, generating AI description, posting to YouTube (private in debug), and returning video URL.
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
* Vertical videos are identified by filenames ending in `-vert` or `-vertical`.
|
||||||
|
* Montage videos do **not** have accompanying `notes.*` files.
|
||||||
|
* All AI-generated descriptions are based on a dynamic prompt sourced from a `notes.*` template, file-type agnostic.
|
||||||
Reference in New Issue
Block a user