Play handles
In LMMS, play handles manage playback of notes, instruments, or sample clips. All play handles are managed by subclasses of PlayHandle.
Types of play handles
There are several types of PlayHandles defined:
NotePlayHandle: managesNotes being played, and get audio output for specific noteInstrumetnPlayHandle: manages instruments which provides per-instrument audio output(single-streamed instruments)SamplePlayHandle: manages sample playbackPresetPreviewHandleSampleRecordHandle
Important member variables and functions
m_offset(typef_cnt_t): The number remaining of audio frames before the play handle starts to produce audio, evaluated at the beginning of a rendering period
Functions which subclasses should implement
PlayHandle itself can't be used directly because it doesn't implement some of the required functionalities.
play(sampleFrame *buf): Render a period of audio buffer tobufand check/manage the playback state of the managed objectisFinished(): Return whether the managed object finished playing andthiscan be deletedisFromTrack(const Track *track): Check if the play handle plays objects in the giventrack
Last updated
Was this helpful?