Skip to content

Releases: SysAdminDoc/VideoSubtitleRemover

Video Subtitle Remover Pro v3.22.0

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 17 Jul 21:55

What's changed

  • Brings the native workbench closer to the approved premium mockup with a larger 16:9 preview, 17:8 preview/inspector split, static Preview heading, and four flat inspector disclosure rows.
  • Moves preview utilities into mouse and keyboard context access, leaving the first viewport calm and media-first.
  • Replaces the legacy queue action cluster with functional Add, Remove, Clear completed, and move up/down controls; compact layouts consolidate them into one menu.
  • Reduces the footer to one status line while keeping Activity available through Ctrl+L and context menus.

Verification

  • 916 tests passed, 3 skipped, 12 subtests passed.
  • Hidden scaling probes passed at 100-200% across English, pseudo-localized, RTL, default, and high-contrast modes.
  • Strict frozen build, installer smoke, reference corpus, FFmpeg smoke, dependency audit, SBOM, and advisory gates passed.

The Windows artifacts are unsigned. Verify downloads with SHA256SUMS.txt.

Video Subtitle Remover Pro v3.21.0

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 17 Jul 21:21

Video Subtitle Remover Pro 3.21.0 delivers a calmer, command-first desktop workbench. Primary setup stays in one compact toolbar, typography is larger and more readable, the inspector uses separator-led disclosure instead of repeated controls, and secondary preview tools are grouped behind one contextual action. The empty queue now contracts to a single row, slider values are borderless, and the status surface is intentionally quiet.

The redesigned shell follows the new v4 visual target while preserving the existing cleanup workflow, responsive stacking, keyboard access, high-contrast theme, pseudo-localization, and RTL behavior.

The Windows x64 portable and installer artifacts were rebuilt through the strict local release pipeline. The full suite passed with 916 tests, 2 skips, and 12 subtests; frozen launcher smoke, installer smoke, the 10-clip reference corpus, dependency audit, advisory policy, SBOM generation, and checksum verification also passed. FFmpeg 8.1.2 was used for external-runtime verification.

The Windows binaries are currently unsigned; verify downloads with SHA256SUMS.txt.

Video Subtitle Remover Pro v3.20.0

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 17 Jul 20:14

Video Subtitle Remover Pro 3.20.0 completes the premium workbench refresh with a compact command bar that keeps media import, cleanup profile, subtitle region, output, and Start cleanup above the preview. The preview and inspector now share a flatter, denser workspace with clearer type hierarchy, fewer status pills, quieter borders, and tighter spacing.

This release also introduces a new restoration-frame application mark across the README, window chrome, packaged EXE, Windows icon, and About dialog.

The Windows x64 portable and installer artifacts were rebuilt through the strict local release pipeline. The full suite passed with 916 tests, 2 skips, and 12 subtests; frozen launcher smoke, installer smoke, the 10-clip reference corpus, dependency audit, advisory policy, SBOM generation, and checksum verification also passed. FFmpeg 8.1.2 was used for external-runtime verification.

The Windows binaries are currently unsigned; verify downloads with SHA256SUMS.txt.

Video Subtitle Remover Pro v3.19.1

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 17 Jul 11:42

Video Subtitle Remover Pro 3.19.1 delivers the redesigned premium desktop workbench: a compact command strip, clearer type hierarchy, calmer surfaces, denser control grouping, and a focused job monitor with less explanatory chrome.

This release also refreshes Windows x64 portable and installer artifacts from the strict local release pipeline. Frozen launcher smoke, the 10-clip reference corpus, dependency audit, advisory policy, SBOM generation, and checksum verification all passed. FFmpeg 8.1.2 was used for external-runtime verification.

The Windows binaries are currently unsigned; verify downloads with SHA256SUMS.txt.

Video Subtitle Remover Pro v3.19.0

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 17 Jul 10:36

Video Subtitle Remover Pro 3.19.0

Highlights:

  • Selectable OCR engines, opt-in subtitle-language mask filtering, and live OCR feedback during region drawing.
  • Scene-aware AUTO inpainting routes low-motion scenes to STTN and high-motion/persistent masks to the ProPainter hybrid.
  • First-run setup progress and useful YouTube, Film, and Fast presets.
  • Detection-efficiency and color-preservation evidence in GUI/CLI batch summaries and sidecars.
  • Major controller, CLI, settings, frame-timing, processor-loop, and import-graph refactors with preserved behavior.
  • Hardened tracked-spec release pipeline with frozen/installer smoke tests, SBOM, advisory evidence, and dependency audit.

Verification:

  • Complete source suite passed in the release pipeline.
  • Frozen startup and silent installer-payload smoke passed without foreground UI.
  • Strict dependency audit: 0 vulnerabilities, 0 skipped packages.
  • Unsigned Windows artifacts; verify against SHA256SUMS.txt.

See CHANGELOG.md for the complete release notes.

VideoSubtitleRemoverPro v3.18.1

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 17 Jul 05:06

