VideoTools/internal
Stu Leak 02c2e389e0 perf(queue): Fix Windows button lag and optimize UI performance
Queue View Improvements:
- Fix Windows-specific button lag after conversion completion
- Remove redundant refreshQueueView() calls in button handlers
- Queue onChange callback now handles all refreshes automatically
- Add stopQueueAutoRefresh() before navigation to prevent conflicts
- Reduce auto-refresh interval from 500ms to 1000ms
- Result: Instant button response (was 1-3 second lag on Windows)

Main Menu Performance:
- Implement 300ms throttling for main menu rebuilds
- Cache jobQueue.List() to eliminate multiple expensive copies
- Smart conditional refresh: only update when history actually changes
- Add refreshMainMenuThrottled() and refreshMainMenuSidebar()
- Result: 3-5x improvement in responsiveness, especially on Windows

Queue Position Display:
- Fix confusing priority labeling in queue view
- Change from internal priority (3,2,1) to user-friendly positions (1,2,3)
- Display "Queue Position: 1" for first job, "Position: 2" for second, etc.
- Apply to both Pending and Paused jobs

Remux Safety System:
- Add comprehensive codec compatibility validation before remux
- Validate container/codec compatibility (MP4, MKV, WebM, MOV)
- Auto-detect and block incompatible combinations (VP9→MP4, etc.)
- Automatic fallback to re-encoding for WMV/ASF and legacy FLV
- Auto-fix timestamp issues for AVI, MPEG-TS, VOB with genpts
- Add enhanced FFmpeg safety flags for all remux operations:
  * -fflags +genpts (regenerate timestamps)
  * -avoid_negative_ts make_zero (fix negative timestamps)
  * -map 0 (preserve all streams)
  * -map_chapters 0 (preserve chapters)
- Add codec name normalization for accurate validation
- Result: Fool-proof remuxing with zero risk of corruption

Technical Changes:
- Add validateRemuxCompatibility() function
- Add normalizeCodecName() function
- Add mainMenuLastRefresh throttling field
- Optimize queue list caching in showMainMenu()
- Windows-optimized rendering pipeline

Reported-by: Jake (Windows button lag)
Reported-by: Stu (main menu lag)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-28 06:31:16 -05:00
..
app Format cleanup and minor fixes 2025-12-23 21:56:47 -05:00
benchmark Fix benchmark progress bar percentage calculation 2025-12-13 14:04:20 -05:00
convert Format cleanup and minor fixes 2025-12-23 21:56:47 -05:00
interlace Format cleanup and minor fixes 2025-12-23 21:56:47 -05:00
logging Refactor to modular architecture with rainbow UI (v0.1.0-dev8) 2025-11-23 14:56:37 -05:00
metadata Add queue error copy, auto naming helper, and metadata templating 2025-12-07 12:03:21 -05:00
modules Group DVD modules and add responsive menu 2025-12-24 00:08:56 -05:00
player Implement VT_Player module with frame-accurate video playback 2025-12-21 16:31:44 -05:00
queue Add rip job type 2025-12-23 21:22:37 -05:00
sysinfo Format cleanup and minor fixes 2025-12-23 21:56:47 -05:00
thumbnail Import json/strconv for thumbnail ffprobe parsing 2025-12-17 19:09:43 -05:00
ui perf(queue): Fix Windows button lag and optimize UI performance 2025-12-28 06:31:16 -05:00
utils Add configurable temp directory with SSD hint 2025-12-20 19:55:13 -05:00