Подтвердить что ты не робот

Android: Как использовать веб-камеру в эмуляторе?

Я подключаю веб-камеру к эмулятору, установив переднюю камеру на "webcam0" в AVD Manager. Когда я запускаю приложение камеры эмулятора, я получаю сообщение об ошибке

CameraService::connect X (pid 702) rejected (invalid cameraId 0).

Здесь соответствующая часть исходного кода Android:

sp<ICamera> CameraService::connect(
    const sp<ICameraClient>& cameraClient, int cameraId) {

    int callingPid = getCallingPid();

    [...]

    if (cameraId < 0 || cameraId >= mNumberOfCameras) {
        LOGE("CameraService::connect X (pid %d) rejected (invalid cameraId %d).",
            callingPid, cameraId);
        return NULL;
    }

    [...]
}

Веб-камера правильно присвоена идентификатором 0, потому что есть только 1 камера. Тем не менее, mNumberOfCameras предположительно остается 0. Это означает, что камера регистрируется эмулятором, но она не потрудилась обновлять количество подключенных камер.

Как подключить веб-камеру, чтобы он был правильно распознан эмулятором?

Изменить: команда emulator -webcam-list -avd <name of your AVD> в \android-sdks\tools дает результат:

List of web cameras connected to the computer:
Camera `webcam0` is connected to device `AndroidEmulatorVC0` on channel 0 using pixel format `BGR4`

Когда я запускаю веб-камеру из менеджера Eclipse AVD или используя emulator -camera-front webcam0 -avd <name of your AVD>, я получаю следующее окно:

enter image description here

Изменить 2: Кажется, это ошибка в эмуляторе. Предлагаемый ответ говорит вам, что делать, чтобы настроить камеру, но не решает проблему для меня. Я в конечном счете решил это, используя ноутбук со встроенной веб-камерой. Возможно, другая веб-камера USB тоже могла бы работать.

4b9b3361

Ответ 1

ОБНОВЛЕНИЕ

В Android Studio AVD:

  • Открыть диспетчер AVD:

AVD menu

  1. Добавить/изменить AVD:

Specific AVD strip

  1. Нажмите "Дополнительные настройки" в нижней части экрана:

AVD Advanced Settings

  1. Установите камеру в качестве передней/задней камеры:

AVD Camera Settings

Ответ 2

Следуйте приведенным ниже инструкциям в Eclipse.

  • Goto → AVD Manager
  • Создайте/отредактируйте AVD.
  • Оборудование > Новое:
  • Настраивает обратную сторону камеры.
  • Нажмите на значение свойства и выберите = "webcam0".
  • После выполнения всего вышеуказанного веб-камера должна быть подключена. Если это не так, вам нужно проверить свои драйверы WebCam.

Подробнее здесь: Как использовать веб-камеру в эмуляторе Android для захвата живого изображения?

enter image description here

Ответ 3

Я предлагаю вам взглянуть на это высоко оцененное сообщение в блоге, которому удастся решить проблему, с которой вы сталкиваетесь:

http://www.inter-fuser.com/2009/09/live-camera-preview-in-android-emulator.html

Его код основан на текущих API Android и должен работать в вашем случае, учитывая, что вы используете новейший Android API.

Ответ 4

Я бы предложил проверить драйверы и, при необходимости, обновить их.