Standalone Windows x64 build of Video Subtitle Remover Pro v3.18.1 (default RapidOCR/ONNX profile). Fully local — no cloud, no account.

Highlights

Fixed

  • Frozen build now launches cleanly. numpy 2.x is packaged with --collect-all and UPX is disabled, resolving a ModuleNotFoundError: numpy._core._exceptions crash at startup.
  • Accurate --start/--end time-range seeking on CFR long-GOP sources (grabs forward to the exact frame instead of snapping to the nearest keyframe).
  • ONNX LaMa / MI-GAN now binarize the mask before inference, so anti-aliased masks no longer produce partial-strength fill.
  • Unhandled Tk callback / .after exceptions are logged with a full traceback instead of a bare stderr dump.

Changed

  • Internal decomposition of the process_video pipeline (_resolve_frame_range, _finalize_and_mux, _emit_quality_report) — no behavior change, verified against the real-ffmpeg reference-clip, VFR, and checkpoint/resume suites.
  • Unified post-inpaint finishing (edge-ring colour match + feather) across all inpainter backends.
  • Dependency-floor consistency guard across requirements.txt, dependency profiles, and release verification.

Security

  • Single-source libpng CVE floor in backend.security_checks (no more drifting 1.6.54 literals).
  • Hidden, bounded, shell-less external-process policy for every production backend child.

Install

  1. Download VideoSubtitleRemoverPro-v3.18.1-win-x64.zip and extract anywhere.
  2. Run VideoSubtitleRemoverPro.exe (or Run_VSR_Pro.bat).
  3. Windows SmartScreen may warn on this unsigned build — choose More info -> Run anyway. Verify integrity against the published SHA-256 below.

Verify

VideoSubtitleRemoverPro-v3.18.1-win-x64.zip.sha256 contains the SHA-256 of the zip. Check with:
Get-FileHash .\VideoSubtitleRemoverPro-v3.18.1-win-x64.zip -Algorithm SHA256

Full changelog: see CHANGELOG.md in the repository.

VideoSubtitleRemoverPro v3.17.1

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 25 Jun 23:56

What's new in v3.17.1

Detection & OCR

  • RapidOCR 3.x support -- lifted pip cap from <3.0.0 to <4.0.0; hardened constructor and output parsing for v3.x API changes
  • PP-OCRv6 auto-selection -- PaddleOCR 3.7+ defaults to PP-OCRv6 (34.5M params, +5.1% accuracy, 5.2x CPU speedup, 50-language single model)
  • Vertical text detection fix -- coordinate mapping after 90-CCW rotation was mirrored/swapped; boxes now placed correctly

Security

  • VSR_SEEDVR2_CMD now uses shlex.split() to prevent argument injection via environment variable
  • Crash reporter path regex extended to handle paths with spaces (prevents partial username leaks)
  • Support bundle restricts collected paths to safe file extensions (.json, .md, .txt, .log)

Reliability

  • Fixed preset save crash (BUILTIN_PRESETS and _load_user_presets missing imports)
  • Fixed crash in queue item elapsed-time display (missing datetime import)
  • Fixed CAP_PROP_FRAME_COUNT returning -1 bypassing the fallback (used max(1, ...))
  • Catch TclError alongside RuntimeError when posting to Tk from worker threads
  • A/B scrubber releases VideoCapture objects even if window construction fails
  • JSON log handler now properly closes its file handle
  • Corrupt settings.json backed up to .bak before resetting to defaults

UX

  • "Set region" button now appears directly in the preview action bar
  • Preview height increased from 158px to 260px
  • Drop area shows accurate text when TkinterDnD2 drag-drop is unavailable
  • Status badge, progress bar, and accent stripe now forward clicks in queue cards
  • ModernButton.set_enabled(False) resets stale hover/pressed state
  • GitHub issue templates with OS/GPU fields and feature request form

Build

  • CycloneDX SBOM (sbom.cdx.json) generated in release builds
  • ProPainter mode documented as TBE+LaMa hybrid (not upstream NTU S-Lab weights)
  • Architecture docs refreshed for post-module-split tree

VideoSubtitleRemoverPro v3.16.0

Choose a tag to compare

@github-actions github-actions released this 03 Jun 16:23

Automated build for v3.16.0.

Highlights

  • RTX 50-series (Blackwell) support. setup.py now auto-detects 50-series cards (5050–5090, RTX PRO 6000, B100/B200/GB200) and installs PyTorch from the CUDA 12.8 (cu128) index. Older cu118/cu121 pins have no sm_120 kernels and error out or fall back to CPU.
  • Fixed a stale torch==2.7.0 README pin that conflicted with the torch>=2.10.0 floor (CVE-2026-24747).
  • Documented TV / limited color-range handling (preserve_color_metadata, on by default).

Which download do I want?

  • GPU users (especially RTX 50-series): run from source — clone the repo at this tag and follow the install steps so PyTorch lands on the right CUDA wheel (cu128 for Blackwell). The attached ZIP is a CPU-only PyInstaller build and will not use your GPU.
  • CPU users / quick try: VideoSubtitleRemoverPro-v3.16.0-windows.zip is a self-contained Windows build — unzip and run VideoSubtitleRemoverPro.exe.

Note on antivirus / SmartScreen

This ZIP is an unsigned PyInstaller bundle that ships CUDA/torch and fetches model weights on first run. AV engines and SmartScreen commonly flag that pattern heuristically (large packed binary + network calls) as a false positive. Downloaded model weights are verified against vendored SHA-256 hashes. If your AV flags it, that's the heuristic — verify the ZIP hash and run from source if you prefer.

Full Changelog: v3.5.0...v3.16.0

Video Subtitle Remover Pro v3.5.0

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 18 Mar 12:06

Video Subtitle Remover Pro v3.5.0

Full rewrite from v2.0: real AI inpainting, multi-engine detection, professional DPI-responsive GUI, 20+ bug fixes.


AI Inpainting Engine

  • Real LaMa neural inpainting via simple-lama-inpainting -- dramatically better quality than OpenCV
  • STTN and ProPainter modes available with OpenCV inpainting fallback
  • Image output quality preserved per-format (JPEG 95%, PNG compression 3, WebP 95%)

Multi-Engine Text Detection

  • Automatic fallback chain: PaddleOCR > EasyOCR > OpenCV
  • 12 languages: English, Chinese, Japanese, Korean, French, German, Spanish, Portuguese, Russian, Arabic, Hindi, Italian
  • EasyOCR language code mapping for cross-engine compatibility
  • Adjustable detection threshold (10-90%) in Advanced Settings
  • Improved OpenCV fallback: dual-threshold bright/dark text detection with morphological merge

Professional GUI

  • DPI-responsive layout -- Per-Monitor DPI V2, proportional grid columns, all widgets resize dynamically
  • Unified panel design -- Input and Settings merged with subtle divider, no cluttered borders
  • Dark-themed throughout -- combobox dropdowns, scrollbars, label frames, scale sliders all properly themed
  • Subtitle region selector -- draw a rectangle on the first frame to define the target area
  • Detection mask preview -- right-click queue item to visualize detected text regions
  • Before/after comparison -- click completed items for side-by-side preview
  • Video time-range -- process only a segment (start/end seconds)
  • Folder input -- drag-drop folders or right-click drop zone to browse folders
  • Batch progress bar with window title progress indicator
  • Collapsible log panel with color-coded output and Open Log File button
  • CRF quality slider in Advanced Settings
  • Tooltips on key controls with full-path tooltips on filenames
  • Retry Failed button to re-queue failed/cancelled items
  • Double-click completed item opens the output file
  • Taskbar flash + sound on batch completion
  • Settings lock during processing
  • Custom output directory with Browse/Reset
  • Queue capped at 500 items
  • Clean, professional spacing at any resolution from 900x650 to 4K

Settings & Persistence

  • All settings saved to %APPDATA%\VideoSubtitleRemoverPro\settings.json
  • Subtitle region, language, threshold, CRF quality, GPU selection all persist
  • Crash logging to rotating log file (5MB) + MessageBox on fatal error

CLI

python -m backend.processor -i input.mp4 -o output.mp4 -m lama --lang en --crf 20 --threshold 0.4 --start 30 --end 120

Flags: --mode, --gpu, --lang, --crf, --threshold, --start, --end, --skip-detection, --fast, --no-audio

Infrastructure

  • GitHub Actions CI/CD workflow for automated Windows builds
  • .gitignore for model weights, venv, build artifacts
  • setup.py auto-installs EasyOCR + simple-lama-inpainting + PaddleOCR
  • All source files pure ASCII (zero unicode characters)
  • Branch protection enabled on main

Bug Fixes (20+)

  • Processing was simulated, never called real backend
  • Backend path pointed to nonexistent file
  • InpaintMode enum mismatch between GUI and backend
  • Race conditions in queue mutations during processing
  • Widget destruction during processing broke progress updates
  • GPU selection never synced to config
  • Duplicate files could be queued
  • Output files silently overwritten (now auto-increments)
  • Cancel only marked one item, remaining abandoned (now marks all)
  • Elapsed timer dict iteration crash
  • Settings lock disabled entire widget tree (now scoped)
  • Closing window during processing left orphan threads
  • nvidia-smi crash on malformed output
  • EasyOCR language code mismatch (ch vs ch_sim)
  • FFmpeg subprocess deadlock (added 10min timeout)
  • Subtitle area not persisted in settings
  • ModernButton fired on release outside bounds
  • Region selector VideoCapture resource leak
  • Division by zero on 0-frame video containers
  • Batch progress bar stuck at 100% after completion
  • Eager output directory creation (deferred to processing)

v2.0

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 14 Jan 02:20
Add files via upload