take a picture with android ndk - camera api

2019-01-18 04:24发布

问题:

Is there a standarized API for taking pictures using Android NDK?

Or is it really necessary to go through Java for that?

回答1:

Yes. It is necessary to go through Java. Since NDK access will be specific to particular hardware.

Inspite there are few realizations through NDK.

Check the following links for relevant details.

http://nhenze.net/?p=253

http://osdir.com/ml/android-ndk/2010-10/msg00518.html



回答2:

In Android 7 (API 24)

Google has been added support on native camera (Camera2 API).

In ndk-r12:

- Headers:

(1) $NDK_ROOT/android-24/$ARCH/usr/include/camera/Ndk*.h

(2) $NDK_ROOT/android-24/$ARCH/usr/include/media/Image*.h

- Libs:

(1) libcamera2ndk.so

(2) libmediandk.so



回答3:

1) There was an access to Camera.h in older releases like Froyo, 2.3.3.

Now, I see a Camera.h in KitKat, 4.4.4. It changed completely.

This is an unofficial API, so it's subject to change. Be ready to code and deploy different versions for different Android releases.

2) There is a Camera component in OpenMAX. People managed to create an OpenMAX recorder for Raspbery Pi. I yet have to find a working solution for Android.

These two questions are unanswered:

  • OpenMAX recorder on Android
  • Access camera via OpenMAX in Android

and I'm going to try OpenMAX.

3) We ran into an Android device where video4linux2 works (one can access /dev/video0).