Do not report camera disconnected event if Android camera is closing.
Ignore CAMERA_ERROR_EVICTED error if camera is about to be closed. This is valid use case when other app is opening camera while WebRTC Android app is trying to close it. BUG=b/34112992 Review-Url: https://codereview.webrtc.org/2627153002 Cr-Commit-Position: refs/heads/master@{#16039}
This commit is contained in:
parent
e1082cac69
commit
21b6cce0c4
@ -96,15 +96,20 @@ public class VideoCapturerAndroid
|
||||
@Override
|
||||
public void onError(int error, android.hardware.Camera camera) {
|
||||
String errorMessage;
|
||||
boolean cameraRunning = isCameraRunning.get();
|
||||
if (error == android.hardware.Camera.CAMERA_ERROR_SERVER_DIED) {
|
||||
errorMessage = "Camera server died!";
|
||||
} else {
|
||||
errorMessage = "Camera error: " + error;
|
||||
}
|
||||
Logging.e(TAG, errorMessage);
|
||||
Logging.e(TAG, errorMessage + ". Camera running: " + cameraRunning);
|
||||
if (eventsHandler != null) {
|
||||
if (error == android.hardware.Camera.CAMERA_ERROR_EVICTED) {
|
||||
eventsHandler.onCameraDisconnected();
|
||||
if (cameraRunning) {
|
||||
eventsHandler.onCameraDisconnected();
|
||||
} else {
|
||||
Logging.d(TAG, "Ignore CAMERA_ERROR_EVICTED for closed camera.");
|
||||
}
|
||||
} else {
|
||||
eventsHandler.onCameraError(errorMessage);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user