+
@@ -658,14 +673,14 @@ function ChannelRouterSettingsDialog(props: ChannelRouterSettingsDialogProps) {
{ChannelSelect(RouteType.Main, 0, true)}
|
-
{Vu()} |
+
{Vu(RouteType.Main, true)} |
|
-
{Vu()} |
+
{Vu(RouteType.Main, false)} |
{ChannelSelect(RouteType.Main, 0, false)}
|
@@ -691,18 +706,17 @@ function ChannelRouterSettingsDialog(props: ChannelRouterSettingsDialogProps) {
{(ChannelSelect(RouteType.Aux, 0, true))}
|
-
{Vu()} |
+
{Vu(RouteType.Aux, true)} |
|
-
{Vu()} |
+
{Vu(RouteType.Aux, false)} |
{(ChannelSelect(RouteType.Aux, 0, false))}
|
@@ -728,11 +742,11 @@ function ChannelRouterSettingsDialog(props: ChannelRouterSettingsDialogProps) {
{(ChannelSelect(RouteType.Send, 0, false))}
|
-
{Vu()} |
+
{Vu(RouteType.Send,false)} |
{/* No button */}
|
-
{Vu()} |
+
{Vu(RouteType.Send,true)} |
{(ChannelSelect(RouteType.Send, 0, true))}
|
@@ -798,7 +812,7 @@ function ChannelRouterSettingsDialog(props: ChannelRouterSettingsDialogProps) {
- | {Vu()} |
+ {Vu(RouteType.Main,true)} |
|
- {Vu()} |
+ {Vu(RouteType.Main,false)} |
@@ -862,7 +876,7 @@ function ChannelRouterSettingsDialog(props: ChannelRouterSettingsDialogProps) {
- | {Vu()} |
+ {Vu(RouteType.Aux, true)} |
|
- {Vu()} |
+ {Vu(RouteType.Aux, false)} |
@@ -929,7 +943,7 @@ function ChannelRouterSettingsDialog(props: ChannelRouterSettingsDialogProps) {
- | {Vu()} |
+ {Vu(RouteType.Send, false)} |
|
- {Vu()} |
+ {Vu(RouteType.Send, true)} |
@@ -1000,11 +1014,11 @@ function ChannelRouterSettingsDialog(props: ChannelRouterSettingsDialogProps) {
{
landscape ? (
<>
-
-
- {PresetSelect(200)}
+
+
+ {PresetSelect("325px")}
-
+
>
) : (
diff --git a/vite/src/pipedal/Pedalboard.tsx b/vite/src/pipedal/Pedalboard.tsx
index 423640f..affe053 100644
--- a/vite/src/pipedal/Pedalboard.tsx
+++ b/vite/src/pipedal/Pedalboard.tsx
@@ -381,6 +381,8 @@ export class Pedalboard implements Deserializable
{
static readonly START_CONTROL = -2; // synthetic PedalboardItem for input volume.
static readonly END_CONTROL = -3; // synthetic PedalboardItem for output volume.
+ static readonly SEND_OUTPUT_CONTROL = -4; // synthetic PedalboardItem for send output volume.
+ static readonly SEND_RETURN_CONTROL = -5; // synthetic PedalboardItem for send return volume.
static readonly MAIN_INSERT_START_CONTROL_ID = Pedalboard.MAIN_INSERT_INSTANCE_BASE + -2 + MAX_INSTANCE_ID;
static readonly MAIN_INSERT_END_CONTROL_ID = Pedalboard.MAIN_INSERT_INSTANCE_BASE + -3 + MAX_INSTANCE_ID;
static readonly AUX_INSERT_START_CONTROL_ID = Pedalboard.AUX_INSERT_INSTANCE_BASE + -2 + MAX_INSTANCE_ID
diff --git a/vite/src/pipedal/PiPedalModel.tsx b/vite/src/pipedal/PiPedalModel.tsx
index e753e52..1cafe2c 100644
--- a/vite/src/pipedal/PiPedalModel.tsx
+++ b/vite/src/pipedal/PiPedalModel.tsx
@@ -2517,6 +2517,7 @@ export class PiPedalModel //implements PiPedalModel
} else {
let newTarget = new VuSubscriptionTarget();
newTarget.subscribers.push(result);
+ this.vuSubscriptions[instanceId] = newTarget;
this.webSocket.request("addVuSubscription", instanceId)
.then((subscriptionHandle) => {
@@ -2526,6 +2527,9 @@ export class PiPedalModel //implements PiPedalModel
} else {
newTarget.serverSubscriptionHandle = subscriptionHandle;
}
+ }).catch((error) => {
+ // failed to subscribe.
+ this.vuSubscriptions[instanceId] = undefined;
});
this.vuSubscriptions[instanceId] = newTarget;
diff --git a/vite/src/pipedal/VuMeter.tsx b/vite/src/pipedal/VuMeter.tsx
index ebcd333..d3d0d22 100644
--- a/vite/src/pipedal/VuMeter.tsx
+++ b/vite/src/pipedal/VuMeter.tsx
@@ -200,6 +200,7 @@ interface VuMeterProps extends WithStyles {
instanceId: number;
display: "input" | "output";
theme: Theme;
+ height: number | undefined;
displayText?: boolean;
}
@@ -462,6 +463,20 @@ export const VuMeter =
render() {
let displayText = this.props.displayText??false;
const classes = withStyles.getClasses(this.props);
+ if (this.props.height !== undefined)
+ {
+ let height = this.props.height;
+ let scale = height / DISPLAY_HEIGHT;
+ return (
+
+
+ {
+ this.renderVus()
+ }
+
+
+ );
+ }
if (displayText)
{
return (
@@ -526,7 +541,7 @@ export const VuMeter =
componentDidMount() {
this.model.state.addOnChangedHandler(this.onStateChanged);
- this.addVuSubscription();
+ //this.addVuSubscription();
}
componentWillUnmount() {
this.removeVuSubscription();
diff --git a/vite/vite.config.ts b/vite/vite.config.ts
index 6c069b2..065f001 100644
--- a/vite/vite.config.ts
+++ b/vite/vite.config.ts
@@ -14,7 +14,7 @@ export default defineConfig({
target: 'http://localhost:8080',
changeOrigin: false,
},
- '/var': {
+ '^/var/(?!config\\.json$).*': {
target: 'http://localhost:8080',
changeOrigin: false,
},