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

Adding Live view #45

Open
PiMaV opened this issue Aug 19, 2024 · 5 comments
Open

Adding Live view #45

PiMaV opened this issue Aug 19, 2024 · 5 comments
Assignees
Labels
feature-request New feature request low prio Not handled unless necessary.

Comments

@PiMaV
Copy link
Owner

PiMaV commented Aug 19, 2024

It would be of interest to implement a live camera view.
Basically we would feed a live stream into a running ring buffer that can be started and stopped any time, with all options regarding image view available.

-> to be discussed first.

@PiMaV PiMaV added feature-request New feature request low prio Not handled unless necessary. labels Aug 19, 2024
@PiMaV PiMaV self-assigned this Aug 19, 2024
@PiMaV
Copy link
Owner Author

PiMaV commented Oct 14, 2024

Reminder to myself:
I would be totally fine to use a second program
-> so liveview would only be a small container to recieve a live stream and to buffer it. The rest would be done in another program. Here we would have settings and such.

irkri added a commit that referenced this issue Oct 27, 2024
@PiMaV
Copy link
Owner Author

PiMaV commented Oct 27, 2024

Nice;
This "goes in the right direcetion" but should not be like this in a release, as it will confuse the user. I like the POC though!

Live view should be rather a connector to a stream. We can outsource the capture into another small container and then stream from there to further advance (see comments above).

  • So within Blitz we would only have "start / stop", buffer size and stream target.
  • Within the new container, one then would be able to configure the camera properly (This should not be our task atm)
  • Give the streamer its own Thread without interfering with the BLITZ

Bugs:

  • Freezes after playing with it "frame rate"
  • Videostream is BGR; so flip R and B channel.

@irkri
Copy link
Collaborator

irkri commented Nov 4, 2024

I tested the live view together with OBS Studio. This works great! (start virtual camera in OBS and in BLITZ specify camera 1 instead of 0). We can even edit the images WHILE their are streamed to BLITZ!

The camera already has its own thread in BLITZ, so this is not a problem.
The reason it freezes, is because the image stream is loaded to pyqtgraph in order to show the images. There, they are getting loaded into memory, which freezes BLITZ if this takes up too much memory.

I would like to see this in the next release of v1.2.2 as its already working very well.

@irkri
Copy link
Collaborator

irkri commented Nov 20, 2024

Can we add this to v1.2.2? This needs testing before merging.

@PiMaV
Copy link
Owner Author

PiMaV commented Nov 21, 2024

I’d like to emphasize that our priority right now must remain on finalizing and polishing the core functionality of BLITZ to deliver a stable v1.2.2 release. While live view is undoubtedly a cool feature and a valuable tool for testing, it’s not yet a core requirement for most scientific workflows. A more practical approach for typical use cases would be implementing a "live folder update," as most scientific cameras save images directly into directories rather than streaming – many don’t even support streaming capabilities at all. This, after all, was the primary motivation behind WOLKE, which is designed to handle such scenarios efficiently.

With your upcoming departure, it’s even more critical that we focus on delivering a robust, bug-free release. Let’s keep live view in mind, but hold off on prioritizing it until we’ve addressed the more pressing issues. Once the core functionality is rock-solid, we can revisit this feature and develop it further.

I realize this might not be the answer you’d prefer, but I want to assure you that I see the potential in this feature—it’s just not a priority right now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request New feature request low prio Not handled unless necessary.
Projects
None yet
Development

No branches or pull requests

2 participants