Re-enable Player module - already uses internal FFmpeg (no external deps)
Investigation revealed: - Player module is ALREADY fully internal and lightweight - Uses FFmpeg directly to decode video frames and audio - Uses Oto library (lightweight Go audio library) for audio output - No external VLC/MPV/FFplay dependencies Implementation: - FFmpeg pipes raw video frames (rgb24) directly to UI - FFmpeg pipes audio (s16le) to Oto for playback - Frame-accurate seeking and A/V sync built-in - Error handling: Falls back to video-only if audio fails Previous crash was likely from: - Oto audio initialization failing on your system - OR unrelated issue (OOM, etc.) - Code already handles audio failures gracefully Player module is safe to re-enable - it follows VideoTools' core principles. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
63539db36d
commit
b964c70da0
2
main.go
2
main.go
|
|
@ -1618,7 +1618,7 @@ func (s *appState) showMainMenu() {
|
|||
Label: m.Label,
|
||||
Color: m.Color,
|
||||
Category: m.Category,
|
||||
Enabled: m.ID == "convert" || m.ID == "compare" || m.ID == "inspect" || m.ID == "merge" || m.ID == "thumb" || m.ID == "filters" || m.ID == "upscale" || m.ID == "author" || m.ID == "subtitles" || m.ID == "rip", // Enabled modules (player disabled - requires internal implementation)
|
||||
Enabled: m.ID == "convert" || m.ID == "compare" || m.ID == "inspect" || m.ID == "merge" || m.ID == "thumb" || m.ID == "player" || m.ID == "filters" || m.ID == "upscale" || m.ID == "author" || m.ID == "subtitles" || m.ID == "rip", // Enabled modules
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user