Added reading the enable flag for the border detector

Former-commit-id: d2cf4df9a7684107b30f9bc01d5aa90b321ce1b5
This commit is contained in:
johan 2013-10-20 22:27:05 +02:00
parent 0e8997f554
commit 293a2e7c19
8 changed files with 31 additions and 8 deletions

View File

@ -319,6 +319,13 @@
} }
], ],
/// The black border configuration, contains the following items:
/// * enable : true if the detector should be activated
"blackborderdetector" :
{
"enable" : true
},
/// The boot-sequence configuration, contains the following items: /// The boot-sequence configuration, contains the following items:
/// * type : The type of the boot-sequence ('rainbow', 'knight_rider', 'none') /// * type : The type of the boot-sequence ('rainbow', 'knight_rider', 'none')
/// * duration_ms : The length of the boot-sequence [ms] /// * duration_ms : The length of the boot-sequence [ms]

View File

@ -1 +1 @@
26cfdb6da8079e91839e80a45e15486504df6eb3 71c14781ce343776ab00db70f9d2493e3e2feead

View File

@ -62,7 +62,7 @@ private:
/// ///
/// @param[in] ledString The led-string specification /// @param[in] ledString The led-string specification
/// ///
ImageProcessor(const LedString &ledString); ImageProcessor(const LedString &ledString, bool enableBlackBorderDetector);
/// ///
/// Performs black-border detection (if enabled) on the given image /// Performs black-border detection (if enabled) on the given image

View File

@ -31,7 +31,7 @@ public:
/// ///
/// @param[in] ledString The led configuration /// @param[in] ledString The led configuration
/// ///
void init(const LedString& ledString); void init(const LedString& ledString, bool enableBlackBorderDetector);
/// ///
/// Creates a new ImageProcessor. The onwership of the processor is transferred to the caller. /// Creates a new ImageProcessor. The onwership of the processor is transferred to the caller.
@ -43,4 +43,7 @@ public:
private: private:
/// The Led-string specification /// The Led-string specification
LedString _ledString; LedString _ledString;
/// Flag indicating if the black border detector should be used
bool _enableBlackBorderDetector;
}; };

View File

@ -99,7 +99,7 @@ Hyperion::Hyperion(const Json::Value &jsonConfig) :
_device(constructDevice(jsonConfig["device"])), _device(constructDevice(jsonConfig["device"])),
_timer() _timer()
{ {
ImageProcessorFactory::getInstance().init(_ledString); ImageProcessorFactory::getInstance().init(_ledString, jsonConfig["blackborderdetector"].get("enable", true).asBool());
_timer.setSingleShot(true); _timer.setSingleShot(true);
QObject::connect(&_timer, SIGNAL(timeout()), this, SLOT(update())); QObject::connect(&_timer, SIGNAL(timeout()), this, SLOT(update()));

View File

@ -10,9 +10,9 @@
using namespace hyperion; using namespace hyperion;
ImageProcessor::ImageProcessor(const LedString& ledString) : ImageProcessor::ImageProcessor(const LedString& ledString, bool enableBlackBorderDetector) :
mLedString(ledString), mLedString(ledString),
_enableBlackBorderRemoval(true), _enableBlackBorderRemoval(enableBlackBorderDetector),
_borderProcessor(new BlackBorderProcessor(600, 50, 1)), _borderProcessor(new BlackBorderProcessor(600, 50, 1)),
mImageToLeds(nullptr) mImageToLeds(nullptr)
{ {

View File

@ -10,12 +10,13 @@ ImageProcessorFactory& ImageProcessorFactory::getInstance()
return instance; return instance;
} }
void ImageProcessorFactory::init(const LedString& ledString) void ImageProcessorFactory::init(const LedString& ledString, bool enableBlackBorderDetector)
{ {
_ledString = ledString; _ledString = ledString;
_enableBlackBorderDetector = enableBlackBorderDetector;
} }
ImageProcessor* ImageProcessorFactory::newImageProcessor() const ImageProcessor* ImageProcessorFactory::newImageProcessor() const
{ {
return new ImageProcessor(_ledString); return new ImageProcessor(_ledString, _enableBlackBorderDetector);
} }

View File

@ -169,6 +169,18 @@
"additionalProperties" : false "additionalProperties" : false
} }
}, },
"blackborderdetector" :
{
"type" : "object",
"required" : false,
"properties" : {
"enable" : {
"type" : "boolean",
"required" : true
}
},
"additionalProperties" : false
},
"xbmcVideoChecker" : "xbmcVideoChecker" :
{ {
"type" : "object", "type" : "object",