From 4195e1acb04535723023c23e96ffbaaca4a30bea Mon Sep 17 00:00:00 2001 From: Frankenstone Date: Thu, 2 Dec 2021 16:59:21 +0100 Subject: [PATCH] libarmbox: hdmi_colormetry added choices: - auto - bt202ncl - bt2020cl - bt709 Origin commit data ------------------ Branch: master Commit: https://github.com/neutrino-images/ni-libstb-hal/commit/bf895e3bdcfa4d75c8470e12e873ddc2d3df8ad3 Author: Frankenstone Date: 2021-12-02 (Thu, 02 Dec 2021) ------------------ This commit was generated by Migit --- libarmbox/video.cpp | 22 ++++++++++++++++++++++ libarmbox/video_lib.h | 9 +++++++++ 2 files changed, 31 insertions(+) diff --git a/libarmbox/video.cpp b/libarmbox/video.cpp index d1172b9..e148727 100644 --- a/libarmbox/video.cpp +++ b/libarmbox/video.cpp @@ -1238,6 +1238,28 @@ void cVideo::SetColorFormat(COLOR_FORMAT color_format) proc_put("/proc/stb/video/hdmi_colorspace", p, strlen(p)); } +void cVideo::SetHdmiMode(HDMI_MODE hdmi_mode) +{ + const char *p = NULL; + switch (hdmi_mode) + { + case HDMI_MODE_AUTO: + p = "auto"; + break; + case HDMI_MODE_BT2020NCL: + p = "bt2020ncl"; + break; + case HDMI_MODE_BT2020CL: + p = "bt2020cl"; + break; + case HDMI_MODE_BT709: + p = "bt709"; + break; + } + if (p) + proc_put("/proc/stb/video/hdmi_colorimetry", p, strlen(p)); +} + bool getvideo2(unsigned char *video, int xres, int yres) { bool ret = false; diff --git a/libarmbox/video_lib.h b/libarmbox/video_lib.h index ca19814..c830427 100644 --- a/libarmbox/video_lib.h +++ b/libarmbox/video_lib.h @@ -36,6 +36,14 @@ typedef enum COLORFORMAT_HDMI_YCBCR420 } COLOR_FORMAT; +typedef enum +{ + HDMI_MODE_AUTO, + HDMI_MODE_BT2020NCL, + HDMI_MODE_BT2020CL, + HDMI_MODE_BT709 +}HDMI_MODE; + typedef enum { VIDEO_FORMAT_MPEG2 = 0, @@ -277,6 +285,7 @@ class cVideo int StopVBI(void) { return 0; }; void SetDemux(cDemux *dmx); void SetColorFormat(COLOR_FORMAT color_format); + void SetHdmiMode(HDMI_MODE hdmi_mode); bool GetScreenImage(unsigned char *&data, int &xres, int &yres, bool get_video = true, bool get_osd = false, bool scale_to_video = false); };