Video OCR: add llama.cpp engine + tidy scan-area hint#12277
Merged
Conversation
Add a llama.cpp OCR engine to the burned-in/video OCR window, reusing the same curated OCR models, downloader, and local llama-server lifecycle as the normal OCR window. Includes model selection, download button, start/stop server button, and a language field, with the selected model/language persisted to settings. Rename the standalone Paddle entry to "Paddle OCR Standalone" to match the normal OCR window. Turn the "Drag on the video frame..." scan-area text into a tooltip on the video frame instead of an inline label that crowded/overlapped the scan-area buttons and coordinate text. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Two changes to the burned-in / video OCR window (
VideoOcrWindow):1. Add a llama.cpp OCR engine
Adds a
llama.cppengine to the engine dropdown, wired to the same curated OCR models as the normal OCR window (LlamaCppServerManager.OcrModels— GLM-OCR, LightOnOCR), the same downloader (LlamaCppDownloadHelper), and the same localllama-serverlifecycle. The settings panel exposes:The selected model and language are persisted to
SeVideoOcrsettings. On scan start,EnsureEngineIsAvailabledownloads the engine/model if needed and starts the local server; frames are then OCR'd againstLlamaCppServerManager.ApiUrl.Also renames the standalone Paddle entry from "Paddle OCR" to "Paddle OCR Standalone" to match the naming in the normal OCR window.
2. Tidy the scan-area hint
The "Drag on the video frame to select where the subtitles are" text was an inline
TextBlockjammed into the horizontal scan-area row next to the label, three buttons, and the live coordinate text — so it crowded/overlapped. It's now a tooltip on the video frame itself (where the drag happens). TheScanAreaInfolanguage string is unchanged, so translations still apply.Testing
dotnet build -c Debugsucceeds (0 warnings, 0 errors).🤖 Generated with Claude Code