onAccept method
Implementation
@override
Future<InspectionImage> onAccept(CameraInternalMedia media) async {
XFile? editedImageFile;
if (embedImageMetadata) {
final editedImageBytes =
await (media as CameraInternalImage).getEditedImage();
if (shouldCompress) {
final mb = editedImageBytes.length / (1024 * 1024);
int qualityFactor;
if (mb >= 0 && mb <= 1) {
qualityFactor = 80;
} else if (mb >= 1.01 && mb <= 2) {
qualityFactor = 60;
} else if (mb >= 2.01 && mb <= 3) {
qualityFactor = 50;
} else {
qualityFactor = 35;
}
final compressedBytes =
await editedImageBytes.compressed(quality: qualityFactor);
editedImageFile = XFile.fromData(compressedBytes);
} else {
editedImageFile = XFile.fromData(editedImageBytes);
}
}
return InspectionImage(
data: editedImageFile ?? media.imageFile,
locationData: media.locationData,
timestamp: media.dateTime,
// editedData: editedImageFile,
captureConfig: this,
);
}