パッケージ、リポジトリ、アプリカテゴリを検索

GitHub リポジトリemiliodallatorre/flutter_rtmp_broadcaster

flutter_rtmp_broadcaster

Android および iOS 向けの RTMP ライブストリーミング対応 Flutter カメラプラグイン。

flutter_rtmp_broadcaster のプロジェクト画像
スター
18
フォーク
31
最終プッシュ(UTC)
2026/09/04
プロジェクト状態
公開中

元の README

以下は英語原文のスナップショットです。最新版は GitHub をご覧ください。

Flutter RTMP broadcaster

codecov Dart CI Publish Stale

[!IMPORTANT] Development of version 3.0 is being restarted. Expect breaking changes to the API and Android/iOS build configuration while this work is in progress.

This plugin extends the Flutter camera plugin with RTMP streaming support for Android and iOS. Web is not supported.

It follows the same API structure as the camera plugin and adds a startStreaming(url) method to initiate real-time streaming to an RTMP endpoint.

Underlying implementation:

Features

  • Live camera preview embedded in a widget
  • Snapshot capture to file
  • Video recording
  • Direct access to image streams from Dart

Usage

The controller extends the camera plugin's API with the following methods:

Function Description
startVideoStreaming(String url, {int bitrate = 1200 * 1024, bool? androidUseOpenGL}) Starts streaming to an RTMP endpoint
startVideoRecordingAndStreaming(String filePath, String url, {int bitrate = 1200 * 1024, bool? androidUseOpenGL}) Starts streaming to an RTMP endpoint while simultaneously recording to a local file
pauseVideoStreaming() Pauses the active stream
resumeVideoStreaming() Resumes a paused stream
stopEverything() Stops any active streaming and recording

Getting started

iOS

Add the following keys to ios/Runner/Info.plist:

<key>NSCameraUsageDescription</key>
<string>App requires access to the camera for live streaming feature.</string>
<key>NSMicrophoneUsageDescription</key>
<string>App requires access to the microphone for live streaming feature.</string>
Android

Set minSdkVersion to 21 or higher in android/app/build.gradle.

Example

The example app demonstrates camera preview, snapshot capture, video recording, and RTMP streaming. Clone the repository and run the app on an Android or iOS device to try it.

A local RTMP test server is available under server/, set up via Docker Compose, for testing without a public endpoint.

Troubleshooting & issues

Report bugs or unexpected behavior via GitHub issues. Availability for support is limited; for prioritized or paid support, contact [info@emiliodallatorre.it](mailto:info@emiliodallatorre.it).

Contributing

  1. Fork the repository and create a branch for your change
  2. Make the change
  3. Ensure the code is formatted and tested
  4. Submit a pull request describing the change

Support development

If this plugin is useful to you, consider supporting its development via Buy Me a Coffee.

Emilio Dalla Torre GitHub avatar
GitHub 作者

Emilio Dalla Torre ↗

Engineer and MSc student in HPC at Politecnico di Milano & KTH. R&D at @qualcomm. Formerly doing AI and full-stack development at @Accenture and PwC.

@qualcommMilan, Italy
言語DartObjective-CKotlinSwiftDockerfileRubyShell

このリポジトリが公開するパッケージ

使用している依存関係

依存関係一覧 7 件

  • flutter{"sdk":"flutter"}
  • cross_file^0.3.1
  • path_provider^2.0.13
  • video_player開発用^2.9.2
  • dart_apitool開発用^0.23.2
  • flutter_test開発用{"sdk":"flutter"}
  • flutter_driver開発用{"sdk":"flutter"}

プロジェクトに合うリポジトリを選ぶには?

用途で絞り込み、開発状況を比較し、採用前に元のリポジトリで要件を確認しましょう。

  1. 名前・作者・説明で検索し、技術トピックで絞り込みます。
  2. スター、フォーク、最近のプッシュを比較します。スターは関心の目安であり、品質の保証ではありません。
  3. 利用前に GitHub で README、ライセンス、Issues を確認します。

情報源と管理

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