Ответ 1
Да. Необходимо пройти через Java. Поскольку доступ к NDK будет специфичным для конкретного оборудования.
Несмотря на то, что через NDK реализовано мало реализаций.
Проверьте соответствующие ссылки для получения более подробной информации.
Есть ли стандартизованный API для съемки с помощью Android NDK?
Или действительно нужно пройти через Java для этого?
Да. Необходимо пройти через Java. Поскольку доступ к NDK будет специфичным для конкретного оборудования.
Несмотря на то, что через NDK реализовано мало реализаций.
Проверьте соответствующие ссылки для получения более подробной информации.
В Android 7 (API 24)
Google добавлена поддержка встроенной камеры (Camera2 API).
В ndk-r12:
(1) $NDK_ROOT/android-24/$ARCH/usr/include/camera/Ndk *.h
(2) $NDK_ROOT/android-24/$ARCH/usr/include/media/Image *.h
(1) libcamera2ndk.so
(2) libmediandk.so
1) В более старых версиях был доступ к Camera.h
, например Froyo, 2.3.3.
Теперь я вижу Camera.h
в KitKat, 4.4.4. Он полностью изменился.
Это неофициальный API, поэтому он может быть изменен. Будьте готовы кодировать и развернуть разные версии для разных выпусков Android.
2) В OpenMAX есть компонент Camera
. Людям удалось создать рекордер OpenMAX для Raspbery Pi. Мне еще нужно найти рабочее решение для Android.
Эти два вопроса остаются без ответа:
и я собираюсь попробовать OpenMAX.
3) Мы столкнулись с устройством Android, на котором работает video4linux2 (можно получить доступ к /dev/video0
).