summaryrefslogtreecommitdiffstats
path: root/media/audio/audio_buffers_state.cc
diff options
context:
space:
mode:
authorsergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-29 01:21:27 +0000
committersergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-29 01:21:27 +0000
commit5c86ecf8936269cdc5f00f57b7531cdac7b3e706 (patch)
tree79392d0c2e959af863e2b6d4626a79d039b178ab /media/audio/audio_buffers_state.cc
parente10eacda58687b9363919a9203181322b649946c (diff)
downloadchromium_src-5c86ecf8936269cdc5f00f57b7531cdac7b3e706.zip
chromium_src-5c86ecf8936269cdc5f00f57b7531cdac7b3e706.tar.gz
chromium_src-5c86ecf8936269cdc5f00f57b7531cdac7b3e706.tar.bz2
Add AudioBuffersState struct. Use it for audio synchronization.
The new AudioBuffersState contains current state of the audio buffers. This object is passed all the way from the device to the audio renderer. Audio renderer uses this information to synchronize audio. BUG=52196,49110 TEST=see repro steps for 51637 and 52196. Review URL: http://codereview.chromium.org/3444017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60891 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/audio/audio_buffers_state.cc')
-rw-r--r--media/audio/audio_buffers_state.cc22
1 files changed, 22 insertions, 0 deletions
diff --git a/media/audio/audio_buffers_state.cc b/media/audio/audio_buffers_state.cc
new file mode 100644
index 0000000..f31cf1d
--- /dev/null
+++ b/media/audio/audio_buffers_state.cc
@@ -0,0 +1,22 @@
+// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "media/audio/audio_buffers_state.h"
+
+AudioBuffersState::AudioBuffersState()
+ : pending_bytes(0),
+ hardware_delay_bytes(0),
+ timestamp(base::Time::Now()) {
+}
+
+AudioBuffersState::AudioBuffersState(int pending_bytes,
+ int hardware_delay_bytes)
+ : pending_bytes(pending_bytes),
+ hardware_delay_bytes(hardware_delay_bytes),
+ timestamp(base::Time::Now()) {
+}
+
+int AudioBuffersState::total_bytes() {
+ return pending_bytes + hardware_delay_bytes;
+}