audiomonitor: use mipmapped waveform

Since we have these now, may as well use them. This should
improve general playback performance since the audio monitor
will be able to iterate far fewer
This commit is contained in:
itsmattkc
2021-04-14 15:25:38 +10:00
parent 46fb53ff24
commit 3ffb2fde1c
7 changed files with 110 additions and 44 deletions
+4
View File
@@ -85,6 +85,8 @@ public:
void Shift(const rational& from, const rational& to);
Sample GetSummaryFromTime(const rational& start, const rational& length) const;
static Sample SumSamples(const float* samples, int nb_samples, int nb_channels);
static Sample SumSamples(SampleBufferPtr samples, int start_index, int length);
@@ -108,6 +110,8 @@ private:
int time_to_samples(const rational& time, double sample_rate) const;
int time_to_samples(const double& time, double sample_rate) const;
std::map<rational, Sample>::const_iterator GetMipmapForScale(double scale) const;
int channels_;
std::map<rational, Sample> mipmapped_data_;