[Haskell-cafe] video for linux two (v4l2) bindings
Claude Heiland-Allen
claude at goto10.org
Sun Jul 3 19:56:36 CEST 2011
Greetings all,
I uploaded 4 new packages that may be of interest:
bindings-linux-videodev2 0.1
- bindings to Video For Linux Two (v4l2) kernel interfaces
http://hackage.haskell.org/package/bindings-linux-videodev2-0.1
bindings-mmap 0.1
- bindings to mmap for POSIX
http://hackage.haskell.org/package/bindings-mmap-0.1
bindings-libv4l2 0.1
- bindings to libv4l2 for Linux
http://hackage.haskell.org/package/bindings-libv4l2-0.1
v4l2-examples 0.1
- video for linux two examples
http://hackage.haskell.org/package/v4l2-examples-0.1
The first wraps the low-level structures and ioctls of the V4L2 API.
The second wraps the raw mmap/munmap functions and constants (which I
couldn't seem to find on hackage, only higher level wrappers which I
couldn't use for various reasons). It would make more sense for this to
be folded into bindings-posix at some point.
The third wraps libv4l2, which provides an interface very similar to the
use of V4L2 ioctls, but the library adds extra capabilities behind the
scenes (I'm led to believe colour space conversion is one of them) which
is hopefully useful.
And the last is a crude example dumping frames from a video device (like
a webcam) to stdout in YUV4MPEG2 format. The code is *very* low-level
and imperative (almost a direct translation from the C example provided
on the linuxtv API reference), there is plenty of room for a much nicer
layer to (for example) get video data into RePa arrays or OpenGL textures.
As these are raw bindings, documentation is best found upstream.
Thanks to Maurício C. Antunes's package for making this possible, I
recommend it: http://hackage.haskell.org/package/bindings-DSL
Claude
--
http://claudiusmaximus.goto10.org
More information about the Haskell-Cafe
mailing list