diff options
author | falken@chromium.org <falken@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-14 02:48:56 +0000 |
---|---|---|
committer | falken@chromium.org <falken@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-14 02:48:56 +0000 |
commit | dfb28d8eff00175d94eaf79c09e43090129adb86 (patch) | |
tree | 76325388cb42c8419c40b7953ecfecc287bc28ca /media/base/pipeline.cc | |
parent | ba28fc475a8af13d6170c65a20f238e79f07e826 (diff) | |
download | chromium_src-dfb28d8eff00175d94eaf79c09e43090129adb86.zip chromium_src-dfb28d8eff00175d94eaf79c09e43090129adb86.tar.gz chromium_src-dfb28d8eff00175d94eaf79c09e43090129adb86.tar.bz2 |
Revert of Remove media::VideoRenderer::SetPlaybackRate(). (https://codereview.chromium.org/384943002/)
Reason for revert:
Sorry to revert this change. It made the following layout tests flakily fail:
media/track/track-cue-rendering-horizontal.html
media/track/track-cue-rendering-vertical.html
Reverting locally healed the tests.
The image diffs show what appears to be a timestamp change (something like 0:18 to 0:19):
https://storage.googleapis.com/chromium-layout-test-archives/WebKit_Linux__dbg_/20779/layout-test-results/results.html
Original issue's description:
> Remove media::VideoRenderer::SetPlaybackRate().
>
> Video renderers don't need the information as they are already making
> audio/video synchronization decisions based on a media timeline that
> already incorporates the current playback rate via the time callback.
>
> In particular, VideoRendererImpl only used playback rate to estimate
> a better duration to sleep until the current frame was ready ...
> except that in most cases we'd sleep for kIdleTimeDelta and wait
> until the media timeline had progressed past the current frame's
> timestamp. In other words, there's absolutely no reason to even try
> to estimate the sleep duration based on the playback rate.
>
> BUG=370634
>
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=282797
TBR=xhwang@chromium.org,scherkus@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=370634
Review URL: https://codereview.chromium.org/390733002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@282891 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/pipeline.cc')
-rw-r--r-- | media/base/pipeline.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/media/base/pipeline.cc b/media/base/pipeline.cc index ca53be0..71c7248 100644 --- a/media/base/pipeline.cc +++ b/media/base/pipeline.cc @@ -649,6 +649,8 @@ void Pipeline::PlaybackRateChangedTask(float playback_rate) { if (audio_renderer_) audio_renderer_->SetPlaybackRate(playback_rate_); + if (video_renderer_) + video_renderer_->SetPlaybackRate(playback_rate_); } void Pipeline::VolumeChangedTask(float volume) { |