Skip to content

Latest commit

 

History

39 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Godot Video Converter

Desktop app for converting video and audio into game-ready formats, especially ogv for Godot and others engines, plus sprite atlas generation for 2D workflows.

This project is a Python rewrite of the original .NET tool I made some time ago.

Download

Windows and Linux on itch.io

Features

  • Convert videos to ogv, mp4, webm, and gif
  • Convert audio to ogg, mp3, aac, and wav
  • Extract audio from video files
  • Use Godot-focused OGV presets
  • Use Love2D-focused OGV presets
  • Generate PNG sprite atlases from video
  • Batch process files from a GUI
  • Show export summaries and recommendations

Requirements

  • Python 3.11+
  • ffmpeg
  • ffprobe

On Windows, the app can use:

  • bin/ffmpeg.exe and bin/ffprobe.exe
  • GVC_FFMPEG_DIR
  • ffmpeg and ffprobe from PATH

On Linux, ffmpeg and ffprobe should be available in PATH.

Development Environment

The project metadata in pyproject.toml is the source of truth for dependencies.

  • Use pip install -e . for regular development.

Windows

  1. Install Python 3.11+.
  2. Clone or download this repository.
  3. Create a virtual environment:
python -m venv .venv
  1. Activate it:
.venv\Scripts\Activate.ps1
  1. Install the app in editable mode:
pip install -e .
  1. Make sure FFmpeg (7.1.1 recommended version) is available using ONE of these options:
  • Copy ffmpeg.exe and ffprobe.exe into bin/
  • Set GVC_FFMPEG_DIR to the folder that contains both binaries
  • Add FFmpeg to PATH
  1. Run the app:
gvc-gui

Linux

  1. Install Python 3.11+.
  2. Install FFmpeg with your package manager.
  3. Clone or download this repository.
  4. Create a virtual environment:
python3 -m venv .venv
  1. Activate it:
source .venv/bin/activate

If you use fish, activate it with:

source .venv/bin/activate.fish
  1. Install the app in editable mode:
python -m pip install -e .
  1. Verify FFmpeg:
ffmpeg -version
ffprobe -version
  1. Run the app:
gvc-gui

If the console command is not available for any reason, you can also run:

python -m gvc

Linux Package Examples

# Arch / CachyOS
sudo pacman -S ffmpeg python

# Debian / Ubuntu
sudo apt update
sudo apt install ffmpeg python3 python3-venv python3-pip

# Fedora
sudo dnf install ffmpeg python3 python3-pip

# openSUSE
sudo zypper install ffmpeg python3 python3-pip

Portable Build

Linux build options

Linux releases can be built in two ways. Neither package includes FFmpeg, so end users need their distribution's ffmpeg package, with both ffmpeg and ffprobe available in PATH.

Build Output Best for
PyInstaller folder dist/gvc/ A conventional executable folder or ZIP download.
AppImage dist/godot-video-converter-<version>-<architecture>.AppImage A single portable download for most Linux desktop distributions.

Linux: PyInstaller folder

On a Linux machine, run:

bash scripts/build_linux.sh

The script installs the required build dependencies and runs PyInstaller with gvc.spec. The result is the dist/gvc/ directory. Distribute that whole directory (for example, as a .zip); users run gvc inside it.

Linux: AppImage

On a Linux machine, run:

bash scripts/build_appimage.sh

The build creates dist/godot-video-converter-<version>-<architecture>.AppImage. It downloads the pinned and SHA-256-verified appimagetool release into .appimage/tools/ on the first run; alternatively, set APPIMAGETOOL to a local, trusted executable. The AppImage bundles Python, PySide6, and the application, but deliberately does not bundle FFmpeg. Users must install their distribution's ffmpeg package so both ffmpeg and ffprobe are in PATH.

To run a released AppImage:

chmod +x godot-video-converter-*.AppImage
./godot-video-converter-*.AppImage

Windows

Copy ffmpeg.exe and ffprobe.exe into bin/, then run:

./scripts/build_windows.ps1

Output is generated in dist/gvc/. Run dist/gvc/gvc.exe.

Tests

The automated unit tests do not need FFmpeg or a graphical session. Install the project first, then run:

python -m pip install -e .
python -m unittest discover -s tests -v

About

A video converter for Godot and Love2D - drag, drop, and get optimized OGV files without any plugins

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages