NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #469 most downloaded on pub.dev
A Flutter plugin for controlling the camera. Supports previewing the camera feed, capturing images and video, and streaming image buffers to Dart.
Last release 28 days ago
03 Sep 2026
Ships fairly regularly
a new release about every 4 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
156 releases · first in 2018
Add feature to pause and resume video recording.
Fix Android pause and resume video crash when executing in APIs below 24.
Fix Android NullPointerException on devices with only front-facing camera.
One column per quarter.
Update and migrate iOS example project.
Now all quality presets can be used to control image capture quality.
Fix too large request code for FragmentActivity users.
Added capability to disable audio for the CameraController. (e.g. CameraController(_, _, enableAudio: false);)
CameraController. (e.g. CameraController(_, _, enableAudio: false);)Fix bug that prevented video recording with audio.
Fix memory leak related to not unregistering stream handler in FlutterEventChannel when disposing camera.
Can now be compiled with earlier Android sdks below 21 when has been added to the project AndroidManifest.xml. For sdks below 21, the plugin won't be
<uses-sdk tools:overrideLibrary="io.flutter.plugins.camera"/> has been added to the project
AndroidManifest.xml. For sdks below 21, the plugin won't be registered and calls to it will throw
a MissingPluginException.Breaking Change This plugin no longer handles closing and opening the camera on Android lifecycle changes. Please use WidgetsBindingObserver to contro…
WidgetsBindingObserver to control camera resources on lifecycle
changes. See example project for example using WidgetsBindingObserver.Bump the minimum Flutter version to 1.2.0.
invokeMethod calls.Add sensor orientation value to CameraDescription.
CameraDescription.Breaking Change Change iOS image stream format to ImageFormatGroup.bgra8888 from ImageFormatGroup.yuv420.
ImageFormatGroup.bgra8888 from
ImageFormatGroup.yuv420.* Remove categories.
Fix orientation of captured photos when camera is used for the first time on Android.
Fixed a crash when the plugin is registered by a background FlutterView.
Breaking change. Migrate from the deprecated original Android Support Library to AndroidX. This shouldn't result in any functional changes, but it req…
Fix issue with calculating iOS image orientation in certain edge cases.
Log a more detailed warning at build time about the previous AndroidX migration.
Save photo orientation data on iOS.
Fix a crash when failing to start preview.
Add access to the image stream from Dart.
cameraController.startImageStream(listener) to process the images.Fix issue with crash when the physical device's orientation is unknown.
Update the camera to use the physical device's orientation instead of the UI orientation on Android.
Unregister the activity lifecycle callbacks when disposing the camera.
Added path_provider and video_player as dev dependencies because the example uses them.
Updated Gradle tooling to match Android Studio 3.1.2.
A lot of breaking changes in this version:
A lot of breaking changes in this version:
Getter changes:
isStartedinitialized to isInitializedisRecordingVideoMethod changes:
capture to takePicturestart (the preview starts automatically when initialize is called)startVideoRecording(String filePath)stop (the preview stops automatically when dispose is called)stopVideoRecording* Fix Dart 2 runtime errors.
* Fix Dart 2 runtime error.
Breaking change. Set SDK constraints to match the Flutter beta release.
Revert regression of CameraController.capture() introduced in v. 0.0.3.
CameraController.capture() introduced in v. 0.0.3.Improved resource cleanup on Android. Avoids crash on Activity restart.
CameraController.dispose() and CameraController.capture() actually complete on
Android.Simplified and upgraded Android project template to Android SDK 27.
* Initial release
Your coding agent can read these notes before it upgrades. Set up the MCP server →