Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
562 views
in Technique[技术] by (71.8m points)

android - an error occurred by CameraX.bindToLifecycle()

java.lang.IllegalArgumentException: No supported surface combination is found for camera device - Id : 0. May be attempting to bind too many use cases.

why the bindToLifecycle() only choose imageCapture or videoCapture?

 CameraX.bindToLifecycle(lifecycleOwner, mPreview, imageCapture,videoCapture)
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You are binding more UseCases than your device's camera supports. Not all devices can support two ImageAnalyzers.

Try reducing your analyzers,

CameraX.bindToLifecycle(lifecycleOwner, mPreview, imageCapture or videoCapture)

I have tested with many devices, so far, among the devices that I tested, only Google Pixel 1 works with three analyzers.

To suggest a hack, remove imageCapture analyzer, try to get images from preview for imageCapture and use videoCapture.

Hope it helps.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...