FLUTTER ECOSYSTEM

Baseflow/screenrecorder

Flutter 위젯을 기록하는 데 사용할 수 있는 Flutter 패키지

화면 녹화 프로젝트 이미지
Stars
77
Forks
35
최근 푸시(UTC)
2025. 11. 21.
프로젝트 상태
활성
Baseflow GitHub avatar
GITHUB Organization

Baseflow ↗

Engineering the Future of Software development. Together with exceptional people, strategy, and design, we create software for every challenge.

언어DartHTMLSwiftKotlinObjective-C

기술 주제

사용 중인 의존성

의존성 목록 4 개
  • flutter{"sdk":"flutter"}
  • image^4.2.0
  • flutter_test개발 의존성{"sdk":"flutter"}
  • flutter_lints개발 의존성>=4.0.0 <6.0.0

원본 README

아래는 영문 원문 스냅샷입니다. 최신 내용은 GitHub에서 확인하세요.

README 펼치기 / 접기

https://raw.githubusercontent.com/ueman/screenrecorder/main/img/screen_recorder.svg

pub.dev Sponsoring likes popularity pub points


🚧 This is highly experimental! 🚧

🚧 API is subject to change! 🚧

This is a package to create recordings of Flutter widgets. The recordings can be exported as GIFs.

This is pure Flutter/Dart implementation without any dependencies on native or platform code. Thus it runs on all supported platforms.

Please note, that the encoding of the GIF takes a lot of time. On web it is basically useless because it takes so much time.

🚀 Getting Started

Setup

First, you will need to add screen_recorder to your pubspec.yaml:

dependencies:
  flutter:
    sdk: flutter
  screen_recorder: x.y.z # use the latest version found on pub.dev

Then, run flutter packages get in your terminal.

Example

Wrap your widget which should be recorded in a ScreenRecorder:

ScreenRecorder(
  height: 200,
  width: 200,
  background: Colors.white,
  controller: ScreenRecorderController(
    pixelRatio: 0.5,
    skipFramesBetweenCaptures: 2,
  ),
  child: // child which should be recorded
);

Then use ScreenRecorderController.start() to start recording and ScreenRecorderController.stop() to stop the recording. final gif = await ScreenRecorderController.export() gives you the result which can be written to disk.

A complete example can be found here.

⚠️ Known issues and limitations

  • Platform views are invisible in screenshots (like webview or Google Maps). For further details, see this Flutter issue and this issue. Please give a 👍 to those issues in order to raise awareness and the prio of those issues.
  • Web only works with Flutter's CanvasKit Renderer, for more information see Flutter Web Renderer docs.
  • This package does not and will not support audio until it is possible in a pure Dart/Flutter environment.
  • This package does not and will not support exporting as a video until it is possible in a pure Dart/Flutter environment.

Convert gif to video

In order to convert the gif to a video, you can try one of the following libraries. Please note, that compatibility was not tested.

Library Stats
ffmpeg_kit_flutter likes popularity pub points
flutter_video_compress likes popularity pub points
video_editor likes popularity pub points
video_trimmer likes popularity pub points
video_compress likes popularity pub points

📣 About the author

GitHub followers Twitter Follow

Contributors

https://contrib.rocks/image?repo=ueman/screenrecorder