Added video standards to JsonAPI output

This commit is contained in:
Paulchen-Panther
2021-02-07 14:30:36 +01:00
parent 2ff3c1155b
commit 4f81fbd2ab
8 changed files with 95 additions and 8 deletions

View File

@@ -61,7 +61,7 @@ public:
bool getCecDetectionEnabled() const { return _cecDetectionEnabled; }
QStringList getDevices() const override;
QString getDeviceName(const QString& devicePath) const override { return devicePath; }
QMultiMap<QString, int> getDeviceInputs(const QString& devicePath) const override { return {{ devicePath, 0}}; }
QMultiMap<QString, int> getDeviceInputs(const QString& devicePath) const override { return { {devicePath, 0} }; }
QStringList getAvailableEncodingFormats(const QString& devicePath, const int& /*deviceInput*/) const override;
QMultiMap<int, int> getAvailableDeviceResolutions(const QString& devicePath, const int& /*deviceInput*/, const PixelFormat& encFormat) const override;
QIntList getAvailableDeviceFramerates(const QString& devicePath, const int& /*deviceInput*/, const PixelFormat& encFormat, const unsigned width, const unsigned height) const override;

View File

@@ -14,7 +14,7 @@
// util includes
#include <utils/PixelFormat.h>
#include <hyperion/Grabber.h>
#include <grabber/VideoStandard.h>
#include <utils/VideoStandard.h>
#include <utils/Components.h>
#include <cec/CECEvent.h>
@@ -50,6 +50,7 @@ public:
struct InputProperties
{
QString inputName = QString();
QList<VideoStandard> standards = QList<VideoStandard>();
struct EncodingProperties
{
unsigned int width = 0;
@@ -142,6 +143,11 @@ public:
///
QMultiMap<QString, int> getDeviceInputs(const QString& devicePath) const override;
///
/// @brief overwrite Grabber.h implementation
///
QList<VideoStandard> getAvailableDeviceStandards(const QString& devicePath, const int& deviceInput) const override;
///
/// @brief overwrite Grabber.h implementation
///

View File

@@ -1,33 +0,0 @@
#pragma once
/**
* Enumeration of the possible video standards the grabber can be set to
*/
enum class VideoStandard {
PAL,
NTSC,
SECAM,
NO_CHANGE
};
inline VideoStandard parseVideoStandard(const QString& videoStandard)
{
// convert to lower case
QString standard = videoStandard.toLower();
if (standard == "pal")
{
return VideoStandard::PAL;
}
else if (standard == "ntsc")
{
return VideoStandard::NTSC;
}
else if (standard == "secam")
{
return VideoStandard::SECAM;
}
// return the default NO_CHANGE
return VideoStandard::NO_CHANGE;
}