Skip to content

Commit

Permalink
allow binaural mode on 2 or 4 channels
Browse files Browse the repository at this point in the history
  • Loading branch information
ddennedy committed Feb 17, 2024
1 parent 1021ab7 commit 927927d
Showing 1 changed file with 22 additions and 16 deletions.
38 changes: 22 additions & 16 deletions src/qml/filters/ambisonic_decoder/ui.qml
Original file line number Diff line number Diff line change
Expand Up @@ -65,10 +65,12 @@ Item {
zoomSlider.value = filter.getDouble("zoom", position) * 100;
zoomKeyframesButton.checked = filter.animateIn <= 0 && filter.animateOut <= 0 && filter.keyframeCount("zoom") > 0;
blockUpdate = false;
binauralRadioButton.checked = parseInt(filter.get('binaural'));
ambisonicRadioButton.checked = parseInt(filter.get('ambisonic'));
if (application.audioChannels() === 2)
binauralRadioButton.checked = parseInt(filter.get('binaural'));
else
ambisonicRadioButton.checked = parseInt(filter.get('ambisonic'));
stereoRadioButton.checked = !binauralRadioButton.checked && !ambisonicRadioButton.checked;
else if (application.audioChannels() === 4)
quadRadioButton.checked = !binauralRadioButton.checked && !ambisonicRadioButton.checked;
}

function updateProperty_yaw(position) {
Expand Down Expand Up @@ -298,37 +300,41 @@ Item {
RowLayout {
visible: modeLabel.visible

ButtonGroup { id: binauralGroup }
RadioButton {
id: stereoRadioButton
text: qsTr('Stereo')
checked: true
visible: application.audioChannels() === 2
onClicked: filter.set('binaural', 0)
ButtonGroup.group: binauralGroup
onClicked: {
filter.set('ambisonic', 0);
filter.set('binaural', 0);
}
}
RadioButton {
id: binauralRadioButton
text: qsTr('Binaural')
visible: application.audioChannels() === 2
onClicked: filter.set('binaural', 1)
ButtonGroup.group: binauralGroup
visible: application.audioChannels() === 2 || application.audioChannels() === 4
onClicked: {
filter.set('ambisonic', 0);
filter.set('binaural', 1);
}
}
ButtonGroup { id: ambisonicGroup }
RadioButton {
id: quadRadioButton
text: qsTr('Quad')
checked: true
visible: application.audioChannels() === 4
onClicked: filter.set('ambisonic', 0)
ButtonGroup.group: ambisonicGroup
onClicked: {
filter.set('ambisonic', 0);
filter.set('binaural', 0);
}
}
RadioButton {
id: ambisonicRadioButton
text: 'Ambisonic'
visible: application.audioChannels() === 4
onClicked: filter.set('ambisonic', 1)
ButtonGroup.group: ambisonicGroup
onClicked: {
filter.set('ambisonic', 1);
filter.set('binaural', 0);
}
}
}

Expand Down

0 comments on commit 927927d

Please sign in to comment.