Audacity 3.2.0
|
#include <DownmixSource.h>
Public Member Functions | |
SequenceDownmixSource (AudioGraph::Source &downstream, const WideSampleSequence &sequence, const ArrayOf< bool > *channelMap) | |
AudioGraph::Source & | GetDownstream () const override |
Returns underlying AudioGraph::Source processed by Mixer. More... | |
size_t | NChannels () const override |
Number of output channels of the underlying Source. More... | |
float | GetChannelGain (size_t channel) const override |
Gain multiplier that should be applied to the channel. More... | |
void | FindChannelFlags (unsigned char *channelFlags, size_t numChannels, size_t iChannel) override |
bool | CanMakeMono () const override |
Returns true if source channels could be combined into mono if needed. More... | |
Public Member Functions inherited from DownmixSource | |
DownmixSource ()=default | |
virtual | ~DownmixSource ()=default |
virtual AudioGraph::Source & | GetDownstream () const =0 |
Returns underlying AudioGraph::Source processed by Mixer. More... | |
virtual size_t | NChannels () const =0 |
Number of output channels of the underlying Source. More... | |
virtual float | GetChannelGain (size_t channel) const =0 |
Gain multiplier that should be applied to the channel. More... | |
virtual void | FindChannelFlags (unsigned char *channelFlags, size_t numChannels, size_t iChannel)=0 |
virtual bool | CanMakeMono () const =0 |
Returns true if source channels could be combined into mono if needed. More... | |
Private Attributes | |
AudioGraph::Source & | mDownstream |
const WideSampleSequence & | mSequence |
const ArrayOf< bool > * | mpMap {} |
Downmix source that uses Sequence
as a source for channel operations.
Definition at line 45 of file DownmixSource.h.
SequenceDownmixSource::SequenceDownmixSource | ( | AudioGraph::Source & | downstream, |
const WideSampleSequence & | sequence, | ||
const ArrayOf< bool > * | channelMap | ||
) |
channelMap | Null or else must have a lifetime enclosing this objects's |
Definition at line 19 of file DownmixSource.cpp.
|
overridevirtual |
Returns true if source channels could be combined into mono if needed.
Implements DownmixSource.
Definition at line 62 of file DownmixSource.cpp.
References mpMap.
|
overridevirtual |
For the given iChannel
fills the channelFlags array, that describes to which output it should go.
Implements DownmixSource.
Definition at line 43 of file DownmixSource.cpp.
References staffpad::vo::copy(), details::end(), anonymous_namespace{StretchingSequenceIntegrationTest.cpp}::iChannel, AudioGraph::IsMono(), mpMap, and mSequence.
|
overridevirtual |
Gain multiplier that should be applied to the channel.
Implements DownmixSource.
Definition at line 38 of file DownmixSource.cpp.
References WideSampleSequence::GetChannelVolume(), and mSequence.
|
overridevirtual |
Returns underlying AudioGraph::Source
processed by Mixer.
Implements DownmixSource.
Definition at line 28 of file DownmixSource.cpp.
References mDownstream.
|
overridevirtual |
Number of output channels of the underlying Source.
Implements DownmixSource.
Definition at line 33 of file DownmixSource.cpp.
References mSequence, and WideSampleSequence::NChannels().
|
private |
Definition at line 47 of file DownmixSource.h.
Referenced by GetDownstream().
|
private |
many-to-one mixing of channels Pointer into array of arrays
Definition at line 51 of file DownmixSource.h.
Referenced by CanMakeMono(), and FindChannelFlags().
|
private |
Definition at line 48 of file DownmixSource.h.
Referenced by FindChannelFlags(), GetChannelGain(), and NChannels().