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

Issue 7044008: Initial implementation of stream switching in AdaptiveDemuxer. (Closed)

Created:
9 years, 7 months ago by acolwell GONE FROM CHROMIUM
Modified:
9 years, 6 months ago
CC:
chromium-reviews, hclam+watch_chromium.org, sjl, ddorwin+watch_chromium.org, fischman+watch_chromium.org, acolwell GONE FROM CHROMIUM, annacc, ajwong+watch_chromium.org, vrk (LEFT CHROMIUM), scherkus (not reviewing)
Visibility:
Public.

Description

Initial implementation of stream switching in AdaptiveDemuxer. BUG=82167 TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=86774

Patch Set 1 : _ #

Total comments: 26

Patch Set 2 : Added documentation & a little cleanup #

Total comments: 14

Patch Set 3 : Addressed CR comments #

Total comments: 4

Patch Set 4 : Fix TODOs #

Total comments: 47

Patch Set 5 : Fixes for Ami's comments #

Patch Set 6 : Use RepeatingTimer #

Total comments: 6

Patch Set 7 : Addressing final CR concerns and fixing Lint errors. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+690 lines, -23 lines) Patch
M media/base/pipeline_status.h View 2 chunks +2 lines, -0 lines 0 comments Download
M media/filters/adaptive_demuxer.h View 1 2 3 4 5 6 6 chunks +130 lines, -5 lines 0 comments Download
M media/filters/adaptive_demuxer.cc View 1 2 3 4 5 6 11 chunks +558 lines, -18 lines 0 comments Download

Messages

Total messages: 12 (0 generated)
acolwell GONE FROM CHROMIUM
9 years, 7 months ago (2011-05-19 01:16:05 UTC) #1
Ami GONE FROM CHROMIUM
Pausing CR per offline convo. http://codereview.chromium.org/7044008/diff/3001/media/base/pipeline_status.h File media/base/pipeline_status.h (right): http://codereview.chromium.org/7044008/diff/3001/media/base/pipeline_status.h#newcode38 media/base/pipeline_status.h:38: typedef base::Callback<void(PipelineStatus)> PipelineStatusCB; Does ...
9 years, 7 months ago (2011-05-19 20:27:37 UTC) #2
acolwell GONE FROM CHROMIUM
New patch uploaded with far more documentation. http://codereview.chromium.org/7044008/diff/3001/media/base/pipeline_status.h File media/base/pipeline_status.h (right): http://codereview.chromium.org/7044008/diff/3001/media/base/pipeline_status.h#newcode38 media/base/pipeline_status.h:38: typedef base::Callback<void(PipelineStatus)> ...
9 years, 7 months ago (2011-05-20 01:26:37 UTC) #3
scherkus (not reviewing)
http://codereview.chromium.org/7044008/diff/8004/media/filters/adaptive_demuxer.cc File media/filters/adaptive_demuxer.cc (right): http://codereview.chromium.org/7044008/diff/8004/media/filters/adaptive_demuxer.cc#newcode21 media/filters/adaptive_demuxer.cc:21: nit: remove blank line http://codereview.chromium.org/7044008/diff/8004/media/filters/adaptive_demuxer.cc#newcode24 media/filters/adaptive_demuxer.cc:24: ~StreamSwitchManager(); virtual http://codereview.chromium.org/7044008/diff/8004/media/filters/adaptive_demuxer.cc#newcode100 ...
9 years, 7 months ago (2011-05-23 18:26:29 UTC) #4
acolwell GONE FROM CHROMIUM
http://codereview.chromium.org/7044008/diff/8004/media/filters/adaptive_demuxer.cc File media/filters/adaptive_demuxer.cc (right): http://codereview.chromium.org/7044008/diff/8004/media/filters/adaptive_demuxer.cc#newcode21 media/filters/adaptive_demuxer.cc:21: On 2011/05/23 18:26:29, scherkus wrote: > nit: remove blank ...
9 years, 7 months ago (2011-05-23 22:45:45 UTC) #5
scherkus (not reviewing)
misc rambly thoughts + nit about TODO is this CL still on hold? http://codereview.chromium.org/7044008/diff/13001/media/filters/adaptive_demuxer.cc File ...
9 years, 7 months ago (2011-05-23 23:17:05 UTC) #6
acolwell GONE FROM CHROMIUM
Fixed TODOs This isn't on hold anymore. It is ready for review. http://codereview.chromium.org/7044008/diff/13001/media/filters/adaptive_demuxer.cc File media/filters/adaptive_demuxer.cc ...
9 years, 7 months ago (2011-05-23 23:46:40 UTC) #7
Ami GONE FROM CHROMIUM
Thanks for the art. It helped a lot! http://codereview.chromium.org/7044008/diff/8004/media/filters/adaptive_demuxer.h File media/filters/adaptive_demuxer.h (right): http://codereview.chromium.org/7044008/diff/8004/media/filters/adaptive_demuxer.h#newcode41 media/filters/adaptive_demuxer.h:41: // ...
9 years, 7 months ago (2011-05-24 06:14:12 UTC) #8
scherkus (not reviewing)
few qs http://codereview.chromium.org/7044008/diff/12002/media/filters/adaptive_demuxer.cc File media/filters/adaptive_demuxer.cc (right): http://codereview.chromium.org/7044008/diff/12002/media/filters/adaptive_demuxer.cc#newcode57 media/filters/adaptive_demuxer.cc:57: bool switch_timer_running_; may want to consider using ...
9 years, 7 months ago (2011-05-24 21:38:37 UTC) #9
acolwell GONE FROM CHROMIUM
Addressed Ami's & Andrew's comments. Fixed everything but adding unit tests. http://codereview.chromium.org/7044008/diff/12002/media/filters/adaptive_demuxer.cc File media/filters/adaptive_demuxer.cc (right): ...
9 years, 7 months ago (2011-05-24 23:45:15 UTC) #10
Ami GONE FROM CHROMIUM
Pretty much LGTM. http://codereview.chromium.org/7044008/diff/12002/media/filters/adaptive_demuxer.cc File media/filters/adaptive_demuxer.cc (right): http://codereview.chromium.org/7044008/diff/12002/media/filters/adaptive_demuxer.cc#newcode318 media/filters/adaptive_demuxer.cc:318: // current stream. On 2011/05/24 23:45:16, ...
9 years, 7 months ago (2011-05-25 05:39:01 UTC) #11
acolwell GONE FROM CHROMIUM
9 years, 7 months ago (2011-05-25 21:43:46 UTC) #12
http://codereview.chromium.org/7044008/diff/12002/media/filters/adaptive_demu...
File media/filters/adaptive_demuxer.cc (right):

