Majialiang131 2024-01-12 14:55 采纳率: 0%
浏览 7

Android CameraX多摄像头预览

CameraX如何同时预览多个摄像头?我有一个开发板,可接入四个摄像头。如何同时预览四个摄像头?

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2024-01-12 16:06
    关注

    【相关推荐】



    • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/245435
    • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:android CameraX实现拍摄视频功能
    • 同时,你还可以查看手册:android Camera 一个相机实例可以用来计算三维变换,并生成一个矩阵,可以应用在一个物体上。 生成一个矩阵,可以应用在例如一个 帆布。 中的内容
    • 除此之外, 这篇博客: Android CameraX使用,预览、拍照、获取静态图像、录制视频中的 2.5 第五步:开始预览 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
      /**
       * 开始预览
       */
      private void startCamera() {
          ListenableFuture<ProcessCameraProvider> cameraProviderFuture =         
               ProcessCameraProvider.getInstance(this);
          cameraProviderFuture.addListener(new Runnable() {
              @SuppressLint("RestrictedApi")
              @Override
              public void run() {
                  try {
                      //将相机的生命周期和activity的生命周期绑定,camerax 会自己释放
                      ProcessCameraProvider cameraProvider = cameraProviderFuture.get();
                      Preview preview = new Preview.Builder().build();
                      //创建图片的 capture
                      mImageCapture = new ImageCapture.Builder()
                              .setFlashMode(ImageCapture.FLASH_MODE_OFF)
                              .build();
                      //选择前置摄像头
                      CameraSelector cameraSelector = new CameraSelector.Builder().requireLensFacing(CameraSelector.LENS_FACING_FRONT).build();
                      // Unbind use cases before rebinding
                      cameraProvider.unbindAll();
      
                      // Bind use cases to camera
                      //参数中如果有mImageCapture才能拍照,否则会报下错
                      //Not bound to a valid Camera [ImageCapture:androidx.camera.core.ImageCapture-bce6e930-b637-40ee-b9b9-
                      mCamera = cameraProvider.bindToLifecycle(CameraTestActivity.this, cameraSelector, preview,mImageCapture);
                      preview.setSurfaceProvider(pvCameraPreview.getSurfaceProvider());
                  } catch (ExecutionException e) {
                      e.printStackTrace();
                  } catch (InterruptedException e) {
                      e.printStackTrace();
                  }
              }
          }, ContextCompat.getMainExecutor(this));
      }

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 1月12日

悬赏问题

  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?