summaryrefslogtreecommitdiffstats
path: root/media/audio/simple_sources.h
diff options
context:
space:
mode:
authorhclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-24 18:00:32 +0000
committerhclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-24 18:00:32 +0000
commit1328d55d94cf7b973da1a0a884735c8cbdeb2423 (patch)
treebbd05bc64668be46fc3804b8ce46d59ac8b44769 /media/audio/simple_sources.h
parent21f659de19e3ea874a0958372a311746a0e764c2 (diff)
downloadchromium_src-1328d55d94cf7b973da1a0a884735c8cbdeb2423.zip
chromium_src-1328d55d94cf7b973da1a0a884735c8cbdeb2423.tar.gz
chromium_src-1328d55d94cf7b973da1a0a884735c8cbdeb2423.tar.bz2
Providing unplayed bytes in audio hardware buffer
BUG=20007 TEST=WinAudioTest.PCMWaveStreamPendingBytes We used to guess what is in the hardware audio buffer to perform audio sync. But due the triple buffering and other platforms has other buffering scheme we need to be able to know how many bytes are left in the hardware buffer. We provide this data via AudioCallback::OnMoreData(), so we can predict when the requested buffer will be played. Review URL: http://codereview.chromium.org/174243 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24114 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/audio/simple_sources.h')
-rw-r--r--media/audio/simple_sources.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/media/audio/simple_sources.h b/media/audio/simple_sources.h
index 4a3db8d..d43fcdf 100644
--- a/media/audio/simple_sources.h
+++ b/media/audio/simple_sources.h
@@ -26,7 +26,7 @@ class SineWaveAudioSource : public AudioOutputStream::AudioSourceCallback {
// Implementation of AudioSourceCallback.
virtual size_t OnMoreData(AudioOutputStream* stream,
- void* dest, size_t max_size);
+ void* dest, size_t max_size, int pending_bytes);
virtual void OnClose(AudioOutputStream* stream);
virtual void OnError(AudioOutputStream* stream, int code);
@@ -73,12 +73,12 @@ class PushSource : public AudioOutputStream::AudioSourceCallback,
// Implementation of AudioSourceCallback.
virtual size_t OnMoreData(AudioOutputStream* stream,
- void* dest, size_t max_size);
+ void* dest, size_t max_size, int pending_bytes);
virtual void OnClose(AudioOutputStream* stream);
virtual void OnError(AudioOutputStream* stream, int code);
private:
- // Defines the unit of playback. We own the memory pointed by |buffer|.
+ // Defines the unit of playback. We own the memory pointed by |buffer|.
struct Packet {
char* buffer;
size_t size;
@@ -88,7 +88,7 @@ class PushSource : public AudioOutputStream::AudioSourceCallback,
void CleanUp();
const size_t packet_size_;
- typedef std::list<Packet> PacketList;
+ typedef std::list<Packet> PacketList;
PacketList packets_;
size_t buffered_bytes_;
size_t front_buffer_consumed_;