Conversation
# Conflicts: # src/ui/Logic/Config/Se.cs
… headless-UI dispatcher flake, unrelated to this change)
# Conflicts: # src/ui/Features/Video/SpeechToText/SpeechToTextAdvancedViewModel.cs # src/ui/Logic/Config/Se.cs
Audited current-base port of upstream PR SubtitleEdit#14029 with CrispASR cache routing hardening and coverage for all current CrispASR-backed TTS engines.
Audited current-base port of upstream PR SubtitleEdit#14029 with CrispASR cache routing hardening, caller-environment compatibility, and coverage for all current CrispASR-backed TTS engines.
Audited current-base port of upstream PR SubtitleEdit#14029 with complete current-tree model routing, CrispASR cache hardening, WhisperX Hugging Face routing, audio.cpp and Piper coverage, and focused regressions.
Audited current-base port of upstream PR SubtitleEdit#14029 with complete current-tree model routing, CrispASR cache hardening, WhisperX Hugging Face routing, audio.cpp and Piper coverage, path normalization, and focused regressions.
|
Hi @muaz978, thanks for the thorough work here - the model-path audit across all the engines alone is useful, and the "don't move multi-gigabyte files automatically" call is the right one. I'm closing this one though. Touching every engine class (57 files) to redirect its model path is more surface than I want to carry for this, and the branch has drifted into conflicts with main since the engines have kept moving. If I add a configurable models folder, I'd like to do it in one place at the I'll keep #14024 open as the feature request. Thanks again! |
|
Understood, and the scope and conflict concerns are fair. 57 files is a lot of surface for this. Glad the model-path audit is useful as a reference for when you get to the Configuration-level version. I'll leave it to you, happy to help once you've settled on the shape you want. |
Summary
Fixes #14024.
Adds an optional AI models folder setting so large downloaded model files can be stored on an external SSD without moving Subtitle Edit's settings, logs, dictionaries, themes, or executable folders.
What is covered
Migration behavior
Existing models are not moved automatically. The setting changes future model resolution and downloads, while the documentation explains the manual copy layout. This avoids destructive or interrupted multi-gigabyte moves.
Verification
AVALONIA_TELEMETRY_OPTOUT=1 dotnet test tests/UI/UITests.csproj --no-restore --filter FullyQualifiedName~DataFolderLocationTests
Result: 6 passed, 0 failed.
Also verified with git diff --check.