flutter_anycam 1.0.4 copy "flutter_anycam: ^1.0.4" to clipboard
flutter_anycam: ^1.0.4 copied to clipboard

Plugin Flutter para captura e análise de frames de múltiplos tipos de câmera (frontal, traseira, USB e RTSP), com suporte a conversão de frames para JPEG e processamento em tempo real.

example/lib/main.dart

import 'dart:typed_data';

import 'package:flutter/material.dart';

import 'package:flutter_anycam/flutter_anycam.dart';

List<FlutterAnycamCameraSelector> cameras = [];

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  cameras = await FlutterAnycam.availableCameras();

  runApp(const MyApp());
}

class MyApp extends StatefulWidget {
  const MyApp({super.key});

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  FlutterAnycamCameraSelector? frontCamera;
  @override
  void initState() {
    super.initState();

/*    Future.delayed(const Duration(seconds: 10), () {
      setState(() {
        frontCamera = cameras
            .where((e) => e.lensFacing == FlutterAnycamLensFacing.front)
            .firstOrNull;
      });
    });

    Future.delayed(const Duration(seconds: 30), () {
      setState(() {
        frontCamera = null;
      });
    });*/
  }

  Uint8List? _img;

  Future<void> _onFrame(FlutterAnycamFrame frame) async {
    //Frame para jpeg
    // ignore: unused_local_variable
    final img = await FlutterAnycam.frameConversor.convertToJpeg(
      frame: frame,
    );

    setState(() {
      //  _img = img;
    });
  }

  @override
  Widget build(BuildContext _) {
    final backCamera = cameras[0].customSensorOrientation(
      sensorOrientation: 90,
    );

    /* final usbCamera = cameras
        .where((e) => e.lensFacing == FlutterAnycamLensFacing.usb)
        .firstOrNull;

    final rtspCamera = FlutterAnycamCameraSelector.rtsp(
      url: "rtsp://192.168.18.93:554/mode=real&idc=1&ids=1",
      username: "admin",
      password: "1",
    );*/

    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Plugin example app'),
        ),
        body: Builder(builder: (context) {
          return SizedBox.expand(
            child: _img != null
                ? Image.memory(_img!)
                : Column(
                    children: [
                      if (backCamera != null)
                        Expanded(
                          child: FlutterAnycamWidget(
                            camera: backCamera,
                            onFrame: _onFrame,
                          ),
                        ),
                      if (frontCamera != null)
                        Expanded(
                          child: FlutterAnycamWidget(
                            camera: frontCamera!,
                            onFrame: _onFrame,
                          ),
                        ),
                      /*  if (usbCamera != null)
                  Expanded(
                    child: FlutterAnycamWidget(
                      camera: usbCamera,
                      onFrame: _onFrame,
                    ),
                  ),*/
                      /* Expanded(
                  child: FlutterAnycamWidget(
                    camera: rtspCamera,
                    onFrame: _onFrame,
                  ),
                ),*/
                    ],
                  ),
          );
        }),
      ),
    );
  }
}


/*

 Expanded(
                  child: FlutterAnycamWidget(
                    camera: FlutterAnycamCameraSelector.rtsp(
                      url: "rtsp://192.168.18.93:554/mode=real&idc=1&ids=1",
                      username: "admin",
                      password: "1",
                    ),
                    onFrame: (frame) async {
                      if (!_stop) {
                        _stop = true;

                        /*   final img =
                            await FlutterAnycam.frameConversor.convertToJpeg(
                          frame: frame,
                          rotation: 0,
                        );

                        if (img != null) {
                          await showDialog(
                              context: context,
                              builder: (_) {
                                return Material(
                                  child: Dialog(
                                    child: Column(
                                      mainAxisSize: MainAxisSize.min,
                                      children: [
                                        Image.memory(img),
                                        const SizedBox(
                                          height: 16,
                                        ),
                                        ElevatedButton(
                                          onPressed: () {
                                            Navigator.pop(context);
                                          },
                                          child: const Text("Fechar"),
                                        )
                                      ],
                                    ),
                                  ),
                                );
                              });
                        }*/

                        _stop = false;
                      }
                    },
                  ),
                ),

 */
1
likes
0
points
293
downloads

Publisher

unverified uploader

Weekly Downloads

Plugin Flutter para captura e análise de frames de múltiplos tipos de câmera (frontal, traseira, USB e RTSP), com suporte a conversão de frames para JPEG e processamento em tempo real.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, imagekit_ffi, plugin_platform_interface

More

Packages that depend on flutter_anycam

Packages that implement flutter_anycam