# VideoTools Changelog ## v0.1.0-dev23 (January 2026) ### ๐ŸŽ‰ UI Cleanup - **Colored select refinement** - one-click open, left accent bar, rounded corners, larger labels - **Unified input styling** - settings panel backgrounds match dropdown tone - **Convert panel polish** - Auto-crop and Interlacing actions match panel styling ### ๐Ÿงฉ About / Support - **Mockup-aligned layout** - title row, VT + LT logos on the right, Logs Folder action - **Support placeholder** - โ€œSupport coming soonโ€ until donation details are available ### ๐Ÿ› Fixes - **Audio module crash** - guarded initial quality selection to avoid nil entry panic ## v0.1.0-dev22 (January 2026) ### ๐ŸŽ‰ Major Features #### Automatic GPU Detection for Hardware Encoding - **Auto-detect GPU vendor** (NVIDIA/AMD/Intel) via system info detection - **Automatic hardware encoder selection** when hardware acceleration set to "auto" - **Resolves to appropriate encoder**: nvenc for NVIDIA, amf for AMD, qsv for Intel - **Fallback to software encoding** if no compatible GPU detected - **Cross-platform detection**: nvidia-smi, lspci, wmic, system_profiler #### SVT-AV1 Encoding Performance - **Proper AV1 codec support** with hardware (av1_nvenc, av1_qsv, av1_amf) and software (libsvtav1) encoders - **SVT-AV1 speed preset mapping** (0-13 scale) for encoder performance tuning - **Prevents 80+ hour encodes** by applying appropriate speed presets - **ultrafast preset** โ†’ ~10-15 hours instead of 80+ hours for typical 1080p encodes - **CRF quality control** for AV1 encoding #### UI/UX Improvements - **Fluid UI splitter** - removed rigid minimum size constraints for smoother resizing - **Format selector widget** - proper dropdown for container format selection - **Semantic color system** - ColoredSelect ONLY for format/codec navigation (not rainbow everywhere) - **Format colors**: MKV=teal, MP4=blue, MOV=indigo - **Codec colors**: AV1=emerald, H.265=lime, H.264=sky, AAC=purple, Opus=violet ### ๐Ÿ”ง Technical Improvements #### Hardware Encoding - **GPUVendor() method** in sysinfo package for GPU vendor identification - **Automatic encoder resolution** based on detected hardware - **Better hardware encoder fallback** logic #### Platform Support - **Windows FFmpeg popup suppression** - proper build tags on exec_windows.go/exec_unix.go - **Platform-specific command creation** with CREATE_NO_WINDOW flag on Windows - **Fixed process creation attributes** for silent FFmpeg execution on Windows #### Code Quality - **Queue system type consistency** - standardized JobType constants (JobTypeFilter) - **Fixed forward declarations** for updateDVDOptions and buildCommandPreview - **Removed incomplete formatBackground** section with TODO for future implementation - **Git remote correction** - restored git.leaktechnologies.dev repository URL ### ๐Ÿ› Bug Fixes #### Encoding - **Fixed AV1 forced H.264 conversion** - restored proper AV1 encoding support - **Added missing preset mapping** for libsvtav1 encoder - **Proper CRF handling** for AV1 codec #### UI - **Fixed dropdown reversion** - removed rainbow colors from non-codec dropdowns - **Fixed splitter stiffness** - metadata and labeled panels now resize fluidly - **Fixed formatContainer** missing widget definition #### Build - **Resolved all compilation errors** from previous session - **Fixed syntax errors** in formatBackground section - **Fixed JobType constant naming** (JobTypeFilter vs JobTypeFilters) - **Moved WIP files** out of build path (execute_edit_job.go.wip) #### Dependencies - **Upscale module accessibility** - changed from requiring realesrgan to optional - **FFmpeg-only scaling** now works without AI upscaler dependencies ### ๐Ÿ“ Coordination & Planning #### Agent Coordination - **Updated WORKING_ON.md** with coordination request for opencode - **Analyzed uncommitted job editing feature** (edit.go, command_editor.go) - **Documented integration gaps** and presented 3 options for dev23 - **Removed Gemini from active agent rotation** ### ๐Ÿšง Work in Progress (Deferred to Dev23) #### Job Editing Feature (opencode) - **Core logic complete** - edit.go (363 lines), command_editor.go (352 lines) - **Compiles successfully** but missing integration - **Needs**: main.go hookups, UI buttons, end-to-end testing - **Status**: Held for proper integration in dev23 ### ๐Ÿ”„ Breaking Changes None - this is a bug-fix and enhancement release. ### โš ๏ธ Known Issues - **Windows dropdown UI differences** - investigating appearance differences on Windows vs Linux (deferred to dev23) - **Benchmark system** needs improvements (deferred to dev23) ### ๐Ÿ“Š Development Stats **Commits This Release**: 3 main commits - feat: add automatic GPU detection for hardware encoding - fix: resolve build errors and complete dev22 fixes - docs: update WORKING_ON coordination file **Files Modified**: 8 files - FyneApp.toml (version bump) - main.go (GPU detection, AV1 presets, UI fixes) - internal/sysinfo/sysinfo.go (GPUVendor method) - internal/queue/queue.go (JobType fixes) - internal/utils/exec_windows.go (build tags) - internal/utils/exec_unix.go (build tags) - settings_module.go (Upscale dependencies) - WORKING_ON.md (coordination) --- ## v0.1.0-dev14 (December 2025) ### ๐ŸŽ‰ Major Features #### Windows Compatibility Implementation - **Cross-platform build system** with MinGW-w64 support - **Platform detection system** (`platform.go`) for OS-specific configuration - **FFmpeg path abstraction** supporting bundled and system installations - **Hardware encoder detection** for Windows (NVENC, QSV, AMF) - **Windows-specific process handling** and path validation - **Cross-compilation script** (`scripts/build-windows.sh`) #### Professional Installation System - **One-command installer** (`scripts/install.sh`) with guided wizard - **Automatic shell detection** (bash/zsh) and configuration - **System-wide vs user-local installation** options - **Convenience aliases** (`VideoTools`, `VideoToolsRebuild`, `VideoToolsClean`) - **Comprehensive installation guide** (`INSTALLATION.md`) #### DVD Auto-Resolution Enhancement - **Automatic resolution setting** when selecting DVD formats - **NTSC/PAL auto-configuration** (720ร—480 @ 29.97fps, 720ร—576 @ 25fps) - **Simplified user workflow** - one click instead of three - **Standards compliance** ensured automatically #### Queue System Improvements - **Enhanced thread-safety** with improved mutex locking - **New queue control methods**: `PauseAll()`, `ResumeAll()`, `MoveUp()`, `MoveDown()` - **Better job reordering** with up/down arrow controls - **Improved status tracking** for running/paused/completed jobs - **Batch operations** for queue management ### ๐Ÿ”ง Technical Improvements #### Code Organization - **Platform abstraction layer** for cross-platform compatibility - **FFmpeg path variables** in internal packages - **Improved error handling** for Windows-specific scenarios - **Better process termination** handling across platforms #### Build System - **Cross-compilation support** from Linux to Windows - **Optimized build flags** for Windows GUI applications - **Dependency management** for cross-platform builds - **Distribution packaging** for Windows releases #### Documentation - **Windows compatibility guide** (`WINDOWS_COMPATIBILITY.md`) - **Implementation documentation** (`DEV14_WINDOWS_IMPLEMENTATION.md`) - **Updated installation instructions** with platform-specific notes - **Enhanced troubleshooting guides** for Windows users ### ๐Ÿ› Bug Fixes #### Queue System - **Fixed thread-safety issues** in queue operations - **Resolved callback deadlocks** with goroutine execution - **Improved error handling** for job state transitions - **Better memory management** for long-running queues #### Platform Compatibility - **Fixed path separator handling** for cross-platform file operations - **Resolved drive letter issues** on Windows systems - **Improved UNC path support** for network locations - **Better temp directory handling** across platforms ### ๐Ÿ“š Documentation Updates #### New Documentation - `INSTALLATION.md` - Comprehensive installation guide (360 lines) - `WINDOWS_COMPATIBILITY.md` - Windows support planning (609 lines) - `DEV14_WINDOWS_IMPLEMENTATION.md` - Implementation summary (325 lines) #### Updated Documentation - `README.md` - Updated Quick Start for install.sh - `BUILD_AND_RUN.md` - Added Windows build instructions - `docs/README.md` - Updated module implementation status - `TODO.md` - Reorganized for dev15 planning ### ๐Ÿ”„ Breaking Changes #### Build Process - **New build requirement**: MinGW-w64 for Windows cross-compilation - **Updated build scripts** with platform detection - **Changed FFmpeg path handling** in internal packages #### Configuration - **Platform-specific configuration** now required - **New environment variables** for FFmpeg paths - **Updated hardware encoder detection** system ### ๐Ÿš€ Performance Improvements #### Build Performance - **Faster incremental builds** with better dependency management - **Optimized cross-compilation** with proper toolchain usage - **Reduced binary size** with improved build flags #### Runtime Performance - **Better process management** on Windows - **Improved queue performance** with optimized locking - **Enhanced memory usage** for large file operations ### ๐ŸŽฏ Platform Support #### Windows (New) - โœ… Windows 10 support - โœ… Windows 11 support - โœ… Cross-compilation from Linux - โœ… Hardware acceleration (NVENC, QSV, AMF) - โœ… Windows-specific file handling #### Linux (Enhanced) - โœ… Improved hardware encoder detection - โœ… Better Wayland support - โœ… Enhanced process management #### Linux (Enhanced) - โœ… Continued support with native builds - โœ… Hardware acceleration (VAAPI, NVENC, QSV) - โœ… Cross-platform compatibility ### ๐Ÿ“Š Statistics #### Code Changes - **New files**: 3 (platform.go, build-windows.sh, install.sh) - **Updated files**: 15+ across codebase - **Documentation**: 1,300+ lines added/updated - **Platform support**: 2 platforms (Linux, Windows) #### Features - **New major features**: 4 (Windows support, installer, auto-resolution, queue improvements) - **Enhanced features**: 6 (build system, documentation, queue, DVD encoding) - **Bug fixes**: 8+ across queue, platform, and build systems ### ๐Ÿ”ฎ Next Steps (dev15 Planning) #### Immediate Priorities - Windows environment testing and validation - NSIS installer creation for Windows - Performance optimization for large files - UI/UX refinements and polish #### Module Development - Merge module implementation - Trim module with timeline interface - Filters module with real-time preview - Advanced Convert features (2-pass, presets) #### Platform Enhancements - Native Windows builds - macOS app bundle creation - Linux package distribution (.deb, .rpm) - Auto-update mechanism --- ## v0.1.0-dev13 (November 2025) ### ๐ŸŽ‰ Major Features #### DVD Encoding System - **Complete DVD-NTSC implementation** with professional specifications - **Multi-region support** (NTSC, PAL, SECAM) with region-free output - **Comprehensive validation system** with actionable warnings - **FFmpeg command generation** for DVD-compliant output - **Professional compatibility** (DVDStyler, PS2, standalone players) #### Code Modularization - **Extracted 1,500+ lines** from main.go into organized packages - **New package structure**: `internal/convert/`, `internal/app/` - **Type-safe APIs** with exported functions and structs - **Independent testing capability** for modular components - **Professional code organization** following Go best practices #### Queue System Integration - **Production-ready queue system** with 24 public methods - **Thread-safe operations** with proper synchronization - **Job persistence** with JSON serialization - **Real-time progress tracking** and status management - **Batch processing capabilities** with priority handling ### ๐Ÿ“š Documentation #### New Comprehensive Guides - `DVD_IMPLEMENTATION_SUMMARY.md` (432 lines) - Complete DVD system reference - `QUEUE_SYSTEM_GUIDE.md` (540 lines) - Full queue system documentation - `INTEGRATION_GUIDE.md` (546 lines) - Step-by-step integration instructions - `COMPLETION_SUMMARY.md` (548 lines) - Project completion overview #### Updated Documentation - `README.md` - Updated with DVD features and installation - `MODULES.md` - Enhanced module descriptions and coverage - `TODO.md` - Reorganized for dev14 planning ### ๐Ÿ“š Documentation Updates #### New Documentation Added - Enhanced `TODO.md` with Lossless-Cut inspired trim module specifications - Updated `MODULES.md` with detailed trim module implementation plan - Enhanced `docs/README.md` with VT_Player integration links #### Documentation Enhancements - **Trim Module Specifications** - Detailed Lossless-Cut inspired design - **VT_Player Integration Notes** - Cross-project component reuse - **Implementation Roadmap** - Clear development phases and priorities --- *For detailed technical information, see the individual implementation documents in the `docs/` directory.*