A python script (with GUI) for the automated processing of (long) livestream recordings into (short) match videos.
- Gets information about the matches from FIRST, includes start time and score post time
- Splits the livestream recording into chucks based on those start & post times
- Combines those chunks together into match videos
- Generates a thumbnail using the match number and teams involved
- Uploads the videos to YouTube
- Notifies The Blue Alliance of the videos
- Blue Alliance Support
- Use Twitch instead of a file for input
- Load a past CONFIG to save on input time
- Better handling of erroneous inputs
- Update up from Python 3.12.2
- Cool logo
- Download and setup Python 3 + Virtual Environment on IDE of choice
- Install required packages;
pip install -r requirements.txt - Add file "client_secrets" to TOOLS folder; take code from example.client_secrets and fill empty quotation marks with correct information
- Add file "CREDENTIALS" to main folder; copy code from example.CREDENTIALS
- Download the latest release version of ffmpeg https://www.gyan.dev/ffmpeg/builds/
- Add ffmpeg's bin folder to system path
- Press Windows + S or navigate to the search bar
- Look up and go to "Edit environment variables for your account"
- Click Path, then click Edit
- Press Browse, then select the "bin" folder inside the ffmpeg folder
- Press Ok
- Follow https://github.com/purduefirst/FRUIT/wiki/APIs and register for desired API keys
- If livestreaming through Twitch, obtain Twitch Client ID and Client Secret
- If livestreaming through YouTube, obtain Youtube API Key and Channel ID
- Fill empty credentials fields with API information; in FRUIT or in the code
- Input correct Season Year and Event Code in the event info tab of FRUIT; no event name needed
- Once YouTube livestream is being recorded, the MP4 being recorded to can be used as a static video
- Welcome page: select correct program and enter and save all necessary credentials. Enter YouTube Username and copy + paste the channel ID if you plan to record and clip a YouTube livestream
- Event Info: Enter season year and event code for the event, and pull FMS
- YouTube Settings: Add your own description, tags, and if desired playlist link. Authenticate your YouTube account
- Thumbnail Info: Add any image for sponsor logo if desired, enter correct information and test thumbnail
- Match Timing: Can adjust to be more accurate for event's match timings. Should be fine as is
- The Blue Alliance: If desired, input info and press "Verify TBA"
- Video File: If clipping a Twitch stream, test Twitch connection. If clipping YouTube livestream, press the start recording YouTube livestream button. If clipping a saved video, press select file and select your video.
- If recording a YouTube livestream, after starting the recording, press select file, and go to TOOLS/recordings and find the mp4 file that is being recorded.
- . Video File: Select the match type of the first match, enter the number of the first match, and enter the timestamp of that match. Press "Play 4 Seconds" button to test.
- Video File: Press "Bake Config" and then press "Make The Sauce." check the seen, built, and sent status to make sure it's running!
- Notes: If recording a YouTube livestream, when clipping new matches as they appear, it will not be done automatically. You must reenter the match type (if applicable), the match number, and timestamp, then rebake the config and press make the sauce again.
- Notes: The "Stop Recording YouTube Livestream" button often isn't necessary, it's fine to keep recording the whole time. Use if a new recording is desired or if you are finished.
- Notes: Once clipping starts, if the app crashes or is accidentally restarted, the "Load CONFIG" button will bring back your saved info. Press Load CONFIG then scroll down and select the CONFIG file.