summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorronghuawu@chromium.org <ronghuawu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-09 21:14:56 +0000
committerronghuawu@chromium.org <ronghuawu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-09 21:14:56 +0000
commite09b70b3f256ff0393a3f8488aaa0d7c72de4dec (patch)
tree17c1b6f77b45dea6a26f198965e7fa73877bc889
parent40c7482b3bcdbe214a564885913aae5f17423a18 (diff)
downloadchromium_src-e09b70b3f256ff0393a3f8488aaa0d7c72de4dec.zip
chromium_src-e09b70b3f256ff0393a3f8488aaa0d7c72de4dec.tar.gz
chromium_src-e09b70b3f256ff0393a3f8488aaa0d7c72de4dec.tar.bz2
* Roll webrtc & libjingle 6346:6352.
* Take remote track's cricket::VideoFrame's elapsed time as media::VideoFrame's timestamp. This elapsed time is computed from the remote video frame's rtp timestamp and starts from 0. * Use media::VideoFrame's timestamp as video element's currentTime instead of normalize it to 0 everytime. This is to ensure video elements connected to the same track have the same currentTime. TEST=manually add local and remote mediastreams to different video tags and check the current time BUG=380242 R=acolwell@chromium.org, hclam@chromium.org Review URL: https://codereview.chromium.org/324513002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@275856 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--DEPS2
-rw-r--r--content/renderer/media/webmediaplayer_ms.cc7
-rw-r--r--content/renderer/media/webmediaplayer_ms.h2
-rw-r--r--content/renderer/media/webrtc/media_stream_remote_video_source.cc4
-rw-r--r--third_party/libjingle/README.chromium2
5 files changed, 5 insertions, 12 deletions
diff --git a/DEPS b/DEPS
index 6631923..52754e8 100644
--- a/DEPS
+++ b/DEPS
@@ -54,7 +54,7 @@ vars = {
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling WebRTC
# and V8 without interference from each other.
- "webrtc_revision": "6346",
+ "webrtc_revision": "6352",
"jsoncpp_revision": "248",
"nss_revision": "275589",
# Three lines of non-changing comments so that
diff --git a/content/renderer/media/webmediaplayer_ms.cc b/content/renderer/media/webmediaplayer_ms.cc
index 7227eee..fe8d7a5 100644
--- a/content/renderer/media/webmediaplayer_ms.cc
+++ b/content/renderer/media/webmediaplayer_ms.cc
@@ -94,7 +94,6 @@ WebMediaPlayerMS::WebMediaPlayerMS(
pending_repaint_(false),
video_frame_provider_client_(NULL),
received_first_frame_(false),
- sequence_started_(false),
total_frame_count_(0),
dropped_frame_count_(0),
media_log_(media_log),
@@ -426,10 +425,6 @@ void WebMediaPlayerMS::OnFrameAvailable(
if (paused_)
return;
- if (!sequence_started_) {
- sequence_started_ = true;
- start_time_ = frame->timestamp();
- }
bool size_changed = !current_frame_.get() ||
current_frame_->natural_size() != frame->natural_size();
@@ -438,7 +433,7 @@ void WebMediaPlayerMS::OnFrameAvailable(
if (!current_frame_used_ && current_frame_.get())
++dropped_frame_count_;
current_frame_ = frame;
- current_time_ = frame->timestamp() - start_time_;
+ current_time_ = frame->timestamp();
current_frame_used_ = false;
}
diff --git a/content/renderer/media/webmediaplayer_ms.h b/content/renderer/media/webmediaplayer_ms.h
index 0405b69..51f90e8 100644
--- a/content/renderer/media/webmediaplayer_ms.h
+++ b/content/renderer/media/webmediaplayer_ms.h
@@ -175,8 +175,6 @@ class WebMediaPlayerMS
cc::VideoFrameProvider::Client* video_frame_provider_client_;
bool received_first_frame_;
- bool sequence_started_;
- base::TimeDelta start_time_;
base::TimeDelta current_time_;
unsigned total_frame_count_;
unsigned dropped_frame_count_;
diff --git a/content/renderer/media/webrtc/media_stream_remote_video_source.cc b/content/renderer/media/webrtc/media_stream_remote_video_source.cc
index 4a28be43..3b93cdf 100644
--- a/content/renderer/media/webrtc/media_stream_remote_video_source.cc
+++ b/content/renderer/media/webrtc/media_stream_remote_video_source.cc
@@ -71,8 +71,8 @@ RemoteVideoSourceDelegate::SetSize(int width, int height) {
void MediaStreamRemoteVideoSource::
RemoteVideoSourceDelegate::RenderFrame(
const cricket::VideoFrame* frame) {
- base::TimeDelta timestamp = base::TimeDelta::FromMilliseconds(
- frame->GetTimeStamp() / talk_base::kNumNanosecsPerMillisec);
+ base::TimeDelta timestamp = base::TimeDelta::FromMicroseconds(
+ frame->GetElapsedTime() / talk_base::kNumNanosecsPerMicrosec);
scoped_refptr<media::VideoFrame> video_frame;
if (frame->GetNativeHandle() != NULL) {
diff --git a/third_party/libjingle/README.chromium b/third_party/libjingle/README.chromium
index e9bb8ba..9ea927f 100644
--- a/third_party/libjingle/README.chromium
+++ b/third_party/libjingle/README.chromium
@@ -1,7 +1,7 @@
Name: libjingle
URL: http://code.google.com/p/webrtc/
Version: unknown
-Revision: 6346
+Revision: 6352
License: BSD
License File: source/talk/COPYING
Security Critical: yes