Pepper_42_C++_interfaces
|
#include <audio_config.h>
Public Member Functions | |
AudioConfig () | |
An empty constructor for an AudioConfig resource. More... | |
AudioConfig (const InstanceHandle &instance, PP_AudioSampleRate sample_rate, uint32_t sample_frame_count) | |
PP_AudioSampleRate | sample_rate () const |
uint32_t | sample_frame_count () const |
![]() | |
Resource () | |
The default constructor. More... | |
Resource (const Resource &other) | |
virtual | ~Resource () |
Destructor. More... | |
Resource & | operator= (const Resource &other) |
bool | is_null () const |
PP_Resource | pp_resource () const |
PP_Resource | detach () |
Static Public Member Functions | |
static PP_AudioSampleRate | RecommendSampleRate (const InstanceHandle &instance) |
static uint32_t | RecommendSampleFrameCount (const InstanceHandle &instance, PP_AudioSampleRate sample_rate, uint32_t requested_sample_frame_count) |
Additional Inherited Members | |
![]() | |
Resource (PP_Resource resource) | |
Resource (PassRef, PP_Resource resource) | |
void | PassRefFromConstructor (PP_Resource resource) |
void | Clear () |
Sets this resource to null. This releases ownership of the resource. More... | |
A 16 bit stereo AudioConfig resource. Refer to the Audio chapter in the Developer's Guide for information on using this interface.
A single sample frame on a stereo device means one value for the left channel and one value for the right channel.
Buffer layout for a stereo int16 configuration:
int16_t *buffer16;
buffer16[0]
is the first left channel sample. buffer16[1]
is the first right channel sample. buffer16[2]
is the second left channel sample. buffer16[3]
is the second right channel sample. ...
buffer16[2 * (sample_frame_count - 1)]
is the last left channel sample. buffer16[2 * (sample_frame_count - 1) + 1]
is the last right channel sample. Data will always be in the native endian format of the platform.
Example:
Definition at line 57 of file audio_config.h.
pp::AudioConfig::AudioConfig | ( | ) |
An empty constructor for an AudioConfig
resource.
pp::AudioConfig::AudioConfig | ( | const InstanceHandle & | instance, |
PP_AudioSampleRate | sample_rate, | ||
uint32_t | sample_frame_count | ||
) |
A constructor that creates an audio config based on the given sample rate and frame count. If the rate and frame count aren't supported, the resulting resource will be is_null(). You can pass the result of RecommendSampleFrameCount() as the sample frame count.
[in] | instance | The instance associated with this resource. |
[in] | sample_rate | A PP_AudioSampleRate which is either PP_AUDIOSAMPLERATE_44100 or PP_AUDIOSAMPLERATE_48000 . |
[in] | sample_frame_count | A uint32_t frame count returned from the RecommendSampleFrameCount function. |
|
static |
RecommendSampleFrameCount() returns a supported frame count closest to the requested count. The sample frame count determines the overall latency of audio. Smaller frame counts will yield lower latency, but higher CPU utilization. Supported sample frame counts will vary by hardware and system (consider that the local system might be anywhere from a cell phone or a high-end audio workstation). Sample counts less than PP_AUDIOMINSAMPLEFRAMECOUNT
and greater than PP_AUDIOMAXSAMPLEFRAMECOUNT
are never supported on any system, but values in between aren't necessarily valid. This function will return a supported count closest to the requested value for use in the constructor.
[in] | instance | The instance associated with this resource. |
[in] | sample_rate | A PP_AudioSampleRate which is either PP_AUDIOSAMPLERATE_44100 or PP_AUDIOSAMPLERATE_48000 . |
[in] | requested_sample_frame_count | A uint32_t requested frame count. |
|
static |
RecommendSampleRate() returns the native sample rate used by the audio system. Applications that use the recommended sample rate might obtain lower latency and higher fidelity output.
[in] | instance | The instance associated with this resource. |
|
inline |
Getter function for returning the internal sample frame count.
Definition at line 122 of file audio_config.h.
|
inline |
Getter function for returning the internal PP_AudioSampleRate
enum.
PP_AudioSampleRate
enum. Definition at line 117 of file audio_config.h.