首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >颤动摄像头0.8.1在流媒体播放时闪光

颤动摄像头0.8.1在流媒体播放时闪光
EN

Stack Overflow用户
提问于 2021-05-18 23:21:59
回答 2查看 339关注 0票数 0

有没有办法在flutter中使用0.8.1摄像头从我的摄像头中流处理帧,并在流媒体的同时保持闪光灯亮着?在windows上工作并在android上运行

相机0.8.1的例子并没有给我一个如何设置闪光模式状态的想法。但我仍然是一个新手,所以很可能会错过它。谢谢。Get this error══╡EXCEPTION BY WIDGETS LIBRARY╞═══════════════════════════════════════════════════════════The WIDGETS══╡EXCEPTION WIDGETS to the render tree:方法'setFlashMode‘在══╡上被调用。接收方:尝试的调用为空:setFlashMode(‘FlashMode’的实例)

当抛出异常时,这就是堆栈:#0核心补丁(dart: Object.noSuchMethod - (package:flutter/src/widgets/framework.dart:4632:57) /object_patch.dart:54:5) #1 Object.noSuchMethod(软件包:_CameraAppState.initState /main.dart:26:13) #2 StatefulElement._firstBuild Object.noSuchMethod #3 ComponentElement.mount _CameraAppState.initState #4 _CameraAppState.initState(软件包:StatefulElement._firstBuild/src/ComponentElement.mount Element.inflateWidgetRenderObjectToWidgetAdapter.attachToRenderTree. ( /framework.dart:3541:14) #5 Element.updateChild (package:flutter/src/widgets/framework.dart:3306:18) #6 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1182:16) #7 RenderObjectToWidgetElement._rebuild(package:flutter/src/widgets/binding.dart:1182:16) #8 RenderObjectToWidgetAdapter.attachToRenderTree.(package:flutter/src/widgets/binding.dart:1095:18) #9 BuildOwner.buildScope RenderObjectToWidgetAdapter.attachToRenderTree (package:flutter/src/widgets/binding.dart:1094:13) #10 (package:flutter/src/widgets/binding.dart:934:7) #11 BuildOwner.buildScope WidgetsBinding.attachRootWidget (package:flutter/src/widgets/binding.dart:934:7) #12 WidgetsBinding.scheduleAttachRootWidget。(package:flutter/src/widgets/binding.dart:915:7) (从_RawReceivePortImpl类、_Timer类、dart:async和dart:async-patch中省略了11帧)我有的代码是为了在这个时候进行预览,并希望在应用程序启动时启动flash。

代码语言:javascript
复制
    import 'dart:async';
    import 'dart:io';

    import 'package:flutter/material.dart';
    import 'package:camera/camera.dart';

    List<CameraDescription> cameras;

    Future<void> main() async {
      WidgetsFlutterBinding.ensureInitialized();

      cameras = await availableCameras();
         _cameraController.setFlashMode(FlashMode.always);

      runApp(CameraApp());
    }

    class CameraApp extends StatefulWidget {
      @override
      _CameraAppState createState() => _CameraAppState();
    }

    class _CameraAppState extends State<CameraApp> {
     CameraController controller;
 
      @override
      void initState() {

        super.initState();
        controller = CameraController(cameras[0],                         ResolutionPreset.max);

        controller.initialize().then((_) {

          if (!mounted) {
            return;
          }
          setState(() { 
    });

        });
      }

      @override
      void dispose() {
        controller?.dispose();
        super.dispose();
      }

      @override
      Widget build(BuildContext context) {
        if (!controller.value.isInitialized) {

          return Container();
        }
        return MaterialApp(
          home: CameraPreview(controller),
        );
      }
    }
EN

回答 2

Stack Overflow用户

发布于 2021-05-19 00:15:49

您可以使用相机控制器设置flashmode,如下所示

代码语言:javascript
复制
CameraController  _cameraController;
List<CameraDescription> cameras=await availableCameras();
controller = CameraController(cameras[0], ResolutionPreset.max);
_cameraController.setFlashMode(FlashMode.always);
     _cameraController.setFlashMode(FlashMode.always);

并将控制器指定给相机预览

代码语言:javascript
复制
CameraPreview(_cameraController)
票数 0
EN

Stack Overflow用户

发布于 2021-05-20 13:46:32

为了在流媒体的同时保持闪光灯的亮起,我唯一能做的就是使用controller.setFlashMode(FlashMode.torch);

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67589256

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档