Я только что получил Nexus 7, на который пытаюсь перенести код. Следующая строка работает без проблем на Xoom с Ice Cream:
mCamera.startPreview();
Он также корректно работает на Nexus 7, но регистрирует ошибки :
E/NvOmxCamera( 126): OMX_ERRORTYPE android::NvOmxCamera::getCameraStereoMode(NvxComponent*, NvOmxCameraUserStereoMode&): Error: invalid NVX mode 0.
E/NvOmxCamera( 126): OMX_ERRORTYPE android::NvOmxCamera::getCameraStereoModeAndCaptureInfo(NvxComponent*, NvOmxCameraUserStereoMode&, NVX_STEREOCAPTUREINFO&): getCameraStereoMode failed with 0x00000000
. Это проблема, потому что он также регистрирует эти ошибки один раз за кадр, когда я выполняю строку
mCamera.takePicture(null, null, null, pictureCallback);
Так как я беру 10 кадров в секунду, это меня беспокоит, поэтому я хотел бы исправить ошибки. Я просмотрел все источники (android sdk и ndk ), и текст для вышеуказанных ошибок нигде не появляется. Я полагаю из большого количества поисковых запросов, что это происходит в реализации OpenMax от Nvidia, где это, кажется, связано с параметром «nv -стерео -режим», который имеет возможные значения «левый», «правый», или «стерео» (Nexus 7 имеет только одну камеру, поэтому я не знаю, зачем ему заботиться о режимах стереокамеры, но неважно ). Я попытался установить его для каждого из допустимых значений, используя, например,:
mParams = mCamera.getParameters();
mParams.set("nv-stereo-mode", "right");
mCamera.setParameters(mParams);
Но,мой журнал говорит:
E/NvOmxCameraSettingsParser( 126): Skipping non-standard parameter: nv-stereo-mode
Похоже, это связано с исходным файлом nvomxcamerasettingsparser.cpp, который я нигде не могу найти в Интернете. Я действительно не знаю, куда идти отсюда, я искал и гуглил все, что мог придумать, поэтому любая помощь будет очень признательна.