Api improvements: ambience-count-[l|g]t-val and Comparator
This commit is contained in:
@@ -988,19 +988,18 @@ void OpenClCollatingAndMeshingEngine::produceAmbienceStimulusFrame(
|
||||
parent.ambienceStimulusBuffer.load(std::memory_order_acquire);
|
||||
if (!ambienceBuff) { return; }
|
||||
|
||||
uint32_t lowVal = ambienceBuff->ambienceIntensityLowVal;
|
||||
const auto& ambienceCountComparator = ambienceBuff->ambienceCountComparator;
|
||||
|
||||
// Read average intensity values from averageIntensityBuffer
|
||||
float* averageIntensityAverages = reinterpret_cast<float*>(
|
||||
averageIntensityBufferPtr);
|
||||
|
||||
// Count frames whose average intensity is <= lowVal (postrin only)
|
||||
// Count frames whose average intensity matches the configured comparator.
|
||||
uint32_t ambienceCount = 0;
|
||||
for (uint32_t i = 0; i < nSucceeded; ++i)
|
||||
{
|
||||
float avg = averageIntensityAverages[i];
|
||||
if (avg <= static_cast<float>(lowVal))
|
||||
{
|
||||
if (ambienceCountComparator(avg)) {
|
||||
++ambienceCount;
|
||||
}
|
||||
}
|
||||
@@ -1223,7 +1222,8 @@ public:
|
||||
{
|
||||
std::shared_ptr<PcloudAmbienceStimulusBuffer> ambienceBuff =
|
||||
engine.parent.ambienceStimulusBuffer.load(std::memory_order_acquire);
|
||||
uint32_t lowVal = ambienceBuff->ambienceIntensityLowVal;
|
||||
const auto& ambienceCountComparator =
|
||||
ambienceBuff->ambienceCountComparator;
|
||||
uint32_t postrinThreshold = ambienceBuff->postrinInterestThreshold;
|
||||
|
||||
float* averageIntensityAverages = reinterpret_cast<float*>(
|
||||
@@ -1233,8 +1233,7 @@ public:
|
||||
for (uint32_t i = 0; i < nSucceeded; ++i)
|
||||
{
|
||||
float avg = averageIntensityAverages[i];
|
||||
if (avg <= static_cast<float>(lowVal))
|
||||
{
|
||||
if (ambienceCountComparator(avg)) {
|
||||
++framesMetThreshold;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user