Skip to content
New issue

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

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

Already on GitHub? # to your account

Some assistance appreciated for writing a new pango_video driver #883

Open
crosswick opened this issue Jul 15, 2023 · 1 comment
Open

Some assistance appreciated for writing a new pango_video driver #883

crosswick opened this issue Jul 15, 2023 · 1 comment

Comments

@crosswick
Copy link

Hi all - I'd like to get my Revopoint POP3 3D scanner/camera working as a pango_video input.

This is their example project, which is linked against their closed-source library:
https://github.com/Revopoint/3DViewer/

In terms of making a pango_video driver, I've first successfully gotten the realsense2 driver working on macOS arm64 with an Intel Realsense D405 camera, testing with ./VideoViewer realsense2://

Searching both that repo and the Pangolin one for "memcpy", I think writing a driver may come down to somehow modifying
Pangolin/components/pango_video/src/drivers/realsense2.cpp
with functions and libraries found in
3DViewer/src/cscamera/cscamera.cpp

It's not that I'm stuck atm per se - I would just appreciate it if anyone could give me an idea whether this is a good approach, thanks.

@stevenlovegrove
Copy link
Owner

Again, my apologies for only now responding. For anyone else that sees this, the 'test' driver is the most minimal Pangolin video driver example (VideoViewer "test://"):

https://github.com/stevenlovegrove/Pangolin/blob/master/components/pango_video/include/pangolin/video/drivers/test.h
https://github.com/stevenlovegrove/Pangolin/blob/master/components/pango_video/src/drivers/test.cpp

The main components are:

  • Subclassing VideoInterface
  • Configuring the StreamInfo in your drivers constructor to describe the video format
  • Filling the buffer provided with the video data in GrabNext().
  • Creating a factory to instantiate your driver from a string description of it

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants