Bitwig Studio Control Surface API
5.0.11
|
Instances of this interface represent tracks in Bitwig Studio.
void addIsGroupObserver | ( | BooleanValueChangedCallback | callback | ) |
Registers an observer that reports if the track may contain child tracks, which is the case for group tracks.
callback | a callback function that receives a single boolean parameter. |
void addIsQueuedForStopObserver | ( | BooleanValueChangedCallback | callback | ) |
Registers an observer that reports if the clip launcher slots are queued for stop.
callback | a callback function that receives a single boolean argument. |
void addNoteSource | ( | NoteInput | noteInput | ) |
Routes the given noteInput directly to the track regardless of monitoring.
void addPitchNamesObserver | ( | IndexedStringValueChangedCallback | callback | ) |
Registers an observer that reports names for note key values on this track. The track might provide special names for certain keys if it contains instruments that support that features, such as the Bitwig Drum Machine.
callback | a callback function that receives two arguments: 1. the key value in the range [0..127], and
|
void addPositionObserver | ( | IntegerValueChangedCallback | callback | ) |
Registers an observer that reports the position of the track within the list of Bitwig Studio tracks.
callback | a callback function that receives a single integer parameter |
void addTrackTypeObserver | ( | int | numChars, |
String | textWhenUnassigned, | ||
StringValueChangedCallback | callback | ||
) |
Registers an observer that reports the track type. Possible reported track types are Group
, Instrument
, Audio
, Hybrid
, Effect
or Master
.
numChars | the maximum number of characters used for the reported track type |
textWhenUnassigned | the default text that gets reported when the track is not yet associated with a Bitwig Studio track. |
callback | a callback function that receives a single track type parameter (string). |
InsertionPoint afterTrackInsertionPoint | ( | ) |
InsertionPoint that can be used to insert after this track.
SettableBooleanValue arm | ( | ) |
Returns an object that provides access to the arm state of the track.
SettableBooleanValue autoMonitor | ( | ) |
Returns an object that provides access to the auto-monitoring state of the track.
InsertionPoint beforeTrackInsertionPoint | ( | ) |
InsertionPoint that can be used to insert after this track.
SettableBooleanValue canHoldAudioData | ( | ) |
Returns an object that indicates if the track may contain audio events.
SettableBooleanValue canHoldNoteData | ( | ) |
Returns an object that indicates if the track may contain notes.
ClipLauncherSlotBank clipLauncherSlotBank | ( | ) |
Returns an object that can be used to access the clip launcher slots of the track.
CursorDevice createCursorDevice | ( | ) |
Returns an object that provides access to the cursor item of the track's device selection as shown in the Bitwig Studio user interface.
Implemented in CursorTrack.
CursorDevice createCursorDevice | ( | String | name | ) |
Creates a named device selection cursor that is independent from the device selection in the Bitwig Studio user interface, assuming the name parameter is not null. When name
is null
the result is equal to calling Track#createCursorDevice.
name | the name of the custom device selection cursor, for example "Primary", or null to refer to the device selection cursor in the arranger cursor track as shown in the Bitwig Studio user interface. |
Implemented in CursorTrack.
CursorDevice createCursorDevice | ( | String | name, |
int | numSends | ||
) |
Creates a named device selection cursor that is independent from the device selection in the Bitwig Studio user interface, assuming the name parameter is not null. When name
is null
the result is equal to calling Track#createCursorDevice.
name | the name of the custom device selection cursor, for example "Primary", or null to refer to the device selection cursor in the arranger cursor track as shown in the Bitwig Studio user interface. |
numSends | the number of sends that are simultaneously accessible in nested channels. |
Implemented in CursorTrack.
CursorRemoteControlsPage createCursorRemoteControlsPage | ( | int | parameterCount | ) |
Creates a cursor for the selected remote controls page in the device with the supplied number of parameters. This section will follow the current page selection made by the user in the application.
parameterCount | The number of parameters the remote controls should contain |
CursorRemoteControlsPage createCursorRemoteControlsPage | ( | String | name, |
int | parameterCount, | ||
String | filterExpression | ||
) |
Creates a cursor for a remote controls page in the device with the supplied number of parameters. This section will be independent from the current page selected by the user in Bitwig Studio's user interface. The supplied filter is an expression that can be used to match pages this section is interested in. The expression is matched by looking at the tags added to the pages. If the expression is empty then no filtering will occur.
name | A name to associate with this section. This will be used to remember manual mappings made by the user within this section. |
parameterCount | The number of parameters the remote controls should contain |
filterExpression | An expression used to match pages that the user can navigate through. For now this can only be the name of a single tag the pages should contain (e.g "drawbars", "dyn", "env", "eq", "filter", "fx", "lfo", "mixer", "osc", "overview", "perf"). |
TrackBank createEffectTrackBank | ( | final int | numTracks, |
final int | numScenes, | ||
final boolean | hasFlatTrackList | ||
) |
Returns a track bank with the given number of child effect tracks and scenes. Only effect tracks are considered. The track bank will only have content if the connected track is a group track. For more information about track banks and the bank pattern
in general, see the documentation for createTrackBank.
numTracks | the number of child tracks spanned by the track bank |
numScenes | the number of scenes spanned by the track bank |
hasFlatTrackList | specifies whether the track bank should operate on a flat list of all nested child tracks or only on the direct child tracks of the connected group track. |
TrackBank createEffectTrackBank | ( | final int | numTracks, |
final int | numSends, | ||
final int | numScenes, | ||
final boolean | hasFlatTrackList | ||
) |
Returns a track bank with the given number of child effect tracks and scenes. Only effect tracks are considered. The track bank will only have content if the connected track is a group track. For more information about track banks and the bank pattern
in general, see the documentation for createTrackBank.
numTracks | the number of child tracks spanned by the track bank |
numSends | the number of sends spanned by the track bank |
numScenes | the number of scenes spanned by the track bank |
hasFlatTrackList | specifies whether the track bank should operate on a flat list of all nested child tracks or only on the direct child tracks of the connected group track. |
TrackBank createMainTrackBank | ( | final int | numTracks, |
final int | numSends, | ||
final int | numScenes, | ||
final boolean | hasFlatTrackList | ||
) |
Returns a track bank with the given number of child tracks, sends and scenes. Only audio tracks, instrument tracks and hybrid tracks are considered. The track bank will only have content if the connected track is a group track. For more information about track banks and the bank pattern
in general, see the documentation for createTrackBank.
numTracks | the number of child tracks spanned by the track bank |
numSends | the number of sends spanned by the track bank |
numScenes | the number of scenes spanned by the track bank |
hasFlatTrackList | specifies whether the track bank should operate on a flat list of all nested child tracks or only on the direct child tracks of the connected group track. |
MasterTrack createMasterTrack | ( | final int | numScenes | ) |
Returns an object that represents the master track of the connected track group. The returned object will only have content if the connected track is a group track.
numScenes | the number of scenes for bank-wise navigation of the master tracks clip launcher slots. |
void createNewLauncherClip | ( | int | slotIndex | ) |
Will create a new empty clip at or after slot index. It will use the default clip length. If necessary, a new scene will be created. The new clip will be selected.
slotIndex | absolute slot index in the track (unrelated to banks) |
void createNewLauncherClip | ( | int | slotIndex, |
int | lengthInBeats | ||
) |
Will create a new empty clip at or after slot index. If necessary, a new scene will be created. The new clip will be selected.
slotIndex | absolute slot index in the track (unrelated to banks) |
Track createParentTrack | ( | int | numSends, |
int | numScenes | ||
) |
Creates an object that represent the parent track.
TrackBank createSiblingsTrackBank | ( | final int | numTracks, |
final int | numSends, | ||
final int | numScenes, | ||
final boolean | shouldIncludeEffectTracks, | ||
final boolean | shouldIncludeMasterTrack | ||
) |
Returns a bank of sibling tracks with the given number of tracks, sends and scenes. For more information about track banks and the bank pattern
in general, see the documentation for createTrackBank.
numTracks | the number of child tracks spanned by the track bank |
numSends | the number of sends spanned by the track bank |
numScenes | the number of scenes spanned by the track bank |
shouldIncludeEffectTracks | specifies whether effect tracks should be included |
shouldIncludeMasterTrack | specifies whether the master should be included |
TrackBank createTrackBank | ( | final int | numTracks, |
final int | numSends, | ||
final int | numScenes, | ||
final boolean | hasFlatTrackList | ||
) |
Returns a track bank with the given number of child tracks, sends and scenes. The track bank will only have content if the connected track is a group track.
A track bank can be seen as a fixed-size window onto the list of tracks in the connected track group including their sends and scenes, that can be scrolled in order to access different parts of the track list. For example a track bank configured for 8 tracks can show track 1-8, 2-9, 3-10 and so on.
The idea behind the bank pattern
is that hardware typically is equipped with a fixed amount of channel strips or controls, for example consider a mixing console with 8 channels, but Bitwig Studio documents contain a dynamic list of tracks, most likely more tracks than the hardware can control simultaneously. The track bank returned by this function provides a convenient interface for controlling which tracks are currently shown on the hardware.
Creating a track bank using this method will consider all tracks in the document, including effect tracks and the master track. Use createMainTrackBank or createEffectTrackBank in case you are only interested in tracks of a certain kind.
numTracks | the number of child tracks spanned by the track bank |
numSends | the number of sends spanned by the track bank |
numScenes | the number of scenes spanned by the track bank |
hasFlatTrackList | specifies whether the track bank should operate on a flat list of all nested child tracks or only on the direct child tracks of the connected group track. |
SettableEnumValue crossFadeMode | ( | ) |
Returns an object that provides access to the cross-fade mode of the track.
SettableBooleanValue getArm | ( | ) |
Returns an object that provides access to the arm state of the track.
SettableBooleanValue getAutoMonitor | ( | ) |
Returns an object that provides access to the auto-monitoring state of the track.
SettableBooleanValue getCanHoldAudioData | ( | ) |
Returns an object that indicates if the track may contain audio events.
SettableBooleanValue getCanHoldNoteData | ( | ) |
Returns an object that indicates if the track may contain notes.
ClipLauncherSlotBank getClipLauncher | ( | ) |
ClipLauncherSlotBank getClipLauncherSlots | ( | ) |
Returns an object that can be used to access the clip launcher slots of the track.
SettableEnumValue getCrossFadeMode | ( | ) |
Returns an object that provides access to the cross-fade mode of the track.
BooleanValue getIsMatrixQueuedForStop | ( | ) |
Returns a value object that provides access to the clip launcher's queue-for-stop state on this track. A clip is considered to be queued for stop when playback has been requested to be stopped on that clip, but the playback has not stopped yet due to the current launch quantization settings.
BooleanValue getIsMatrixStopped | ( | ) |
Returns a value object that provides access to the clip launcher playback state of the track.
SettableBooleanValue getIsPreFader | ( | ) |
If the track is an effect track, returns an object that indicates if the effect track is configured as pre-fader.
SettableBooleanValue getMonitor | ( | ) |
Returns an object that provides access to the monitoring state of the track.
Device getPrimaryDevice | ( | ) |
Gets the channels primary device.
Device getPrimaryInstrument | ( | ) |
SourceSelector getSourceSelector | ( | ) |
Returns the source selector for the track, which is shown in the IO section of the track in Bitwig Studio and lists either note or audio sources or both depending on the track type.
BooleanValue isGroup | ( | ) |
Value that reports if the track may contain child tracks, which is the case for group tracks.
SettableBooleanValue isGroupExpanded | ( | ) |
Value that indicates if the group's child tracks are visible.
BooleanValue isMonitoring | ( | ) |
Returns an object that provides a readout of the monitoring state of the track.
BooleanValue isQueuedForStop | ( | ) |
Value that reports if the clip launcher slots are queued for stop.
BooleanValue isStopped | ( | ) |
Value that reports if this track is currently stopped. When a track is stopped it is not playing content from the arranger or clip launcher.
void launchLastClipWithOptions | ( | final String | quantization, |
final String | launchMode | ||
) |
Launches the last clip with the given options:
quantization | possible values are "default", "none", "8", "4", "2", "1", "1/2", "1/4", "1/8", "1/16" |
launchMode | possible values are: "default", "from_start", "continue_or_from_start", "continue_or_synced", "synced" |
SettableBooleanValue monitor | ( | ) |
Returns an object that provides access to the monitoring state of the track.
SettableEnumValue monitorMode | ( | ) |
Returns an object that provides access to the auto-monitoring mode of the track.
void playNote | ( | int | key, |
int | velocity | ||
) |
Plays a note on the track with a default duration and the given key and velocity.
key | the key value of the played note |
velocity | the velocity of the played note |
IntegerValue position | ( | ) |
Value that reports the position of the track within the list of Bitwig Studio tracks.
void recordNewLauncherClip | ( | int | slotIndex | ) |
Will start recording a new clip at or after slot index. If necessary, a new scene will be created. The new clip will be selected.
slotIndex | absolute slot index in the track (unrelated to banks) |
void removeNoteSource | ( | NoteInput | noteInput | ) |
Removes a routing operated by addNoteSource(NoteInput)
void returnToArrangement | ( | ) |
Calling this method causes the arrangement sequencer to take over playback.
void selectSlot | ( | int | slotIndex | ) |
Selects the slot at the given index.
slotIndex | absolute slot index in the track (unrelated to banks) |
void sendMidi | ( | int | status, |
int | data1, | ||
int | data2 | ||
) |
Sends a MIDI message to the hardware device.
status | the status byte of the MIDI message |
data1 | the data1 part of the MIDI message |
data2 | the data2 part of the MIDI message |
void setName | ( | String | name | ) |
Updates the name of the track.
name | the new track name |
SourceSelector sourceSelector | ( | ) |
Returns the source selector for the track, which is shown in the IO section of the track in Bitwig Studio and lists either note or audio sources or both depending on the track type.
void startNote | ( | int | key, |
int | velocity | ||
) |
Starts playing a note on the track with the given key and velocity.
key | the key value of the played note |
velocity | the velocity of the played note |
void stop | ( | ) |
Stops playback of the track.
HardwareActionBindable stopAction | ( | ) |
void stopAlt | ( | ) |
Stops playback of the track using alternative quantization.
HardwareActionBindable stopAltAction | ( | ) |
void stopNote | ( | int | key, |
int | velocity | ||
) |
Stops playing a currently played note.
key | the key value of the playing note |
velocity | the note-off velocity |
StringValue trackType | ( | ) |
Value that reports the track type. Possible reported track types are Group
, Instrument
, Audio
, Hybrid
, Effect
or Master
.