v4l2++ is a C++17 library for Linux V4L2. The library is in a quite experimental stage.
Also included are some simple utilities and python bindings.
- Python 3.x (for python bindings)
To build the Python bindings you need to set up the git-submodule for pybind11:
git submodule update --init
And to compile:
meson build
ninja -C build
meson build --cross-file=<path-to-meson-cross-file>
ninja -C build
Here is my cross file for arm32 (where ${BROOT} is path to my buildroot output dir):
[binaries]
c = ['ccache', '${BROOT}/host/bin/arm-buildroot-linux-gnueabihf-gcc']
cpp = ['ccache', '${BROOT}/host/bin/arm-buildroot-linux-gnueabihf-g++']
ar = '${BROOT}/host/bin/arm-buildroot-linux-gnueabihf-ar'
strip = '${BROOT}/host/bin/arm-buildroot-linux-gnueabihf-strip'
pkgconfig = '${BROOT}/host/bin/pkg-config'
[host_machine]
system = 'linux'
cpu_family = 'arm'
cpu = 'arm'
endian = 'little'
You can run the python code directly from the build dir by defining PYTHONPATH env variable. For example:
PYTHONPATH=build/py py/tests/hpd.py