Commit dadda229 authored by Mark Lee's avatar Mark Lee Committed by Rémi Denis-Courmont

lib: map the position enum to the correct subpicture alignment bitmasks

libvlc_media_player_set_video_title_display() was wrongly using the
enum value directly, leading to the video title appearing in the wrong
position for some values
Signed-off-by: default avatarRémi Denis-Courmont <remi@remlab.net>
parent 4807e99b
......@@ -1446,12 +1446,30 @@ void libvlc_media_player_next_frame( libvlc_media_player_t *p_mi )
}
}
/**
* Private lookup table to get subpicture alignment flag values corresponding
* to a libvlc_position_t enumerated value.
*/
static const int position_subpicture_alignment[] = {
0,
SUBPICTURE_ALIGN_LEFT,
SUBPICTURE_ALIGN_RIGHT,
SUBPICTURE_ALIGN_TOP,
SUBPICTURE_ALIGN_TOP | SUBPICTURE_ALIGN_LEFT,
SUBPICTURE_ALIGN_TOP | SUBPICTURE_ALIGN_RIGHT,
SUBPICTURE_ALIGN_BOTTOM,
SUBPICTURE_ALIGN_BOTTOM | SUBPICTURE_ALIGN_LEFT,
SUBPICTURE_ALIGN_BOTTOM | SUBPICTURE_ALIGN_RIGHT
};
void libvlc_media_player_set_video_title_display( libvlc_media_player_t *p_mi, libvlc_position_t position, unsigned timeout )
{
assert( position >= libvlc_position_disable && position <= libvlc_position_bottom_right );
if ( position != libvlc_position_disable )
{
var_SetBool( p_mi, "video-title-show", true );
var_SetInteger( p_mi, "video-title-position", position );
var_SetInteger( p_mi, "video-title-position", position_subpicture_alignment[position] );
var_SetInteger( p_mi, "video-title-timeout", timeout );
}
else
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment