31#include <fluidsynth/types.h>
33#include <samplerate.h>
77 void saveSettings( QDomDocument & _doc, QDomElement & _parent )
override;
80 void loadFile(
const QString & _file )
override;
92 void setParameter( const QString & _param, const QString & _value );
96 void openFile( const QString & _sf2File,
bool updateTrackName = true );
A utility class for resampling interleaved audio buffers using various resampling algorithms.
Definition AudioResampler.h:41
Definition AutomatableModel.h:77
Definition AutomatableModel.h:502
Definition AutomatableModel.h:468
Definition Instrument.h:54
Instrument(InstrumentTrack *_instrument_track, const Descriptor *_descriptor, const Descriptor::SubPluginFeatures::Key *key=nullptr, Flags flags=Flag::NoFlags)
Definition Instrument.cpp:38
Definition InstrumentTrack.h:62
Definition NotePlayHandle.h:48
Definition SampleFrame.h:41
mapPropertyFromModel(int, getBank, setBank, m_bankNum)
void renderFrames(f_cnt_t frames, SampleFrame *buf)
Definition Sf2Player.cpp:853
Sf2Instrument(InstrumentTrack *_instrument_track)
Definition Sf2Player.cpp:133
AudioResampler m_resampler
Definition Sf2Player.h:110
mapPropertyFromModel(int, getPatch, setPatch, m_patchNum)
void saveSettings(QDomDocument &_doc, QDomElement &_parent) override
Definition Sf2Player.cpp:246
void play(SampleFrame *_working_buffer) override
Definition Sf2Player.cpp:767
gui::PluginView * instantiateView(QWidget *_parent) override
Create a view for the model.
Definition Sf2Player.cpp:912
void openFile(const QString &_sf2File, bool updateTrackName=true)
Definition Sf2Player.cpp:395
auto midiPatch() const -> std::optional< MidiPatch > override
For applicable instruments: Provides host with current MIDI bank and program.
Definition Sf2Player.cpp:343
FloatModel m_reverbDamping
Definition Sf2Player.h:142
FloatModel m_chorusNum
Definition Sf2Player.h:147
void updateReverb()
Definition Sf2Player.cpp:512
FloatModel m_reverbLevel
Definition Sf2Player.h:144
fluid_settings_t * m_settings
Definition Sf2Player.h:114
QMutex m_playingNotesMutex
Definition Sf2Player.h:153
void updateReverbOn()
Definition Sf2Player.cpp:507
QString getCurrentPatchName()
Definition Sf2Player.cpp:461
void deleteNotePluginData(NotePlayHandle *_n) override
Definition Sf2Player.cpp:892
QMutex m_loadMutex
Definition Sf2Player.h:127
void loadFile(const QString &_file) override
Definition Sf2Player.cpp:299
FloatModel m_reverbWidth
Definition Sf2Player.h:143
QVector< NotePlayHandle * > m_playingNotes
Definition Sf2Player.h:152
int m_channel
Definition Sf2Player.h:133
void noteOn(Sf2PluginData *n)
Definition Sf2Player.cpp:695
QString nodeName() const override
Definition Sf2Player.cpp:372
std::array< SampleFrame, DEFAULT_BUFFER_SIZE > m_buffer
Definition Sf2Player.h:111
void updateTuning()
Definition Sf2Player.cpp:534
fluid_sfont_t * m_font
Definition Sf2Player.h:117
void setParameter(const QString &_param, const QString &_value)
QMutex m_synthMutex
Definition Sf2Player.h:126
void updatePatch()
Definition Sf2Player.cpp:449
BoolModel m_reverbOn
Definition Sf2Player.h:140
void freeFont()
Definition Sf2Player.cpp:380
void updateGain()
Definition Sf2Player.cpp:502
QString m_filename
Definition Sf2Player.h:120
FloatModel m_chorusLevel
Definition Sf2Player.h:148
void playNote(NotePlayHandle *_n, SampleFrame *_working_buffer) override
Definition Sf2Player.cpp:634
FloatModel m_chorusDepth
Definition Sf2Player.h:150
int m_lastMidiPitch
Definition Sf2Player.h:131
gui::LcdSpinBoxModel m_patchNum
Definition Sf2Player.h:136
int m_lastMidiPitchRange
Definition Sf2Player.h:132
BoolModel m_chorusOn
Definition Sf2Player.h:146
void updateChorusOn()
Definition Sf2Player.cpp:520
void noteOff(Sf2PluginData *n)
Definition Sf2Player.cpp:751
void reloadSynth()
Definition Sf2Player.cpp:566
FloatModel m_reverbRoomSize
Definition Sf2Player.h:141
sample_rate_t m_internalSampleRate
Definition Sf2Player.h:130
void loadSettings(const QDomElement &_this) override
Definition Sf2Player.cpp:270
QMutex m_notesRunningMutex
Definition Sf2Player.h:123
std::span< SampleFrame > m_bufferView
Definition Sf2Player.h:112
gui::LcdSpinBoxModel m_bankNum
Definition Sf2Player.h:135
FloatModel m_chorusSpeed
Definition Sf2Player.h:149
int m_fontId
Definition Sf2Player.h:119
AutomatableModel * childModel(std::string_view modelName) override
Definition Sf2Player.cpp:354
void updateChorus()
Definition Sf2Player.cpp:525
fluid_synth_t * m_synth
Definition Sf2Player.h:115
std::array< int, 128 > m_notesRunning
Definition Sf2Player.h:129
FloatModel m_gain
Definition Sf2Player.h:138
Instrument view with fixed LMMS-default size.
Definition InstrumentView.h:66
Definition LcdSpinBox.h:35
Definition PatchesDialog.h:44
Definition Sf2Player.h:176
LcdSpinBox * m_bankNumLcd
Definition Sf2Player.h:189
PixmapButton * m_reverbButton
Definition Sf2Player.h:197
Sf2InstrumentView(Instrument *_instrument, QWidget *_parent)
Definition Sf2Player.cpp:936
Knob * m_reverbWidthKnob
Definition Sf2Player.h:200
PixmapButton * m_fileDialogButton
Definition Sf2Player.h:186
Knob * m_reverbLevelKnob
Definition Sf2Player.h:201
void showPatchDialog()
Definition Sf2Player.cpp:1201
void updateFilename()
Definition Sf2Player.cpp:1119
QLabel * m_patchLabel
Definition Sf2Player.h:193
Knob * m_chorusNumKnob
Definition Sf2Player.h:204
~Sf2InstrumentView() override=default
Knob * m_chorusDepthKnob
Definition Sf2Player.h:207
void modelChanged() override
Definition Sf2Player.cpp:1088
PixmapButton * m_chorusButton
Definition Sf2Player.h:203
static PatchesDialog * s_patchDialog
Definition Sf2Player.h:209
Knob * m_reverbRoomSizeKnob
Definition Sf2Player.h:198
void invalidateFile()
Definition Sf2Player.cpp:1153
void updatePatchName()
Definition Sf2Player.cpp:1139
LcdSpinBox * m_patchNumLcd
Definition Sf2Player.h:190
Knob * m_gainKnob
Definition Sf2Player.h:195
Knob * m_chorusLevelKnob
Definition Sf2Player.h:205
QLabel * m_filenameLabel
Definition Sf2Player.h:192
PixmapButton * m_patchDialogButton
Definition Sf2Player.h:187
void showFileDialog()
Definition Sf2Player.cpp:1161
Knob * m_reverbDampingKnob
Definition Sf2Player.h:199
Knob * m_chorusSpeedKnob
Definition Sf2Player.h:206
Definition AudioPortAudio.cpp:209
IntModel LcdSpinBoxModel
Definition LcdSpinBox.h:88
Definition RemotePluginBase.cpp:34
std::uint32_t sample_rate_t
Definition LmmsTypes.h:42
constexpr f_cnt_t DEFAULT_BUFFER_SIZE
Definition AudioEngine.h:53
std::uint64_t f_cnt_t
Definition LmmsTypes.h:43
Definition MidiPatch.h:34
Definition Sf2Player.cpp:117