25 options.captureMeter = projectAudioIO.GetCaptureMeter();
26 options.playbackMeter = projectAudioIO.GetPlaybackMeter();
42 return std::make_shared< ProjectAudioIO >( parent );
88 const std::shared_ptr<Meter> &playback)
105 const std::shared_ptr<Meter> &capture)
119 if (
auto oldValue =
GetPlaySpeed(); value != oldValue) {
120 mPlaySpeed.store( value, std::memory_order_relaxed );
static const AudacityProject::AttachedObjects::RegisteredFactory sAudioIOKey
an object holding per-project preferred sample rate
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
static AudioIOBase * Get()
Client code makes static instance from a factory of attachments; passes it to Get or Find as a retrie...
static result_type Call(Arguments &&...arguments)
Null check of the installed function is done for you.
CallbackReturn Publish(const SpeedChangeMessage &message)
Send a message to connected callbacks.
bool IsAudioActive() const
void SetCaptureMeter(const std::shared_ptr< Meter > &capture)
std::shared_ptr< Meter > mPlaybackMeter
const std::shared_ptr< Meter > & GetPlaybackMeter() const
double GetPlaySpeed() const
void SetPlaySpeed(double value)
std::atomic< double > mPlaySpeed
static AudioIOStartStreamOptions DefaultOptionsFactory(AudacityProject &project, bool newDefaults)
Default factory function ignores the second argument.
int GetAudioIOToken() const
ProjectAudioIO(AudacityProject &project)
AudacityProject & mProject
const std::shared_ptr< Meter > & GetCaptureMeter() const
void SetAudioIOToken(int token)
static AudioIOStartStreamOptions GetDefaultOptions(AudacityProject &project, bool newDefaults=false)
Invoke the global hook, supplying a default argument.
static ProjectAudioIO & Get(AudacityProject &project)
void SetPlaybackMeter(const std::shared_ptr< Meter > &playback)
std::shared_ptr< Meter > mCaptureMeter
static const ProjectAudioIO & Get(const AudacityProject &project)
static ProjectRate & Get(AudacityProject &project)
struct holding stream options, including a pointer to the time warp info and AudioIOListener and whet...