| /* Copyright (c) 2012 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. |
| */ |
| /** |
| * This file defines the trusted audio input interface. |
| */ |
| |
| label Chrome { |
| M17 = 0.1 |
| }; |
| |
| /** |
| * This interface is to be used by proxy implementations. All functions should |
| * be called from the main thread only. The resource returned is an Audio input |
| * resource; most of the PPB_AudioInput interface is also usable on this |
| * resource. |
| */ |
| [version=0.1, macro="PPB_AUDIO_INPUT_TRUSTED_DEV_INTERFACE"] |
| interface PPB_AudioInputTrusted_Dev { |
| /** Returns an audio input resource. */ |
| PP_Resource CreateTrusted( |
| [in] PP_Instance instance); |
| |
| /** |
| * Opens a paused audio input interface, used by trusted side of proxy. |
| * Returns PP_ERROR_WOULD_BLOCK on success, and invokes the |create_callback| |
| * asynchronously to complete. As this function should always be invoked from |
| * the main thread, do not use the blocking variant of PP_CompletionCallback. |
| */ |
| int32_t Open( |
| [in] PP_Resource audio_input, |
| [in] PP_Resource config, |
| [in] PP_CompletionCallback create_callback); |
| |
| /** |
| * Get the sync socket. Use once Open has completed. |
| * Returns PP_OK on success. |
| */ |
| int32_t GetSyncSocket( |
| [in] PP_Resource audio_input, |
| [out] handle_t sync_socket); |
| |
| /** |
| * Get the shared memory interface. Use once Open has completed. |
| * Returns PP_OK on success. |
| */ |
| int32_t GetSharedMemory( |
| [in] PP_Resource audio_input, |
| [out] handle_t shm_handle, |
| [out] uint32_t shm_size); |
| }; |