* vst working
This commit is contained in:
parent
021db62539
commit
5fad4953bc
|
|
@ -122,12 +122,11 @@ ConfigureTracksStore = @ConfigureTracksStore
|
|||
midiInstruments = []
|
||||
|
||||
instruments = []
|
||||
instruments.push(`<option value="">Select the instrument for this track</option>`)
|
||||
for displayName, value of context.JK.server_to_client_instrument_map
|
||||
instruments.push(`<option value={value.server_id}>{displayName}</option>`)
|
||||
|
||||
selectedMidiInterface = ''
|
||||
selectedInstrument = ''
|
||||
selectedInstrument = context.JK.client_to_server_instrument_map[50].server_id # default to electric guitar
|
||||
selectedMidiInstrument = ''
|
||||
|
||||
instrumentDisabled = true
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ gearUtils = context.JK.GearUtils
|
|||
trackTypeLabel = 'AUDIO'
|
||||
|
||||
vstName = 'None'
|
||||
if inputsForTrack.vst
|
||||
if inputsForTrack.vst? && inputsForTrack.vst != 'NONE'
|
||||
vstName = "#{inputsForTrack.vst.name} by #{inputsForTrack.vst.manuf}"
|
||||
|
||||
liveTracks.push(
|
||||
|
|
|
|||
|
|
@ -54,6 +54,7 @@ context = window
|
|||
associatedVst = null
|
||||
# find any VST info
|
||||
if hasMixer && @configureTracks?
|
||||
console.log("checking associations", @configureTracks.vstTrackAssignments.vsts, mixerData.mixer)
|
||||
for vst in @configureTracks.vstTrackAssignments.vsts
|
||||
if vst.track == mixerData.mixer.track - 1 && vst.name != 'NONE'
|
||||
logger.debug("found VST on track", vst, track)
|
||||
|
|
|
|||
|
|
@ -33,7 +33,6 @@ bool VST_EnableMidiForTrack(const QString& trackId, bool enableMidi, int midiDev
|
|||
midiTrackAssignments: {tracks: []}
|
||||
trackType: 'audio'
|
||||
|
||||
|
||||
init: () ->
|
||||
this.listenTo(context.AppStore, this.onAppInit)
|
||||
this.listenTo(context.MixerStore, this.onMixersChanged)
|
||||
|
|
@ -69,7 +68,7 @@ bool VST_EnableMidiForTrack(const QString& trackId, bool enableMidi, int midiDev
|
|||
@performVstScan(true)
|
||||
|
||||
performVstScan: (sendChanged) ->
|
||||
@hasVst = context.jamClient.hasVstHost()
|
||||
@hasVst = gon.global.vst_enabled & context.jamClient.hasVstHost()
|
||||
logger.debug("hasVst", @hasVst)
|
||||
if @hasVst
|
||||
logger.debug("vstScan starting")
|
||||
|
|
@ -103,11 +102,19 @@ bool VST_EnableMidiForTrack(const QString& trackId, bool enableMidi, int midiDev
|
|||
@changed()
|
||||
|
||||
performMidiScan: () ->
|
||||
|
||||
if !@hasVst
|
||||
logger.debug("performMidiScan skipped due to no VST")
|
||||
return
|
||||
context.jamClient.VST_ScanForMidiDevices();
|
||||
@attachedMidiDevices = context.jamClient.VST_GetMidiDeviceList();
|
||||
|
||||
# trackNumber is 0-based, and optional
|
||||
onShowVstSettings: (trackNumber) ->
|
||||
if !@hasVst
|
||||
logger.debug("onShowVstSettings skipped due to no VST")
|
||||
return
|
||||
|
||||
if !trackNumber?
|
||||
trackNumber = @trackNumber - 1 if @trackNumber?
|
||||
|
||||
|
|
@ -126,15 +133,16 @@ bool VST_EnableMidiForTrack(const QString& trackId, bool enableMidi, int midiDev
|
|||
@editingTrack = inputsForTrack
|
||||
break
|
||||
|
||||
# slap on vst, if any, from list of vst assignments
|
||||
for vst in @vstTrackAssignments.vsts
|
||||
if vst.track == @editingTrack.assignment - 1
|
||||
@editingTrack.vst = vst
|
||||
@editingTrack.midiDeviceIndex = vst.midiDeviceIndex
|
||||
break
|
||||
|
||||
if @editingTrack.vst?
|
||||
logger.debug("current track has a VST assigned:" + @editingTrack.vst.file)
|
||||
# slap on vst, if any, from list of vst assignments
|
||||
for vst in @vstTrackAssignments.vsts
|
||||
if vst.track == @editingTrack.assignment - 1
|
||||
@editingTrack.vst = vst
|
||||
@editingTrack.midiDeviceIndex = vst.midiDeviceIndex
|
||||
break
|
||||
|
||||
if @editingTrack.vst?
|
||||
logger.debug("current track has a VST assigned:" + @editingTrack.vst.file)
|
||||
|
||||
@item = {
|
||||
musicPorts: @musicPorts,
|
||||
|
|
@ -192,8 +200,15 @@ bool VST_EnableMidiForTrack(const QString& trackId, bool enableMidi, int midiDev
|
|||
|
||||
loadTrackInstruments: (forceInputsToUnassign) ->
|
||||
for inputsForTrack in @trackAssignments.inputs.assigned
|
||||
|
||||
clientInstrument = context.jamClient.TrackGetInstrument(inputsForTrack.assignment)
|
||||
|
||||
if clientInstrument == 0
|
||||
logger.debug("defaulting track instrument for assignment #{@trackNumber}")
|
||||
# ensure that we always have an instrument set (50 = electric guitar
|
||||
context.jamClient.TrackSetInstrument(inputsForTrack.assignment, 50)
|
||||
clientInstrument = 50
|
||||
|
||||
instrument = context.JK.client_to_server_instrument_map[clientInstrument];
|
||||
|
||||
inputsForTrack.instrument_id = instrument?.server_id
|
||||
|
|
@ -244,6 +259,11 @@ bool VST_EnableMidiForTrack(const QString& trackId, bool enableMidi, int midiDev
|
|||
context.JK.Banner.showAlert('Unable to save assignments. ' + result);
|
||||
|
||||
onAssociateVSTWithTrack: (vst) ->
|
||||
|
||||
if !@hasVst
|
||||
logger.debug("onAssociateVSTWithTrack skipped due to no VST")
|
||||
return
|
||||
|
||||
if vst?
|
||||
logger.debug("associating track:#{@trackNumber} with VST:#{vst.file}")
|
||||
|
||||
|
|
@ -336,8 +356,13 @@ bool VST_EnableMidiForTrack(const QString& trackId, bool enableMidi, int midiDev
|
|||
break
|
||||
|
||||
if @newTrack
|
||||
# ensure that we always have an instrument set (50 = electric guitar
|
||||
context.jamClient.TrackSetInstrument(@trackNumber, 50)
|
||||
|
||||
assignment = context.jamClient.TrackGetInstrument(@trackNumber)
|
||||
|
||||
if assignment == 0
|
||||
logger.debug("defaulting track instrument for assignment #{@trackNumber}")
|
||||
# ensure that we always have an instrument set (50 = electric guitar
|
||||
context.jamClient.TrackSetInstrument(@trackNumber, 50)
|
||||
|
||||
@changed()
|
||||
|
||||
|
|
|
|||
|
|
@ -377,5 +377,7 @@ if defined?(Bundler)
|
|||
config.download_tracker_day_range = 30
|
||||
config.max_user_ip_address = 10
|
||||
config.max_multiple_users_same_ip = 2
|
||||
|
||||
config.vst_enabled = true
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -102,4 +102,6 @@ SampleApp::Application.configure do
|
|||
config.react.variant = :development
|
||||
|
||||
config.time_shift_style = :sox # or sbsms
|
||||
|
||||
config.vst_enabled = true
|
||||
end
|
||||
|
|
|
|||
|
|
@ -22,4 +22,5 @@ Gon.global.jamtrack_landing_bubbles_enabled = Rails.application.config.jamtrack_
|
|||
Gon.global.jamtrack_browser_bubbles_enabled = Rails.application.config.jamtrack_browser_bubbles_enabled
|
||||
Gon.global.bugsnag_key = Rails.application.config.bugsnag_key
|
||||
Gon.global.bugsnag_notify_release_stages = Rails.application.config.bugsnag_notify_release_stages
|
||||
Gon.global.vst_enabled = Rails.application.config.vst_enabled
|
||||
Gon.global.env = Rails.env
|
||||
|
|
|
|||
Loading…
Reference in New Issue