mirror of
https://github.com/CCExtractor/ccextractor.git
synced 2026-02-04 05:44:53 +00:00
[PR #1920] [MERGED] feat(mp4): Add VOBSUB subtitle extraction with OCR for MP4 files #2716
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/CCExtractor/ccextractor/pull/1920
Author: @cfsmp3
Created: 12/28/2025
Status: ✅ Merged
Merged: 12/29/2025
Merged by: @cfsmp3
Base:
master← Head:fix/issue-1371-mkv-vobsub-support📝 Commits (6)
2930c61feat(mp4): Add VOBSUB subtitle extraction with OCR for MP4 files6fe612dfix: Guard ocr_text access with ENABLE_OCR preprocessor check635a305build: Add vobsub_decoder to autoconf build systemba2833bstyle: Fix clang-format indentation in vobsub_decoder.c463a4a8build(windows): Add vobsub_decoder to Windows build8f64eebci: Trigger CI tests📊 Changes
8 files changed (+884 additions, -7 deletions)
View changed files
📝
linux/Makefile.am(+2 -0)📝
mac/Makefile.am(+2 -0)📝
src/lib_ccx/matroska.c(+129 -4)📝
src/lib_ccx/mp4.c(+173 -3)➕
src/lib_ccx/vobsub_decoder.c(+517 -0)➕
src/lib_ccx/vobsub_decoder.h(+53 -0)📝
windows/ccextractor.vcxproj(+2 -0)📝
windows/ccextractor.vcxproj.filters(+6 -0)📄 Description
Summary
vobsub_decodermodule for SPU parsing and OCR integrationsubp:MPEGtracks in MP4 container and processes them through OCR pipelineChanges
New Files
src/lib_ccx/vobsub_decoder.c- VOBSUB decoder with SPU parsing and OCRsrc/lib_ccx/vobsub_decoder.h- Public API headerModified Files
src/lib_ccx/mp4.c- Add VOBSUB track detection and processingsrc/lib_ccx/matroska.c- Integrate shared VOBSUB decoder for MKV OCR supportFeatures
The VOBSUB decoder module provides:
ocr_rect()Test Results
Tested with sample from issue #1349:
Successfully extracted 61 subtitles with accurate OCR output:
Test plan
-DWITH_OCR=ON)Fixes #1349
🤖 Generated with Claude Code
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.