OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #include "media/base/android/audio_decoder_job.h" | 5 #include "media/base/android/audio_decoder_job.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/lazy_instance.h" | 8 #include "base/lazy_instance.h" |
9 #include "base/threading/thread.h" | 9 #include "base/threading/thread.h" |
10 #include "media/base/android/media_codec_bridge.h" | 10 #include "media/base/android/media_codec_bridge.h" |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
56 void AudioDecoderJob::SetVolume(double volume) { | 56 void AudioDecoderJob::SetVolume(double volume) { |
57 audio_codec_bridge_->SetVolume(volume); | 57 audio_codec_bridge_->SetVolume(volume); |
58 } | 58 } |
59 | 59 |
60 void AudioDecoderJob::ReleaseOutputBuffer( | 60 void AudioDecoderJob::ReleaseOutputBuffer( |
61 int output_buffer_index, | 61 int output_buffer_index, |
62 size_t size, | 62 size_t size, |
63 bool render_output, | 63 bool render_output, |
64 const ReleaseOutputCompletionCallback& callback) { | 64 const ReleaseOutputCompletionCallback& callback) { |
65 size_t size_to_render = render_output ? size : 0u; | 65 size_t size_to_render = render_output ? size : 0u; |
66 if (size_to_render) | 66 base::TimeTicks current_time; |
67 audio_codec_bridge_->PlayOutputBuffer(output_buffer_index, size_to_render); | 67 int64 head_position = 0; |
| 68 if (size_to_render) { |
| 69 head_position = audio_codec_bridge_->PlayOutputBuffer(output_buffer_index, |
| 70 size_to_render); |
| 71 current_time = base::TimeTicks::Now(); |
| 72 } |
| 73 |
68 audio_codec_bridge_->ReleaseOutputBuffer(output_buffer_index, false); | 74 audio_codec_bridge_->ReleaseOutputBuffer(output_buffer_index, false); |
69 | 75 |
70 callback.Run(size_to_render); | 76 callback.Run(size_to_render, head_position, current_time); |
71 } | 77 } |
72 | 78 |
73 bool AudioDecoderJob::ComputeTimeToRender() const { | 79 bool AudioDecoderJob::ComputeTimeToRender() const { |
74 return false; | 80 return false; |
75 } | 81 } |
76 | 82 |
77 } // namespace media | 83 } // namespace media |
OLD | NEW |