http://codereview.chromium.org/7044008/diff/12002/media/filters/adaptive_demu...
media/filters/adaptive_demuxer.cc:445: switch_cb_.Reset();
On 2011/05/25 05:39:01, Ami Fischman wrote:
> On 2011/05/24 23:45:16, acolwell wrote:
> > On 2011/05/24 06:14:12, Ami Fischman wrote:
> > > swap instead of =+Reset()?
> > no swap() method. :(
> 
> new-style callbacks are assignable, so std::swap() should do you.

Done.

http://codereview.chromium.org/7044008/diff/12002/media/filters/adaptive_demu...
media/filters/adaptive_demuxer.cc:881: seek_cb.Run(PIPELINE_OK, seek_point);
On 2011/05/25 05:39:01, Ami Fischman wrote:
> Re: Apply: that's what Bind *is*.
yeah. I wasn't quite thinking straight here.

> Re: ref-of-local-var: it's only a problem b/c you're using Unretained.  Does
> dropping that make your life better?
No. If I remove base::Unretained(&), it complains about seek_cb not being a
pointer and that it doesn't support AddRef() and Release().

http://codereview.chromium.org/7044008/diff/13002/media/filters/adaptive_demu...
media/filters/adaptive_demuxer.cc:462: // Make the Read() calls that were
deferred during the stream switch.
On 2011/05/25 05:39:01, Ami Fischman wrote:
> Unnecessary?

Done.

http://codereview.chromium.org/7044008/diff/13002/media/filters/adaptive_demu...
media/filters/adaptive_demuxer.cc:488: DCHECK_LT(current_audio_demuxer_index_,
static_cast<int>(demuxers_.size()));
On 2011/05/25 05:39:01, Ami Fischman wrote:
> reset() more idiomatic for scoped_refptr?
scoped_refptr doesn't have a reset().

http://codereview.chromium.org/7044008/diff/13002/media/filters/adaptive_demu...
File media/filters/adaptive_demuxer.h (right):

http://codereview.chromium.org/7044008/diff/13002/media/filters/adaptive_demu...
media/filters/adaptive_demuxer.h:60: void OnAdaptiveDemuxerSeek(base::TimeDelta
time);
On 2011/05/25 05:39:01, Ami Fischman wrote:
> s/time/seek_time/ to match elsewhere?

Done.

Powered by Google App Engine
This is Rietveld 408576698