Open currentsound opened 4 years ago
I'm not sure why this is happening. But since the output device is shared between all actions on a page, somehow this might cause this. I will fix #7 first and see if this issue still occurs after that.
Ok thanks. Let me know when the fix is out for the page issue and I'll test it to see if the other problem starts working.
Thanks -----Original Message----- From: "Timmy Kokke" notifications@github.com Sent: Friday, November 15, 2019 4:14am To: "sorskoot/StreamDeck-Midi-plugin" StreamDeck-Midi-plugin@noreply.github.com Cc: "currentsound" mail@currentsound.com, "Author" author@noreply.github.com Subject: Re: [sorskoot/StreamDeck-Midi-plugin] Bug, will only output to Microsoft GS Wavetable synth (#10)
I'm not sure why this is happening. But since the output device is shared between all actions on a page, somehow this might cause this. I will fix #7 first and see if this issue still occurs after that. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub , or unsubscribe .
property_inspector/js/property-inspector.js
if (actionInfo.action === "com.sorskoot.midi.action") {
//initialize values
if (actionInfo.payload.settings.settingsModel) {
settingsModel.Note = actionInfo.payload.settings.settingsModel.Note;
currentAction = "note";
}
} else if (actionInfo.action === "com.sorskoot.midicc.action") {
if (actionInfo.payload.settings.settingsModel) {
settingsModel.Value = actionInfo.payload.settings.settingsModel.Value;
settingsModel.Control = actionInfo.payload.settings.settingsModel.Control;
currentAction = "cc";
}
}
to
if (actionInfo.action === "com.sorskoot.midi.action") {
//initialize values
currentAction = "note";
if (actionInfo.payload.settings.settingsModel) {
settingsModel.Note = actionInfo.payload.settings.settingsModel.Note;
}
} else if (actionInfo.action === "com.sorskoot.midicc.action") {
currentAction = "cc";
if (actionInfo.payload.settings.settingsModel) {
settingsModel.Value = actionInfo.payload.settings.settingsModel.Value;
settingsModel.Control = actionInfo.payload.settings.settingsModel.Control;
}
should do the trick as a quick fix. Without anything ever saved you don't have settingsModel in actionInfo.payload.settings hence it never triggers the currentAction IFs below, hence it doesn't show the midi note (or cc) input fields, and additionally you can't save SelectedDevice to a key that's not there - hence when you reload the action, it's still on index 0 regardless what you set before.
Another issue is that the midi device never change in the onWillAppear method. It would only change if the midi device is not null, but if it set first time, it will never change. There must be a check if the device change something like that
if (MidiDevice.outputDevice == null || string.Equals(MidiDevice.outputDevice.Name, inputDeviceInfo.Name))
or I´m wrong?
I think this issue might be related to #7 . Will test when #7 is closed and released.
No matter what I select. With only 1 plugin on the page, it will only ever output to Microsoft GS Wavetable synth even if I select another device from the list. I still hear a note being triggered on Microsoft GS Wavetable Synth. Using the latest version 1.2 of the plugin plus the latest version of Stream Deck on Win 10.
Why is this happening and can it be fixed?
I uninstalled and reinstalled the plugin multiple times. At one stage it was working but LoopMIDI wouldn't show in the list until uninstalling... then it didn't work anymore.