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

Integration Kerberos.io #5

Open
cedricve opened this issue May 25, 2017 · 6 comments
Open

Integration Kerberos.io #5

cedricve opened this issue May 25, 2017 · 6 comments

Comments

@cedricve
Copy link

cedricve commented May 25, 2017

Hey @gagle,

Amazing project! It's a shame that I've didn't find this earlier, I have been using Raspicam since 2015, but never found your project.

I'm planning to integrate this in the @kerberos-io www.kerberos.io project, as I have the feeling we would have a huge performance improvement by doing so. Not sure if you are open to advice/help, as it has been a while since this project has been updated.

I'm a huge fan already.

Cédric

@gagle
Copy link
Owner

gagle commented May 25, 2017 via email

@cedricve
Copy link
Author

cedricve commented May 25, 2017

Amazing! we should have a skype call to align, and see what would work for both us. Can you send me an invitation to [email protected]

I'm looking forward!

Cédric

@cedricve
Copy link
Author

cedricve commented May 27, 2017

hey @gagle, started with the integration of your library. Pretty forward though! However it will be a challenging problem to run video recording (h264) and jpeg still captures (for motion) in parallell. As far I've understood correctly on the blog you've discussed you can't run both at the same time.

Also is it necesarry to open and close the camera each time you grab a still image. Isn't there a way to grab multiple images (with the same camera settings)? Because it looks that opening/initializing the camera takes about 500ms (according the settings you've chosen).

Cédric

@gagle
Copy link
Owner

gagle commented May 29, 2017 via email

@cedricve
Copy link
Author

cedricve commented May 29, 2017

@gagle no problem at all! That would be wonderful, I would love to help you 👍 I think with two brains, we can progress faster and challenge possible solutions. Integration with Node is also on my todo list.

For the time being the most urgent part from my side (for Kerberos.io) is to get a parallel stream (video_splitter) I guess. I would need to open the preview port, to capture decoded cv::Mat for doing image processing, and a video port for video encoding (recording the h264 stream).

With your code it's possible, like you've stated in one of the forums, to capture stills by opening and closing the image port, and in its turn opening the video port when a specific action occurred. The resulting video FPS and resolution is wonderful, however the blocking mechanism isn't the most ideal situation. From a video surveillance perspective there should be multithreading, to make sure the video_encode keeps running while activity is happing (e.g. motion). While an action is happening (someone is walking by) we need to keep recording while the pedestrian is out of the camera viewport.

I've added a comment to your original forum post https://www.raspberrypi.org/forums/viewtopic.php?f=43&t=72523&start=50, but it still needs approval though.

@cedricve
Copy link
Author

cedricve commented May 29, 2017

References:

https://www.raspberrypi.org/forums/viewtopic.php?f=70&t=98197
https://github.com/dridri/OpenMaxIL-cpp/blob/master/src/VideoSplitter.cpp
http://picamera.readthedocs.io/en/release-1.13/recipes2.html#capturing-images-whilst-recording

Also wondering if we could replace the OMX.broadcom.null_sink component by an image encoder, le me know your thoughts about this @gagle.

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

No branches or pull requests

2 participants