VRFS-292 bug fixes
This commit is contained in:
parent
12f15d4fdb
commit
4daf517de0
|
|
@ -53,15 +53,18 @@
|
|||
};
|
||||
|
||||
// dialog variables
|
||||
var unusedAudioInputChannels = [];
|
||||
var inputUnassignedList = [];
|
||||
var track1AudioInputChannels = [];
|
||||
var track2AudioInputChannels = [];
|
||||
|
||||
var unusedAudioOutputChannels = [];
|
||||
var usedAudioOutputChannels = [];
|
||||
var outputUnassignedList = [];
|
||||
var outputAssignedList = [];
|
||||
|
||||
var unusedChatInputChannels = [];
|
||||
var usedChatInputChannels = [];
|
||||
var chatUnassignedList = [];
|
||||
var chatAssignedList = [];
|
||||
|
||||
var chatOtherUnassignedList = [];
|
||||
var chatOtherAssignedList = [];
|
||||
|
||||
var removedAudioChannels = {};
|
||||
var removedVoiceChatChannels = {};
|
||||
|
|
@ -71,6 +74,12 @@
|
|||
var originalVoiceChat;
|
||||
var currentVoiceChat;
|
||||
|
||||
var OS = {
|
||||
WIN32: "Win32",
|
||||
OSX: "MacOSX",
|
||||
UNIX: "Unix"
|
||||
};
|
||||
|
||||
var configure_audio_instructions = {
|
||||
"Win32": "Choose the driver to use for audio and check its settings. Then use arrow " +
|
||||
"buttons to assign audio inputs to your tracks, to indicate what instrument you are playing on " +
|
||||
|
|
@ -339,7 +348,9 @@
|
|||
for (var i=0; i < keys.length; i++) {
|
||||
var template = $('#template-option').html();
|
||||
var isSelected = "";
|
||||
logger.debug("keys[i]=" + keys[i]);
|
||||
if (keys[i] === deviceId) {
|
||||
logger.debug("keys[i] === deviceId");
|
||||
isSelected = "selected";
|
||||
}
|
||||
var html = context.JK.fillTemplate(template, {
|
||||
|
|
@ -352,6 +363,7 @@
|
|||
}
|
||||
|
||||
if (deviceId === '') {
|
||||
logger.debug("deviceId is blank");
|
||||
context.jamClient.TrackSetMusicDevice($('#audio-drivers').val());
|
||||
}
|
||||
|
||||
|
|
@ -367,19 +379,8 @@
|
|||
|
||||
initDialogData();
|
||||
|
||||
// filter out any channels already used on the Voice Chat tab
|
||||
var musicAudioOptions = [];
|
||||
$.each(unusedAudioInputChannels, function(index, val) {
|
||||
var deviceId = val.id;
|
||||
// verify the device is not already used on track 1 or 2
|
||||
if ($('#voice-inputs-selection > option[value="' + deviceId + '"]').length === 0) {
|
||||
logger.debug("Adding " + val.id + " to Music Audio.");
|
||||
musicAudioOptions.push(val);
|
||||
}
|
||||
});
|
||||
|
||||
// load Unused Inputs
|
||||
context.JK.loadOptions($('#template-option').html(), $('#audio-inputs-unused'), musicAudioOptions, "id", "name", -1);
|
||||
context.JK.loadOptions($('#template-option').html(), $('#audio-inputs-unused'), inputUnassignedList, "id", "name", -1);
|
||||
|
||||
// load Track 1 Input(s)
|
||||
context.JK.loadOptions($('#template-option').html(), $('#track1-input'), track1AudioInputChannels, "id", "name", -1);
|
||||
|
|
@ -399,10 +400,10 @@
|
|||
}
|
||||
|
||||
// load Unused Outputs
|
||||
context.JK.loadOptions($('#template-option').html(), $('#audio-output-unused'), unusedAudioOutputChannels, "id", "name", -1);
|
||||
context.JK.loadOptions($('#template-option').html(), $('#audio-output-unused'), outputUnassignedList, "id", "name", -1);
|
||||
|
||||
// load Session Audio Output
|
||||
context.JK.loadOptions($('#template-option').html(), $('#audio-output-selection'), usedAudioOutputChannels, "id", "name", -1);
|
||||
context.JK.loadOptions($('#template-option').html(), $('#audio-output-selection'), outputAssignedList, "id", "name", -1);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -424,25 +425,25 @@
|
|||
var chatOption = $('#voice-chat-device').val();
|
||||
|
||||
// populate with unused session inputs
|
||||
var voiceChatOptions = [];
|
||||
$.each(unusedAudioInputChannels, function(index, val) {
|
||||
var deviceId = val.id;
|
||||
// verify the device is not already used on track 1 or 2
|
||||
if ($('#track1-input > option[value="' + deviceId + '"]').length === 0 &&
|
||||
$('#track2-input > option[value="' + deviceId + '"]').length === 0) {
|
||||
voiceChatOptions.push(val);
|
||||
}
|
||||
});
|
||||
// var voiceChatOptions = [];
|
||||
// $.each(inputUnassignedList, function(index, val) {
|
||||
// var deviceId = val.id;
|
||||
// // verify the device is not already used on track 1 or 2
|
||||
// if ($('#track1-input > option[value="' + deviceId + '"]').length === 0 &&
|
||||
// $('#track2-input > option[value="' + deviceId + '"]').length === 0) {
|
||||
// voiceChatOptions.push(val);
|
||||
// }
|
||||
// });
|
||||
|
||||
if (chatOption === VOICE_CHAT.SESSION) {
|
||||
context.JK.loadOptions($('#template-option').html(), $('#voice-inputs-unused'), voiceChatOptions, "id", "name", -1);
|
||||
context.JK.loadOptions($('#template-option').html(), $('#voice-inputs-selection'), usedChatInputChannels, "id", "name", -1);
|
||||
context.JK.loadOptions($('#template-option').html(), $('#voice-inputs-unused'), chatUnassignedList, "id", "name", -1);
|
||||
context.JK.loadOptions($('#template-option').html(), $('#voice-inputs-selection'), chatAssignedList, "id", "name", -1);
|
||||
}
|
||||
|
||||
// populate with voice devices
|
||||
else if (chatOption === VOICE_CHAT.CHAT) {
|
||||
context.JK.loadOptions($('#template-option').html(), $('#voice-inputs-unused'), unusedChatInputChannels, "id", "name", -1);
|
||||
context.JK.loadOptions($('#template-option').html(), $('#voice-inputs-selection'), usedChatInputChannels, "id", "name", -1);
|
||||
context.JK.loadOptions($('#template-option').html(), $('#voice-inputs-unused'), chatOtherUnassignedList, "id", "name", -1);
|
||||
context.JK.loadOptions($('#template-option').html(), $('#voice-inputs-selection'), chatOtherUnassignedList, "id", "name", -1);
|
||||
}
|
||||
|
||||
// disable inputs
|
||||
|
|
@ -454,69 +455,69 @@
|
|||
|
||||
function initDialogData() {
|
||||
|
||||
// clear out arrays
|
||||
unusedAudioInputChannels = [];
|
||||
track1AudioInputChannels = [];
|
||||
track2AudioInputChannels = [];
|
||||
// set arrays
|
||||
inputUnassignedList = _loadList(ASSIGNMENT.UNASSIGNED, true, false);
|
||||
track1AudioInputChannels = _loadList(ASSIGNMENT.TRACK1, true, false);
|
||||
track2AudioInputChannels = _loadList(ASSIGNMENT.TRACK2, true, false);
|
||||
|
||||
unusedAudioOutputChannels = [];
|
||||
usedAudioOutputChannels = [];
|
||||
outputUnassignedList = _loadList(ASSIGNMENT.UNASSIGNED, false, false);
|
||||
outputAssignedList = _loadList(ASSIGNMENT.OUTPUT, false, false);
|
||||
|
||||
unusedChatInputChannels = [];
|
||||
usedChatInputChannels = [];
|
||||
chatUnassignedList = _loadList(ASSIGNMENT.UNASSIGNED, true, false);
|
||||
chatAssignedList = _loadList(ASSIGNMENT.CHAT, true, false);
|
||||
|
||||
chatOtherUnassignedList = _loadList(ASSIGNMENT.UNASSIGNED, true, true);
|
||||
chatOtherAssignedList = _loadList(ASSIGNMENT.CHAT, true, true);
|
||||
}
|
||||
|
||||
function _loadList(assignment, input, chat) {
|
||||
var list = [];
|
||||
|
||||
// get data needed for listboxes
|
||||
var channels = context.jamClient.TrackGetChannels();
|
||||
|
||||
var musicDevices = context.jamClient.TrackGetMusicDeviceNames(input);
|
||||
|
||||
// unassigned inputs
|
||||
$.each(channels, function(index, val) {
|
||||
var assignment = context.jamClient.TrackGetAssignment(val.id, val.input);
|
||||
logger.debug("channel id=" + val.id + ", channel input=" + val.input + ", channel assignment=" + assignment +
|
||||
|
||||
if (input !== val.input) {
|
||||
return;
|
||||
}
|
||||
|
||||
var currAssignment = context.jamClient.TrackGetAssignment(val.id, val.input);
|
||||
if (assignment !== currAssignment) {
|
||||
return;
|
||||
}
|
||||
|
||||
logger.debug("channel id=" + val.id + ", channel input=" + val.input + ", channel assignment=" + currAssignment +
|
||||
", channel name=" + val.name + ", channel type=" + val.device_type + ", chat=" + val.chat);
|
||||
|
||||
// INPUT
|
||||
if (context.jamClient.TrackIsMusicDeviceType(val.device_type)) {
|
||||
if (val.input) {
|
||||
if (assignment === ASSIGNMENT.CHAT) {
|
||||
usedChatInputChannels.push(val);
|
||||
}
|
||||
else if (assignment === ASSIGNMENT.UNASSIGNED) {
|
||||
if (!val.chat) {
|
||||
unusedAudioInputChannels.push(val);
|
||||
}
|
||||
else {
|
||||
unusedChatInputChannels.push(val);
|
||||
}
|
||||
}
|
||||
else if (assignment === ASSIGNMENT.OUTPUT) {
|
||||
}
|
||||
else {
|
||||
if (assignment === ASSIGNMENT.TRACK1) {
|
||||
track1AudioInputChannels.push(val);
|
||||
}
|
||||
else if (assignment === ASSIGNMENT.TRACK2) {
|
||||
track2AudioInputChannels.push(val);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// OUTPUT
|
||||
else {
|
||||
if (assignment === ASSIGNMENT.CHAT) {
|
||||
|
||||
}
|
||||
else if (assignment === ASSIGNMENT.UNASSIGNED) {
|
||||
if (!val.chat) {
|
||||
unusedAudioOutputChannels.push(val);
|
||||
}
|
||||
}
|
||||
else if (assignment === ASSIGNMENT.OUTPUT) {
|
||||
usedAudioOutputChannels.push(val);
|
||||
}
|
||||
else {
|
||||
}
|
||||
var os = context.jamClient.GetOSAsString();
|
||||
if (os === OS.WIN32) {
|
||||
if (chat && ($.inArray(val.device_id, musicDevices) > -1 || context.jamClient.TrackIsMusicDeviceType(val.device_type))) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (chat && ($.inArray(val.device_id, musicDevices) > -1 || !context.jamClient.TrackIsMusicDeviceType(val.device_type))) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (!chat && $.inArray(val.device_id, musicDevices) === -1) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ((chat && !val.chat) || (!chat && val.chat)) {
|
||||
return;
|
||||
}
|
||||
|
||||
logger.debug("Adding " + val.device_id + " channel to list.");
|
||||
list.push(val);
|
||||
});
|
||||
|
||||
return list;
|
||||
}
|
||||
|
||||
function saveSettings() {
|
||||
|
|
|
|||
|
|
@ -264,6 +264,13 @@
|
|||
device_id = id;
|
||||
}
|
||||
|
||||
function TrackGetMusicDeviceNames(input) {
|
||||
var names = [];
|
||||
names.push("Test 1");
|
||||
names.push("Test 2");
|
||||
return names;
|
||||
}
|
||||
|
||||
// mock response of this method by allowing only even device IDs to open control panel
|
||||
function TrackHasControlPanel() {
|
||||
return true;
|
||||
|
|
@ -396,6 +403,7 @@
|
|||
this.TrackGetDevices = TrackGetDevices;
|
||||
this.TrackGetMusicDeviceID = TrackGetMusicDeviceID;
|
||||
this.TrackSetMusicDevice = TrackSetMusicDevice;
|
||||
this.TrackGetMusicDeviceNames = TrackGetMusicDeviceNames;
|
||||
this.TrackHasControlPanel = TrackHasControlPanel;
|
||||
this.TrackOpenControlPanel = TrackOpenControlPanel;
|
||||
this.TrackIsMusicDeviceType = TrackIsMusicDeviceType;
|
||||
|
|
|
|||
Loading…
Reference in New Issue