Simple GUI toolset for FFmpeg
Go to file
Stu Leak 0bd704d7dc Add comprehensive Build and Run guide
Complete documentation for building and running VideoTools:

Sections:
  • Quick start (2-minute setup)
  • Making VideoTools permanent (bash/zsh setup)
  • Script documentation (what each does)
  • Build requirements and versions
  • Troubleshooting guide
  • Development workflow
  • DVD encoding complete workflow
  • Performance notes
  • Production deployment guide
  • Getting help and reporting issues

Easy setup:
  source scripts/alias.sh
  VideoTools

That's all users need to run the application!
2025-11-29 19:54:13 -05:00
assets/logo Refactor to modular architecture with rainbow UI (v0.1.0-dev8) 2025-11-23 14:56:37 -05:00
docs Refactor to modular architecture with rainbow UI (v0.1.0-dev8) 2025-11-23 14:56:37 -05:00
internal Implement DVD-NTSC encoding support with multi-region capabilities 2025-11-29 19:30:05 -05:00
scripts Add build/run scripts and fix DVD options visibility 2025-11-29 19:53:47 -05:00
.gitignore Ignore built binary and remove from repo 2025-11-21 18:57:48 -05:00
BUILD_AND_RUN.md Add comprehensive Build and Run guide 2025-11-29 19:54:13 -05:00
COMPLETION_SUMMARY.md Add comprehensive project completion summary 2025-11-29 19:33:02 -05:00
DONE.md Update TODO and DONE files for v0.1.0-dev11 2025-11-26 18:50:05 -05:00
DVD_IMPLEMENTATION_SUMMARY.md Implement DVD-NTSC encoding support with multi-region capabilities 2025-11-29 19:30:05 -05:00
DVD_USER_GUIDE.md Add comprehensive DVD User Guide for end users 2025-11-29 19:39:59 -05:00
go.mod Implement in-app playback with ffmpeg frame pump and Go audio 2025-11-20 16:11:56 -05:00
go.sum Implement in-app playback with ffmpeg frame pump and Go audio 2025-11-20 16:11:56 -05:00
install.sh Add persistent conversion stats, multi-video navigation, and error debugging 2025-11-26 18:44:54 -05:00
INTEGRATION_GUIDE.md Add comprehensive Integration Guide for DVD support 2025-11-29 19:32:11 -05:00
main.go Add build/run scripts and fix DVD options visibility 2025-11-29 19:53:47 -05:00
QUEUE_SYSTEM_GUIDE.md Add comprehensive Queue System documentation guide 2025-11-29 19:31:25 -05:00
README.md Improve video player layout with overlay controls 2025-11-20 15:06:52 -05:00
TODO.md Update TODO and DONE files for v0.1.0-dev11 2025-11-26 18:50:05 -05:00
videotools Corrections made to queue system 2025-11-27 00:17:59 -05:00

VideoTools Prototype

Requirements

  • Go 1.21+
  • Fyne 2.x (pulled automatically via go mod tidy)
  • FFmpeg (not yet invoked, but required for future transcoding)

Running

Launch the GUI:

go run .

Run a module via CLI:

go run . convert input.avi output.mp4
go run . combine file1.mov file2.wav / final.mp4
go run . logs

Add -debug or VIDEOTOOLS_DEBUG=1 for verbose stderr logs.

Logs

  • All actions log to videotools.log (override with VIDEOTOOLS_LOG_FILE=/path/to/log).
  • CLI command videotools logs (or go run . logs) prints the last 200 lines.
  • Each entry is tagged (e.g. [UI], [CLI], [FFMPEG]) so issues are easy to trace.

Notes

  • GUI requires a running display server (X11/Wayland). In headless shells it will log [UI] DISPLAY environment variable is empty.
  • Convert screen accepts drag-and-drop or the "Open File…" button; ffprobe metadata populates instantly, the preview box animates extracted frames with simple play/pause + slider controls (and lets you grab cover art), and the "Generate Snippet" button produces a 20-second midpoint clip for quick quality checks (requires ffmpeg in PATH).
  • Simple mode now applies smart inverse telecine by default—automatically skipping it on progressive footage—and lets you rename the target file before launching a convert job.
  • Other module handlers are placeholders; hook them to actual FFmpeg calls next.