Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What requirements for Recording Data and Playback of Data #48

Open
thompson318 opened this issue Apr 28, 2020 · 2 comments
Open

What requirements for Recording Data and Playback of Data #48

thompson318 opened this issue Apr 28, 2020 · 2 comments
Labels
p3-low Low priority

Comments

@thompson318
Copy link
Collaborator

In GitLab by @MattClarkson on Mar 7, 2019, 16:24

Similar to the #47 which is concerned with storage on a departmental server, (i.e. good curation of data), there is also the issue of how we record data, and how do we allow playback in a nice fashion, so we can re-watch sessions of data.

So, if anyone had ideas of what to implement in SNAPPY I'd like to hear them. Needs to be as simple as possible otherwise researchers tend not to adopt or use them.

  1. Formats for video storage? Fixed rate, or time-varying formats?
  2. Tools for post processing?
  3. How to save different sources, e.g. video+ultrasound+tracking, as either synchronised or unsynchronised

etc.

@StephenThompson @ThomasDowrick @mianahmad @EddieEdwards @MirekJanatka

@thompson318
Copy link
Collaborator Author

In GitLab by @MattClarkson on Mar 7, 2019, 16:27

@SimoneFoti

@thompson318
Copy link
Collaborator Author

In GitLab by @ThomasDowrick on Mar 12, 2019, 08:03

There are separate considerations as to what is the best format for each individual source, and then for how we package them all together. My thoughts:

Individual sources

Video - I would say a fixed rate format, at least in the first instance, as this will be easier to implement, and probably to use. If we wanted variable frame rate we could add this as another class.
Ultrasound - start off saving as a video stream as above.
Tracking data - Series of timestamped 4x4 matrices. Either CSV or JSON? JSON might be easier to parse.

Combined sources
When saving unsynchronised data, it might be best to save the data from each source independently, as it's own file, but then include some meta information that links everything together, or just put them all in the same zip file before they are stored on XNAT.

For a lot of cases synchronised data is probably OK, and could be acheived with a more sophisticated version of the code snippet below:

sources = [US(params), Tracker(params), Video(params)]

for source in sources:
    source.start()

# Run this in a Qt Timer loop every x ms
for source in sources:
    source.write_latest_frame()

@mxochicale mxochicale added the p3-low Low priority label Nov 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
p3-low Low priority
Projects
None yet
Development

No branches or pull requests

2 participants