Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm trying to understand what Video for linux and ALSA are (exactly), and I can't discern whether they're APIs for Linux application to use (the userspace) or if they are backend services that are only available to the Linux kernel (sort of a kernalspace SPI). Or, if they are something entirely different.

On one hand, those articles make it sound like its an API for applications to use. However, on the V4L2 page it has a section title Software supporting Video4Linux...

So is V4L2 a library that applications use, or is it a module that "snaps into" the kernel? I'm so coonfused, thanks in advance.

share|improve this question
up vote 1 down vote accepted

Both V4L2 and ALSA are

  • a kernel library to make driver programming easier,
  • an interface between the kernel and userspace,
  • a userspace library to make application programming easier, and
  • an interface between the library and applications.
share|improve this answer
Thanks @CL. (+1) - so to confirm: both V4L2 and ALSA are used by the kernel as well as as expose an API for applications to use? Thanks again. – pnongrata Dec 10 '12 at 17:20
Also, I've heard the phrase "if the kernel supports V4L2...". If V4L2 really is just a library, then how could a kernel have to support it? Why wouldn't you just be able to install it on any Linux kernel? – pnongrata Dec 10 '12 at 17:33
Yes. It's possible to disable them in the kernel configuration. – CL. Dec 10 '12 at 18:34

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .