summaryrefslogtreecommitdiffstats
path: root/chromium/ppapi/proxy/audio_input_resource.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/ppapi/proxy/audio_input_resource.h')
-rw-r--r--chromium/ppapi/proxy/audio_input_resource.h23
1 files changed, 16 insertions, 7 deletions
diff --git a/chromium/ppapi/proxy/audio_input_resource.h b/chromium/ppapi/proxy/audio_input_resource.h
index 84785d08052..0184260c359 100644
--- a/chromium/ppapi/proxy/audio_input_resource.h
+++ b/chromium/ppapi/proxy/audio_input_resource.h
@@ -17,6 +17,10 @@
#include "ppapi/shared_impl/scoped_pp_resource.h"
#include "ppapi/thunk/ppb_audio_input_api.h"
+namespace media {
+class AudioBus;
+}
+
namespace ppapi {
namespace proxy {
@@ -35,18 +39,15 @@ class AudioInputResource : public PluginResource,
const IPC::Message& msg) OVERRIDE;
// PPB_AudioInput_API implementation.
- virtual int32_t EnumerateDevices0_2(
- PP_Resource* devices,
- scoped_refptr<TrackedCallback> callback) OVERRIDE;
virtual int32_t EnumerateDevices(
const PP_ArrayOutput& output,
scoped_refptr<TrackedCallback> callback) OVERRIDE;
virtual int32_t MonitorDeviceChange(
PP_MonitorDeviceChangeCallback callback,
void* user_data) OVERRIDE;
- virtual int32_t Open0_2(PP_Resource device_ref,
+ virtual int32_t Open0_3(PP_Resource device_ref,
PP_Resource config,
- PPB_AudioInput_Callback_0_2 audio_input_callback_0_2,
+ PPB_AudioInput_Callback_0_3 audio_input_callback_0_3,
void* user_data,
scoped_refptr<TrackedCallback> callback) OVERRIDE;
virtual int32_t Open(PP_Resource device_ref,
@@ -90,7 +91,7 @@ class AudioInputResource : public PluginResource,
int32_t CommonOpen(PP_Resource device_ref,
PP_Resource config,
- PPB_AudioInput_Callback_0_2 audio_input_callback_0_2,
+ PPB_AudioInput_Callback_0_3 audio_input_callback_0_3,
PPB_AudioInput_Callback audio_input_callback,
void* user_data,
scoped_refptr<TrackedCallback> callback);
@@ -116,7 +117,7 @@ class AudioInputResource : public PluginResource,
scoped_ptr<base::DelegateSimpleThread> audio_input_thread_;
// Callback to call when new samples are available.
- PPB_AudioInput_Callback_0_2 audio_input_callback_0_2_;
+ PPB_AudioInput_Callback_0_3 audio_input_callback_0_3_;
PPB_AudioInput_Callback audio_input_callback_;
// User data pointer passed verbatim to the callback function.
@@ -136,6 +137,14 @@ class AudioInputResource : public PluginResource,
// latency.
size_t bytes_per_second_;
+ // AudioBus for shuttling data across the shared memory.
+ scoped_ptr<media::AudioBus> audio_bus_;
+ int sample_frame_count_;
+
+ // Internal buffer for client's integer audio data.
+ int client_buffer_size_bytes_;
+ scoped_ptr<uint8_t[]> client_buffer_;
+
DISALLOW_COPY_AND_ASSIGN(AudioInputResource);
};