Skip to content
This repository has been archived by the owner on Feb 22, 2023. It is now read-only.

[camera] Fixed stale images in imageStream subscriptions #3344

Merged
merged 8 commits into from
Jan 5, 2021
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 4 additions & 0 deletions packages/camera/camera/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 0.6.0+2

Set ImageStreamReader listener to null to prevent stale images when streaming images.

## 0.6.0+1

Updated README to inform users that iOS 10.0+ is needed for use
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -470,9 +470,7 @@ public void onListen(Object o, EventChannel.EventSink imageStreamSink) {
}

@Override
public void onCancel(Object o) {
imageStreamReader.setOnImageAvailableListener(null, null);
mvanbeusekom marked this conversation as resolved.
Show resolved Hide resolved
}
public void onCancel(Object o) {}
});
}

Expand Down Expand Up @@ -509,6 +507,13 @@ private void setImageStreamImageAvailableListener(final EventChannel.EventSink i
null);
}

public void stopImageStream() throws CameraAccessException {
if (imageStreamReader != null) {
imageStreamReader.setOnImageAvailableListener(null, null);
}
startPreview();
}

private void closeCaptureSession() {
if (cameraCaptureSession != null) {
cameraCaptureSession.close();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull final Result result)
case "stopImageStream":
{
try {
camera.startPreview();
camera.stopImageStream();
result.success(null);
} catch (Exception e) {
handleException(e, result);
Expand Down
2 changes: 1 addition & 1 deletion packages/camera/camera/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: camera
description: A Flutter plugin for getting information about and controlling the
camera on Android and iOS. Supports previewing the camera feed, capturing images, capturing video,
and streaming image buffers to dart.
version: 0.6.0+1
version: 0.6.0+2
homepage: https://github.com/flutter/plugins/tree/master/packages/camera/camera

dependencies:
Expand Down