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

Issue 575643002: Initialize media timeline correctly for positive start times. (Closed)

Created:
6 years, 3 months ago by DaleCurtis
Modified:
6 years, 3 months ago
CC:
chromium-reviews, feature-media-reviews_chromium.org, acolwell GONE FROM CHROMIUM
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Initialize media timeline correctly for positive start times. The previous fix for positive start times http://crrev.com/93c37f1b is incomplete. It fixed seeking, but did not fix rendering. As such, the media timeline will start playback from 0 and advance in real time to any positive start time... even if the actual start is hours away. When testing I used a test clip with a short positive start time so did not notice the issue. In attempting to write a layout test, I retested with a larger start time which revealed the deficiency in my first solution. This change reverts the removal of Demuxer::StartTime() with the added restriction that it must always be positive. Pipeline uses this time like it did before, during initialization and as a minimum bound for seeking. BUG=413292 TEST=four new tests! layout test forthcoming. Committed: https://crrev.com/b9ec078cf3b5355a1a19c55a75ebb6ab101b4483 Cr-Commit-Position: refs/heads/master@{#295159}

Patch Set 1 #

Total comments: 8

Patch Set 2 : Add tests. #

Total comments: 4

Patch Set 3 : Comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+63 lines, -10 lines) Patch
M media/base/demuxer.h View 1 chunk +3 lines, -0 lines 0 comments Download
M media/base/mock_filters.h View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M media/base/pipeline.cc View 2 chunks +7 lines, -2 lines 0 comments Download
M media/base/pipeline_unittest.cc View 1 2 4 chunks +20 lines, -1 line 0 comments Download
M media/filters/chunk_demuxer.h View 1 chunk +1 line, -0 lines 0 comments Download
M media/filters/chunk_demuxer.cc View 2 chunks +5 lines, -1 line 0 comments Download
M media/filters/ffmpeg_demuxer.h View 2 chunks +4 lines, -2 lines 0 comments Download
M media/filters/ffmpeg_demuxer.cc View 2 chunks +5 lines, -1 line 0 comments Download
M media/filters/ffmpeg_demuxer_unittest.cc View 2 chunks +6 lines, -3 lines 0 comments Download
M media/filters/pipeline_integration_test.cc View 1 2 3 chunks +11 lines, -0 lines 0 comments Download

Messages

Total messages: 14 (2 generated)
DaleCurtis
scherkus, as discussed. acolwell FYI, I should have gotten to that layout test sooner rather ...
6 years, 3 months ago (2014-09-15 22:31:29 UTC) #2
DaleCurtis
LayoutTest here https://codereview.chromium.org/544173012/
6 years, 3 months ago (2014-09-15 22:57:41 UTC) #3
scherkus (not reviewing)
preliminary questions on tests -- still piecing together the change in my head https://codereview.chromium.org/575643002/diff/1/media/base/pipeline.cc File ...
6 years, 3 months ago (2014-09-16 00:07:31 UTC) #4
DaleCurtis
https://codereview.chromium.org/575643002/diff/1/media/filters/pipeline_integration_test.cc File media/filters/pipeline_integration_test.cc (right): https://codereview.chromium.org/575643002/diff/1/media/filters/pipeline_integration_test.cc#newcode1575 media/filters/pipeline_integration_test.cc:1575: ASSERT_EQ(base::TimeDelta(), demuxer_->GetStartTime()); On 2014/09/16 00:07:31, scherkus wrote: > do ...
6 years, 3 months ago (2014-09-16 00:10:07 UTC) #5
scherkus (not reviewing)
overall I think this is fine but I could use some extra Q&A'ing https://codereview.chromium.org/575643002/diff/1/media/base/pipeline.cc File ...
6 years, 3 months ago (2014-09-16 00:16:51 UTC) #6
DaleCurtis
PTAL. There are now four tests covering all major players. https://codereview.chromium.org/575643002/diff/1/media/base/pipeline.cc File media/base/pipeline.cc (right): https://codereview.chromium.org/575643002/diff/1/media/base/pipeline.cc#newcode351 ...
6 years, 3 months ago (2014-09-16 01:17:50 UTC) #7
scherkus (not reviewing)
https://codereview.chromium.org/575643002/diff/20001/media/base/pipeline_unittest.cc File media/base/pipeline_unittest.cc (right): https://codereview.chromium.org/575643002/diff/20001/media/base/pipeline_unittest.cc#newcode183 media/base/pipeline_unittest.cc:183: EXPECT_CALL(*demuxer_, GetStartTime()).WillRepeatedly(Return(start_time_)); could we move these to Pipeline() along ...
6 years, 3 months ago (2014-09-16 18:55:41 UTC) #8
DaleCurtis
https://codereview.chromium.org/575643002/diff/20001/media/base/pipeline_unittest.cc File media/base/pipeline_unittest.cc (right): https://codereview.chromium.org/575643002/diff/20001/media/base/pipeline_unittest.cc#newcode183 media/base/pipeline_unittest.cc:183: EXPECT_CALL(*demuxer_, GetStartTime()).WillRepeatedly(Return(start_time_)); On 2014/09/16 18:55:41, scherkus wrote: > could ...
6 years, 3 months ago (2014-09-16 20:03:03 UTC) #9
scherkus (not reviewing)
lgtm thanks for writing tests!
6 years, 3 months ago (2014-09-16 20:09:20 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patchset/575643002/40001
6 years, 3 months ago (2014-09-16 20:12:52 UTC) #12
commit-bot: I haz the power
Committed patchset #3 (id:40001) as f603e05bed57babbda3254d31b57c7ca56fe24d3
6 years, 3 months ago (2014-09-16 22:23:29 UTC) #13
commit-bot: I haz the power
6 years, 3 months ago (2014-09-16 22:24:18 UTC) #14
Message was sent while issue was closed.
Patchset 3 (id:??) landed as
https://crrev.com/b9ec078cf3b5355a1a19c55a75ebb6ab101b4483
Cr-Commit-Position: refs/heads/master@{#295159}

Powered by Google App Engine
This is Rietveld 408576698