DSPark 1.8.0
Header-only C++20 DSP for real-time and offline audio
Loading...
Searching...
No Matches
dspark::detail::OfflineClipProcessor< T, Soft > Class Template Reference

#include <OfflineClip.h>

Classes

class  Plan
 Immutable format/fingerprint/control plan, with owned exclusion regions. More...
 
struct  PlanResult
 
struct  Report
 
struct  Result
 

Public Types

enum class  Reason {
  Ready , Processed , ZeroAmount , NoSignal ,
  AllExcluded , RepresentabilityLimited , ConstraintLimited , CalibrationFailed
}
 
using Curve = OfflineSoftClipCurve
 
using Options = std::conditional_t< Soft, OfflineSoftClipOptions, OfflineClipOptions >
 

Public Member Functions

PlanResult makePlan (OfflineAudioSource< T > &source, const typename OfflineEnergyAnalyzer< T >::Analysis &analysis, const Options &options={}, const OfflineJobOptions &jobOptions={}) const
 Reuses complete-source energy analysis; no PCM or filtered audio is retained.
 
PlanResult analyze (OfflineAudioSource< T > &source, const Options &options={}, const OfflineJobOptions &job={}) const
 Analyzes the complete source and makes a reusable worker plan.
 
Result render (OfflineAudioSource< T > &source, const Plan &plan, OfflineAudioSink< T > &sink, const OfflineJobOptions &job={}) const
 Calibrates actual PCM, then verifies a provisional render before committing it.
 
template<int MaxChannels>
Result run (const AudioBuffer< T, MaxChannels > &input, AudioBuffer< T, MaxChannels > &output, double sampleRate, const Options &options={}, const OfflineJobOptions &job={}) const
 Owning render; aliasing is safe and failure leaves output unchanged.
 

Detailed Description

template<FloatType T, bool Soft>
class dspark::detail::OfflineClipProcessor< T, Soft >

Definition at line 173 of file OfflineClip.h.

Member Typedef Documentation

◆ Curve

template<FloatType T, bool Soft>
using dspark::detail::OfflineClipProcessor< T, Soft >::Curve = OfflineSoftClipCurve

Definition at line 176 of file OfflineClip.h.

◆ Options

template<FloatType T, bool Soft>
using dspark::detail::OfflineClipProcessor< T, Soft >::Options = std::conditional_t<Soft, OfflineSoftClipOptions, OfflineClipOptions>

Definition at line 177 of file OfflineClip.h.

Member Enumeration Documentation

◆ Reason

template<FloatType T, bool Soft>
enum class dspark::detail::OfflineClipProcessor::Reason
strong
Enumerator
Ready 
Processed 
ZeroAmount 
NoSignal 
AllExcluded 
RepresentabilityLimited 
ConstraintLimited 
CalibrationFailed 

Definition at line 178 of file OfflineClip.h.

Member Function Documentation

◆ analyze()

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

Analyzes the complete source and makes a reusable worker plan.

Definition at line 333 of file OfflineClip.h.

◆ makePlan()

template<FloatType T, bool Soft>
PlanResult dspark::detail::OfflineClipProcessor< T, Soft >::makePlan ( OfflineAudioSource< T > &  source,
const typename OfflineEnergyAnalyzer< T >::Analysis &  analysis,
const Options &  options = {},
const OfflineJobOptions &  jobOptions = {} 
) const
inline

Reuses complete-source energy analysis; no PCM or filtered audio is retained.

Definition at line 271 of file OfflineClip.h.

◆ render()

template<FloatType T, bool Soft>
Result dspark::detail::OfflineClipProcessor< T, Soft >::render ( OfflineAudioSource< T > &  source,
const Plan &  plan,
OfflineAudioSink< T > &  sink,
const OfflineJobOptions &  job = {} 
) const
inline

Calibrates actual PCM, then verifies a provisional render before committing it.

Definition at line 358 of file OfflineClip.h.

◆ run()

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

Owning render; aliasing is safe and failure leaves output unchanged.

Definition at line 382 of file OfflineClip.h.


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