Skip to content

Conversation

@mikeSGman
Copy link

Implements OCR-based conversion of PGS (Presentation Graphic Stream) subtitles to SRT format with automatic tool detection.

Features:

  • Auto-detect Tesseract OCR from PATH or Subtitle Edit installations
  • Auto-detect MKVToolNix from standard install locations
  • Support multiple language codes (ISO 639-2/3, language names)
  • GUI checkbox to enable/disable OCR for PGS subtitles
  • Automatic cleanup of intermediate .sup files after conversion

Dependencies:

  • pgsrip: PGS subtitle OCR engine
  • pytesseract: Tesseract OCR wrapper
  • babelfish: Language code handling
  • opencv-python, cleanit, trakit: Image/metadata processing

Known limitation:
This feature works when running from source (python -m fastflix) but not in PyInstaller-built executables due to subprocess environment issues with pgsrip. Users needing PGS OCR should run from source.

Implements OCR-based conversion of PGS (Presentation Graphic Stream)
subtitles to SRT format with automatic tool detection.

Features:
- Auto-detect Tesseract OCR from PATH or Subtitle Edit installations
- Auto-detect MKVToolNix from standard install locations
- Support multiple language codes (ISO 639-2/3, language names)
- GUI checkbox to enable/disable OCR for PGS subtitles
- Automatic cleanup of intermediate .sup files after conversion

Dependencies:
- pgsrip: PGS subtitle OCR engine
- pytesseract: Tesseract OCR wrapper
- babelfish: Language code handling
- opencv-python, cleanit, trakit: Image/metadata processing

Known limitation:
This feature works when running from source (python -m fastflix) but
not in PyInstaller-built executables due to subprocess environment
issues with pgsrip. Users needing PGS OCR should run from source.
@mikeSGman
Copy link
Author

Supersedes #701 — original branch history was rewritten so GitHub can’t reopen that PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant