CamerawesomePlugin class

Don't use this class directly. Instead, use CameraAwesomeBuilder.




hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited


noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
toString() String
A string representation of this object.


operator ==(Object other) bool
The equality operator.

Static Properties

currentState CameraRunningState
getter/setter pair
printLogs bool
Set it to true to print dart logs from camerawesome
getter/setter pair

Static Methods

checkAndRequestPermissions(bool saveGpsLocation, {bool checkMicrophonePermissions = true, bool checkCameraPermissions = true}) Future<List<CamerAwesomePermission>?>
checkiOSPermissions(List<String?> permissionsName) Future<bool?>
focusOnPoint({required PreviewSize previewSize, required Offset position, required AndroidFocusSettings? androidFocusSettings}) Future<void>
Start auto focus on a specific position with a given previewSize.
getEffectivPreviewSize(int index) Future<PreviewSize>
android has a limits on preview size and fallback to 1920x1080 if preview is too big So to prevent having different ratio we get the real preview Size directly from nativ side
getMaxZoom() Future<double?>
returns the max zoom available on device
getMinZoom() Future<double?>
returns the min zoom available on device
getNativeOrientation() Stream<CameraOrientations>?
getPreviewTexture(int cameraPosition) Future<num?>
getSensors() Future<SensorDeviceData>
Returns the list of available sensors on device.
getSizes() Future<List<Size>>
init(SensorConfig sensorConfig, bool enableImageStream, bool enablePhysicalButton, {CaptureMode captureMode =, required ExifPreferences exifPreferences, required VideoOptions? videoOptions, required bool mirrorFrontCamera}) Future<bool?>
isMultiCamSupported() Future<bool>
listenCameraImages() Stream<Map<String, dynamic>>?
listenPermissionResult() Stream<bool>?
listenPhysicalButton() Stream<CameraPhysicalButton>?
pauseVideoRecording() → dynamic
receivedImageFromStream() Future
recordVideo(CaptureRequest request) Future<void>
refresh() Future<void>
resumeVideoRecording() → dynamic
setAspectRatio(String ratio) Future<void>
Change aspect ratio when a photo is taken
setAudioMode(bool enableAudio) Future<void>
enable audio mode recording or not
setBrightness(double brightness) Future<void>
set brightness manually with range 0,1
setCaptureMode(CaptureMode captureMode) Future<void>
change capture mode between and
setExifPreferences(ExifPreferences savedExifData) Future<bool>
set exif preferences when a photo is saved
setFilter(AwesomeFilter filter) Future<void>
setFlashMode(FlashMode flashMode) Future<void>
Switch flash mode from Android / iOS
setMirrorFrontCamera(bool mirrorFrontCamera) Future<void>
setPhotoSize(int width, int height) Future<void>
you can set a different size for preview and for photo for iOS, when taking a photo, best quality is automatically used
setPreviewSize(int width, int height) Future<void>
setSensor(List<Sensor?> sensors) Future<void>
switch camera sensor between Sensors.back and Sensors.front on iOS, you can specify the deviceId if you have multiple cameras call getSensors to get the list of available cameras
setupAnalysis({int width = 0, double? maxFramesPerSecond, required InputAnalysisImageFormat format, required bool autoStart}) Future<void>
setZoom(num zoom) Future<void>
calls zoom from Android / iOS --
start() Future<bool>
startAnalysis() Future<void>
startAutoFocus() → dynamic
stop() Future<bool>
stopAnalysis() Future<void>
stopRecordingVideo() → dynamic
takePhoto(CaptureRequest captureRequest) Future<bool>