File Duplex/OscVoiceMgr.lua

Functions

OscVoiceMgr:__init () Initialize the OscVoiceMgr class
OscVoiceMgr:_get_originating_app (app) Return a unique name for any running process/application
OscVoiceMgr:_get_pitch_offset () Return the pitch offset, a value which is used to "counter-transpose" the transposition amount which Renoise automatically assign to MIDI-notes (the value of which based on the current octave).
OscVoiceMgr:_release_note (app, instr, track, pitch, velocity, is_midi, channel) Release a given note.
OscVoiceMgr:_was_midi_triggered (org_app, pitch, channel) If MIDI triggered this note, return true
OscVoiceMgr:_was_osc_triggered (org_app, pitch, channel) If OSC triggered this note, return true
OscVoiceMgr:note_is_active (app, instr, pitch) Check if a particular instrument-note is still playing, somewhere...
OscVoiceMgr:release (app, instr, track, pitch, velocity, is_midi, channel) The main release function.
OscVoiceMgr:remove_app (app) Remove application from active voices (release, then remove)
OscVoiceMgr:transpose (app, semitones) When an application transpose it's control surface, any triggered note would need to be "de-transposed" once it's released - this function will apply the amount of transpose to the currently held notes (the ones that match the application as their originating_app)
OscVoiceMgr:trigger (app, instr, track, pitch, velocity, keep, is_midi, channel) This is the main trigger function
OscVoiceMgrNote:__tostring ()


Functions

OscVoiceMgr:__init ()
Initialize the OscVoiceMgr class
OscVoiceMgr:_get_originating_app (app)
Return a unique name for any running process/application

Parameters:

  • app: (Duplex.Application)
OscVoiceMgr:_get_pitch_offset ()
Return the pitch offset, a value which is used to "counter-transpose" the transposition amount which Renoise automatically assign to MIDI-notes (the value of which based on the current octave).

Return value:

    (Number), number of semitones
OscVoiceMgr:_release_note (app, instr, track, pitch, velocity, is_midi, channel)
Release a given note. We do not release notes directly, this method is called by the main release() method when it has been determined that a note should be released

Parameters:

  • app: (Application), the originating application
  • instr: (Number) the Renoise instrument index
  • track: (Number) the Renoise track index
  • pitch: (Number)
  • velocity: (Number)
  • is_midi: (Boolean) to distinguish between OSC and MIDI notes
  • channel: (Number) the MIDI channel

See also:

OscVoiceMgr:_was_midi_triggered (org_app, pitch, channel)
If MIDI triggered this note, return true

Parameters:

  • org_app: (Application), the originating application
  • pitch: (Number)
  • channel: (Number) the MIDI channel

Return value:

    (Boolean)
OscVoiceMgr:_was_osc_triggered (org_app, pitch, channel)
If OSC triggered this note, return true

Parameters:

  • org_app: (Application), the originating application
  • pitch: (Number)
  • channel: (Number) the MIDI channel

Return value:

    (Boolean)
OscVoiceMgr:note_is_active (app, instr, pitch)
Check if a particular instrument-note is still playing, somewhere...

Parameters:

  • app: (Application), check originating app
  • instr: (Number)
  • pitch: (Number)
OscVoiceMgr:release (app, instr, track, pitch, velocity, is_midi, channel)
The main release function. Will ensure that the right notes are released, even when the keyboard has been transposed since the notes were triggered

Parameters:

  • app: (Application) the calling application
  • instr: (Number) the Renoise instrument index
  • track: (Number) the Renoise track index
  • pitch: (Number)
  • velocity: (Number)
  • is_midi: (Boolean) to distinguish between OSC and MIDI notes
  • channel: (Number) the MIDI channel

Return value:

    (Number), the amount of temp-transpose detected (in semitones)

See also:

OscVoiceMgr:remove_app (app)
Remove application from active voices (release, then remove)

Parameters:

  • app: (Duplex.Application)
OscVoiceMgr:transpose (app, semitones)
When an application transpose it's control surface, any triggered note would need to be "de-transposed" once it's released - this function will apply the amount of transpose to the currently held notes (the ones that match the application as their originating_app)

Parameters:

  • app: (Duplex.Application)
  • semitones: (Number)
OscVoiceMgr:trigger (app, instr, track, pitch, velocity, keep, is_midi, channel)
This is the main trigger function

Parameters:

  • app: (Application) the calling application
  • instr: (Number) the Renoise instrument index
  • track: (Number) the Renoise track index
  • pitch: (Number)
  • velocity: (Number)
  • keep: (Boolean) if true, keep all notes until release
  • is_midi: (Boolean) to distinguish between OSC and MIDI notes
  • channel: (Number) the MIDI channel
OscVoiceMgrNote:__tostring ()

Valid XHTML 1.0!