MythTV
master
|
#include <libmythui/mythedid.h>
Public Member Functions | |
MythEDID ()=default | |
MythEDID (QByteArray Data) | |
MythEDID (const char *Data, int Length) | |
bool | Valid () const |
QStringList | SerialNumbers () const |
QSize | DisplaySize () const |
double | DisplayAspect () const |
uint16_t | PhysicalAddress () const |
float | Gamma () const |
bool | IsHDMI () const |
bool | IsSRGB () const |
bool | IsLikeSRGB () const |
MythColourSpace | ColourPrimaries () const |
int | AudioLatency (bool Interlaced) const |
int | VideoLatency (bool Interlaced) const |
void | Debug () const |
MythHDRDesc | GetHDRSupport () const |
MythVRRRange | GetVRRRange () const |
Return the range of supported refresh rates. More... | |
Private Types | |
enum | HDREOTF : std::uint8_t { SDR = 1 << 0, HDRTrad = 1 << 1, HDR10 = 1 << 2, HLG = 1 << 3 } |
Private Member Functions | |
void | Parse () |
bool | ParseBaseBlock (const quint8 *Data) |
void | ParseDisplayDescriptor (const quint8 *Data, uint Offset) |
void | ParseDetailedTimingDescriptor (const quint8 *Data, size_t Offset) |
bool | ParseCTA861 (const quint8 *Data, size_t Offset) |
bool | ParseCTABlock (const quint8 *Data, size_t Offset) |
bool | ParseVSDB (const quint8 *Data, size_t Offset, size_t Length) |
bool | ParseExtended (const quint8 *Data, size_t Offset, size_t Length) |
Private Attributes | |
bool | m_valid { false } |
QByteArray | m_data |
size_t | m_size { 0 } |
quint8 | m_minorVersion { 0 } |
QSize | m_displaySize |
double | m_displayAspect { 0.0 } |
QStringList | m_serialNumbers |
QString | m_name |
int | m_vrangeMin { 0 } |
int | m_vrangeMax { 0 } |
float | m_gamma { 0.0F } |
bool | m_sRGB { false } |
bool | m_likeSRGB { false } |
MythColourSpace | m_primaries { {{{0.0F}}}, {0.0F} } |
bool | m_isHDMI { false } |
uint16_t | m_physicalAddress { 0 } |
uint8_t | m_deepColor { 0 } |
bool | m_latencies { false } |
bool | m_interLatencies { false } |
std::array< int, 2 > | m_audioLatency { 0 } |
std::array< int, 2 > | m_videoLatency { 0 } |
uint8_t | m_deepYUV { 0 } |
int | m_vrrMin { 0 } |
int | m_vrrMax { 0 } |
int | m_hdrMetaTypes { 0 } |
MythHDR::HDRTypes | m_hdrSupport { MythHDR::SDR } |
double | m_maxLuminance { 0.0 } |
double | m_maxAvgLuminance { 0.0 } |
double | m_minLuminance { 0.0 } |
Definition at line 21 of file mythedid.h.
|
private |
Enumerator | |
---|---|
SDR | |
HDRTrad | |
HDR10 | |
HLG |
Definition at line 45 of file mythedid.h.
|
default |
|
explicit |
Definition at line 27 of file mythedid.cpp.
MythEDID::MythEDID | ( | const char * | Data, |
int | Length | ||
) |
Definition at line 33 of file mythedid.cpp.
bool MythEDID::Valid | ( | ) | const |
Definition at line 39 of file mythedid.cpp.
Referenced by MythDisplay::InitHDR(), MythDRMDevice::Initialise(), MythDisplay::Initialise(), MythCECAdapter::Open(), MythDisplayRPI::SwitchToVideoMode(), and MythDisplayRPI::UpdateCurrentMode().
QStringList MythEDID::SerialNumbers | ( | ) | const |
Definition at line 44 of file mythedid.cpp.
Referenced by MythDRMDevice::Initialise().
QSize MythEDID::DisplaySize | ( | ) | const |
Definition at line 49 of file mythedid.cpp.
Referenced by MythDisplayRPI::UpdateCurrentMode().
double MythEDID::DisplayAspect | ( | ) | const |
Definition at line 54 of file mythedid.cpp.
uint16_t MythEDID::PhysicalAddress | ( | ) | const |
Definition at line 59 of file mythedid.cpp.
Referenced by MythCECAdapter::Open().
float MythEDID::Gamma | ( | ) | const |
Definition at line 64 of file mythedid.cpp.
bool MythEDID::IsHDMI | ( | ) | const |
Definition at line 69 of file mythedid.cpp.
Referenced by MythDisplayRPI::SwitchToVideoMode().
bool MythEDID::IsSRGB | ( | ) | const |
Definition at line 74 of file mythedid.cpp.
Referenced by MythDisplay::Initialise().
bool MythEDID::IsLikeSRGB | ( | ) | const |
Definition at line 79 of file mythedid.cpp.
MythColourSpace MythEDID::ColourPrimaries | ( | ) | const |
Definition at line 84 of file mythedid.cpp.
int MythEDID::AudioLatency | ( | bool | Interlaced | ) | const |
Definition at line 89 of file mythedid.cpp.
int MythEDID::VideoLatency | ( | bool | Interlaced | ) | const |
Definition at line 94 of file mythedid.cpp.
void MythEDID::Debug | ( | ) | const |
Definition at line 485 of file mythedid.cpp.
Referenced by MythDisplayRPI::UpdateCurrentMode().
MythHDRDesc MythEDID::GetHDRSupport | ( | ) | const |
Definition at line 99 of file mythedid.cpp.
Referenced by MythDisplay::InitHDR().
MythVRRRange MythEDID::GetVRRRange | ( | ) | const |
Return the range of supported refresh rates.
If the VRR range is explicit in the EDID then the third element of MythVRRRange is set to true, otherwise 'false' indicates that the VRR range is assumed from the vertical refresh range indicated in the EDID. In both cases the behaviour of the display below any minimum is undefined (e.g. there is no current indication whether the display supports 'FreeSync Premium' - in which case low frame rates may produce significant jitter).
Definition at line 113 of file mythedid.cpp.
Referenced by MythVRR::Create().
|
private |
Definition at line 143 of file mythedid.cpp.
Referenced by MythEDID().
|
private |
Definition at line 197 of file mythedid.cpp.
Referenced by Parse().
|
private |
Definition at line 294 of file mythedid.cpp.
Referenced by ParseBaseBlock().
|
private |
Definition at line 325 of file mythedid.cpp.
Referenced by ParseBaseBlock().
|
private |
Definition at line 340 of file mythedid.cpp.
Referenced by Parse().
|
private |
Definition at line 357 of file mythedid.cpp.
Referenced by ParseCTA861().
|
private |
Definition at line 374 of file mythedid.cpp.
Referenced by ParseCTABlock().
|
private |
Definition at line 455 of file mythedid.cpp.
Referenced by ParseCTABlock().
Definition at line 62 of file mythedid.h.
Referenced by Debug(), GetVRRRange(), Parse(), ParseBaseBlock(), and Valid().
|
private |
Definition at line 63 of file mythedid.h.
Referenced by Parse().
|
private |
Definition at line 64 of file mythedid.h.
Referenced by Debug(), Parse(), ParseCTA861(), ParseExtended(), and ParseVSDB().
|
private |
Definition at line 65 of file mythedid.h.
Referenced by Debug(), ParseBaseBlock(), and ParseDisplayDescriptor().
|
private |
Definition at line 66 of file mythedid.h.
Referenced by DisplaySize(), ParseBaseBlock(), and ParseDetailedTimingDescriptor().
|
private |
Definition at line 67 of file mythedid.h.
Referenced by DisplayAspect(), and ParseBaseBlock().
|
private |
Definition at line 68 of file mythedid.h.
Referenced by ParseBaseBlock(), ParseDisplayDescriptor(), and SerialNumbers().
|
private |
Definition at line 69 of file mythedid.h.
Referenced by ParseDisplayDescriptor().
|
private |
Definition at line 70 of file mythedid.h.
Referenced by GetVRRRange(), and ParseDisplayDescriptor().
|
private |
Definition at line 71 of file mythedid.h.
Referenced by GetVRRRange(), and ParseDisplayDescriptor().
|
private |
Definition at line 72 of file mythedid.h.
Referenced by Debug(), Gamma(), and ParseBaseBlock().
Definition at line 73 of file mythedid.h.
Referenced by Debug(), IsSRGB(), and ParseBaseBlock().
Definition at line 74 of file mythedid.h.
Referenced by IsLikeSRGB(), and ParseBaseBlock().
|
private |
Definition at line 75 of file mythedid.h.
Referenced by ColourPrimaries(), Debug(), and ParseBaseBlock().
Definition at line 76 of file mythedid.h.
Referenced by IsHDMI(), and ParseVSDB().
|
private |
Definition at line 77 of file mythedid.h.
Referenced by Debug(), ParseVSDB(), and PhysicalAddress().
|
private |
Definition at line 78 of file mythedid.h.
Referenced by Debug(), and ParseVSDB().
Definition at line 79 of file mythedid.h.
Referenced by Debug(), and ParseVSDB().
Definition at line 80 of file mythedid.h.
Referenced by Debug(), and ParseVSDB().
|
private |
Definition at line 81 of file mythedid.h.
Referenced by AudioLatency(), Debug(), and ParseVSDB().
|
private |
Definition at line 82 of file mythedid.h.
Referenced by Debug(), ParseVSDB(), and VideoLatency().
|
private |
Definition at line 83 of file mythedid.h.
Referenced by Debug(), and ParseVSDB().
|
private |
Definition at line 84 of file mythedid.h.
Referenced by Debug(), GetVRRRange(), and ParseVSDB().
|
private |
Definition at line 85 of file mythedid.h.
Referenced by Debug(), GetVRRRange(), and ParseVSDB().
|
private |
Definition at line 86 of file mythedid.h.
Referenced by ParseExtended().
|
private |
Definition at line 87 of file mythedid.h.
Referenced by Debug(), GetHDRSupport(), and ParseExtended().
|
private |
Definition at line 88 of file mythedid.h.
Referenced by Debug(), GetHDRSupport(), and ParseExtended().
|
private |
Definition at line 89 of file mythedid.h.
Referenced by Debug(), GetHDRSupport(), and ParseExtended().
|
private |
Definition at line 90 of file mythedid.h.
Referenced by Debug(), GetHDRSupport(), and ParseExtended().