11#ifndef __MUTEKI_AUDIO_H__
12#define __MUTEKI_AUDIO_H__
148 device_service_t common;
166 size_t frame_queue_tip;
pcm_direction_e
PCM codec direction/mode.
Definition audio.h:25
@ DIRECTION_OUT
Output/playback mode.
Definition audio.h:33
@ DIRECTION_IN
Input/recording mode.
Definition audio.h:37
@ DIRECTION_DEFAULT
Default direction. Usually DIRECTION_OUT.
Definition audio.h:29
struct pcm_state_s pcm_state_t
pcm_state_s
Definition audio.h:70
void(*) pcm_codec_func_t(device_service_pcm_t *pcm, pcm_decoder_buffer_t *src, pcm_decoder_buffer_t *dest)
Codec function.
Definition audio.h:79
void ClosePCMCodec(pcm_codec_context_t *ctx)
Destroy a PCM codec context.
struct pcm_config_s pcm_config_t
pcm_config_s
Definition audio.h:66
pcm_format_e
Sample format.
Definition audio.h:43
@ FORMAT_PCM_MONO
PCM mono.
Definition audio.h:51
@ FORMAT_PCM_STEREO
PCM stereo.
Definition audio.h:55
@ FORMAT_AUTO
Use the default format. Usually FORMAT_PCM_STEREO.
Definition audio.h:47
pcm_codec_context_t * OpenPCMCodec(int direction, int sample_rate, int format)
Create PCM codec context.
struct pcm_frame_s pcm_frame_t
pcm_frame_s
Definition audio.h:72
struct device_service_pcm_s device_service_pcm_t
device_service_pcm_s
Definition audio.h:64
struct pcm_codec_context_s pcm_codec_context_t
pcm_codec_context_s
Definition audio.h:68
const int SAMPLE_RATE_AUTO
Use the default sample rate. Usually this is equivalent to 44100Hz.
Definition audio.h:61
struct pcm_decoder_buffer_s pcm_decoder_buffer_t
pcm_decoder_buffer_s
Definition audio.h:74
Common include file for all muteki-shims headers.
#define SYS_DWORD
Attribute for structure fields that are DWORD (64-bit), that are used by system calls.
Definition common.h:80
struct bxc_cs_s bxc_cs_t
Critical section descriptor type.
Definition threading.h:174
The PCM codec context.
Definition audio.h:132
device_service_pcm_t * service
The PCM service.
Definition audio.h:136
int unk_0x4
Unknown. Initializes to 0.
Definition audio.h:140
pcm_config_t config
Configuration applied to this context.
Definition audio.h:144
The PCM codec configuration.
Definition audio.h:84
int current_direction
Current direction setting in effect.
Definition audio.h:116
int suspended
Set to 1 when the codec is suspended.
Definition audio.h:96
int format
Audio data frame format.
Definition audio.h:111
pcm_codec_func_t codec
Current codec function in effect.
Definition audio.h:92
int sample_rate
Sample rate in Hz.
Definition audio.h:101
int default_direction
Direction setting supplied to direction parameter during descriptor creation.
Definition audio.h:106
unsigned long long trx_bytes
Number of transferred sample bytes.
Definition audio.h:88
void * time_stretcher_ctx
Time stretcher (voice speed control) context.
Definition audio.h:121
void * peak_limiter_ctx
Sample peak limiter context.
Definition audio.h:126
Codec buffer descriptor. Used Internally.
Definition audio.h:197
void * buffer
Pointer to buffer.
Definition audio.h:201
int channels
Channels.
Definition audio.h:213
size_t size
Size of the buffer.
Definition audio.h:205
int sample_rate
Sample rate.
Definition audio.h:209
PCM frame data structure. Used internally.
Definition audio.h:173
unsigned int tx_state
Transfer state.
Definition audio.h:191
size_t pending_size
Size pending transfer.
Definition audio.h:186
void * buffer
Pointer to buffer.
Definition audio.h:177
size_t size
Size of the buffer.
Definition audio.h:181