18#include <unordered_map>
42 numerators = { 2, 4, 3, 6 };
43 return numerators[
static_cast<int>(ts)];
49 denominators = { 2, 4, 4, 8 };
50 return denominators[
static_cast<int>(ts)];
119 ReadFloats(
float* buffer,
long long where,
size_t numFrames)
const = 0;
130 virtual const std::optional<MIR::ProjectSyncInfo>&
GetSyncInfo()
const = 0;
virtual const std::optional< MIR::ProjectSyncInfo > & GetSyncInfo() const =0
virtual void Synchronize()=0
virtual void SetRawAudioTempo(double tempo)=0
virtual ~AnalyzedAudioClip()=default
double GetDuration() const
virtual void ReadFloats(float *buffer, long long where, size_t numFrames) const =0
virtual long long GetNumSamples() const =0
virtual double GetSampleRate() const =0
virtual ~MirAudioReader()=default
int GetNumerator(TimeSignature ts)
int GetDenominator(TimeSignature ts)
TempoObtainedFrom
How the tempo was obtained:
const std::optional< TimeSignature > timeSignature
const std::optional< TimeSignature > timeSignature
const double stretchMinimizingPowOfTwo
const double excessDurationInQuarternotes
const double rawAudioTempo
const TempoObtainedFrom usedMethod
OnsetQuantization tatumQuantization
std::vector< float > odfAutoCorr
std::optional< TimeSignature > timeSignature
std::vector< float > rawOdf
std::vector< int > odfPeakIndices
std::vector< float > movingAverage
std::vector< PffftFloatVector > postProcessedStft
std::vector< int > odfAutoCorrPeakIndices