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

Unified Diff: content/renderer/media/buffered_data_source.cc

Issue 22914021: Logged information from BufferedDataSource including (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: added comments Created 7 years, 4 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 | « content/renderer/media/buffered_data_source.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/media/buffered_data_source.cc
diff --git a/content/renderer/media/buffered_data_source.cc b/content/renderer/media/buffered_data_source.cc
index 1d9b33f6d7b49ffb59c99d0a5d8f0b43fdd40501..296d8fb1bd9003da2c9eadc6c3eba71902c87a3e 100644
--- a/content/renderer/media/buffered_data_source.cc
+++ b/content/renderer/media/buffered_data_source.cc
@@ -144,7 +144,7 @@ void BufferedDataSource::Initialize(
url_ = url;
cors_mode_ = cors_mode;
- init_cb_ = init_cb;
+ init_cb_ = CreateInitializeCB(media_log_, init_cb);
if (url_.SchemeIs(kHttpScheme) || url_.SchemeIs(kHttpsScheme)) {
// Do an unbounded range request starting at the beginning. If the server
@@ -166,6 +166,31 @@ void BufferedDataSource::Initialize(
frame_);
}
+// TODO(tyoverby): remove this typedef
+typedef base::Callback<void(bool)> InitializeCB;
Ty Overby 2013/08/20 23:06:38 scherkus@: How do I get rid of this line? I threw
+
+// The reason that we need to stitch this into the normal callback
+// is because the methods that are called require Initialize() to be called
+// before they can be called.
+static void OnInit(const scoped_refptr<media::MediaLog>& media_log,
+ BufferedDataSource* data_source,
+ const InitializeCB& init_cb,
+ bool success) {
+ media_log->SetBooleanProperty("single_origin",
+ data_source->HasSingleOrigin());
+ media_log->SetBooleanProperty("pass_cors_access_check",
+ data_source->DidPassCORSAccessCheck());
+
+ init_cb.Run(success);
+}
+
+InitializeCB BufferedDataSource::CreateInitializeCB(
+ const scoped_refptr<media::MediaLog>& media_log,
+ const InitializeCB& init_cb) {
+
+ return base::Bind(&OnInit, media_log, this, init_cb);
+}
+
void BufferedDataSource::SetPreload(Preload preload) {
DCHECK(render_loop_->BelongsToCurrentThread());
preload_ = preload;
@@ -371,10 +396,15 @@ void BufferedDataSource::StartCallback(
total_bytes_ = loader_->instance_size();
streaming_ = !assume_fully_buffered_ &&
(total_bytes_ == kPositionNotSpecified || !loader_->range_supported());
+
+ media_log_->SetIntegerProperty("total_bytes", total_bytes_);
scherkus (not reviewing) 2013/08/21 20:28:41 note that total_bytes_ might be -1 (kPositionNotSp
Ty Overby 2013/08/21 22:19:52 That's right; I forgot that we already had it from
Ty Overby 2013/08/21 22:19:52 Done.
} else {
loader_->Stop();
}
+ // HTTP range header
+ media_log_->SetBooleanProperty("range_supported", loader_->range_supported());
+
// TODO(scherkus): we shouldn't have to lock to signal host(), see
// http://crbug.com/113712 for details.
base::AutoLock auto_lock(lock_);
@@ -429,6 +459,8 @@ void BufferedDataSource::ReadCallback(
read_op_->retries() < kNumCacheMissRetries) {
read_op_->IncrementRetries();
+ media_log_->SetIntegerProperty("read_retries", read_op_->retries());
scherkus (not reviewing) 2013/08/21 20:28:41 I wouldn't bother with this one -- ReadCallback()
Ty Overby 2013/08/21 22:19:52 It's only called if there is a miss I believe, and
+
// Recreate a loader starting from where we last left off until the
// end of the resource.
loader_.reset(CreateResourceLoader(
« no previous file with comments | « content/renderer/media/buffered_data_source.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698