Tracks
Tracks allows you to control and observe tracks parameters changes.
To observe tracks parameters changes, access the TracksRx to use RxJava Observables or TracksCallbacks to use callbacks as follow:
RxJava
val tracksRx = OscletonSDK.instance.tracks.rx() tracksRx.trackParameter .subscribe { trackParameter -> // Do any needed logic }
Tracks tracks = OscletonSDK.getInstance().getTracks(); TracksRx rx = RxProvider.from(tracks); rx.getTrackParameter() .subscribe(trackParameter -> { // Do any needed logic });
Callbacks
val tracksCallbacks = OscletonSDK.instance.tracks.cb() tracksCallbacks.set(OnTrackParameterChangeListener { trackParameter -> // Do any needed logic })
Tracks tracks = OscletonSDK.getInstance().getTracks(); TracksCallbacks cb = CallbackProvider.from(tracks); cb.set((OnTrackParameterChangeListener) trackParameter -> { // Do any needed logic });
TrackParameter is a common data class used for multiple parameters like track volume, panning, mute, solo, arm etc.
To know which parameter is changing, check the paramIndex
or paramName
properties.