33#include "lmms_export.h"
63 std::array<SampleFrame, DEFAULT_BUFFER_SIZE>
m_buffer;
75 explicit Sample(std::shared_ptr<const SampleBuffer>
buffer);
81 double ratio = 1.0)
const ->
bool;
104 void setAllPointFrames(
int startFrame,
int endFrame,
int loopStartFrame,
int loopEndFrame);
#define noexcept
Definition DistrhoDefines.h:72
goto loop
Definition Spc_Cpu.h:155
A utility class for resampling interleaved audio buffers using various resampling algorithms.
Definition AudioResampler.h:41
Mode
Defines the resampling method to use.
Definition AudioResampler.h:48
@ Linear
Linear interpolation.
Definition AudioResampler.h:50
static AudioEngine * audioEngine()
Definition Engine.h:59
std::array< SampleFrame, DEFAULT_BUFFER_SIZE > m_buffer
Definition Sample.h:63
bool m_backwards
Definition Sample.h:66
friend class Sample
Definition Sample.h:67
void setFrameIndex(int index)
Definition Sample.h:58
AudioResampler m_resampler
Definition Sample.h:62
int m_frameIndex
Definition Sample.h:65
auto frameIndex() const -> int
Definition Sample.h:55
auto backwards() const -> bool
Definition Sample.h:56
std::span< SampleFrame > m_bufferView
Definition Sample.h:64
PlaybackState(AudioResampler::Mode interpolationMode=AudioResampler::Mode::Linear, int frameIndex=0)
Definition Sample.h:49
void setBackwards(bool backwards)
Definition Sample.h:59
Definition SampleBuffer.h:39
static auto emptyBuffer() -> std::shared_ptr< const SampleBuffer >
Definition SampleBuffer.cpp:67
Definition SampleFrame.h:41
auto toBase64() const -> QString
Definition Sample.h:88
auto endFrame() const -> int
Definition Sample.h:93
auto buffer() const -> std::shared_ptr< const SampleBuffer >
Definition Sample.h:91
std::atomic< int > m_loopEndFrame
Definition Sample.h:115
std::atomic< int > m_startFrame
Definition Sample.h:112
auto sampleDuration() const -> std::chrono::milliseconds
Definition Sample.cpp:176
std::atomic< float > m_frequency
Definition Sample.h:117
auto amplification() const -> float
Definition Sample.h:96
void setEndFrame(int endFrame)
Definition Sample.h:101
auto operator=(const Sample &) -> Sample &
Definition Sample.cpp:71
std::atomic< int > m_loopStartFrame
Definition Sample.h:114
auto sampleFile() const -> const QString &
Definition Sample.h:84
void setLoopEndFrame(int loopEndFrame)
Definition Sample.h:103
void setReversed(bool reversed)
Definition Sample.h:107
void setFrequency(float frequency)
Definition Sample.h:106
std::atomic< int > m_endFrame
Definition Sample.h:113
auto reversed() const -> bool
Definition Sample.h:98
std::atomic< bool > m_reversed
Definition Sample.h:118
auto sampleSize() const -> size_t
Definition Sample.h:86
void setStartFrame(int startFrame)
Definition Sample.h:100
auto play(SampleFrame *dst, PlaybackState *state, size_t numFrames, Loop loopMode=Loop::Off, double ratio=1.0) const -> bool
Definition Sample.cpp:99
auto sampleRate() const -> int
Definition Sample.h:85
Loop
Definition Sample.h:40
std::atomic< float > m_amplification
Definition Sample.h:116
auto loopEndFrame() const -> int
Definition Sample.h:95
std::shared_ptr< const SampleBuffer > m_buffer
Definition Sample.h:111
auto frequency() const -> float
Definition Sample.h:97
void setAmplification(float amplification)
Definition Sample.h:105
auto loopStartFrame() const -> int
Definition Sample.h:94
void setLoopStartFrame(int loopStartFrame)
Definition Sample.h:102
auto data() const -> const SampleFrame *
Definition Sample.h:90
auto startFrame() const -> int
Definition Sample.h:92
Definition AudioAlsa.cpp:35
std::uint64_t f_cnt_t
Definition LmmsTypes.h:43
const float DefaultBaseFreq
Definition Note.h:94
Definition juce_Uuid.h:141
#define const
Definition zconf.h:137