패키지, 저장소 및 앱 카테고리 검색

패키지 상세v3.1.1

rtmp_broadcaster

Android 및 iOS 장치에서 RTMP를 통해 실시간 비디오 스트리밍을 가능하게 하는 Flutter 카메라 플러그인의 확장입니다.

AndroidiOS
30일 다운로드
497
좋아요
40
Pub 점수
140

패키지 설치

flutter pub add rtmp_broadcaster

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

rtmp_broadcaster 패키지는 Flutter의 카메라 플러그인을 확장하여 안드로이드 및 iOS 기기에서 RTMP를 통해 실시간 영상 스트리밍을 가능하게 합니다. 개발자는 모바일 기기에서 직접 RTMP 서버로 라이브 영상을 방송할 수 있으며, 라이브 이벤트, 비디오 회의 또는 소셜 미디어 스트리밍에 적합합니다. 기존 카메라 기능과 원활하게 통합되며 일반적인 RTMP 설정을 지원합니다. 성능과 간편함을 고려해 설계되었으며, 스트림 시작 및 중지에 사용할 수 있는 직관적인 API를 제공합니다.

사용 사례

  • 라이브 이벤트 방송
  • 소셜 미디어 라이브 스트리밍
  • 원격 비디오 회의
  • 사물인터넷 장치 비디오 스트리밍
  • 실시간 모니터링

주요 기능

  • RTMP 스트리밍 지원
  • 안드로이드 및 iOS 호환성
  • 카메라 통합
  • 간단한 시작/정지 API
  • 저지연 스트리밍

적합한 대상

  • 라이브 비디오 앱을 개발하는 개발자
  • RTMP 출력이 필요한 모바일 앱 개발자
  • 실시간 통신 플랫폼
  • 모바일 스트리밍을 사용하는 콘텐츠 제작자

고려 사항

  • RTMP 서버 설정이 필요합니다
  • 네트워크 안정성이 스트리밍 품질에 영향을 미칩니다
  • Android 및 iOS에 한정
  • 추가 권한이 필요할 수 있습니다
  • 기본 카메라 플러그인에 따라 다름

원본 README

연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.

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.

카테고리

의존성

의존성 목록 2 개

소스 저장소

이 패키지를 사용하는 프로젝트

아직 데이터가 없습니다.