| Index: media/base/android/media_codec_decoder.cc
|
| diff --git a/media/base/android/media_codec_decoder.cc b/media/base/android/media_codec_decoder.cc
|
| index 942cd6351c3ee65ee8f7031f0511b323c5c09cad..552bee408aed20655b193a62c80ee2a26541fca4 100644
|
| --- a/media/base/android/media_codec_decoder.cc
|
| +++ b/media/base/android/media_codec_decoder.cc
|
| @@ -892,10 +892,11 @@ bool MediaCodecDecoder::DepleteOutputBufferQueue() {
|
| DVLOG(2) << class_name() << "::" << __FUNCTION__
|
| << " MEDIA_CODEC_OUTPUT_FORMAT_CHANGED";
|
| if (!OnOutputFormatChanged()) {
|
| - DVLOG(0) << class_name() << "::" << __FUNCTION__
|
| - << ": OnOutputFormatChanged failed";
|
| - status = MEDIA_CODEC_ERROR;
|
| + DVLOG(1) << class_name() << "::" << __FUNCTION__
|
| + << ": OnOutputFormatChanged failed, stopping frame"
|
| + << " processing";
|
| media_task_runner_->PostTask(FROM_HERE, internal_error_cb_);
|
| + return false;
|
| }
|
| break;
|
|
|
| @@ -911,7 +912,13 @@ bool MediaCodecDecoder::DepleteOutputBufferQueue() {
|
| else
|
| render_mode = kRenderNow;
|
|
|
| - Render(buffer_index, offset, size, render_mode, pts, eos_encountered);
|
| + if (!Render(buffer_index, offset, size, render_mode, pts,
|
| + eos_encountered)) {
|
| + DVLOG(1) << class_name() << "::" << __FUNCTION__
|
| + << " Render failed, stopping frame processing";
|
| + media_task_runner_->PostTask(FROM_HERE, internal_error_cb_);
|
| + return false;
|
| + }
|
|
|
| if (render_mode == kRenderAfterPreroll) {
|
| DVLOG(1) << class_name() << "::" << __FUNCTION__ << " pts " << pts
|
|
|