[vlc-commits] codec: ttml: fix default alignment values
Francois Cartegnie
git at videolan.org
Fri Nov 24 10:30:00 CET 2017
vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Fri Nov 24 10:29:01 2017 +0100| [41df966452ad9101208b067f9593dc45ccb9a244] | committer: Francois Cartegnie
codec: ttml: fix default alignment values
refs #19147 #19146
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=41df966452ad9101208b067f9593dc45ccb9a244
---
modules/codec/substext.h | 4 ++--
modules/codec/ttml/substtml.c | 18 +++++++++++-------
2 files changed, 13 insertions(+), 9 deletions(-)
diff --git a/modules/codec/substext.h b/modules/codec/substext.h
index 9db0cceaab..a0aab57440 100644
--- a/modules/codec/substext.h
+++ b/modules/codec/substext.h
@@ -75,8 +75,8 @@ static inline void SubpictureUpdaterSysRegionClean(subpicture_updater_sys_region
static inline void SubpictureUpdaterSysRegionInit(subpicture_updater_sys_region_t *p_updtregion)
{
memset(p_updtregion, 0, sizeof(*p_updtregion));
- p_updtregion->align = SUBPICTURE_ALIGN_BOTTOM /* CENTER */;
- p_updtregion->inner_align = SUBPICTURE_ALIGN_BOTTOM /* CENTER */;
+ p_updtregion->align = SUBPICTURE_ALIGN_TOP;
+ p_updtregion->inner_align = SUBPICTURE_ALIGN_LEFT;
}
static inline subpicture_updater_sys_region_t *SubpictureUpdaterSysRegionNew( )
diff --git a/modules/codec/ttml/substtml.c b/modules/codec/ttml/substtml.c
index 3033bb0c98..6a0787d918 100644
--- a/modules/codec/ttml/substtml.c
+++ b/modules/codec/ttml/substtml.c
@@ -187,8 +187,8 @@ static ttml_region_t *ttml_region_New( )
SubpictureUpdaterSysRegionInit( &p_ttml_region->updt );
p_ttml_region->pp_last_segment = &p_ttml_region->updt.p_segments;
- /* Align to bottom by default. !Warn: center align is obtained with NO flags */
- p_ttml_region->updt.align = SUBPICTURE_ALIGN_BOTTOM;
+ /* Align to top by default. !Warn: center align is obtained with NO flags */
+ p_ttml_region->updt.align = SUBPICTURE_ALIGN_TOP;
return p_ttml_region;
}
@@ -356,10 +356,11 @@ static void FillRegionStyle( const char *psz_attr, const char *psz_val,
if( !strcasecmp( "tts:displayAlign", psz_attr ) )
{
p_region->updt.inner_align &= ~(SUBPICTURE_ALIGN_TOP|SUBPICTURE_ALIGN_BOTTOM);
- if( !strcasecmp ( "before", psz_val ) )
- p_region->updt.inner_align |= SUBPICTURE_ALIGN_TOP;
- else if( !strcasecmp ( "after", psz_val ) )
+ if( !strcasecmp( "after", psz_val ) )
p_region->updt.inner_align |= SUBPICTURE_ALIGN_BOTTOM;
+ else if( strcasecmp( "center", psz_val ) )
+ /* "before" */
+ p_region->updt.inner_align |= SUBPICTURE_ALIGN_TOP;
}
else if( !strcasecmp ( "tts:origin", psz_attr ) ||
!strcasecmp ( "tts:extent", psz_attr ) )
@@ -459,10 +460,12 @@ static void FillTTMLStyle( const char *psz_attr, const char *psz_val,
p_ttml_style->i_text_align |= SUBPICTURE_ALIGN_LEFT;
else if( !strcasecmp ( "right", psz_val ) )
p_ttml_style->i_text_align |= SUBPICTURE_ALIGN_RIGHT;
- else if( !strcasecmp ( "start", psz_val ) ) /* FIXME: should be BIDI based */
- p_ttml_style->i_text_align |= SUBPICTURE_ALIGN_LEFT;
else if( !strcasecmp ( "end", psz_val ) ) /* FIXME: should be BIDI based */
p_ttml_style->i_text_align |= SUBPICTURE_ALIGN_RIGHT;
+ else if( strcasecmp ( "center", psz_val ) )
+ /* == "start" FIXME: should be BIDI based */
+ p_ttml_style->i_text_align |= SUBPICTURE_ALIGN_LEFT;
+ printf("**%s %x\n", psz_val, p_ttml_style->i_text_align);
}
else if( !strcasecmp( "tts:fontSize", psz_attr ) )
{
@@ -797,6 +800,7 @@ static void AppendTextToRegion( ttml_context_t *p_ctx, const tt_textnode_t *p_tt
/* we don't have paragraph, so no per text line alignment.
* Text style brings horizontal textAlign to region.
* Region itself is styled with vertical displayAlign */
+ p_region->updt.inner_align &= ~(SUBPICTURE_ALIGN_LEFT|SUBPICTURE_ALIGN_RIGHT);
p_region->updt.inner_align |= s->i_text_align;
ttml_style_Delete( s );
More information about the vlc-commits
mailing list