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

Unified Diff: media/filters/decoder_stream.cc

Issue 240123004: Simplify AudioSplicer logic which slots buffers before or after a splice point. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Comments. Created 6 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
« no previous file with comments | « media/filters/decoder_stream.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/filters/decoder_stream.cc
diff --git a/media/filters/decoder_stream.cc b/media/filters/decoder_stream.cc
index 350e47f72cd3887c2fd01ee9d878774791254745..c4adc632ba89a897cbc222bae14e3737ff3f93df 100644
--- a/media/filters/decoder_stream.cc
+++ b/media/filters/decoder_stream.cc
@@ -50,6 +50,7 @@ DecoderStream<StreamType>::DecoderStream(
new DecoderSelector<StreamType>(task_runner,
decoders.Pass(),
set_decryptor_ready_cb)),
+ active_splice_(false),
weak_factory_(this) {}
template <DemuxerStream::Type StreamType>
@@ -408,9 +409,12 @@ void DecoderStream<StreamType>::OnBufferReady(
return;
}
- if (!splice_observer_cb_.is_null() && !buffer->end_of_stream() &&
- buffer->splice_timestamp() != kNoTimestamp()) {
- splice_observer_cb_.Run(buffer->splice_timestamp());
+ if (!splice_observer_cb_.is_null() && !buffer->end_of_stream()) {
+ const bool has_splice_ts = buffer->splice_timestamp() != kNoTimestamp();
+ if (active_splice_ || has_splice_ts) {
+ splice_observer_cb_.Run(buffer->splice_timestamp());
+ active_splice_ = has_splice_ts;
+ }
}
DCHECK(status == DemuxerStream::kOk) << status;
« no previous file with comments | « media/filters/decoder_stream.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698