This is a tool for editors that automatically edits video game videos/clips pertaining to Fortnite, Apex Legends, Valorant, Call Of Duty, Overwatch, Minecraft, Rainbow Six Siege, Destiny 2, PUBG, and Rocket League in order to make them into montages based off eliminations, knocks, wins, goals, or punches. It can also remove silent portions and add automatic captions to your video file with a simple GUI.
Windows:
- Download the installer here
- Run the installer
- It will give you an "Unknown Publisher" warning, simply click "more info" > "run anyway"
MAC:
- Download the zip folder here
- Double-click to uncompress the folder, and go into the uncompressed folder
- Bypass the "Unidentified Developer" Warning
- Right-click or control-click the "editor_gui" unix executable file and hit open, then confirm open.
- It should install Homebrew and FFMPEG if you don't have them on your system.
Linux:
- Download the compressed agmsetuplinux.tar.gz folder here.
- Then navigate to where you downloaded it and uncompress it with this command:
tar -xzvf agmsetuplinux.tar.gz
- Navigate inside the uncompressed directory and run these commands to run the executable:
chmod +x editor_gui
./editor_gui
- Tutorial
- Fortnite Example
- Valorant Example
- Apex Legends Example
- Rocket League Example
- MW3 Gun-game Example
- MW3 FFA Example
- MW3 Kill Confirmed Example
- Warzone Example
- CSGO Example
- Minecraft Example
- The program changes brightness, turns down audio volume, zooms, adds a bass boosted sound effect (here) for about 3 seconds on all highlights.
- Exceptions: Minecraft does no special effects, but merely captures the hit registers on other players.
- The automatic montage maker edits video game videos/clips
- Games it can interpret: Fortnite, Apex Legends, MW3 Gun-game, MW3 kill-confirmed, MW3 free-for-all, Warzone 2.0+, Rocket League, CSGO, Valorant, Overwatch, Rainbow Six Siege, Destiny 2, PUBG, and Minecraft (PVP Servers).
- audio types: mp3, wav, flac, ogg
- video types: mp4, avi, mkv, mov, wmv, flv, webm
- FPS: any FPS works
- Video Resolutions: 480p (640x480), 720p (1280x720), 1080p (1920x1080), 1440p (2560x1440), 4k (3840x2160)
Clone the repository with --recurse-submodules so PySimpleGUI's older version will be included:
git clone --recurse-submodules https://github.com/Noah-Grimaldi/auto-gaming-montage-maker.git
Run editor_gui.py, which programmatically references the other files or download Windows, MAC, or Linux executables.
CSGO Model | Minecraft Model | Overwatch Model | Valorant Model | Other games (template matching) | |
---|---|---|---|---|---|
Average Speed (On 1 minute clip) | 35 seconds | 25 seconds | 1 minute | 35 seconds | 55 seconds |
Accuracy (1-5 rating) | 5 | 3 | 3 | 5 | 5 (Besides R6, which is a 3) |
- The model looks at wins, eliminations, and/or knocks for all games except Rocket League and Minecraft.
- For Rocket League, the model watches for goals (sometimes wins).
- For Minecraft, the model watches for hits on other players.
- Fortnite, Apex Legends, COD games, Rainbow Six Siege, Destiny 2, PUBG, and Rocket League use template matching to see if there was actually a highlight.
- The program treats each highlight as a 3.2 second clip, I may end up adding a different feature where it doesn't just do montage format but full on video editing.
Already created datasets:
Datasets I created:
- CSGO Dataset
- Overwatch Dataset
- Fortnite, Apex, COD, Rocket League Dataset (no longer using this one, but if you'd like to improve it and use it, you can)
If you need to have test video examples from Youtube, this is a great tool on Github for obtaining the videos to use in your program for testing.
After writing this I'm looking into the legality of this tool and I'm not 100% sure the youtube-dl is legal, although it is a larger open source community project that has been on Github for over 3 years now, so I'm assuming it would have been taken down at this point if it were not (I could be wrong, this is just a heads up).
For edit_video.py:
- video_file: path to video selected video file
- output2: path to selected video output
- dropdown_audio: the default_audio directory, other (any music of your choice), and none.
- title_text: True or False, (leave input blank for no intro clip)
- which_game: CSGO, MW3 gun game, MW3 kill confirmed, MW3 free-for-all, Fortnite, Apex Legends, Valorant, Overwatch, Warzone 2.0+, Rocket League, Minecraft (PVP Server).
- music_volume: 0-200% adjustment for chosen music, or nothing if "none" selected.
- skip_frames: 2-100 frames ability to adjust in order to have cv2 skip through the video faster with less precision. (skipping frames only works for Minecrafft, Overwatch, CSGO, and Valorant)
- effects_bool: 'yes' or 'no' dropdown which can turn off or on video editing effects not including intro clip
For video-remove-silence:
- video_file: path to video selected video file
- output2: path to selected video output
- -THRESHOLD-: the decibal threshold that video-remove-silence considers as "silence." (avg. -40 or -50)
For video_transcribe_audio.py:
- video_file: path to video selected video file
- output2: path to selected video output
- dropdown_option: WhisperAI model for tiny, base, small, medium, or large.
- dropdown_option2: text color (e.g. white)
- dropdown_option3: font (e.g. Arial-Black or '')
- dropdown_option4: position (e.g. ('center', 'bottom'))
- -SIZE-: text size (e.g. 80.0)
-
Windows Instruction: Download Python 3.10, then download FFMPEG.
-
MAC Instruction: Install Homebrew, then if you already have python 3.10 downloaded, uninstall it.
First do
brew install python-tk@3.10
Then do
brew install python@3.10
Then install FFMPEG
brew install ffmpeg
-
Linux Instruction: Install Python 3.10 and FFMPEG You may also need to install python3.10-tk before you install Python3.10:
sudo apt-get install python3.10-tk
After you've activated the venv on your specified platform, run the command: pip install -r requirements.txt
Windows/Mac/Linux
Credit to @excitoon for video-remove-silence