diff --git a/definitions/Definitions.cpp b/definitions/Definitions.cpp
index 9b690c39..7d5ee9e6 100644
--- a/definitions/Definitions.cpp
+++ b/definitions/Definitions.cpp
@@ -108,7 +108,6 @@ struct ScreenResolutionWidthHeight {
ScreenResolutionWidthHeight resolutionWidthHeightTable[] = {
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_Unknown, 0, 0, 0 },
{ Exchange::IDeviceVideoCapabilities::ScreenResolution_480i, 640, 480, 60000 },
{ Exchange::IDeviceVideoCapabilities::ScreenResolution_480p, 640, 480, 60000 },
{ Exchange::IDeviceVideoCapabilities::ScreenResolution_576i, 1024, 576, 60000 },
@@ -170,85 +169,6 @@ ENUM_CONVERSION_BEGIN(Exchange::IBrightness::Brightness)
{ Exchange::IBrightness::SdrToHdrGraphicsBrightness_Max, _TXT("max") },
ENUM_CONVERSION_END(Exchange::IBrightness::Brightness)
-ENUM_CONVERSION_BEGIN(Exchange::IDeviceAudioCapabilities::AudioOutput)
- { Exchange::IDeviceAudioCapabilities::AudioOutput::AUDIO_OTHER, _TXT("OTHER") },
- { Exchange::IDeviceAudioCapabilities::AudioOutput::AUDIO_ANALOG, _TXT("ANALOG") },
- { Exchange::IDeviceAudioCapabilities::AudioOutput::AUDIO_DISPLAYPORT, _TXT("DISPLAYPORT") },
- { Exchange::IDeviceAudioCapabilities::AudioOutput::AUDIO_HDMI0, _TXT("HDMI0") },
- { Exchange::IDeviceAudioCapabilities::AudioOutput::AUDIO_HDMI1, _TXT("HDMI1") },
- { Exchange::IDeviceAudioCapabilities::AudioOutput::AUDIO_RF_MODULATOR, _TXT("RF_MODULATOR") },
- { Exchange::IDeviceAudioCapabilities::AudioOutput::AUDIO_SPDIF, _TXT("SPDIF0") },
-ENUM_CONVERSION_END(Exchange::IDeviceAudioCapabilities::AudioOutput)
-
-ENUM_CONVERSION_BEGIN(Exchange::IDeviceAudioCapabilities::AudioCapability)
- { Exchange::IDeviceAudioCapabilities::AudioCapability::AUDIOCAPABILITY_NONE, _TXT("audiocapability_none") },
- { Exchange::IDeviceAudioCapabilities::AudioCapability::ATMOS, _TXT("atmos") },
- { Exchange::IDeviceAudioCapabilities::AudioCapability::DD, _TXT("dd") },
- { Exchange::IDeviceAudioCapabilities::AudioCapability::DDPLUS, _TXT("ddplus") },
- { Exchange::IDeviceAudioCapabilities::AudioCapability::DAD, _TXT("dad") },
- { Exchange::IDeviceAudioCapabilities::AudioCapability::DAPV2, _TXT("dapv2") },
- { Exchange::IDeviceAudioCapabilities::AudioCapability::MS12, _TXT("ms12") },
-ENUM_CONVERSION_END(Exchange::IDeviceAudioCapabilities::AudioCapability)
-
-ENUM_CONVERSION_BEGIN(Exchange::IDeviceAudioCapabilities::MS12Capability)
- { Exchange::IDeviceAudioCapabilities::MS12Capability::MS12CAPABILITY_NONE, _TXT("ms12capability_none") },
- { Exchange::IDeviceAudioCapabilities::MS12Capability::DOLBYVOLUME, _TXT("dolbyvolume") },
- { Exchange::IDeviceAudioCapabilities::MS12Capability::INTELIGENTEQUALIZER, _TXT("inteligentequalizer") },
- { Exchange::IDeviceAudioCapabilities::MS12Capability::DIALOGUEENHANCER, _TXT("dialogueenhancer") },
-ENUM_CONVERSION_END(Exchange::IDeviceAudioCapabilities::MS12Capability)
-
-ENUM_CONVERSION_BEGIN(Exchange::IDeviceAudioCapabilities::MS12Profile)
- { Exchange::IDeviceAudioCapabilities::MS12Profile::MS12PROFILE_NONE, _TXT("ms12profile_none") },
- { Exchange::IDeviceAudioCapabilities::MS12Profile::MUSIC, _TXT("music") },
- { Exchange::IDeviceAudioCapabilities::MS12Profile::MOVIE, _TXT("movie") },
- { Exchange::IDeviceAudioCapabilities::MS12Profile::VOICE, _TXT("voice") },
-ENUM_CONVERSION_END(Exchange::IDeviceAudioCapabilities::MS12Profile)
-
-ENUM_CONVERSION_BEGIN(Exchange::IDeviceVideoCapabilities::VideoOutput)
- { Exchange::IDeviceVideoCapabilities::VideoOutput::VIDEO_COMPONENT, _TXT("COMPONENT") },
- { Exchange::IDeviceVideoCapabilities::VideoOutput::VIDEO_COMPOSITE, _TXT("COMPOSITE") },
- { Exchange::IDeviceVideoCapabilities::VideoOutput::VIDEO_DISPLAYPORT, _TXT("DISPLAYPORT") },
- { Exchange::IDeviceVideoCapabilities::VideoOutput::VIDEO_HDMI0, _TXT("HDMI0") },
- { Exchange::IDeviceVideoCapabilities::VideoOutput::VIDEO_HDMI1, _TXT("HDMI1") },
- { Exchange::IDeviceVideoCapabilities::VideoOutput::VIDEO_OTHER, _TXT("OTHER") },
- { Exchange::IDeviceVideoCapabilities::VideoOutput::VIDEO_RF_MODULATOR, _TXT("RF_MODULATOR") },
- { Exchange::IDeviceVideoCapabilities::VideoOutput::VIDEO_SCART_RGB, _TXT("SCART_RGB") },
- { Exchange::IDeviceVideoCapabilities::VideoOutput::VIDEO_SVIDEO, _TXT("SVIDEO") },
-ENUM_CONVERSION_END(Exchange::IDeviceVideoCapabilities::VideoOutput)
-
-ENUM_CONVERSION_BEGIN(Exchange::IDeviceVideoCapabilities::ScreenResolution)
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_Unknown, _TXT("Unknown") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_480i, _TXT("480i") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_480p, _TXT("480p") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_576i, _TXT("576i") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_576p, _TXT("576p") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_576p50Hz, _TXT("576p50") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_720p, _TXT("720p") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_720p50Hz, _TXT("720p50") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_1080i ,_TXT("1080i") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_1080i25Hz ,_TXT("1080i25") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_1080i50Hz ,_TXT("1080i50") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_1080p ,_TXT("1080p") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_1080p24Hz, _TXT("1080p24") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_1080p25Hz, _TXT("1080p25") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_1080p30Hz, _TXT("1080p30") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_1080p50Hz, _TXT("1080p50") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_1080p60Hz, _TXT("1080p60") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_2160p30Hz, _TXT("2160p30") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_2160p50Hz, _TXT("2160p50") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_2160p60Hz, _TXT("2160p60") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_4320p30Hz, _TXT("4320p30") },
- { Exchange::IDeviceVideoCapabilities::ScreenResolution_4320p60Hz, _TXT("4320p60") },
-ENUM_CONVERSION_END(Exchange::IDeviceVideoCapabilities::ScreenResolution)
-
-ENUM_CONVERSION_BEGIN(Exchange::IDeviceVideoCapabilities::CopyProtection)
- { Exchange::IDeviceVideoCapabilities::CopyProtection::HDCP_UNAVAILABLE, _TXT("unavailable") },
- { Exchange::IDeviceVideoCapabilities::CopyProtection::HDCP_14, _TXT("1.4") },
- { Exchange::IDeviceVideoCapabilities::CopyProtection::HDCP_20, _TXT("2.0") },
- { Exchange::IDeviceVideoCapabilities::CopyProtection::HDCP_21, _TXT("2.1") },
- { Exchange::IDeviceVideoCapabilities::CopyProtection::HDCP_22, _TXT("2.2") },
-ENUM_CONVERSION_END(Exchange::IDeviceVideoCapabilities::CopyProtection)
-
ENUM_CONVERSION_BEGIN(Exchange::IValuePoint::basic)
{ Exchange::IValuePoint::basic::regulator, _TXT("regulator") },
{ Exchange::IValuePoint::basic::measurement, _TXT("measurment") },
diff --git a/definitions/Definitions.vcxproj b/definitions/Definitions.vcxproj
index aa5b652b..3016455e 100644
--- a/definitions/Definitions.vcxproj
+++ b/definitions/Definitions.vcxproj
@@ -28,7 +28,9 @@
+
+
@@ -51,6 +53,7 @@
+
@@ -206,6 +209,20 @@
$(ProjectDir)../interfaces/json/JIOConnector.h
$(ProjectDir)../interfaces/json/JIOConnector.h
+
+ python "$(ToolPath)\JsonGenerator\JsonGenerator.py" -I "$(FrameworkPath)\" -I "$(ProjectDir)\" --keep-empty --case-convention legacy -c -j "$(ProjectDir)../interfaces" -o "$(ProjectDir)../interfaces/json" "%(FullPath)" --force
+ ClInclude
+ python "$(ToolPath)\JsonGenerator\JsonGenerator.py" -I "$(FrameworkPath)\" -I "$(ProjectDir)\" --keep-empty --case-convention legacy -c -j "$(ProjectDir)../interfaces" -o "$(ProjectDir)../interfaces/json" "%(FullPath)" --force
+ ClInclude
+ python "$(ToolPath)\JsonGenerator\JsonGenerator.py" -I "$(FrameworkPath)\" -I "$(ProjectDir)\" --keep-empty --case-convention legacy -c -j "$(ProjectDir)../interfaces" -o "$(ProjectDir)../interfaces/json" "%(FullPath)" --force
+ ClInclude
+ python "$(ToolPath)\JsonGenerator\JsonGenerator.py" -I "$(FrameworkPath)\" -I "$(ProjectDir)\" --keep-empty --case-convention legacy -c -j "$(ProjectDir)../interfaces" -o "$(ProjectDir)../interfaces/json" "%(FullPath)" --force
+ ClInclude
+ $(ProjectDir)../interfaces/json/JDeviceInfo.h
+ $(ProjectDir)../interfaces/json/JDeviceInfo.h
+ $(ProjectDir)../interfaces/json/JDeviceInfo.h
+ $(ProjectDir)../interfaces/json/JDeviceInfo.h
+
$(ProjectDir)../interfaces/json/JMath.h
@@ -367,9 +384,6 @@
Document
-
- Document
-
Document
diff --git a/definitions/Definitions.vcxproj.filters b/definitions/Definitions.vcxproj.filters
index 54122634..6ce08ddc 100644
--- a/definitions/Definitions.vcxproj.filters
+++ b/definitions/Definitions.vcxproj.filters
@@ -79,9 +79,6 @@
Generated Files
-
- Generated Files
-
Generated Files
@@ -121,6 +118,15 @@
Generated Files
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
@@ -149,9 +155,6 @@
JSON Files
-
- JSON Files
-
JSON Files
@@ -230,9 +233,6 @@
JSON Files
-
- JSON Files
-
JSON Files
@@ -260,6 +260,10 @@
Interface Files
+
+
+ Interface Files
+
diff --git a/interfaces/IDeviceInfo.h b/interfaces/IDeviceInfo.h
index 8410b80e..f213ebdf 100644
--- a/interfaces/IDeviceInfo.h
+++ b/interfaces/IDeviceInfo.h
@@ -24,60 +24,123 @@
// @stubgen:include
namespace Thunder {
+
namespace Exchange {
+ // @json 1.0.0 @text:legacy_lowercase
struct EXTERNAL IDeviceInfo : virtual public Core::IUnknown {
+
enum { ID = ID_DEVICE_INFO };
- virtual ~IDeviceInfo() override = default;
+ enum Type : uint8_t {
+ TV,
+ IP_STB,
+ QAM_IP_STB,
+ HYBRID,
+ MEDIA_CLIENT
+ };
+
+ struct FirmwareInfo {
+ string imageName /* @brief Name of firmware image (e.g. PX051AEI_VBN_2203_sprint_20220331225312sdy_NG) */;
+ Core::OptionalType sdk /* @brief SDK version string (e.g. 17.3) */;
+ Core::OptionalType mediarite /* @brief Mediarite value (e.g. 8.3.53) */;
+ Core::OptionalType build /* @brief Yocto version (e.g. dunfell) */;
+ };
+
+ // @property
+ // @brief Device serial number
+ // @param value: Serial number set by manufacturer (e.g. PAW400003744)
+ // @retval ERROR_UNAVAILABLE: Information about the serial number of the device is not available
+ virtual Core::hresult SerialNumber(string& value /* @out */) const = 0;
+
+ // @property
+ // @brief Device model number or stock keeping unit (SKU)
+ // @param value: Model number or SKU of the device (e.g. PX051AEI)
+ // @retval ERROR_UNAVAILABLE: Information about the model number or SKU of the device is not available
+ virtual Core::hresult ModelID(string& value /* @out */) const = 0;
+
+ // @property
+ // @brief Device manufacturer
+ // @param value: Manufacturer of the device (e.g. pace)
+ // @retval ERROR_UNAVAILABLE: Information about the manufacturer of the device is not available
+ virtual Core::hresult Make(string& value /* @out */) const = 0;
+
+ // @property
+ // @brief Device model name
+ // @param value: Model name of the device (e.g. Pace Xi5)
+ // @reval ERROR_UNAVAILABLE: Information about the model name of the device is not available
+ virtual Core::hresult ModelName(string& value /* @out */) const = 0;
+
+ // @property
+ // @brief Device model year
+ // @param value: Year of the model (e.g. 2020)
+ // @retval ERROR_UNAVAILABLE: Information about the model year of the device is not available
+ virtual Core::hresult ModelYear(uint16_t& value /* @out */) const = 0;
+
+ // @property
+ // @brief Device friendly name
+ // @param value: Friendly name of the device (e.g. My Device)
+ // @retval ERROR_UNAVAILABLE: Information about the friendly name of the device is not available
+ virtual Core::hresult FriendlyName(string& value /* @out */) const = 0;
+
+ // @property
+ // @brief Device type
+ // @param value: Type of the device (e.g. IP_STB)
+ // @retval ERROR_UNAVAILABLE: Information about a type of the device is not available
+ // @retval ERROR_UNKNOWN_KEY: The device type is not recognized
+ virtual Core::hresult DeviceType(Type& value /* @out */) const = 0;
- virtual uint32_t Configure(const PluginHost::IShell* service) = 0;
+ // @property
+ // @brief Device platform name
+ // @param value: Platform name of the device (e.g. Linux)
+ // @retval ERROR_UNAVAILABLE: Information about the platform name of the device is not available
+ virtual Core::hresult PlatformName(string& value /* @out */) const = 0;
- virtual uint32_t SerialNumber(string& value /* @out */) const = 0;
- virtual uint32_t Sku(string& value /* @out */) const = 0;
- virtual uint32_t Make(string& value /* @out */) const = 0;
- virtual uint32_t ModelName(string& value/*@out*/) const = 0;
- virtual uint32_t ModelYear(uint16_t& value/*@out*/) const = 0;
- virtual uint32_t FriendlyName(string& value/*@out*/) const = 0;
- virtual uint32_t DeviceType(string& value /* @out */) const = 0;
- virtual uint32_t PlatformName(string& value/*@out*/) const = 0;
- virtual uint32_t DistributorId(string& value /* @out */) const = 0;
+ // @property
+ // @brief Partner ID or distributor ID for device
+ // @param value: Partner ID or distributor ID for device (e.g. Comcast)
+ // @retval ERROR_UNAVAILABLE: Information about the distributor ID of the device is not available
+ virtual Core::hresult DistributorID(string& value /* @out */) const = 0;
+
+ // @property
+ // @alt:deprecated firmwareversion
+ // @brief Versions maintained in version.txt
+ // @param value: Name of the firmware image and its specific versions
+ // @retval ERROR_UNAVAILABLE: Information about the firmware version is not available
+ virtual Core::hresult Firmware(FirmwareInfo& value /* @out */) const = 0;
};
+ // @json 1.0.0 @text:legacy_lowercase
struct EXTERNAL IDeviceAudioCapabilities : virtual public Core::IUnknown {
- enum { ID = ID_DEVICE_CAPABILITIES_AUDIO };
- virtual ~IDeviceAudioCapabilities() override = default;
+ enum { ID = ID_DEVICE_CAPABILITIES_AUDIO };
enum AudioOutput : uint8_t {
- AUDIO_OTHER,
- AUDIO_RF_MODULATOR,
- AUDIO_ANALOG,
- AUDIO_SPDIF, //over RCA or TOSLINK
- AUDIO_HDMI0,
- AUDIO_HDMI1,
- AUDIO_DISPLAYPORT
+ OTHER,
+ RF_MODULATOR,
+ ANALOG,
+ SPDIF, //over RCA or TOSLINK
+ HDMI_0,
+ HDMI_1,
+ DISPLAY_PORT
};
enum AudioCapability : uint8_t {
- AUDIOCAPABILITY_NONE,
ATMOS,
DD,
- DDPLUS,
+ DD_PLUS,
DAD,
- DAPV2,
- MS12
+ DAP_V2,
+ MS_12
};
enum MS12Capability : uint8_t {
- MS12CAPABILITY_NONE,
- DOLBYVOLUME,
- INTELIGENTEQUALIZER,
- DIALOGUEENHANCER
+ DOLBY_VOLUME,
+ INTELIGENT_EQUALIZER,
+ DIALOGUE_ENHANCER
};
enum MS12Profile : uint8_t {
- MS12PROFILE_NONE,
MUSIC,
MOVIE,
VOICE
@@ -88,56 +151,79 @@ namespace Exchange {
typedef RPC::IIteratorType IMS12CapabilityIterator;
typedef RPC::IIteratorType IMS12ProfileIterator;
- virtual uint32_t AudioOutputs(IAudioOutputIterator*& audioOutputs /* @out */) const = 0;
- virtual uint32_t AudioCapabilities(const AudioOutput audioOutput /* @in */, IAudioCapabilityIterator*& audioCapabilities /* @out */) const = 0;
- virtual uint32_t MS12Capabilities(const AudioOutput audioOutput /* @in */, IMS12CapabilityIterator*& ms12Capabilities /* @out */) const = 0;
- virtual uint32_t MS12AudioProfiles(const AudioOutput audioOutput /* @in */, IMS12ProfileIterator*& ms12Profiles /* @out */) const = 0;
+ // @property
+ // @alt:deprecated supportedaudioports
+ // @brief Audio ports supported on the device (all ports that are physically present
+ // @param audioOutputs: An array of audio outputs supported by the device
+ // @retval ERROR_GENERAL: General error
+ virtual Core::hresult AudioOutputs(IAudioOutputIterator*& audioOutputs /* @out */) const = 0;
+
+ // @property
+ // @brief Audio capabilities for the specified audio port
+ // @param audioOutput: Audio output supported by the device
+ // @param audioCapabilities: An array of audio capabilities supported by specified port
+ // @retval ERROR_GENERAL: General error
+ virtual Core::hresult AudioCapabilities(const AudioOutput audioOutput /* @index */, IAudioCapabilityIterator*& audioCapabilities /* @out */) const = 0;
+
+ // @property
+ // @brief Audio ms12 capabilities for the specified audio port
+ // @param audioOutput: Audio output supported by the device
+ // @param ms12Capabilities: An array of MS12 audio capabilities supported by specified port
+ // @retval ERROR_GENERAL: General error
+ virtual Core::hresult MS12Capabilities(const AudioOutput audioOutput /* @index */, IMS12CapabilityIterator*& ms12Capabilities /* @out */) const = 0;
+
+ // @property
+ // @alt:deprecated supportedms12audioprofiles
+ // @brief Audio ms12 profiles for the specified audio port
+ // @param audioOutput: Audio output supported by the device
+ // @param ms12Profiles: An array of MS12 audio profiles supported by specified port
+ // @retval ERROR_GENERAL: General error
+ virtual Core::hresult MS12AudioProfiles(const AudioOutput audioOutput /* @index */, IMS12ProfileIterator*& ms12Profiles /* @out */) const = 0;
};
+ // @json 1.0.0 @text:legacy_lowercase
struct EXTERNAL IDeviceVideoCapabilities : virtual public Core::IUnknown {
- enum { ID = ID_DEVICE_CAPABILITIES_VIDEO };
- virtual ~IDeviceVideoCapabilities() override = default;
+ enum { ID = ID_DEVICE_CAPABILITIES_VIDEO };
enum VideoOutput : uint8_t {
- VIDEO_OTHER,
- VIDEO_RF_MODULATOR,
- VIDEO_COMPOSITE, // also composite over SCART
- VIDEO_SVIDEO,
- VIDEO_COMPONENT,
- VIDEO_SCART_RGB,
- VIDEO_HDMI0,
- VIDEO_HDMI1,
- VIDEO_DISPLAYPORT // also DisplayPort over USB-C
+ OTHER,
+ RF_MODULATOR,
+ COMPOSITE, // also composite over SCART
+ S_VIDEO,
+ COMPONENT,
+ SCART_RGB,
+ HDMI_0,
+ HDMI_1,
+ DISPLAY_PORT // also DisplayPort over USB-C
};
enum ScreenResolution : uint8_t {
- ScreenResolution_Unknown = 0,
- ScreenResolution_480i = 1,
- ScreenResolution_480p = 2,
- ScreenResolution_576i = 3,
- ScreenResolution_576p = 4,
- ScreenResolution_576p50Hz = 5,
- ScreenResolution_720p = 6,
- ScreenResolution_720p50Hz = 7,
- ScreenResolution_1080i = 8,
- ScreenResolution_1080i25Hz = 9,
- ScreenResolution_1080i50Hz = 10,
- ScreenResolution_1080p = 11,
- ScreenResolution_1080p24Hz = 12,
- ScreenResolution_1080p25Hz = 13,
- ScreenResolution_1080p30Hz = 14,
- ScreenResolution_1080p50Hz = 15,
- ScreenResolution_1080p60Hz = 16,
- ScreenResolution_2160p30Hz = 17,
- ScreenResolution_2160p50Hz = 18,
- ScreenResolution_2160p60Hz = 19,
- ScreenResolution_4320p30Hz = 20,
- ScreenResolution_4320p60Hz = 21
+ ScreenResolution_Unknown,
+ ScreenResolution_480i,
+ ScreenResolution_480p,
+ ScreenResolution_576i,
+ ScreenResolution_576p,
+ ScreenResolution_576p50Hz,
+ ScreenResolution_720p,
+ ScreenResolution_720p50Hz,
+ ScreenResolution_1080i,
+ ScreenResolution_1080i25Hz,
+ ScreenResolution_1080i50Hz,
+ ScreenResolution_1080p,
+ ScreenResolution_1080p24Hz,
+ ScreenResolution_1080p25Hz,
+ ScreenResolution_1080p30Hz,
+ ScreenResolution_1080p50Hz,
+ ScreenResolution_1080p60Hz,
+ ScreenResolution_2160p30Hz,
+ ScreenResolution_2160p50Hz,
+ ScreenResolution_2160p60Hz,
+ ScreenResolution_4320p30Hz,
+ ScreenResolution_4320p60Hz
};
enum CopyProtection : uint8_t {
- HDCP_UNAVAILABLE,
HDCP_14,
HDCP_20,
HDCP_21,
@@ -147,14 +233,140 @@ namespace Exchange {
typedef RPC::IIteratorType IVideoOutputIterator;
typedef RPC::IIteratorType IScreenResolutionIterator;
- virtual uint32_t VideoOutputs(IVideoOutputIterator*& videoOutputs /* @out */) const = 0;
- virtual uint32_t DefaultResolution(const VideoOutput videoOutput /* @in */, ScreenResolution& defaultResolution /* @out */) const = 0;
- virtual uint32_t Resolutions(const VideoOutput videoOutput /* @in */, IScreenResolutionIterator*& resolutions /* @out */) const = 0;
- virtual uint32_t Hdcp(const VideoOutput videoOutput /* @in */, CopyProtection& hdcpVersion /* @out */) const = 0;
- virtual uint32_t HostEDID(string& edid /* @out */) const = 0;
- virtual uint32_t HDR(bool& supportsHDR /*@out*/) const = 0;
- virtual uint32_t Atmos(bool& supportsAtmos /*@out*/) const = 0;
- virtual uint32_t CEC(bool& supportsCEC /*@out*/) const = 0;
+ // @property
+ // @alt:deprecated supportedvideoports
+ // @brief Video ports supported on the device (all ports that are physically present)
+ // @param videoOutputs: An array of video outputs supported by the device
+ // @retval ERROR_GENERAL: General error
+ virtual Core::hresult VideoOutputs(IVideoOutputIterator*& videoOutputs /* @out */) const = 0;
+
+ // @property
+ // @brief Default resolution for the specified video output
+ // @param videoOutput: Video output supported by the device
+ // @param defaultResolution: Default resolution supported by specified port
+ // @retval ERROR_UNKNOWN_KEY: Provided video output is not recognized
+ virtual Core::hresult DefaultResolution(const VideoOutput videoOutput /* @index */, ScreenResolution& defaultResolution /* @out */) const = 0;
+
+ // @property
+ // @alt:deprecated supportedresolutions
+ // @brief Resolutions supported by the specified video output
+ // @param videoOutput: Video output supported by the device
+ // @param resolutions: An array of resolutions supported by specified port
+ // @retval ERROR_UNKNOWN_KEY: Provided video output is not recognized
+ // @retval ERROR_GENERAL: General error
+ virtual Core::hresult Resolutions(const VideoOutput videoOutput /* @index */, IScreenResolutionIterator*& resolutions /* @out */) const = 0;
+
+ // @property
+ // @alt:deprecated supportedhdcp
+ // @brief High-bandwidth Digital Content Protection (HDCP) supported by the specified video output
+ // @param videoOutput: Video output supported by the device
+ // @param hdcpVersion: HDCP version supported by specified port
+ // @retval ERROR_UNKNOWN_KEY: Provided video output is not recognized
+ virtual Core::hresult Hdcp(const VideoOutput videoOutput /* @index */, CopyProtection& hdcpVersion /* @out */) const = 0;
+
+ // @property
+ // @brief Extended Display Identification Data (EDID) of the host
+ // @param edid: A base64 encoded byte array string representing the EDID of the host (e.g. AP///////wAQrMLQVEJTMQUdAQOANR546q11qVRNnSYPUFSlSwCBALMA0QBxT6lAgYDRwAEBVl4AoKCgKVAwIDUADighAAAaAAAA/wBNWTNORDkxVjFTQlQKAAAA/ABERUxMIFAyNDE4RAogAAAA/QAxVh1xHAAKICAgICAgARsCAxuxUJAFBAMCBxYBBhESFRMUHyBlAwwAEAACOoAYcTgtQFgsRQAOKCEAAB4BHYAYcRwWIFgsJQAOKCEAAJ6/FgCggDgTQDAgOgAOKCEAABp+OQCggDgfQDAgOgAOKCEAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2A)
+ virtual Core::hresult HostEDID(string& edid /* @out */) const = 0;
+
+ // @propety
+ // @brief HDR support by this device
+ // @param supportsHDR: True if device supports HDR, false otherwise
+ virtual Core::hresult HDR(bool& supportsHDR /* @out */) const = 0;
+
+ // @property
+ // @brief Atmos support by this device
+ // @param supportsAtmos: True if device supports Atmos, false otherwise
+ virtual Core::hresult Atmos(bool& supportsAtmos /* @out */) const = 0;
+
+ // @property
+ // @brief CEC support by this device
+ // @param supportsCEC: True if device supports CEC, false otherwise
+ virtual Core::hresult CEC(bool& supportsCEC /* @out */) const = 0;
+ };
+
+ // @json 1.0.0 @text:legacy_lowercase
+ struct EXTERNAL ISystemInfo : virtual public Core::IUnknown {
+
+ enum { ID = ID_SYSTEM_INFO };
+
+ struct CPULoads {
+ uint8_t avg1min /* @brief avarage CPU load over the last minute (e.g. 10) */;
+ uint8_t avg5min /* @brief avarage CPU load over the last 5 minutes (e.g. 15) */;
+ uint8_t avg15min /* @brief avarage CPU load over the last 15 minutes (e.g. 20) */;
+ };
+
+ struct NetworkInterface {
+ string name /* @brief Name of the network interface (e.g. lo) */;
+ string mac /* @brief MAC address of the network interface (e.g. 00:00:00:00:00:00) */;
+ Core::OptionalType> ipAddresses /* @brief List of IP addresses assigned to the network interface @restrict:100 */;
+ };
+
+ struct Sockets {
+ Core::OptionalType total /* @brief Total number of sockets (e.g. 1024) */;
+ Core::OptionalType open /* @brief Number of open sockets (e.g. 512) */;
+ Core::OptionalType link /* @brief Number of linked sockets (e.g. 256) */;
+ Core::OptionalType exception /* @brief Number of exceptions (e.g. 128) */;
+ Core::OptionalType shutdown /* @brief Number of sockets that were shut down (e.g. 64) */;
+ uint32_t runs /* @brief Number of resource monitor runs (e.g. 32) */;
+ };
+
+ typedef RPC::IIteratorType INetworkInterfaceIterator;
+
+ // @property
+ // @brief Software version (in form *version#hashtag*)
+ // param value: Software version of the device (e.g. 1.0#14452f612c3747645d54974255d11b8f3b4faa54)
+ virtual Core::hresult Version(string& value /* @out */) const = 0;
+
+ // @property
+ // @brief System uptime (in seconds)
+ // param value: System uptime in seconds (e.g. 120)
+ virtual Core::hresult Uptime(uint32_t& value /* @out */) const = 0;
+
+ // @property
+ // @brief Total installed system RAM (in bytes)
+ // param value: Total installed system RAM in bytes (e.g. 655757312)
+ virtual Core::hresult TotalRAM(uint64_t& value /* @out */) const = 0;
+
+ // @property
+ // @brief Free system RAM (in bytes)
+ // param value: System RAM still available in bytes (e.g. 563015680)
+ virtual Core::hresult FreeRAM(uint64_t& value /* @out */) const = 0;
+
+ // @property
+ // @brief Total swap space (in bytes)
+ // param value: Total swap space in bytes (e.g. 789132680)
+ virtual Core::hresult TotalSwap(uint64_t& value /* @out */) const = 0;
+
+ // @property
+ // @brief Free swap space (in bytes)
+ // param value: Swap space still available in bytes (e.g. 789132680)
+ virtual Core::hresult FreeSwap(uint64_t& value /* @out */) const = 0;
+
+ // @property
+ // @brief Host name
+ // param value: Host name of the device (e.g. buildroot)
+ virtual Core::hresult DeviceName(string& value /* @out */) const = 0;
+
+ // @property
+ // @brief Current CPU load (percentage)
+ // param value: Current CPU load in percentage (e.g. 2)
+ virtual Core::hresult CPULoad(uint8_t& value /* @out */) const = 0;
+
+ // @property
+ // @brief CPU load averages from 1, 5 and 15 minutes (percentage)
+ // param value: An array of three CPU load averages in percentage (e.g. [2, 3, 4])
+ virtual Core::hresult CPULoadAvgs(CPULoads& value /* @out */) const = 0;
+
+ // @property
+ // @brief Network interface addresses
+ // @param networkInterfaces: An array of network interfaces with their addresses
+ virtual Core::hresult Addresses(INetworkInterfaceIterator*& networkInterfaces /* @out */) const = 0;
+
+ // @property
+ // @brief Socket information
+ // @param socketInfo: Information about the sockets
+ virtual Core::hresult SocketInfo(Sockets& socketInfo /* @out */) const = 0;
};
}
}
diff --git a/interfaces/Ids.h b/interfaces/Ids.h
index f367d646..ec7c29f6 100644
--- a/interfaces/Ids.h
+++ b/interfaces/Ids.h
@@ -262,6 +262,8 @@ namespace Exchange {
ID_DEVICE_CAPABILITIES_VIDEO = ID_DEVICE_INFO + 6,
ID_DEVICE_CAPABILITIES_VIDEO_OUTPUT = ID_DEVICE_INFO + 7,
ID_DEVICE_CAPABILITIES_RESOLUTION = ID_DEVICE_INFO + 8,
+ ID_SYSTEM_INFO = ID_DEVICE_INFO + 9,
+ ID_SYSTEM_INFO_NETWORK_INTERFACE = ID_DEVICE_INFO + 10,
ID_DIALSERVER = RPC::IDS::ID_EXTERNAL_INTERFACE_OFFSET + 0x380,
ID_DIALSERVER_APPLICATION = ID_DIALSERVER + 1,
diff --git a/jsonrpc/DeviceInfo.json b/jsonrpc/DeviceInfo.json
deleted file mode 100644
index 21323476..00000000
--- a/jsonrpc/DeviceInfo.json
+++ /dev/null
@@ -1,1193 +0,0 @@
-{
- "$schema": "interface.schema.json",
- "jsonrpc": "2.0",
- "info": {
- "version": "1.0.0",
- "title": "Device Info API",
- "class": "DeviceInfo",
- "format": "uncompliant-extended",
- "description": "DeviceInfo JSON-RPC interface",
- "legacy": true
- },
- "common": {
- "$ref": "common.json"
- },
- "definitions": {
- "cpuloadavgs": {
- "description": "cpu 1min, 5min,15min load avg",
- "type": "object",
- "properties": {
- "avg1min": {
- "type": "number",
- "size": 64,
- "example": 789132680,
- "description": "1min cpuload average"
- },
- "avg5min": {
- "type": "number",
- "size": 64,
- "example": 789132680,
- "description": "5min cpuload average"
- },
- "avg15min": {
- "type": "number",
- "size": 64,
- "example": 789132680,
- "description": "15min cpuload average"
- }
- },
- "required": [
- "avg1min",
- "avg5min",
- "avg15min"
- ]
- },
- "audioPort": {
- "type": "string",
- "enum": [
- "OTHER",
- "RF_MODULATOR",
- "ANALOG",
- "SPDIF0",
- "HDMI0",
- "HDMI1",
- "DISPLAYPORT"
- ],
- "description": "Audio output supported by the device",
- "example": "analog"
- },
- "audiooutputs": {
- "type": "array",
- "description": "An array of audio output supported by the device",
- "items": {
- "$ref": "#/definitions/audioPort"
- }
- },
- "audiocapability": {
- "type": "string",
- "enum": [
- "none",
- "ATMOS",
- "DOLBY DIGITAL",
- "DOLBY DIGITAL PLUS",
- "Dual Audio Decode",
- "DAPv2",
- "MS12"
- ],
- "enumids": [
- "NONE",
- "ATMOS",
- "DD",
- "DDPLUS",
- "DAD",
- "DAPV2",
- "MS12"
- ],
- "description": "Audio capability",
- "example": "none"
- },
- "audiocapabilities": {
- "description": "An array of audio capabilities",
- "type": "array",
- "items": {
- "$ref": "#/definitions/audiocapability"
- }
- },
- "ms12capability": {
- "type": "string",
- "enum": [
- "none",
- "Dolby Volume",
- "Inteligent Equalizer",
- "Dialogue Enhancer"
- ],
- "enumids": [
- "NONE",
- "DOLBYVOLUME",
- "INTELIGENTEQUALIZER",
- "DIALOGUEENHANCER"
- ],
- "description": "MS12 audio capability",
- "example": "dolby_volume"
- },
- "ms12capabilities": {
- "description": "An array of MS12 audio capabilities",
- "type": "array",
- "items": {
- "$ref": "#/definitions/ms12capability"
- }
- },
- "ms12profile": {
- "type": "string",
- "enum": [
- "None",
- "Music",
- "Movie",
- "Voice"
- ],
- "enumids": [
- "NONE",
- "MUSIC",
- "MOVIE",
- "VOICE"
- ],
- "description": "MS12 Profile",
- "example": "music"
- },
- "ms12profiles": {
- "description": "An array of MS12 audio profiles",
- "type": "array",
- "items": {
- "$ref": "#/definitions/ms12profile"
- }
- },
- "videoDisplay": {
- "type": "string",
- "enum": [
- "OTHER",
- "RF_MODULATOR",
- "COMPOSITE",
- "SVIDEO",
- "COMPONET",
- "SCART_RGB",
- "HDMI0",
- "HDMI1",
- "DISPLAYPORT"
- ],
- "description": "Video output supported by the device",
- "example": "displayport"
- },
- "videooutputs": {
- "type": "array",
- "description": "An array of video output supported by the device",
- "items": {
- "$ref": "#/definitions/videoDisplay"
- }
- },
- "output_resolution": {
- "type": "string",
- "enum": [
- "unknown",
- "480i",
- "480p",
- "576i",
- "576p",
- "576p50",
- "720p",
- "720p24",
- "720p25",
- "720p30",
- "720p50",
- "720p60",
- "1080i",
- "1080i25",
- "1080i50",
- "1080i60",
- "1080p",
- "1080p24",
- "1080p25",
- "1080p30",
- "1080p50",
- "1080p60",
- "2160p24",
- "2160p25",
- "2160p30",
- "2160p50",
- "2160p60",
- "4320p30",
- "4320p60"
- ],
- "description": "Resolution supported by the device",
- "example": "1080p"
- },
- "output_resolutions": {
- "type": "array",
- "description": "An array of resolution supported by the device",
- "items": {
- "$ref": "#/definitions/output_resolution"
- }
- },
- "copyprotection": {
- "type": "string",
- "enum": [
- "unavailable",
- "1.4",
- "2.0",
- "2.1",
- "2.2"
- ],
- "enumids": [
- "HDCP_UNAVAILABLE",
- "HDCP_14",
- "HDCP_20",
- "HDCP_21",
- "HDCP_22"
- ],
- "description": "HDCP support",
- "example": "hdcp_20"
- },
- "videooutputcapabilities": {
- "description": "Video capabilities of the output",
- "type": "object",
- "properties": {
- "hdcp": {
- "description": "HDCP support",
- "$ref": "#/definitions/copyprotection"
- },
- "videoDisplay": {
- "description": "Video Output support",
- "$ref": "#/definitions/videoDisplay"
- },
- "output_resolutions": {
- "description": "Supported resolutions",
- "$ref": "#/definitions/output_resolutions"
- },
- "defaultresolution": {
- "description": "Default resolution",
- "$ref": "#/definitions/output_resolution"
- }
- },
- "required": [
- "hdcp",
- "videooutputs",
- "output_resolutions",
- "defaultresolution"
- ]
- },
- "audiooutputcapabilities": {
- "description": "Audio capabilities of the output",
- "type": "object",
- "properties": {
- "audioPort": {
- "description": "Audio Output support",
- "$ref": "#/definitions/audioPort"
- },
- "audiocapabilities": {
- "description": "Audio capabilities for the specified audio port",
- "$ref": "#/definitions/audiocapabilities"
- },
- "ms12capabilities": {
- "description": "Audio ms12 capabilities for the specified audio port",
- "$ref": "#/definitions/ms12capabilities"
- },
- "ms12profiles": {
- "description": "Audio ms12 profiles for the specified audio port",
- "$ref": "#/definitions/ms12profiles"
- }
- },
- "required": [
- "audiooutputs",
- "audiocapabilities",
- "ms12capabilities",
- "ms12profiles"
- ]
- },
- "devicetype": {
- "type": "string",
- "enum": [
- "tv",
- "IpStb",
- "QamIpStb",
- "hybrid",
- "mediaclient"
- ],
- "description": "Device type",
- "example": "IpStb"
- },
- "make": {
- "type": "string",
- "enum": [
- "platco",
- "llama",
- "hisense",
- "element",
- "sky",
- "sercomm",
- "commscope",
- "arris",
- "cisco",
- "pace",
- "samsung",
- "technicolor",
- "Amlogic_Inc",
- "raspberrypi_org",
- "Pioneer"
- ],
- "description": "Device manufacturer",
- "example": "pace"
- },
- "sku": {
- "type": "string",
- "enum": [
- "PLTL11AEI",
- "ZWCN11MWI",
- "SKTL11AEI",
- "LS301",
- "HSTP11MWR",
- "HSTP11MWRFX50",
- "ELTE11MWR",
- "SKXI11ADS",
- "SKXI11AIS",
- "SKXI11ANS",
- "SCXI11AIC",
- "SCXI11BEI",
- "CMXI11BEI",
- "AX013AN",
- "AX014AN",
- "AX061AEI",
- "MX011AN",
- "CS011AN",
- "CXD01ANI",
- "PX001AN",
- "PX013AN",
- "PX022AN",
- "PX032ANI",
- "PX051AEI",
- "PXD01ANI",
- "SX022AN",
- "TX061AEI",
- "PI",
- "XUSHTC11MWR",
- "XUSPTC11MWR",
- "XUSHTB11MWR",
- "PITU11MWR"
- ],
- "description": "Device model number or SKU",
- "example": "PX051AEI"
- },
- "yocto": {
- "type": "string",
- "enum": [
- "dunfell",
- "morty",
- "daisy",
- "kirkstone"
- ],
- "description": "Yocto version",
- "example": "dunfell"
- },
- "distributorid": {
- "type": "string",
- "enum": [
- "comcast",
- "xglobal",
- "sky-de",
- "sky-italia",
- "sky-uk",
- "sky-uk-dev",
- "sky-deu",
- "sky-deu-dev",
- "sky-it",
- "sky-it-dev",
- "cox",
- "cox-hospitality",
- "cox-dev",
- "cox-qa",
- "MIT",
- "shaw",
- "shaw-dev",
- "rogers",
- "rogers-dev",
- "videotron",
- "charter",
- "charter-dev"
- ],
- "enumids": [
- "COMCAST",
- "XGLOBAL",
- "SKY_DE",
- "SKY_ITALIA",
- "SKY_UK",
- "SKY_UK_DEV",
- "SKY_DEU",
- "SKY_DEU_DEV",
- "SKY_IT",
- "SKY_IT_DEV",
- "COX",
- "COX_HOSPITALITY",
- "COX_DEV",
- "COX_QA",
- "MIT",
- "SHAW",
- "SHAW_DEV",
- "ROGERS",
- "ROGERS_DEV",
- "VIDEOTRON",
- "CHARTER",
- "CHARTER_DEV"
- ],
- "description": "Partner ID or distributor ID for device",
- "example": "comcast"
- }
- },
- "properties": {
- "deviceaudiocapabilities":{
- "summary": "Audio capabilities of the device",
- "readonly": true,
- "params":{
- "type": "object",
- "properties": {
- "audiooutputcapabilities": {
- "type": "array",
- "description": "An array of audiooutputcapabilities",
- "items": {
- "$ref": "#/definitions/audiooutputcapabilities"
- }
- }
- }
- },
- "required": [
- "audiooutputcapabilities"
- ]
- },
- "devicevideocapabilities":{
- "summary": "Video capabilities of the device",
- "readonly": true,
- "params":{
- "type": "object",
- "properties": {
- "hostedid": {
- "description": "EDID of the host",
- "type" : "string",
- "example" : ""
- },
- "hdr": {
- "description": "Is HDR supported by this device",
- "type": "boolean",
- "example": false
- },
- "atmos": {
- "description": "Is Atmos supported by this device",
- "type": "boolean",
- "example": false
- },
- "cec": {
- "description": "Is CEC supported by this device",
- "type": "boolean",
- "example": true
- },
- "videooutputcapabilities": {
- "type": "array",
- "description": "An array of videooutputcapabilities",
- "items": {
- "$ref": "#/definitions/videooutputcapabilities"
- }
- }
- },
- "required": [
- "hdr",
- "atmos",
- "cec",
- "hostedid",
- "videooutputcapabilities"
- ]
- }
- },
- "deviceinfo":{
- "summary": "Device meta data",
- "readonly": true,
- "params":{
- "type": "object",
- "properties": {
- "devicetype" : {
- "description": "Device type",
- "type": "string",
- "example": "IpStb"
- },
- "friendlyname": {
- "description": "Friendly name",
- "type": "string",
- "example": "my device"
- },
- "distributorid": {
- "description": "Partner ID or distributor ID for device",
- "type": "string",
- "example": "Comcast"
- },
- "make" : {
- "description": "Device manufacturer",
- "type": "string",
- "example": "pace"
- },
- "modelname": {
- "description": "Model Name",
- "type": "string",
- "example": "model A"
- },
- "modelyear": {
- "description": "Model Year",
- "type": "number",
- "size": 16,
- "example": "2020"
- },
- "platformname": {
- "description": "Platform name",
- "type": "string",
- "example": "linux"
- },
- "serialnumber": {
- "description": "Device serial number",
- "type": "string",
- "example": "WPEuCfrLF45"
- },
- "sku" : {
- "description": "Device model number or SKU",
- "type": "string",
- "example": "PX051AEI"
- }
- }
- }
- },
- "systeminfo": {
- "summary": "System general information",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "version": {
- "description": "Software version (in form *version#hashtag*)",
- "example": "1.0#14452f612c3747645d54974255d11b8f3b4faa54",
- "type": "string"
- },
- "uptime": {
- "description": "System uptime (in seconds)",
- "example": 120,
- "type": "number",
- "size": 64
- },
- "totalram": {
- "description": "Total installed system RAM memory (in bytes)",
- "example": 655757312,
- "type": "number",
- "size": 64
- },
- "freeram": {
- "description": "Free system RAM memory (in bytes)",
- "example": 563015680,
- "type": "number",
- "size": 64
- },
- "totalswap": {
- "description": "Total swap space (in bytes)",
- "example": 789132680,
- "type": "number",
- "size": 64
- },
- "freeswap": {
- "description": "Swap space still available (in bytes)",
- "example": 789132680,
- "type": "number",
- "size": 64
- },
- "devicename": {
- "description": "Host name",
- "example": "buildroot",
- "type": "string"
- },
- "cpuload": {
- "description": "Current CPU load (percentage)",
- "example": "2",
- "type": "string"
- },
- "cpuloadavg": {
- "description": "CPU load average",
- "$ref": "#/definitions/cpuloadavgs"
- },
- "serialnumber": {
- "description": "Device serial number",
- "example": "WPEuCfrLF45",
- "type": "string"
- },
- "time": {
- "description": "Current system date and time",
- "example": "Mon, 11 Mar 2019 14:38:18",
- "type": "string"
- }
- },
- "required": [
- "version",
- "uptime",
- "totalram",
- "freeram",
- "totalswap",
- "freeswap",
- "devicename",
- "cpuload",
- "cpuloadavg",
- "serialnumber",
- "time"
- ]
- }
- },
- "addresses": {
- "summary": "Network interface addresses",
- "readonly": true,
- "params": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "name": {
- "description": "Interface name",
- "type": "string",
- "example": "lo"
- },
- "mac": {
- "description": "Interface MAC address",
- "example": "00:00:00:00:00",
- "type": "string"
- },
- "ip": {
- "type": "array",
- "description": "An array of Interface IP address",
- "items": {
- "type": "string",
- "description": "Interface IP address",
- "example": "127.0.0.1"
- }
- }
- },
- "required": [
- "name",
- "mac"
- ]
- }
- }
- },
- "socketinfo": {
- "summary": "Socket information",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "total": {
- "description": "Number of total",
- "type": "number",
- "example": 0
- },
- "open": {
- "description": "Number of open",
- "type": "number",
- "example": 0
- },
- "link": {
- "description": "Number of link",
- "type": "number",
- "example": 0
- },
- "exception": {
- "description": "Number of exception",
- "type": "number",
- "example": 0
- },
- "shutdown": {
- "description": "Number of shutdown",
- "type": "number",
- "example": 0
- },
- "runs": {
- "description": "Number of runs",
- "type": "number",
- "example": 1
- }
- },
- "required": [
- "runs"
- ]
- }
- },
- "supportedaudioports": {
- "summary": "Audio ports supported on the device (all ports that are physically present)",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "supportedAudioPorts": {
- "description": "Audio Output support",
- "$ref": "#/definitions/audiooutputs"
- }
- },
- "required": [
- "supportedAudioPorts"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "supportedvideodisplays": {
- "summary": "Video ports supported on the device (all ports that are physically present)",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "supportedVideoDisplays": {
- "description": "Video Output support",
- "$ref": "#/definitions/videooutputs"
- }
- },
- "required": [
- "supportedVideoDisplays"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "hostedid": {
- "summary": "EDID of the host",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "EDID": {
- "description": "A base64 encoded byte array string representing the EDID",
- "type": "string",
- "example": "AP///////wAQrMLQVEJTMQUdAQOANR546q11qVRNnSYPUFSlSwCBALMA0QBxT6lAgYDRwAEBVl4AoKCgKVAwIDUADighAAAaAAAA/wBNWTNORDkxVjFTQlQKAAAA/ABERUxMIFAyNDE4RAogAAAA/QAxVh1xHAAKICAgICAgARsCAxuxUJAFBAMCBxYBBhESFRMUHyBlAwwAEAACOoAYcTgtQFgsRQAOKCEAAB4BHYAYcRwWIFgsJQAOKCEAAJ6/FgCggDgTQDAgOgAOKCEAABp+OQCggDgfQDAgOgAOKCEAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2A"
- }
- },
- "required": [
- "EDID"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "firmwareversion": {
- "summary": "Versions maintained in version.txt",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "imagename": {
- "description": "Name of firmware image",
- "type": "string",
- "example": "PX051AEI_VBN_2203_sprint_20220331225312sdy_NG"
- },
- "sdk": {
- "description": "SDK version string",
- "type": "string",
- "example": "17.3"
- },
- "mediarite": {
- "description": "Mediarite value",
- "type": "string",
- "example": "8.3.53"
- },
- "yocto": {
- "type": "string",
- "$ref": "#/definitions/yocto"
- }
- },
- "required": [
- "imagename"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "serialnumber": {
- "summary": "Serial number set by manufacturer",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "serialnumber": {
- "description": "Device Serial Number",
- "type": "string",
- "example": "PAW400003744"
- }
- },
- "required": [
- "serialnumber"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "make": {
- "summary": "Device manufacturer",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "make": {
- "$ref": "#/definitions/make"
- }
- },
- "required": [
- "make"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "modelid": {
- "summary": "Device model number or SKU",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "sku": {
- "$ref": "#/definitions/sku"
- }
- },
- "required": [
- "sku"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "modelname": {
- "summary": "Device model name",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "model": {
- "description": "Device model name",
- "type": "string",
- "example": "Pace Xi5"
- }
- },
- "required": [
- "model"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "modelyear": {
- "summary": "Device model year",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "year": {
- "description": "Device model year",
- "type": "number",
- "size": 16,
- "example": "2020"
- }
- },
- "required": [
- "year"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "friendlyname": {
- "summary": "Device friendly name",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "name": {
- "description": "Device friendly name",
- "type": "string",
- "example": "My device"
- }
- },
- "required": [
- "name"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "platformname": {
- "summary": "Device Platform name",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "name": {
- "description": "Device Platform name",
- "type": "string",
- "example": "Linux"
- }
- },
- "required": [
- "name"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "devicetype": {
- "summary": "Device type",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "devicetype": {
- "$ref": "#/definitions/devicetype"
- }
- },
- "required": [
- "devicetype"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "distributorid": {
- "summary": "Partner ID or distributor ID for device",
- "readonly": true,
- "params": {
- "type": "object",
- "properties": {
- "distributorid": {
- "$ref": "#/definitions/distributorid"
- }
- },
- "required": [
- "distributorid"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- }
- },
- "methods": {
- "supportedresolutions": {
- "summary": "Supported resolutions on the selected video display port",
- "params": {
- "type": "object",
- "properties": {
- "videoDisplay": {
- "$ref": "#/definitions/videoDisplay"
- }
- },
- "required": [
- "videoDisplay"
- ]
- },
- "result": {
- "type": "object",
- "properties": {
- "supportedResolutions": {
- "$ref": "#/definitions/output_resolutions"
- }
- },
- "required": [
- "supportedResolutions"
- ]
- },
- "errors": [
- {
- "description": "general error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "defaultresolution": {
- "summary": "Default resolution on the selected video display port",
- "params": {
- "type": "object",
- "properties": {
- "videoDisplay": {
- "$ref": "#/definitions/videoDisplay"
- }
- },
- "required": [
- "videoDisplay"
- ]
- },
- "result": {
- "type": "object",
- "properties": {
- "defaultResolution": {
- "$ref": "#/definitions/output_resolution"
- }
- },
- "required": [
- "defaultResolution"
- ]
- },
- "errors": [
- {
- "description": "general error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "supportedhdcp": {
- "summary": "Supported hdcp version on the selected video display port",
- "params": {
- "type": "object",
- "properties": {
- "videoDisplay": {
- "$ref": "#/definitions/videoDisplay"
- }
- },
- "required": [
- "videoDisplay"
- ]
- },
- "result": {
- "type": "object",
- "properties": {
- "supportedHDCPVersion": {
- "$ref": "#/definitions/copyprotection"
- }
- },
- "required": [
- "supportedHDCPVersion"
- ]
- },
- "errors": [
- {
- "description": "general error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "audiocapabilities": {
- "summary": "Audio capabilities for the specified audio port",
- "params": {
- "type": "object",
- "properties": {
- "audioPort": {
- "$ref": "#/definitions/audioPort"
- }
- },
- "required": [
- "audioPort"
- ]
- },
- "result": {
- "type": "object",
- "properties": {
- "AudioCapabilities": {
- "$ref": "#/definitions/audiocapabilities"
- }
- },
- "required": [
- "AudioCapabilities"
- ]
- },
- "errors": [
- {
- "description": "general error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "ms12capabilities": {
- "summary": "Audio ms12 capabilities for the specified audio port",
- "params": {
- "type": "object",
- "properties": {
- "audioPort": {
- "$ref": "#/definitions/audioPort"
- }
- },
- "required": [
- "audioPort"
- ]
- },
- "result": {
- "type": "object",
- "properties": {
- "MS12Capabilities": {
- "$ref": "#/definitions/ms12capabilities"
- }
- },
- "required": [
- "MS12Capabilities"
- ]
- },
- "errors": [
- {
- "description": "general error",
- "$ref": "#/common/errors/general"
- }
- ]
- },
- "supportedms12audioprofiles": {
- "summary": "Supported ms12 audio profiles for the specified audio port",
- "params": {
- "type": "object",
- "properties": {
- "audioPort": {
- "$ref": "#/definitions/audioPort"
- }
- },
- "required": [
- "audioPort"
- ]
- },
- "result": {
- "type": "object",
- "properties": {
- "supportedMS12AudioProfiles": {
- "description": "An array of ms12 audio profiles",
- "$ref": "#/definitions/ms12profiles"
- }
- },
- "required": [
- "supportedMS12AudioProfiles"
- ]
- },
- "errors": [
- {
- "description": "General error",
- "$ref": "#/common/errors/general"
- }
- ]
- }
- }
-}