This is an attempt to acompany syncflow with a desktop application that can do the following cross platform(Still in intial stages):
- List Devices (Cameras, Mics and Screens) from rust (Uses gstreamer bindings).
- Publish a plethora of devices to syncflow sessions (On session start)
- Record devices locally (No streaming) and upon session completion, upload the recordings to the same s3 bucket as the syncflow session.
There are two crates in this workspace:
livekit-gstreamer
: Uses gstreamer to publish devices to livekit rooms.syncflow-publisher
: A tauri app with UI Controls to listen to sessions, select devices etc...
- Registration to SyncFlow as an IOT device.
- Configuration and Device Discovery.
- Streaming/Local Recording based on when a session is started.
- Upload to SyncFlow S3 bucket upon session complete.
- Cleanup utilities.