45 uint32_t end_sample)
const {
46 DCHECK_LE(start_sample, end_sample);
47 uint32_t current_sample = 0;
48 uint32_t prev_sample = 0;
50 std::vector<DecodingTime>::const_iterator it = decoding_time_table_.begin();
51 for (; it != decoding_time_table_.end(); ++it) {
52 current_sample += it->sample_count;
53 if (current_sample >= start_sample) {
54 duration += (std::min(end_sample, current_sample) -
55 std::max(start_sample, prev_sample + 1) + 1) *
57 if (current_sample >= end_sample)
60 prev_sample = current_sample;