AlexaClientSDK
1.20.1
A cross-platform, modular SDK for interacting with the Alexa Voice Service
|
#include <EqualizerLinearBandMapper.h>
Static Public Member Functions | |
static std::shared_ptr< EqualizerLinearBandMapper > | create (int numberOfTargetBands) |
EqualizerBandMapperInterface methods | |
void | mapEqualizerBands (const avsCommon::sdkInterfaces::audio::EqualizerBandLevelMap &bandLevelMap, std::function< void(int, int)> setBandCallback) override |
Additional Inherited Members | |
Public Member Functions inherited from alexaClientSDK::equalizer::EqualizerBandMapperInterface | |
virtual | ~EqualizerBandMapperInterface ()=default |
Provides linear mapping from AVS provided bands to target number of bands. Target bands are assumed to be equally distributed among whole spectrum of equalization frequencies starting from basses to treble. I.e. if there are 10 target bands, band with index 0 would be the lowest frequency while band with index 9 will be the highest frequency. AVS bands are also assumed to be distributed equally among the whole spectrum. I.e. if TREBLE is the only one band provided, it will cover top third of target frequencies. All other bands will be assumed to have have equalization level equal to 0 dB, meaning no equalization. This value will be distributed among target bands for lower two thirds.
|
static |
Factory method that creates a linear band mapper given the number of target bands.
numberOfTargetBands |
|
overridevirtual |
Maps AVS band levels to the target equalizer bands. Number of target bands and mapping method are implementation specific. All supported bands should be defined. It is up to the implementation to decide what levels to use for missing bands.
bandLevelMap | Map of AVS bands and their levels. |
setBandCallback | Callback receiving the target band index and the level to be applied. It is up to the user to set up implementation properly to be able to map index to the band. No particular order of indices is guaranteed. The signature of the callback is void callback(int bandIndex, int level); |
Implements alexaClientSDK::equalizer::EqualizerBandMapperInterface.
AlexaClientSDK 1.20.1 - Copyright 2016-2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0