Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev1.0.1

mjpeg_stream

Um pacote Flutter para streaming de vídeo MJPEG (Motion JPEG) por HTTP

AndroidiOSmacOSWindowsLinux
Downloads em 30 dias
112
Curtidas
3
Pontos Pub
125

Instalar pacote

flutter pub add mjpeg_stream

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

O pacote mjpeg_stream permite que aplicativos Flutter transmitam vídeos MJPEG (Motion JPEG) por HTTP, oferecendo uma solução leve para reprodução em tempo real de vídeo proveniente de câmeras IP ou servidores web. Ele é compatível com múltiplas plataformas, incluindo Android, iOS, macOS, Windows e Linux, tornando-o ideal para aplicações de monitoramento de vídeo multiplataforma. O pacote gerencia streaming HTTP de forma eficiente com latência mínima, permitindo que desenvolvedores integrem feeds de vídeo ao vivo diretamente em suas interfaces. É particularmente útil em aplicações de vigilância, robótica e IoT onde são necessárias transmissões contínuas de vídeo.

Casos de uso

  • Monitoramento de câmera ao vivo
  • integração de feed de vídeo de dispositivo IoT
  • sistemas de visão robótica
  • Painéis de vigilância
  • Diagnóstico remoto

Principais recursos

  • Suporta MJPEG por HTTP
  • Compatibilidade multiplataforma
  • Streaming de baixa latência
  • Integração simples com widgets do Flutter
  • Reprodução de vídeo em tempo real

Indicado para

  • Desenvolvedores de aplicativos de vigilância
  • criadores de projetos de IoT
  • Engenheiros de robótica
  • Aplicativos que exigem feeds de vídeo ao vivo
  • Soluções de vídeo multiplataforma

Considerações

  • Requer conexão de rede estável
  • Limitado ao formato MJPEG
  • Pode ser necessário um buffer adicional para largura de banda baixa
  • Não adequado para fluxos de vídeo de alta resolução
  • Depende do suporte de streaming MJPEG do lado do servidor

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

📸 MJPEG Stream Flutter Package

mjpegLogo1

Welcome to MJPEG Stream Flutter Package! 🚀 This package allows you to stream MJPEG video in your Flutter application easily. Perfect for real-time camera feeds and IP camera streaming. 📷🎥

https://github.com/user-attachments/assets/c908688e-3cd0-45bc-a21b-359df1eac6a5

screen4

screen3

🌟 Features

  • 📡 Live MJPEG streaming
  • 🎨 Customizable width, height, and fit
  • ⚡ Optimized for performance
  • 🚀 Easy to integrate
  • 🛠 Error handling and reconnection support
  • 📜 Built-in logging for debugging

📦 Installation

Run this command:

With Flutter:

flutter pub add mjpeg_stream

Add this package to your pubspec.yaml:

dependencies:
  mjpeg_stream: latest_version

OR

mjpeg_stream:
    git:  
      url: https://github.com/MohammedShamseerPV/MJPEG-Stream.git
      ref: main  # Optional: specify the branch (default is 'main')

Then, run:

flutter pub get

🛠 Usage

Import the package:

import 'package:mjpeg_stream/mjpeg_stream.dart';
Example Usage 🎬
import 'package:flutter/material.dart';
import 'package:mjpeg_stream/mjpeg_stream.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'MJPEG Stream Example',
      home: Scaffold(
        appBar: AppBar(title: Text("MJPEG Stream")),
        body: Center(
          child: MJPEGStreamScreen(
            streamUrl: "http://your-ip-camera-url/video.mjpg",
            width: 300.0,
            height: 200.0,
            fit: BoxFit.cover,
          ),
        ),
      ),
    );
  }
}

📚 Use this Package as a Library

📥 Depend on it

Run this command:

With Flutter:

flutter pub add mjpeg_stream

This will add a line like this to your package's pubspec.yaml (and run an implicit flutter pub get):

dependedfdfdfncies:
  mjpeg_stream: ^latest_version
dependencies:
  mjpeg_stream: ^latest_version

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

📌 Import it

Now in your Dart code, you can use:

import 'package:mjpeg_stream/mjpeg_stream.dart';

⚙️ API Reference

Property Type Description
streamUrl String The URL of the MJPEG stream.
fit BoxFit Defines how the image should be inscribed into the widget. Default: BoxFit.cover.
width double Width of the stream display. Default: double.infinity.
height double Height of the stream display. Default: 300.0.
timeout Duration Timeout for the network request. Default: 5 seconds.
enableLogging bool Enables logging for debugging. Default: false.

🚀 How It Works

  1. The package establishes an HTTP connection to the MJPEG stream.
  2. It processes the received image frames in real-time.
  3. It updates the UI efficiently without performance issues.
  4. It handles errors and reconnection automatically. ⚡
  5. It provides logging for debugging purposes. 📜

🛠 Troubleshooting

  • ❗ Stream Not Loading? Check if your URL is correct and accessible.
  • 🔴 Slow Performance? Optimize the network or use a lower resolution stream.
  • 💥 Crashes? Ensure the stream URL is reachable and error handling is implemented.
  • 📝 Need Debugging? Enable logging by setting enableLogging: true.

🎯 Future Enhancements

  • ✅ Add support for pause/play functionality
  • ✅ Improve error handling
  • ✅ Optimize performance for low-latency streaming
  • ✅ Enhance logging and debugging features

📝 License

This package is open-source under the MIT License. Feel free to contribute! 😊

👨‍💻 Happy Coding! 🚀


🔗 Connect with Me


💰 Support My Work

If you found this package useful, consider supporting my work:

qr-code-phonePay

Uploading qr-code-phonePay.png…

Categorias

Dependências

Lista de dependências 1 itens

Repositório-fonte

Projetos que usam este pacote

Ainda não há dados.