Skip to content

Image Source/Sink Support#77

Merged
karls-science merged 3 commits intomainfrom
ks/imageNodes
Apr 28, 2026
Merged

Image Source/Sink Support#77
karls-science merged 3 commits intomainfrom
ks/imageNodes

Conversation

@karls-science
Copy link
Copy Markdown
Contributor

Summary

Add support for ImageSource and ImageSink nodes to enable prima as a synapse server.

Changes

  • Created 2 new nodes: ImageSource & ImageSink
  • Created ImageFrame and PixelFormat types
  • Added kCamera peripheral

Testing

How can this change be tested?
See unit tests in below link

Please provide a link to a reference server and client implementation in synapse-python.
sciencecorp/synapse-python#173

@maxhodak
Copy link
Copy Markdown
Contributor

I probably would have named the node Camera rather than ImageSource but ImageSource is fine. We should remove the ImageSink node though: if there are display peripherals to write to, a user-defined ApplicationNode should do so within its own logic, no Synapse node involved.

Display peripherals should be handled by user-defined ApplicationNode
logic rather than a dedicated Synapse sink node.
@karls-science
Copy link
Copy Markdown
Contributor Author

Renamed ImageSource to Camera & removed ImageSink.

Comment thread api/datatype.proto
Comment thread api/datatype.proto Outdated
@namthor9
Copy link
Copy Markdown

Yeah I guess that makes sense to keep things consistent for now- but imo its a little ugly to have two timestamps, in theory a client could compute timestamp_ns by doing the unix_timestamp[0]+sampling_rate*i calculation itself.

@karls-science karls-science merged commit d67aae5 into main Apr 28, 2026
2 checks passed
@karls-science karls-science deleted the ks/imageNodes branch April 28, 2026 20:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants