Мне нужно отобразить видео, переданное с помощью USB-камеры, подключенной к моему планшету на Android 3.2. Но я не знаю, как это сделать.
Я не могу использовать планшетную камеру, потому что мой планшет установлен на борту.
ТНХ.
Мне нужно отобразить видео, переданное с помощью USB-камеры, подключенной к моему планшету на Android 3.2. Но я не знаю, как это сделать.
Я не могу использовать планшетную камеру, потому что мой планшет установлен на борту.
ТНХ.
Обсуждение справедливо только в том случае, если датчик внутри USB-камеры соответствует требованиям UVC (большинство современных камер совместимы).
По умолчанию для внешней камеры API Android не доступен. Поэтому, если вы серьезно относитесь к проекту, работа, которую вы выполняете, будет связана с написанием прошивки, которая будет разговаривать с драйверами ядра, а затем отображать данные на уровне приложений Android.
Когда вы вставляете USB-камеру, есть несколько вещей, которые вам нужно проверить в первую очередь.
1) Подключена ли ваша камера от USB-порта? (для этого ваш USB-порт должен иметь USB-OTG-поддержку - USB-порт может действовать как как целевой, так и хост, на камере (если есть) светятся или нет?)
2) Создается ли node в каталоге /dev? (только в том случае, если в нем поддерживаются поддержка v4l2 и UVC, будет создан node). Если создается node, теперь у вас есть доступ к реальному оборудованию, являющемуся USB-камерой, и ваша работа будет легкой отсюда. для проверки do ls -l/dev/v * внутри файловой системы android и проверки создания видео0 или видео.
4) Если node создан, вам нужно написать прошивку (UVC) и получить кадр с реального оборудования. Он (UVC) поддерживает различные вызовы ioctl, которые общаются с v4l2 слоя в ядре и вы получите фреймы.
Эти кадры будут в основном формата формата YUYV422 или YUYV420.
Как только вы получите фреймы, конвертируйте их в RGB или Jpeg (Android поддерживает конвертирование) и отобразите на холсте или изображении какое вам угодно.
Для записи вам может понадобиться использовать ffmpeg для кодирования. Это преобразует изображения в видео.
Сообщите мне, если вы заинтересованы и нуждаетесь в дополнительной поддержке...!!!!
Перед началом работы стоит проверить, работает ли ваш USB-кабель с помощью мыши, клавиатуры и USB-накопителя (вам нужно будет использовать приложение StickMount на некоторых устройствах, чтобы заставить работать USB-накопитель).
Я также хочу получить веб-камеру USB, работающую на Android, и пытаюсь воспроизвести то, что было сделано на http://brain.cc.kogakuin.ac.jp/research/usb-e.html. Наконец, я слышал, что веб-камеры Bluetooth работают из коробки.
Теперь (2017) есть приложения для Android, поддерживающие вход USB-видео:
https://play.google.com/store/apps/details?id=labsp.android.viewer&hl=it
Возможно, требуется кабель YT-образного типа OTG ( "Y-образные" кабели OTG позволяют подключать внешнее устройство)