Index: chromecast/media/cma/filters/cma_renderer.cc |
diff --git a/chromecast/media/cma/filters/cma_renderer.cc b/chromecast/media/cma/filters/cma_renderer.cc |
index b8e7b42ba9a025ad69e8b409c5e88a41bdd1c97f..0de06343e5e2546e97bb77d08a929e10e82e6a09 100644 |
--- a/chromecast/media/cma/filters/cma_renderer.cc |
+++ b/chromecast/media/cma/filters/cma_renderer.cc |
@@ -263,6 +263,7 @@ |
if (config.codec() == ::media::kCodecAAC) |
stream->EnableBitstreamConverter(); |
+ has_audio_ = true; |
media_pipeline_->InitializeAudio( |
config, frame_provider.Pass(), audio_initialization_done_cb); |
} |
@@ -278,10 +279,10 @@ |
DCHECK_EQ(state_, kUninitialized) << state_; |
DCHECK(!init_cb_.is_null()); |
if (status != ::media::PIPELINE_OK) { |
+ has_audio_ = false; |
base::ResetAndReturn(&init_cb_).Run(status); |
return; |
} |
- has_audio_ = true; |
InitializeVideoPipeline(); |
} |
@@ -326,6 +327,7 @@ |
initial_natural_size_ = config.natural_size(); |
+ has_video_ = true; |
media_pipeline_->InitializeVideo( |
config, |
frame_provider.Pass(), |
@@ -343,10 +345,10 @@ |
DCHECK_EQ(state_, kUninitialized) << state_; |
DCHECK(!init_cb_.is_null()); |
if (status != ::media::PIPELINE_OK) { |
+ has_video_ = false; |
base::ResetAndReturn(&init_cb_).Run(status); |
return; |
} |
- has_video_ = true; |
CompleteStateTransition(kFlushed); |
base::ResetAndReturn(&init_cb_).Run(::media::PIPELINE_OK); |