Adds program events and more params to synth.

This commit is contained in:
Bailey Stevens 2023-10-05 03:48:36 -04:00
parent 8712bcdde1
commit 72bc8ec5f2
4 changed files with 16 additions and 14 deletions

View File

@ -3,14 +3,15 @@
import argparse
import asyncio
from pathlib import Path
from collections import namedtuple
from functools import partial
import websockets
from .mmelodies_pb2 import UpdateRequest, Update, Parameter
from .mmelodies_pb2 import UpdateRequest, Update
CONNECTIONS = {}
def connections(*paths):
if not paths:
paths = CONNECTIONS.keys()
@ -19,7 +20,7 @@ def connections(*paths):
for path in paths:
clients.extend(CONNECTIONS.get(path, []))
return clients
return clients
async def request_handler(ws, writer):
@ -41,11 +42,12 @@ async def request_handler(ws, writer):
writer.write(b"scope;")
if request.param_refresh:
writer.write(b"params;")
if request.pgm_event:
writer.write(f"pgmevt {request.pgm_event};".encode())
for param in request.param_changes:
writer.write(f"set {param.id} {param.value};".encode())
writer.write(b"\n")
await writer.drain()
@ -94,7 +96,6 @@ async def update_handler(reader):
websockets.broadcast(clients, update.SerializeToString())
except Exception as e:
print(repr(e))
async def _main(listen_port, pd_port):
@ -143,7 +144,7 @@ async def _main(listen_port, pd_port):
async with ws:
while True:
await update_handler(pd_reader)
await update_handler(pd_reader)
def port(arg: str):

View File

@ -14,7 +14,7 @@ _sym_db = _symbol_database.Default()
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fmmelodies.proto\"&\n\tParameter\x12\n\n\x02id\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\r\"\x8e\x01\n\rUpdateRequest\x12\x1a\n\rscope_samples\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\rparam_refresh\x18\x03 \x01(\x08H\x01\x88\x01\x01\x12!\n\rparam_changes\x18\x02 \x03(\x0b\x32\n.ParameterB\x10\n\x0e_scope_samplesB\x10\n\x0e_param_refresh\";\n\x06Update\x12\x15\n\rscope_samples\x18\x01 \x03(\x02\x12\x1a\n\x06params\x18\x02 \x03(\x0b\x32\n.Parameterb\x06proto3')
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fmmelodies.proto\"&\n\tParameter\x12\n\n\x02id\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\r\"\xb4\x01\n\rUpdateRequest\x12\x1a\n\rscope_samples\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\rparam_refresh\x18\x03 \x01(\x08H\x01\x88\x01\x01\x12\x16\n\tpgm_event\x18\x04 \x01(\rH\x02\x88\x01\x01\x12!\n\rparam_changes\x18\x02 \x03(\x0b\x32\n.ParameterB\x10\n\x0e_scope_samplesB\x10\n\x0e_param_refreshB\x0c\n\n_pgm_event\";\n\x06Update\x12\x15\n\rscope_samples\x18\x01 \x03(\x02\x12\x1a\n\x06params\x18\x02 \x03(\x0b\x32\n.Parameterb\x06proto3')
@ -48,7 +48,7 @@ if _descriptor._USE_C_DESCRIPTORS == False:
_PARAMETER._serialized_start=19
_PARAMETER._serialized_end=57
_UPDATEREQUEST._serialized_start=60
_UPDATEREQUEST._serialized_end=202
_UPDATE._serialized_start=204
_UPDATE._serialized_end=263
_UPDATEREQUEST._serialized_end=240
_UPDATE._serialized_start=242
_UPDATE._serialized_end=301
# @@protoc_insertion_point(module_scope)

View File

@ -96,11 +96,11 @@
]
},
"locked": {
"lastModified": 1696434240,
"narHash": "sha256-DDOn4JmDfl7GkWIsFMF9puGSmJvAO1x1t2rQIYg+DTQ=",
"lastModified": 1696489753,
"narHash": "sha256-7o3sAmftK9KGoAD4d3UPg9hveviT5fgQA42u+3DUclQ=",
"ref": "refs/heads/main",
"rev": "e36c08b5291c38796494b7d0c17d190f097f18a7",
"revCount": 25,
"rev": "728d931a877c7324bd652ebcdd9dfe63f7f1d596",
"revCount": 26,
"type": "git",
"url": "https://fem.mint.lgbt/mmelodies/phyzzy.git"
},

View File

@ -8,6 +8,7 @@ message Parameter {
message UpdateRequest {
optional bool scope_samples = 1;
optional bool param_refresh = 3;
optional uint32 pgm_event = 4;
repeated Parameter param_changes = 2;
}