I have been looking around for languages that support the Pi Camera. So far i have seen that the Linux shell supports it (although not strictly a programing language), Python and C/C++.

Are there any more that have basic compatibility with the Pi Camera?

  • Just FYI: There is no such thing as "the linux shell", although a POSIX compatible one is required on GNU systems, which on Raspbian/Debian is by default either dash (sh) or bash. Anyway, it is a turing complete programming language, but I think saying it "supports the Pi camera" is not really true: You can call applications such as raspistill from a shell script but then you could do pretty much the same thing in almost any language with varying degrees of awkwardness.
    – goldilocks
    Commented Oct 29, 2016 at 15:59
  • technically it doesn't support the camera but considering that most pis are running raspian which has raspistill installed by default you can generalise and say that it (effectively) supports the camera. I'm only saying the linux shell because of the many variations/alternatives that there are, so whoever is reading this can insert their prefered one. Commented Oct 29, 2016 at 16:03
  • Okay, but I'm just pointing out that every programming language "effectively supports the camera" in exactly the same way as the shell does. But presumably you aren't asking about that, because there is no point -- you are asking about languages with a public API for working with the camera. Mentioning the shell just confuses the issue.
    – goldilocks
    Commented Oct 29, 2016 at 16:09
  • yup, just wondering what languages i could use to take an image (no fancy filters or effects) needed :) Commented Oct 29, 2016 at 16:13
  • Then the answer is: All of them.
    – goldilocks
    Commented Oct 29, 2016 at 16:14

1 Answer 1


To expand a little on the comments: there's a couple of ways of looking at this. If your question is "from which languages can I use the Pi's camera module?" then @goldilocks is absolutely correct - the answer is effectively "all of them". The main supported API for the camera module is MMAL, which is designed for use from C. However, almost every language out there can talk to C APIs (because if they couldn't, they wouldn't be much use on OS' which provided their services via C-style APIs, such as Linux). By way of example, the picamera API is written entirely in Python, using Python's own mechanisms to access the existing MMAL API. Hence, you could use the camera from Python without the aid of picamera ... it'd just be a lot more work.

Which brings us to what I think you really want to ask: "from which languages can I easily use the Pi's camera module?" or to put it another way: "in which languages have high level bindings been written for the Pi's camera module". To the best of my knowledge, these are currently:

P.S. the UNIX shell absolutely is a programming language; it's got variables, branching, loops, even functions. It's a programming language, no two ways about it.

P.P.S. I didn't include C above because obviously there's an API for that already, but I'm not sure I'd class it "high level".

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.