drm: Unset COLOR_RANGE and COLOR_ENCODING if not YCbCr or unbound
This commit is contained in:
parent
e2bc5d4c71
commit
60513c0925
1 changed files with 13 additions and 2 deletions
15
src/drm.cpp
15
src/drm.cpp
|
@ -1391,12 +1391,23 @@ drm_prepare_liftoff( struct drm_t *drm, const struct FrameInfo_t *frameInfo )
|
|||
liftoff_layer_set_property( drm->lo_layers[ i ], "CRTC_W", crtcW);
|
||||
liftoff_layer_set_property( drm->lo_layers[ i ], "CRTC_H", crtcH);
|
||||
|
||||
liftoff_layer_set_property( drm->lo_layers[ i ], "COLOR_ENCODING", drm_get_color_encoding( g_ForcedNV12ColorSpace ) );
|
||||
liftoff_layer_set_property( drm->lo_layers[ i ], "COLOR_RANGE", drm_get_color_range( g_ForcedNV12ColorSpace ) );
|
||||
if ( frameInfo->layers[i].isYcbcr() )
|
||||
{
|
||||
liftoff_layer_set_property( drm->lo_layers[ i ], "COLOR_ENCODING", drm_get_color_encoding( g_ForcedNV12ColorSpace ) );
|
||||
liftoff_layer_set_property( drm->lo_layers[ i ], "COLOR_RANGE", drm_get_color_range( g_ForcedNV12ColorSpace ) );
|
||||
}
|
||||
else
|
||||
{
|
||||
liftoff_layer_unset_property( drm->lo_layers[ i ], "COLOR_ENCODING" );
|
||||
liftoff_layer_unset_property( drm->lo_layers[ i ], "COLOR_RANGE" );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
liftoff_layer_set_property( drm->lo_layers[ i ], "FB_ID", 0 );
|
||||
|
||||
liftoff_layer_unset_property( drm->lo_layers[ i ], "COLOR_ENCODING" );
|
||||
liftoff_layer_unset_property( drm->lo_layers[ i ], "COLOR_RANGE" );
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue