43 #define SND_PCM_DLSYM_VERSION _dlsym_pcm_001
76 typedef enum _snd_pcm_class {
90 typedef enum _snd_pcm_subclass {
99 typedef enum _snd_pcm_stream {
108 typedef enum _snd_pcm_access {
123 typedef enum _snd_pcm_format {
204 #if __BYTE_ORDER == __LITTLE_ENDIAN
223 #elif __BYTE_ORDER == __BIG_ENDIAN
243 #error "Unknown endian"
248 typedef enum _snd_pcm_subformat {
255 typedef enum _snd_pcm_state {
278 typedef enum _snd_pcm_start {
287 typedef enum _snd_pcm_xrun {
296 typedef enum _snd_pcm_tstamp {
314 #define SND_PCM_NONBLOCK 0x00000001
316 #define SND_PCM_ASYNC 0x00000002
318 #define SND_PCM_NO_AUTO_RESAMPLE 0x00010000
320 #define SND_PCM_NO_AUTO_CHANNELS 0x00020000
322 #define SND_PCM_NO_AUTO_FORMAT 0x00040000
324 #define SND_PCM_NO_SOFTVOL 0x00080000
401 typedef struct _snd_pcm_channel_area {
411 typedef union _snd_pcm_sync_id {
413 unsigned char id[16];
415 unsigned short id16[8];
417 unsigned int id32[4];
429 const char *name,
const char *orig_name,
488 unsigned int channels,
491 unsigned int latency);
493 snd_pcm_uframes_t *buffer_size,
494 snd_pcm_uframes_t *period_size);
510 #define snd_pcm_info_alloca(ptr) __snd_alloca(ptr, snd_pcm_info)
554 unsigned int *rate_num,
555 unsigned int *rate_den);
560 typedef struct _snd_pcm_hw_strategy snd_pcm_hw_strategy_t;
563 typedef struct _snd_pcm_hw_strategy_simple_choices_list {
565 unsigned int badness;
566 } snd_pcm_hw_strategy_simple_choices_list_t;
569 const snd_pcm_hw_strategy_t *strategy,
570 unsigned int badness_min,
571 unsigned int badness_max);
573 void snd_pcm_hw_strategy_free(snd_pcm_hw_strategy_t *strategy);
574 int snd_pcm_hw_strategy_simple(snd_pcm_hw_strategy_t **strategyp,
575 unsigned int badness_min,
576 unsigned int badness_max);
577 int snd_pcm_hw_params_try_explain_failure(
snd_pcm_t *pcm,
590 #define snd_pcm_hw_params_alloca(ptr) __snd_alloca(ptr, snd_pcm_hw_params)
595 #if !defined(ALSA_LIBRARY_BUILD) && !defined(ALSA_PCM_OLD_HW_PARAMS_API)
731 #define snd_pcm_sw_params_alloca(ptr) __snd_alloca(ptr, snd_pcm_sw_params)
737 #if !defined(ALSA_LIBRARY_BUILD) && !defined(ALSA_PCM_OLD_SW_PARAMS_API)
759 #ifndef ALSA_LIBRARY_BUILD
760 #if defined(ALSA_PCM_OLD_HW_PARAMS_API) || defined(ALSA_PCM_OLD_SW_PARAMS_API)
777 #define snd_pcm_access_mask_alloca(ptr) __snd_alloca(ptr, snd_pcm_access_mask)
802 #define snd_pcm_format_mask_alloca(ptr) __snd_alloca(ptr, snd_pcm_format_mask)
827 #define snd_pcm_subformat_mask_alloca(ptr) __snd_alloca(ptr, snd_pcm_subformat_mask)
852 #define snd_pcm_status_alloca(ptr) __snd_alloca(ptr, snd_pcm_status)
914 snd_pcm_uframes_t *offset,
915 snd_pcm_uframes_t *frames);
917 snd_pcm_uframes_t offset,
918 snd_pcm_uframes_t frames);
976 typedef enum _snd_pcm_hook_type {
977 SND_PCM_HOOK_TYPE_HW_PARAMS = 0,
978 SND_PCM_HOOK_TYPE_HW_FREE,
979 SND_PCM_HOOK_TYPE_CLOSE,
980 SND_PCM_HOOK_TYPE_LAST = SND_PCM_HOOK_TYPE_CLOSE
1005 typedef struct _snd_pcm_scope_ops {
1053 unsigned int channel);
1065 typedef enum _snd_spcm_latency {
1078 typedef enum _snd_spcm_xrun_type {
1086 typedef enum _snd_spcm_duplex_type {
1095 unsigned int channels,
1105 unsigned int channels,
1115 snd_pcm_uframes_t *buffer_size,
1116 snd_pcm_uframes_t *period_size);
1134 #if !defined(ALSA_LIBRARY_BUILD) && !defined(ALSA_PCM_OLD_SW_PARAMS_API)
1140 #if !defined(ALSA_LIBRARY_BUILD) && !defined(ALSA_PCM_OLD_HW_PARAMS_API)