Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(793)

Unified Diff: media/filters/audio_decoder_selector.cc

Issue 13813016: Remove reference counting from media::Demuxer and friends. (Closed) Base URL: http://git.chromium.org/chromium/src.git@vd_scoped
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/filters/audio_decoder_selector.cc
diff --git a/media/filters/audio_decoder_selector.cc b/media/filters/audio_decoder_selector.cc
index 1cc9fbf9e40771032626cbbe6ed682bf2967935c..7a7baf96b78be37cf93b2569ee7fd415c2edd0d9 100644
--- a/media/filters/audio_decoder_selector.cc
+++ b/media/filters/audio_decoder_selector.cc
@@ -30,7 +30,7 @@ AudioDecoderSelector::AudioDecoderSelector(
AudioDecoderSelector::~AudioDecoderSelector() {}
void AudioDecoderSelector::SelectAudioDecoder(
- const scoped_refptr<DemuxerStream>& stream,
+ DemuxerStream* stream,
const StatisticsCB& statistics_cb,
const SelectDecoderCB& select_decoder_cb) {
DVLOG(2) << "SelectAudioDecoder()";
@@ -44,7 +44,7 @@ void AudioDecoderSelector::SelectAudioDecoder(
if (!config.IsValidConfig()) {
DLOG(ERROR) << "Invalid audio stream config.";
base::ResetAndReturn(&select_decoder_cb_).Run(
- scoped_ptr<AudioDecoder>(), NULL);
+ scoped_ptr<AudioDecoder>(), scoped_ptr<DecryptingDemuxerStream>());
return;
}
@@ -59,7 +59,7 @@ void AudioDecoderSelector::SelectAudioDecoder(
// This could happen if Encrypted Media Extension (EME) is not enabled.
if (set_decryptor_ready_cb_.is_null()) {
base::ResetAndReturn(&select_decoder_cb_).Run(
- scoped_ptr<AudioDecoder>(), NULL);
+ scoped_ptr<AudioDecoder>(), scoped_ptr<DecryptingDemuxerStream>());
return;
}
@@ -79,14 +79,15 @@ void AudioDecoderSelector::DecryptingAudioDecoderInitDone(
DCHECK(message_loop_->BelongsToCurrentThread());
if (status == PIPELINE_OK) {
- base::ResetAndReturn(&select_decoder_cb_).Run(audio_decoder_.Pass(), NULL);
+ base::ResetAndReturn(&select_decoder_cb_).Run(
+ audio_decoder_.Pass(), scoped_ptr<DecryptingDemuxerStream>());
return;
}
audio_decoder_.reset();
- decrypted_stream_ = new DecryptingDemuxerStream(
- message_loop_, set_decryptor_ready_cb_);
+ decrypted_stream_.reset(new DecryptingDemuxerStream(
+ message_loop_, set_decryptor_ready_cb_));
decrypted_stream_->Initialize(
input_stream_,
@@ -100,14 +101,14 @@ void AudioDecoderSelector::DecryptingDemuxerStreamInitDone(
DCHECK(message_loop_->BelongsToCurrentThread());
if (status != PIPELINE_OK) {
- decrypted_stream_ = NULL;
+ decrypted_stream_.reset();
base::ResetAndReturn(&select_decoder_cb_).Run(
- scoped_ptr<AudioDecoder>(), NULL);
+ scoped_ptr<AudioDecoder>(), scoped_ptr<DecryptingDemuxerStream>());
return;
}
DCHECK(!decrypted_stream_->audio_decoder_config().is_encrypted());
- input_stream_ = decrypted_stream_;
+ input_stream_ = decrypted_stream_.get();
InitializeDecoder(decoders_.begin());
}
@@ -117,7 +118,7 @@ void AudioDecoderSelector::InitializeDecoder(
if (iter == decoders_.end()) {
base::ResetAndReturn(&select_decoder_cb_).Run(
- scoped_ptr<AudioDecoder>(), NULL);
+ scoped_ptr<AudioDecoder>(), scoped_ptr<DecryptingDemuxerStream>());
return;
}
@@ -143,7 +144,7 @@ void AudioDecoderSelector::DecoderInitDone(
decoders_.weak_erase(iter);
base::ResetAndReturn(&select_decoder_cb_).Run(audio_decoder.Pass(),
- decrypted_stream_);
+ decrypted_stream_.Pass());
}
} // namespace media

Powered by Google App Engine
This is Rietveld 408576698