Chromium Code Reviews| Index: media/blink/multibuffer_data_source.cc |
| diff --git a/media/blink/multibuffer_data_source.cc b/media/blink/multibuffer_data_source.cc |
| index 4d8d045ab05e4ea40eb368ff577c37ab6daeba0a..a50f04e9f2c08aa36dfebfd47cf8ec4627438c34 100644 |
| --- a/media/blink/multibuffer_data_source.cc |
| +++ b/media/blink/multibuffer_data_source.cc |
| @@ -505,6 +505,8 @@ void MultibufferDataSource::StartCallback() { |
| render_task_runner_->PostTask( |
| FROM_HERE, base::Bind(base::ResetAndReturn(&init_cb_), success)); |
| + UpdateBufferSizes(); |
| + |
| // Even if data is cached, say that we're loading at this point for |
| // compatibility. |
| UpdateLoadingState_Locked(true); |
| @@ -610,6 +612,15 @@ void MultibufferDataSource::UpdateBufferSizes() { |
| std::min((kTargetSecondsBufferedAhead + kTargetSecondsBufferedBehind) * |
| bytes_per_second, |
| preload_high + pin_backward); |
| + |
| + if (url_data_->FullyCached() || |
| + (url_data_->length() != kPositionNotSpecified && |
| + url_data_->length() < kDefaultPinSize)) { |
| + pin_forward = url_data_->length() * 2; |
|
DaleCurtis
2017/05/26 16:43:57
Why x2?
hubbe
2017/05/26 17:39:45
I just wanted to avoid any problems at the edges.
DaleCurtis
2017/05/26 18:19:33
Okay, please add a comment to that effect since it
hubbe
2017/05/26 18:45:12
Done.
|
| + pin_backward = url_data_->length() * 2; |
| + buffer_size = url_data_->length(); |
| + } |
| + |
| reader_->SetMaxBuffer(buffer_size); |
| reader_->SetPinRange(pin_backward, pin_forward); |