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

Unified Diff: media/filters/chunk_demuxer.cc

Issue 213283003: Move splice frame setting to ChunkDemuxer(). Disable for now. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Default off everywhere. Created 6 years, 9 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/chunk_demuxer.h ('k') | media/filters/chunk_demuxer_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/filters/chunk_demuxer.cc
diff --git a/media/filters/chunk_demuxer.cc b/media/filters/chunk_demuxer.cc
index cf4cce989e5c9412538d75dafca55a0d653bc302..1eb22d54f7f3334955189a97ac312db927d7d370 100644
--- a/media/filters/chunk_demuxer.cc
+++ b/media/filters/chunk_demuxer.cc
@@ -702,10 +702,10 @@ void SourceState::OnSourceInitDone(bool success,
base::ResetAndReturn(&init_cb_).Run(success, duration);
}
-ChunkDemuxerStream::ChunkDemuxerStream(Type type)
+ChunkDemuxerStream::ChunkDemuxerStream(Type type, bool splice_frames_enabled)
: type_(type),
- state_(UNINITIALIZED) {
-}
+ state_(UNINITIALIZED),
+ splice_frames_enabled_(splice_frames_enabled) {}
void ChunkDemuxerStream::StartReturningData() {
DVLOG(1) << "ChunkDemuxerStream::StartReturningData()";
@@ -836,7 +836,8 @@ bool ChunkDemuxerStream::UpdateAudioConfig(const AudioDecoderConfig& config,
base::AutoLock auto_lock(lock_);
if (!stream_) {
DCHECK_EQ(state_, UNINITIALIZED);
- stream_.reset(new SourceBufferStream(config, log_cb));
+ stream_.reset(
+ new SourceBufferStream(config, log_cb, splice_frames_enabled_));
return true;
}
@@ -851,7 +852,8 @@ bool ChunkDemuxerStream::UpdateVideoConfig(const VideoDecoderConfig& config,
if (!stream_) {
DCHECK_EQ(state_, UNINITIALIZED);
- stream_.reset(new SourceBufferStream(config, log_cb));
+ stream_.reset(
+ new SourceBufferStream(config, log_cb, splice_frames_enabled_));
return true;
}
@@ -864,7 +866,7 @@ void ChunkDemuxerStream::UpdateTextConfig(const TextTrackConfig& config,
base::AutoLock auto_lock(lock_);
DCHECK(!stream_);
DCHECK_EQ(state_, UNINITIALIZED);
- stream_.reset(new SourceBufferStream(config, log_cb));
+ stream_.reset(new SourceBufferStream(config, log_cb, splice_frames_enabled_));
}
void ChunkDemuxerStream::MarkEndOfStream() {
@@ -970,7 +972,8 @@ void ChunkDemuxerStream::CompletePendingReadIfPossible_Locked() {
ChunkDemuxer::ChunkDemuxer(const base::Closure& open_cb,
const NeedKeyCB& need_key_cb,
- const LogCB& log_cb)
+ const LogCB& log_cb,
+ bool splice_frames_enabled)
: state_(WAITING_FOR_INIT),
cancel_next_seek_(false),
host_(NULL),
@@ -979,7 +982,8 @@ ChunkDemuxer::ChunkDemuxer(const base::Closure& open_cb,
enable_text_(false),
log_cb_(log_cb),
duration_(kNoTimestamp()),
- user_specified_duration_(-1) {
+ user_specified_duration_(-1),
+ splice_frames_enabled_(splice_frames_enabled) {
DCHECK(!open_cb_.is_null());
DCHECK(!need_key_cb_.is_null());
}
@@ -1511,17 +1515,20 @@ ChunkDemuxer::CreateDemuxerStream(DemuxerStream::Type type) {
case DemuxerStream::AUDIO:
if (audio_)
return NULL;
- audio_.reset(new ChunkDemuxerStream(DemuxerStream::AUDIO));
+ audio_.reset(
+ new ChunkDemuxerStream(DemuxerStream::AUDIO, splice_frames_enabled_));
return audio_.get();
break;
case DemuxerStream::VIDEO:
if (video_)
return NULL;
- video_.reset(new ChunkDemuxerStream(DemuxerStream::VIDEO));
+ video_.reset(
+ new ChunkDemuxerStream(DemuxerStream::VIDEO, splice_frames_enabled_));
return video_.get();
break;
case DemuxerStream::TEXT: {
- return new ChunkDemuxerStream(DemuxerStream::TEXT);
+ return new ChunkDemuxerStream(DemuxerStream::TEXT,
+ splice_frames_enabled_);
break;
}
case DemuxerStream::UNKNOWN:
« no previous file with comments | « media/filters/chunk_demuxer.h ('k') | media/filters/chunk_demuxer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698