Как увеличить камеру с помощью Android CameraX API?Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Как увеличить камеру с помощью Android CameraX API?

Сообщение Anonymous »

Я пытался увеличить масштаб камеры с помощью приведенного ниже кода с помощью CameraX.

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

var config = CameraX.getDefaultUseCaseConfig(PreviewConfig::class.java, lensFacing)
var preview = Preview(config)
preview.zoom(zoom)


После предварительного просмотра.zoom() я просто снова подключаюсь к CameraX и получаю какую-то ошибку, и она не работает.

CameraX.bindToLifecycle(this, preview, imageCapture, videoCapture)


Когда приведенный выше код не работал, я сначала попробовал использовать CameraX.unbindAll(), а затем вызываю CameraX.bindToLifecycle(). Но снова столкнулись с какой-то ошибкой и не смогли добиться успеха в масштабировании.

Дайте мне знать, как мы можем масштабировать камеру с помощью API CameraX. >


Обновить журнал ошибок ниже:


Журнал ошибок с использованием только CameraX.bindToLifecycle():

java.lang.IllegalArgumentException: E x c e e d e d m a x s i m u l t a n e o u s l y b o u n d i m a g e c a p t u r e u s e c a s e s . < b r / > a t a n d r o i d x . c a m e r a . c a m e r a 2 . i m p l . U s e C a s e S u r f a c e O c c u p a n c y M a n a g e r . c h e c k U s e C a s e L i m i t N o t E x c e e d e d ( U s e C a s e S u r f a c e O c c u p a n c y M a n a g e r . j a v a : 6 1 ) < b r / > a t a n d r o i d x . c a m e r a . c a m e r a 2 . i m p l . C a m e r a 2 D e v i c e S u r f a c e M a n a g e r . g e t S u g g e s t e d R e s o l u t i o n s ( C a m e r a 2 D e v i c e S u r f a c e M a n a g e r . j a v a:146)
at androidx.camera.core.CameraX.calculateSuggestedResolutions(CameraX.java:449)
at androidx.camera.core.CameraX.bindToLifecycle(CameraX.java:144)
at com.android.example.cameraxbasic.fragments.CameraFragment$updateCameraUi$2.onTouch(CameraFragment.kt:408)
at android.view.View.dispatchTouchEvent(View.java:12512)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3032)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2719)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3032)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2719)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3032)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2719)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3032)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2719)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3032)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2719)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3032)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2719)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3032)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2719)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3032)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2719)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:475)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1836)
at android.app.Activity.dispatchTouchEvent(Activity.java:3404)
at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:433)
at android.view.View.dispatchPointerEvent(View.java:12755)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5150)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4953)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4470)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4523)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4489)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4629)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4497)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4686)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4470)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4523)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4489)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4497)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4470)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7192)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7126)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7087)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7295)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:193)
at android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method)
at android.view.InputEventReceiver.consumeBatchedInputEvents(InputEventReceiver.java:184)
at android.view.ViewRootImpl.doConsumeBatchedInput(ViewRootImpl.java:7266)
at android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run(ViewRootImpl.java:7318)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:949)
at android.view.Choreographer.doCallbacks(Choreographer.java:761)
at android.view.Choreographer.doFrame(Choreographer.java:690)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:935)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6912)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:860)


Журнал ошибок с использованием CameraX.unbindAll() и CameraX.bindToLifecycle():
E/Legacy-CameraDevice-JNI: getNativeWindow: Surface had no valid native window.
E/Legacy-CameraDevice-JNI: LegacyCameraDevice_nativeDetectSurfaceDimens: Could not retrieve native window from surface.

--------- beginning of crash
2019-05-09 16:49:29.155 31123-31144/com.android.example.cameraxbasic E/AndroidRuntime: FATAL EXCEPTION: CameraX-
Process: com.android.example.cameraxbasic, PID: 31123
java.lang.IllegalArgumentException: Surface was abandoned
at android.hardware.camera2.utils.SurfaceUtils.getSurfaceSize(SurfaceUtils.java:84)
at android.hardware.camera2.params.OutputConfiguration.(OutputConfiguration.java:260)
at android.hardware.camera2.params.OutputConfiguration.(OutputConfiguration.java:145)
at android.hardware.camera2.impl.CameraDeviceImpl.createCaptureSession(CameraDeviceImpl.java:518)
at androidx.camera.camera2.impl.CaptureSession.open(CaptureSession.java:196)
at androidx.camera.camera2.impl.Camera.openCaptureSession(Camera.java:535)
at androidx.camera.camera2.impl.Camera$StateCallback.onOpened(Camera.java:743)
at androidx.camera.core.CameraDeviceStateCallbacks$ComboDeviceStateCallback.onOpened(CameraDeviceStateCallbacks.java:99)
at android.hardware.camera2.impl.CameraDeviceImpl$1.run(CameraDeviceImpl.java:152)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.os.HandlerThread.run(HandlerThread.java:65)
Caused by: android.hardware.camera2.legacy.LegacyExceptionUtils$BufferQueueAbandonedException
at android.hardware.camera2.legacy.LegacyExceptionUtils.throwOnError(LegacyExceptionUtils.java:73)
at android.hardware.camera2.legacy.LegacyCameraDevice.getSurfaceSize(LegacyCameraDevice.java:606)
at android.hardware.camera2.utils.SurfaceUtils.getSurfaceSize(SurfaceUtils.java:82)
at android.hardware.camera2.params.OutputConfiguration.(OutputConfiguration.java:260) 
at android.hardware.camera2.params.OutputConfiguration.(OutputConfiguration.java:145) 
at android.hardware.camera2.impl.CameraDeviceImpl.createCaptureSession(CameraDeviceImpl.java:518) 
at androidx.camera.camera2.impl.CaptureSession.open(CaptureSession.java:196) 
at androidx.camera.camera2.impl.Camera.openCaptureSession(Camera.java:535) 
at androidx.camera.camera2.impl.Camera$StateCallback.onOpened(Camera.java:743) 
at androidx.camera.core.CameraDeviceStateCallbacks$ComboDeviceStateCallback.onOpened(CameraDeviceStateCallbacks.java:99) 
at android.hardware.camera2.impl.CameraDeviceImpl$1.run(CameraDeviceImpl.java:152) 
at android.os.Handler.handleCallback(Handler.java:873) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:193) 
at android.os.HandlerThread.run(HandlerThread.java:65) 

--------- beginning of system


Подробнее здесь: https://stackoverflow.com/questions/560 ... amerax-api
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как масштабировать камеру с помощью API Android Camerax API?
    Anonymous » » в форуме Android
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Как правильно закрыть камеру с помощью Android Camerax API во фрагменте синхронно?
    Гость » » в форуме Android
    0 Ответы
    27 Просмотры
    Последнее сообщение Гость
  • Ошибка CameraX в Android: невозможно открыть камеру «0» без разрешения камеры
    Anonymous » » в форуме Android
    0 Ответы
    48 Просмотры
    Последнее сообщение Anonymous
  • Как переключиться на фронтальную камеру на CameraX?
    Гость » » в форуме Android
    0 Ответы
    36 Просмотры
    Последнее сообщение Гость
  • Отключить камеру с помощью приложения Android, чтобы другие приложения не могли использовать камеру
    Anonymous » » в форуме Android
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»