mirror of
https://github.com/CCExtractor/ccextractor.git
synced 2026-04-18 12:03:00 +00:00
[PR #1885] [FEATURE] Add guarded ASS/SSA \pos positioning for CEA-608 captions #2673
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/1885
Author: @x15sr71
Created: 12/23/2025
Status: 🔄 Open
Base:
master← Head:feat/ssa-ass-precise-positioning📝 Commits (8)
5dd1961feat(ssa): add guarded ASS \pos positioning for CEA-608 captionsa742174Merge branch 'master' into feat/ssa-ass-precise-positioning140bff3fix(ssa): correct ASS positioning anchor, validate row adjacency, and clean up variable placementac22206docs(changelog): move SSA entry to correct section4f6a832ssa: minor cleanup of loop variables (no behavior change)80d253dfix(ssa): adjust top margin to prevent clipping of top-positioned CEA-608 captions2294dd4Merge branch 'master' into feat/ssa-ass-precise-positioninga9cadddUpdate CHANGES.TXT for version 0.96.6📊 Changes
3 files changed (+90 additions, -0 deletions)
View changed files
📝
docs/CHANGES.TXT(+1 -0)📝
src/lib_ccx/ccx_encoders_common.c(+2 -0)📝
src/lib_ccx/ccx_encoders_ssa.c(+87 -0)📄 Description
In raising this pull request, I confirm the following (please check boxes):
My familiarity with the project is as follows (check one):
[FEATURE] - Add ASS/SSA \pos positioning for CEA-608 captions (feature request #1726)
Summary
Implements precise positioning for ASS/SSA subtitle export using
\pos(x,y)tags, replacing whitespace-based layout where sufficient positioning information is available.Fixes #1726
Changes
ass_position_from_row()function to map CEA-608 rows to ASS coordinates{\an2\pos(x,y)}positioning tags for single-region captions (1-2 rows)Design Decisions
Positioning is intentionally conservative:
avoid unsafe display areas
Resolution choice:
This improves visual consistency without changing caption semantics or risking regressions on complex roll-up layouts.
Testing
Future Enhancements
Fuller grid-based positioning and horizontal placement derived from CEA-608 semantics; however, this involves additional
interpretation of PAC data and roll-up behavior and is intentionally out of scope for this change.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.