18 using MythHDRDesc = std::tuple<MythHDR::HDRTypes,double,double,double>;
26 MythEDID(
const char* Data,
int Length);
29 QStringList SerialNumbers ()
const;
30 QSize DisplaySize ()
const;
31 double DisplayAspect ()
const;
36 bool IsLikeSRGB ()
const;
38 int AudioLatency (
bool Interlaced)
const;
39 int VideoLatency (
bool Interlaced)
const;
54 bool ParseBaseBlock (
const quint8* Data);
55 void ParseDisplayDescriptor(
const quint8* Data,
uint Offset);
56 void ParseDetailedTimingDescriptor(
const quint8* Data,
size_t Offset);
57 bool ParseCTA861 (
const quint8* Data,
size_t Offset);
58 bool ParseCTABlock (
const quint8* Data,
size_t Offset);
59 bool ParseVSDB (
const quint8* Data,
size_t Offset,
size_t Length);
60 bool ParseExtended (
const quint8* Data,
size_t Offset,
size_t Length);
62 bool m_valid {
false };
65 quint8 m_minorVersion { 0 };
67 double m_displayAspect { 0.0 };
70 int m_vrangeMin { 0 };
71 int m_vrangeMax { 0 };
72 float m_gamma { 0.0F };
73 bool m_sRGB {
false };
74 bool m_likeSRGB {
false };
76 bool m_isHDMI {
false };
78 uint8_t m_deepColor { 0 };
79 bool m_latencies {
false };
80 bool m_interLatencies {
false };
81 std::array<int,2> m_audioLatency { 0 };
82 std::array<int,2> m_videoLatency { 0 };
83 uint8_t m_deepYUV { 0 };
86 int m_hdrMetaTypes { 0 };
88 double m_maxLuminance { 0.0 };
89 double m_maxAvgLuminance { 0.0 };
90 double m_minLuminance { 0.0 };