Added exception handling to EncodedImage's release callback.
Bug: webrtc:11230 Change-Id: Iad5bb4470891fbaea6b83ba647c8b4bbc4e38c72 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/162803 Commit-Queue: Sami Kalliomäki <sakal@webrtc.org> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org> Reviewed-by: Niels Moller <nisse@webrtc.org> Cr-Commit-Position: refs/heads/master@{#30165}
This commit is contained in:
@ -586,7 +586,14 @@ class HardwareVideoEncoder implements VideoEncoder {
|
||||
EncodedImage encodedImage = builder
|
||||
.setBuffer(frameBuffer,
|
||||
() -> {
|
||||
codec.releaseOutputBuffer(index, false);
|
||||
// This callback should not throw any exceptions since
|
||||
// it may be called on an arbitrary thread.
|
||||
// Check bug webrtc:11230 for more details.
|
||||
try {
|
||||
codec.releaseOutputBuffer(index, false);
|
||||
} catch (Exception e) {
|
||||
Logging.e(TAG, "releaseOutputBuffer failed", e);
|
||||
}
|
||||
outputBuffersBusyCount.decrement();
|
||||
})
|
||||
.setFrameType(frameType)
|
||||
|
Reference in New Issue
Block a user