VT_Player/docs/TODO.md
2025-12-04 07:29:17 -05:00

36 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# VT Player TODO
## Blockers
- Video loading not firing (menu and drag/drop). Investigate URI/path handling, loadVideo/probe flow, and UI wiring; add logging to confirm handlers fire and errors surface.
## Near-term UI/UX
- Replace placeholder play icon with a proper asset; keep centered “Load Video” and drop hint on any window size.
- Tighten control bar (Haruna-like): cleaner spacing, distinct buttons, consistent sizing.
- Add keyboard shortcuts (Space play/pause, Left/Right seek, +/- volume, F fullscreen).
- Fullscreen toggle wired to player backend; ensure external ffplay window obeys target coords/sizing.
## Playback & Playlist
- Add per-item remove/clear actions; optional recent-files list; drag-to-reorder playlist.
- Show active item highlight and hover states; keep drop-to-playlist behavior for files/folders.
- Verify drop handling on all platforms (Wayland/X11/Windows).
## Compare Mode (VT/VideoTools parity)
- Add synchronized play/pause/seek for dual players.
- Add frame-by-frame synced navigation and linked volume/speed controls.
- Provide a sync toggle and drift indicator; allow offset nudge for out-of-sync sources.
- Ensure artifact inspection at identical frames (exact seek/step alignment).
## Keyframing (next milestone)
- Define keyframe data model and storage (per file).
- Render markers/ticks on the seek bar; jump/add/delete keyframes with shortcuts.
- Keep compatibility with VideoTools (same metadata format/paths).
## Integration with VideoTools
- Keep `master` rebased on `upstream/master`; cherry-pick player changes to upstream PR branches when needed.
- Document how to flip module paths/branding when preparing a PR back to VideoTools.
## Cleanup/Codebase
- Remove unused convert/queue/compare code paths and dead menu logic once player is stable.
- Simplify `main.go` by moving player view/controls into dedicated files.
- Delete old VideoTools-only docs/content that no longer applies once we finish the pruning.