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

Rewindable, complete-file source with int64 positions and bounded blocks. More...

#include <OfflineProcessing.h>

Inheritance diagram for dspark::OfflineAudioSource< T >:

Public Member Functions

virtual ~OfflineAudioSource ()=default
 
virtual OfflineAudioSpec getSpec () const noexcept=0
 Returns format and provenance by value.
 
virtual bool read (std::int64_t first, AudioBufferView< T > destination)=0
 Copies a bounded source-relative range into the supplied block.
 

Detailed Description

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

Rewindable, complete-file source with int64 positions and bounded blocks.

Threading: worker-owned, never concurrently read or edited. read() must fill every requested channel/frame or return false. The source owns no destination block and must not retain its pointers. Repeated reads must give the same PCM. Change revision whenever content or its interpretation changes between jobs.

Definition at line 166 of file OfflineProcessing.h.

Constructor & Destructor Documentation

◆ ~OfflineAudioSource()

template<FloatType T>
virtual dspark::OfflineAudioSource< T >::~OfflineAudioSource ( )
virtualdefault

Member Function Documentation

◆ getSpec()

template<FloatType T>
virtual OfflineAudioSpec dspark::OfflineAudioSource< T >::getSpec ( ) const
pure virtualnoexcept

Returns format and provenance by value.

Implemented in dspark::OfflineBufferSource< T, MaxChannels >.

◆ read()

template<FloatType T>
virtual bool dspark::OfflineAudioSource< T >::read ( std::int64_t  first,
AudioBufferView< T >  destination 
)
pure virtual

Copies a bounded source-relative range into the supplied block.

Implemented in dspark::OfflineBufferSource< T, MaxChannels >.


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