Updates backend to handle new synth messages.

This commit is contained in:
Bailey Stevens 2023-10-05 23:09:39 -04:00
parent f4ca9ff1f7
commit a13658e526
4 changed files with 24 additions and 20 deletions

View File

@ -41,12 +41,12 @@ async def request_handler(ws, writer):
if request.scope_samples:
writer.write(b"scope;")
if request.param_refresh:
writer.write(b"params;")
writer.write(b"getp;")
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(f"setp {param.id} {param.value};".encode())
writer.write(b"\n")
@ -75,20 +75,21 @@ async def update_handler(reader):
update = Update()
parts = message.split(" ")
if parts[0] == "params":
for param_id, value in enumerate(parts[1:]):
param = update.params.add()
param.id = param_id
param.value = int(value)
clients = connections()
elif parts[0] == "scope":
if parts[0] == "scope":
update.scope_samples.extend([float(part) for part in parts[1:]])
clients = connections("/api/display")
elif parts[0] == "change":
elif parts[0] == "param":
param = update.params.add()
param.id = int(parts[1])
param.value = int(parts[2])
param.scaled_value = float(parts[3])
clients = connections()
elif parts[0] == "seqc":
update.note_sequence.extend([int(part) for part in parts[1:]])
clients = connections("/api/display")
elif parts[0] == "seqi":
update.sequence_index = int(parts[1])
clients = connections("/api/display")
else:
print(parts[0])
continue

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\"\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')
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fmmelodies.proto\"R\n\tParameter\x12\n\n\x02id\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\r\x12\x19\n\x0cscaled_value\x18\x03 \x01(\x02H\x00\x88\x01\x01\x42\x0f\n\r_scaled_value\"\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\"\x82\x01\n\x06Update\x12\x15\n\rscope_samples\x18\x01 \x03(\x02\x12\x1a\n\x06params\x18\x02 \x03(\x0b\x32\n.Parameter\x12\x15\n\rnote_sequence\x18\x03 \x03(\x02\x12\x1b\n\x0esequence_index\x18\x04 \x01(\x05H\x00\x88\x01\x01\x42\x11\n\x0f_sequence_indexb\x06proto3')
@ -46,9 +46,9 @@ if _descriptor._USE_C_DESCRIPTORS == False:
DESCRIPTOR._options = None
_PARAMETER._serialized_start=19
_PARAMETER._serialized_end=57
_UPDATEREQUEST._serialized_start=60
_UPDATEREQUEST._serialized_end=240
_UPDATE._serialized_start=242
_UPDATE._serialized_end=301
_PARAMETER._serialized_end=101
_UPDATEREQUEST._serialized_start=104
_UPDATEREQUEST._serialized_end=284
_UPDATE._serialized_start=287
_UPDATE._serialized_end=417
# @@protoc_insertion_point(module_scope)

View File

@ -96,11 +96,11 @@
]
},
"locked": {
"lastModified": 1696489753,
"narHash": "sha256-7o3sAmftK9KGoAD4d3UPg9hveviT5fgQA42u+3DUclQ=",
"lastModified": 1696560194,
"narHash": "sha256-lRU+O0UsQBkVYhI45YzkJ2iFQdGdPrfgjVFFBbKWIcw=",
"ref": "refs/heads/main",
"rev": "728d931a877c7324bd652ebcdd9dfe63f7f1d596",
"revCount": 26,
"rev": "053df5be8199eea85a463fb12f18947d043f85b3",
"revCount": 29,
"type": "git",
"url": "https://fem.mint.lgbt/mmelodies/phyzzy.git"
},

View File

@ -3,6 +3,7 @@ syntax = "proto3";
message Parameter {
uint32 id = 1;
uint32 value = 2;
optional float scaled_value = 3;
}
message UpdateRequest {
@ -15,4 +16,6 @@ message UpdateRequest {
message Update {
repeated float scope_samples = 1;
repeated Parameter params = 2;
repeated int32 note_sequence = 3;
optional int32 sequence_index = 4;
}