OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef MEDIA_BASE_PIPELINE_H_ | 5 #ifndef MEDIA_BASE_PIPELINE_H_ |
6 #define MEDIA_BASE_PIPELINE_H_ | 6 #define MEDIA_BASE_PIPELINE_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/gtest_prod_util.h" | 10 #include "base/gtest_prod_util.h" |
(...skipping 336 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
347 // Current volume level (from 0.0f to 1.0f). This value is set immediately | 347 // Current volume level (from 0.0f to 1.0f). This value is set immediately |
348 // via SetVolume() and a task is dispatched on the task runner to notify the | 348 // via SetVolume() and a task is dispatched on the task runner to notify the |
349 // filters. | 349 // filters. |
350 float volume_; | 350 float volume_; |
351 | 351 |
352 // Current playback rate (>= 0.0f). This value is set immediately via | 352 // Current playback rate (>= 0.0f). This value is set immediately via |
353 // SetPlaybackRate() and a task is dispatched on the task runner to notify | 353 // SetPlaybackRate() and a task is dispatched on the task runner to notify |
354 // the filters. | 354 // the filters. |
355 float playback_rate_; | 355 float playback_rate_; |
356 | 356 |
| 357 // Current duration as reported by |demuxer_|. |
| 358 base::TimeDelta duration_; |
| 359 |
357 // base::TickClock used by |clock_|. | 360 // base::TickClock used by |clock_|. |
358 base::DefaultTickClock default_tick_clock_; | 361 base::DefaultTickClock default_tick_clock_; |
359 | 362 |
360 // Reference clock. Keeps track of current playback time. Uses system | 363 // Reference clock. Keeps track of current playback time. Uses system |
361 // clock and linear interpolation, but can have its time manually set | 364 // clock and linear interpolation, but can have its time manually set |
362 // by filters. | 365 // by filters. |
363 scoped_ptr<Clock> clock_; | 366 scoped_ptr<Clock> clock_; |
364 | 367 |
365 enum ClockState { | 368 enum ClockState { |
366 // Audio (if present) is not rendering. Clock isn't playing. | 369 // Audio (if present) is not rendering. Clock isn't playing. |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
430 bool underflow_disabled_for_testing_; | 433 bool underflow_disabled_for_testing_; |
431 | 434 |
432 base::ThreadChecker thread_checker_; | 435 base::ThreadChecker thread_checker_; |
433 | 436 |
434 DISALLOW_COPY_AND_ASSIGN(Pipeline); | 437 DISALLOW_COPY_AND_ASSIGN(Pipeline); |
435 }; | 438 }; |
436 | 439 |
437 } // namespace media | 440 } // namespace media |
438 | 441 |
439 #endif // MEDIA_BASE_PIPELINE_H_ | 442 #endif // MEDIA_BASE_PIPELINE_H_ |
OLD | NEW |