DSPark 1.8.0
Header-only C++20 DSP for real-time and offline audio
Loading...
Searching...
No Matches
dspark::OfflineStereoBalance< T > Class Template Referencefinal

Optional offline balance of an already generated stereo signal. More...

#include <OfflineStereoBalance.h>

Classes

struct  Options
 
class  Plan
 
struct  PlanResult
 
struct  Report
 
struct  Result
 

Public Types

enum class  Reason : std::uint8_t {
  Balanced , Disabled , Silence , NoMid ,
  NoSide , GainLimited , GuardUnreachable , AllExcluded
}
 

Public Member Functions

PlanResult makePlan (const typename OfflineEnergyAnalyzer< T >::MidSideAnalysis &analysis, const Options &options={}, const OfflineJobOptions &jobOptions={}) const
 Replans controls from an immutable complete-source mid/side analysis.
 
PlanResult analyze (OfflineAudioSource< T > &source, const Options &options={}, const OfflineJobOptions &job={}) const
 Analyzes the supplied post-generation stereo source and builds its gain plan.
 
Result render (OfflineAudioSource< T > &source, const Plan &plan, OfflineAudioSink< T > &sink, const OfflineJobOptions &options={}) const
 Verifies, optionally calibrates the guard, and publishes transactionally.
 
template<int MaxChannels>
Result run (const AudioBuffer< T, MaxChannels > &input, AudioBuffer< T, MaxChannels > &output, double sampleRate, const Options &options={}, const OfflineJobOptions &job={}) const
 Owning convenience render; output changes only after successful verification.
 

Detailed Description

template<FloatType T>
class dspark::OfflineStereoBalance< T >

Optional offline balance of an already generated stereo signal.

Definition at line 48 of file OfflineStereoBalance.h.

Member Enumeration Documentation

◆ Reason

template<FloatType T>
enum class dspark::OfflineStereoBalance::Reason : std::uint8_t
strong
Enumerator
Balanced 
Disabled 
Silence 
NoMid 

Mid power is at or below the analysis gate.

NoSide 

Side power is at or below the analysis gate.

GainLimited 
GuardUnreachable 
AllExcluded 

Definition at line 63 of file OfflineStereoBalance.h.

Member Function Documentation

◆ analyze()

template<FloatType T>
PlanResult dspark::OfflineStereoBalance< T >::analyze ( OfflineAudioSource< T > &  source,
const Options &  options = {},
const OfflineJobOptions &  job = {} 
) const
inline

Analyzes the supplied post-generation stereo source and builds its gain plan.

Definition at line 334 of file OfflineStereoBalance.h.

◆ makePlan()

template<FloatType T>
PlanResult dspark::OfflineStereoBalance< T >::makePlan ( const typename OfflineEnergyAnalyzer< T >::MidSideAnalysis &  analysis,
const Options &  options = {},
const OfflineJobOptions &  jobOptions = {} 
) const
inline

Replans controls from an immutable complete-source mid/side analysis.

Definition at line 168 of file OfflineStereoBalance.h.

◆ render()

template<FloatType T>
Result dspark::OfflineStereoBalance< T >::render ( OfflineAudioSource< T > &  source,
const Plan &  plan,
OfflineAudioSink< T > &  sink,
const OfflineJobOptions &  options = {} 
) const
inline

Verifies, optionally calibrates the guard, and publishes transactionally.

Definition at line 361 of file OfflineStereoBalance.h.

◆ run()

template<FloatType T>
template<int MaxChannels>
Result dspark::OfflineStereoBalance< T >::run ( const AudioBuffer< T, MaxChannels > &  input,
AudioBuffer< T, MaxChannels > &  output,
double  sampleRate,
const Options &  options = {},
const OfflineJobOptions &  job = {} 
) const
inline

Owning convenience render; output changes only after successful verification.

Definition at line 435 of file OfflineStereoBalance.h.


The documentation for this class was generated from the following file: