feat: load pipeline graph from graph.json

studio-manager now accepts an optional path argument:
  dmf-studio-manager graph.json

load_graph() parses nodes and edges from JSON, generating fresh UUIDs
for each MXL flow on every launch. Falls back to hardcoded build_graph()
when no argument is given.

graph.json at repo root defines the current testpattern→ndiout pipeline.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
JohannesItten
2026-07-03 10:36:20 +03:00
parent f2515b7ce2
commit 2b0dfb10c6
2 changed files with 60 additions and 1 deletions
+18
View File
@@ -0,0 +1,18 @@
{
"nodes": [
{ "id": "testpattern", "type": "testpattern", "params": { "pattern": "bars" } },
{ "id": "ndiout", "type": "ndiout", "params": {} }
],
"edges": [
{
"from": "testpattern", "from_port": "flow_id",
"to": "ndiout", "to_port": "flow_id",
"format": { "kind": "video", "width": 1920, "height": 1080, "fps_num": 25, "fps_den": 1 }
},
{
"from": "testpattern", "from_port": "audio_flow_id",
"to": "ndiout", "to_port": "audio_flow_id",
"format": { "kind": "audio", "sample_rate": 48000, "channels": 2, "bit_depth": 32 }
}
]
}