Commit Graph

21 Commits

Author SHA1 Message Date
dd79bedc9a Add chapter detection visualizer with thumbnails
Allows visual verification of detected scene changes before accepting.

Features:
- Extracts thumbnail at each detected chapter timestamp
- Displays first 24 chapters in scrollable grid (4 columns)
- Shows timestamp below each thumbnail (160x90px previews)
- Accept/Reject buttons to confirm or discard detection
- Progress indicator during thumbnail generation

Implementation:
- showChapterPreview() function creates preview dialog
- extractChapterThumbnail() uses FFmpeg to extract frame
  - Scales to 320x180, saves as JPEG in temp dir
- Thumbnails generated in background, dialog updated when ready

Performance:
- Limits to 24 chapters for UI responsiveness
- Shows "(showing first 24)" if more detected
- Temp files stored in videotools-chapter-thumbs/

User workflow:
1. Adjust sensitivity slider
2. Click "Detect Scenes"
3. Review thumbnails to verify detection quality
4. Accept to use chapters, or Reject to try different sensitivity
2025-12-26 19:33:51 -05:00
b723e8f642 Optimize author log viewer performance with tail behavior
Problem: Author log was causing severe UI lag and memory issues
- Unbounded string growth (entire log kept in RAM)
- Full widget rebuild on every line append
- O(n²) string concatenation performance

Solutions implemented:
1. Tail behavior - Keep only last 100 lines in UI
   - Uses circular buffer (authorLogLines slice)
   - Prevents unbounded memory growth
   - Rebuilds text from buffer on each append

2. Copy Log button
   - Copies full log from file (accurate)
   - Falls back to in-memory log if file unavailable

3. View Full Log button
   - Opens full log in dedicated log viewer
   - No UI lag from large logs

4. Track log file path
   - authorLogFilePath stored when log created
   - Used by copy and view buttons

Performance improvements:
- Memory: O(1) instead of O(n) - fixed 100 line buffer
- CPU: One SetText() per line instead of concatenation
- UI responsiveness: Dramatically improved with tail behavior

UI changes:
- Label shows "Authoring Log (last 100 lines)"
- Copy/View buttons for accessing full log
2025-12-26 19:33:51 -05:00
282db38c4f Fix DVD authoring SCR errors and queue animation persistence
DVD Authoring Fix:
- Add remultiplex step after MPEG encoding for DVD compliance
- Use ffmpeg -fflags +genpts -c copy -f dvd to fix timestamps
- Resolves "ERR: SCR moves backwards" error from dvdauthor
- FFmpeg direct encoding doesn't always create DVD-compliant streams
- Remux regenerates presentation timestamps correctly

Queue Animation Fix:
- Stop stripe animation on completed jobs
- Bug: Refresh() was always incrementing offset regardless of state
- Now only increments offset when animStop != nil (animation running)
- Completed/failed/cancelled jobs no longer show animated stripes

Testing:
- DVD authoring should now succeed on AVI files
- Completed queue jobs should show static progress bar
2025-12-25 21:20:14 -05:00
89292a0a0f Add persistent configs for author/subtitles/merge/rip 2025-12-24 15:39:22 -05:00
ed9939905b Commit incremental progress
- Current state: 3 modules partially/fully extracted
- upscale_module.go: showUpscaleView + AI helpers migrated successfully
- Build syntax:  Clean
- Build failing due to unrelated Fyne API issue in internal/ui/queueview.go
- Ready for next incremental extraction steps
2025-12-23 22:39:33 -05:00
df1ff0c605 Support VIDEO_TS drop to ISO 2025-12-23 21:10:46 -05:00
57c43882cb Default author output path without dialogs 2025-12-23 21:06:49 -05:00
0c4af03fb5 Fix author warnings dialog thread 2025-12-23 20:49:34 -05:00
c28a0ea91e Simplify authoring error messaging 2025-12-23 20:48:45 -05:00
269a0209d3 Add authoring log/progress and queue job 2025-12-23 20:47:10 -05:00
07609406eb Link author subtitles to subtitles tool 2025-12-23 20:38:05 -05:00
179abbe8c5 Move chapter buttons to bottom 2025-12-23 20:36:58 -05:00
1294c7f156 Add DVD5/DVD9 disc size guidance 2025-12-23 20:20:15 -05:00
d51b62d1d1 Show clip-based chapters in author chapters tab 2025-12-23 17:58:45 -05:00
cf657b5b6f Add chapter naming per clip in author videos tab 2025-12-23 17:56:39 -05:00
a4c95f222a Add author chapter sources and scene detection 2025-12-23 17:54:01 -05:00
b3375dd067 Add right column for author clip duration 2025-12-23 17:40:19 -05:00
a78e986d1e Improve author subtitles layout and summary refresh 2025-12-23 17:39:47 -05:00
e0a44e56f4 Align author clip list styling with merge 2025-12-23 17:36:01 -05:00
c52f29bb54 Refresh author clip list after Add Files 2025-12-23 17:33:45 -05:00
60fd6e93ee Finalize authoring workflow and update install docs 2025-12-23 14:24:09 -05:00