| Index: media/blink/buffered_data_source.cc
|
| diff --git a/media/blink/buffered_data_source.cc b/media/blink/buffered_data_source.cc
|
| index b26f0f13895ea2a4d9d16bfe5e4b5711d747c579..d1a6c224f452373fa20a6505308d902e51ff1622 100644
|
| --- a/media/blink/buffered_data_source.cc
|
| +++ b/media/blink/buffered_data_source.cc
|
| @@ -23,13 +23,16 @@ namespace {
|
| // of FFmpeg.
|
| const int kInitialReadBufferSize = 32768;
|
|
|
| -// Number of cache misses or read failures we allow for a single Read() before
|
| -// signaling an error.
|
| -const int kLoaderRetries = 3;
|
| -
|
| // The number of milliseconds to wait before retrying a failed load.
|
| const int kLoaderFailedRetryDelayMs = 250;
|
|
|
| +// Each retry, add this many MS to the delay.
|
| +// total delay is:
|
| +// (kLoaderPartialRetryDelayMs +
|
| +// kAdditionalDelayPerRetryMs * (kMaxRetries - 1) / 2) * kLoaderRetries
|
| +// = 29250 ms
|
| +const int kAdditionalDelayPerRetryMs = 50;
|
| +
|
| } // namespace
|
|
|
| namespace media {
|
| @@ -491,7 +494,9 @@ void BufferedDataSource::ReadCallback(
|
| FROM_HERE, base::Bind(&BufferedDataSource::ReadCallback,
|
| weak_factory_.GetWeakPtr(),
|
| BufferedResourceLoader::kCacheMiss, 0),
|
| - base::TimeDelta::FromMilliseconds(kLoaderFailedRetryDelayMs));
|
| + base::TimeDelta::FromMilliseconds(kLoaderFailedRetryDelayMs +
|
| + read_op_->retries() *
|
| + kAdditionalDelayPerRetryMs));
|
| return;
|
| }
|
|
|
|
|