Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals | Related Pages | Examples

pcm.c File Reference

PCM Interface. More...


Functions

const char * snd_pcm_name (snd_pcm_t *pcm)
 get identifier of PCM handle
snd_pcm_type_t snd_pcm_type (snd_pcm_t *pcm)
 get type of PCM handle
snd_pcm_stream_t snd_pcm_stream (snd_pcm_t *pcm)
 get stream for a PCM handle
int snd_pcm_close (snd_pcm_t *pcm)
 close PCM handle
int snd_pcm_nonblock (snd_pcm_t *pcm, int nonblock)
 set nonblock mode
int snd_pcm_async (snd_pcm_t *pcm, int sig, pid_t pid)
 set async mode
int snd_pcm_info (snd_pcm_t *pcm, snd_pcm_info_t *info)
 Obtain general (static) information for PCM handle.
int snd_pcm_hw_params_current (snd_pcm_t *pcm, snd_pcm_hw_params_t *params)
 Retreive current PCM hardware configuration chosen with snd_pcm_hw_params.
int snd_pcm_hw_params (snd_pcm_t *pcm, snd_pcm_hw_params_t *params)
 Install one PCM hardware configuration chosen from a configuration space and snd_pcm_prepare it.
int snd_pcm_hw_free (snd_pcm_t *pcm)
 Remove PCM hardware configuration and free associated resources.
int snd_pcm_sw_params (snd_pcm_t *pcm, snd_pcm_sw_params_t *params)
 Install PCM software configuration defined by params.
int snd_pcm_status (snd_pcm_t *pcm, snd_pcm_status_t *status)
 Obtain status (runtime) information for PCM handle.
snd_pcm_state_t snd_pcm_state (snd_pcm_t *pcm)
 Return PCM state.
int snd_pcm_hwsync (snd_pcm_t *pcm)
 Synchronize stream position with hardware.
int snd_pcm_delay (snd_pcm_t *pcm, snd_pcm_sframes_t *delayp)
 Obtain delay for a running PCM handle.
int snd_pcm_resume (snd_pcm_t *pcm)
 Resume from suspend, no samples are lost.
int snd_pcm_prepare (snd_pcm_t *pcm)
 Prepare PCM for use.
int snd_pcm_reset (snd_pcm_t *pcm)
 Reset PCM position.
int snd_pcm_start (snd_pcm_t *pcm)
 Start a PCM.
int snd_pcm_drop (snd_pcm_t *pcm)
 Stop a PCM dropping pending frames.
int snd_pcm_drain (snd_pcm_t *pcm)
 Stop a PCM preserving pending frames.
int snd_pcm_pause (snd_pcm_t *pcm, int enable)
 Pause/resume PCM.
snd_pcm_sframes_t snd_pcm_rewind (snd_pcm_t *pcm, snd_pcm_uframes_t frames)
 Move application frame position backward.
snd_pcm_sframes_t snd_pcm_writei (snd_pcm_t *pcm, const void *buffer, snd_pcm_uframes_t size)
 Write interleaved frames to a PCM.
snd_pcm_sframes_t snd_pcm_writen (snd_pcm_t *pcm, void **bufs, snd_pcm_uframes_t size)
 Write non interleaved frames to a PCM.
snd_pcm_sframes_t snd_pcm_readi (snd_pcm_t *pcm, void *buffer, snd_pcm_uframes_t size)
 Read interleaved frames from a PCM.
snd_pcm_sframes_t snd_pcm_readn (snd_pcm_t *pcm, void **bufs, snd_pcm_uframes_t size)
 Read non interleaved frames to a PCM.
int snd_pcm_link (snd_pcm_t *pcm1, snd_pcm_t *pcm2)
 Link two PCMs.
int snd_pcm_unlink (snd_pcm_t *pcm)
 Remove a PCM from a linked group.
int snd_pcm_poll_descriptors_count (snd_pcm_t *pcm)
 get count of poll descriptors for PCM handle
int snd_pcm_poll_descriptors (snd_pcm_t *pcm, struct pollfd *pfds, unsigned int space)
 get poll descriptors
int snd_pcm_poll_descriptors_revents (snd_pcm_t *pcm, struct pollfd *pfds, unsigned int nfds, unsigned short *revents)
 get returned events from poll descriptors
const char * snd_pcm_stream_name (snd_pcm_stream_t stream)
 get name of PCM stream type
const char * snd_pcm_access_name (snd_pcm_access_t acc)
 get name of PCM access type
const char * snd_pcm_format_name (snd_pcm_format_t format)
 get name of PCM sample format
const char * snd_pcm_format_description (snd_pcm_format_t format)
 get description of PCM sample format
snd_pcm_format_t snd_pcm_format_value (const char *name)
 get PCM sample format from name
const char * snd_pcm_subformat_name (snd_pcm_subformat_t subformat)
 get name of PCM sample subformat
const char * snd_pcm_subformat_description (snd_pcm_subformat_t subformat)
 get description of PCM sample subformat
const char * snd_pcm_start_mode_name (snd_pcm_start_t mode)
 (DEPRECATED) get name of PCM start mode setting
 link_warning (snd_pcm_start_mode_name,"Warning: start_mode is deprecated, consider to use start_threshold")
const char * snd_pcm_xrun_mode_name (snd_pcm_xrun_t mode)
 (DEPRECATED) get name of PCM xrun mode setting
 link_warning (snd_pcm_xrun_mode_name,"Warning: xrun_mode is deprecated, consider to use stop_threshold")
const char * snd_pcm_tstamp_mode_name (snd_pcm_tstamp_t mode)
 get name of PCM tstamp mode setting
const char * snd_pcm_state_name (snd_pcm_state_t state)
 get name of PCM state
 use_default_symbol_version (__snd_pcm_type_name, snd_pcm_type_name, ALSA_0.9.0)
int snd_pcm_dump_hw_setup (snd_pcm_t *pcm, snd_output_t *out)
 Dump current hardware setup for PCM.
int snd_pcm_dump_sw_setup (snd_pcm_t *pcm, snd_output_t *out)
 Dump current software setup for PCM.
int snd_pcm_dump_setup (snd_pcm_t *pcm, snd_output_t *out)
 Dump current setup (hardware and software) for PCM.
int snd_pcm_status_dump (snd_pcm_status_t *status, snd_output_t *out)
 Dump status.
int snd_pcm_dump (snd_pcm_t *pcm, snd_output_t *out)
 Dump PCM info.
snd_pcm_sframes_t snd_pcm_bytes_to_frames (snd_pcm_t *pcm, ssize_t bytes)
 Convert bytes in frames for a PCM.
ssize_t snd_pcm_frames_to_bytes (snd_pcm_t *pcm, snd_pcm_sframes_t frames)
 Convert frames in bytes for a PCM.
long snd_pcm_bytes_to_samples (snd_pcm_t *pcm, ssize_t bytes)
 Convert bytes in samples for a PCM.
ssize_t snd_pcm_samples_to_bytes (snd_pcm_t *pcm, long samples)
 Convert samples in bytes for a PCM.
int snd_async_add_pcm_handler (snd_async_handler_t **handler, snd_pcm_t *pcm, snd_async_callback_t callback, void *private_data)
 Add an async handler for a PCM.
snd_pcm_tsnd_async_handler_get_pcm (snd_async_handler_t *handler)
 Return PCM handle related to an async handler.
int snd_pcm_open (snd_pcm_t **pcmp, const char *name, snd_pcm_stream_t stream, int mode)
 Opens a PCM.
int snd_pcm_open_lconf (snd_pcm_t **pcmp, const char *name, snd_pcm_stream_t stream, int mode, snd_config_t *lconf)
 Opens a PCM using local configuration.
int snd_pcm_new (snd_pcm_t **pcmp, snd_pcm_type_t type, const char *name, snd_pcm_stream_t stream, int mode)
int snd_pcm_free (snd_pcm_t *pcm)
int snd_pcm_open_slave (snd_pcm_t **pcmp, snd_config_t *root, snd_config_t *conf, snd_pcm_stream_t stream, int mode)
int snd_pcm_wait (snd_pcm_t *pcm, int timeout)
 Wait for a PCM to become ready.
int snd_pcm_wait_nocheck (snd_pcm_t *pcm, int timeout)
snd_pcm_sframes_t snd_pcm_avail_update (snd_pcm_t *pcm)
 Return number of frames ready to be read/written.
int snd_pcm_area_silence (const snd_pcm_channel_area_t *dst_area, snd_pcm_uframes_t dst_offset, unsigned int samples, snd_pcm_format_t format)
 Silence an area.
int snd_pcm_areas_silence (const snd_pcm_channel_area_t *dst_areas, snd_pcm_uframes_t dst_offset, unsigned int channels, snd_pcm_uframes_t frames, snd_pcm_format_t format)
 Silence one or more areas.
int snd_pcm_area_copy (const snd_pcm_channel_area_t *dst_area, snd_pcm_uframes_t dst_offset, const snd_pcm_channel_area_t *src_area, snd_pcm_uframes_t src_offset, unsigned int samples, snd_pcm_format_t format)
 Copy an area.
int snd_pcm_areas_copy (const snd_pcm_channel_area_t *dst_areas, snd_pcm_uframes_t dst_offset, const snd_pcm_channel_area_t *src_areas, snd_pcm_uframes_t src_offset, unsigned int channels, snd_pcm_uframes_t frames, snd_pcm_format_t format)
 Copy one or more areas.
int snd_pcm_hw_params_dump (snd_pcm_hw_params_t *params, snd_output_t *out)
 Dump a PCM hardware configuration space.
int snd_pcm_hw_params_can_mmap_sample_resolution (const snd_pcm_hw_params_t *params)
 Check, if hardware supports sample-resolution mmap for given configuration.
int snd_pcm_hw_params_is_double (const snd_pcm_hw_params_t *params)
 Check, if hardware does double buffering for start/stop for given configuration.
int snd_pcm_hw_params_is_batch (const snd_pcm_hw_params_t *params)
 Check, if hardware does double buffering for data transfers for given configuration.
int snd_pcm_hw_params_is_block_transfer (const snd_pcm_hw_params_t *params)
 Check, if hardware does block transfers for samples for given configuration.
int snd_pcm_hw_params_can_overrange (const snd_pcm_hw_params_t *params)
 Check, if hardware supports overrange detection.
int snd_pcm_hw_params_can_pause (const snd_pcm_hw_params_t *params)
 Check, if hardware supports pause.
int snd_pcm_hw_params_can_resume (const snd_pcm_hw_params_t *params)
 Check, if hardware supports resume.
int snd_pcm_hw_params_is_half_duplex (const snd_pcm_hw_params_t *params)
 Check, if hardware does half-duplex only.
int snd_pcm_hw_params_is_joint_duplex (const snd_pcm_hw_params_t *params)
 Check, if hardware does joint-duplex (playback and capture are somewhat correlated).
int snd_pcm_hw_params_can_sync_start (const snd_pcm_hw_params_t *params)
 Check, if hardware supports synchronized start with sample resolution.
int snd_pcm_hw_params_get_rate_numden (const snd_pcm_hw_params_t *params, unsigned int *rate_num, unsigned int *rate_den)
 Get rate exact info from a configuration space.
int snd_pcm_hw_params_get_sbits (const snd_pcm_hw_params_t *params)
 Get sample resolution info from a configuration space.
int snd_pcm_hw_params_get_fifo_size (const snd_pcm_hw_params_t *params)
 Get hard are FIFO size info from a configuration space.
int snd_pcm_hw_params_any (snd_pcm_t *pcm, snd_pcm_hw_params_t *params)
 Fill params with a full configuration space for a PCM.
size_t snd_pcm_access_mask_sizeof ()
 get size of snd_pcm_access_mask_t
int snd_pcm_access_mask_malloc (snd_pcm_access_mask_t **ptr)
 allocate an empty snd_pcm_access_mask_t using standard malloc
void snd_pcm_access_mask_free (snd_pcm_access_mask_t *obj)
 frees a previously allocated snd_pcm_access_mask_t
void snd_pcm_access_mask_copy (snd_pcm_access_mask_t *dst, const snd_pcm_access_mask_t *src)
 copy one snd_pcm_access_mask_t to another
void snd_pcm_access_mask_none (snd_pcm_access_mask_t *mask)
 reset all bits in a snd_pcm_access_mask_t
void snd_pcm_access_mask_any (snd_pcm_access_mask_t *mask)
 set all bits in a snd_pcm_access_mask_t
int snd_pcm_access_mask_test (const snd_pcm_access_mask_t *mask, snd_pcm_access_t val)
 test the presence of an access type in a snd_pcm_access_mask_t
int snd_pcm_access_mask_empty (const snd_pcm_access_mask_t *mask)
 test, if given a snd_pcm_access_mask_t is empty
void snd_pcm_access_mask_set (snd_pcm_access_mask_t *mask, snd_pcm_access_t val)
 make an access type present in a snd_pcm_access_mask_t
void snd_pcm_access_mask_reset (snd_pcm_access_mask_t *mask, snd_pcm_access_t val)
 make an access type missing from a snd_pcm_access_mask_t
size_t snd_pcm_format_mask_sizeof ()
 get size of snd_pcm_format_mask_t
int snd_pcm_format_mask_malloc (snd_pcm_format_mask_t **ptr)
 allocate an empty snd_pcm_format_mask_t using standard malloc
void snd_pcm_format_mask_free (snd_pcm_format_mask_t *obj)
 frees a previously allocated snd_pcm_format_mask_t
void snd_pcm_format_mask_copy (snd_pcm_format_mask_t *dst, const snd_pcm_format_mask_t *src)
 copy one snd_pcm_format_mask_t to another
void snd_pcm_format_mask_none (snd_pcm_format_mask_t *mask)
 reset all bits in a snd_pcm_format_mask_t
void snd_pcm_format_mask_any (snd_pcm_format_mask_t *mask)
 set all bits in a snd_pcm_format_mask_t
int snd_pcm_format_mask_test (const snd_pcm_format_mask_t *mask, snd_pcm_format_t val)
 test the presence of a format in a snd_pcm_format_mask_t
int snd_pcm_format_mask_empty (const snd_pcm_format_mask_t *mask)
 test, if given a snd_pcm_format_mask_t is empty
void snd_pcm_format_mask_set (snd_pcm_format_mask_t *mask, snd_pcm_format_t val)
 make a format present in a snd_pcm_format_mask_t
void snd_pcm_format_mask_reset (snd_pcm_format_mask_t *mask, snd_pcm_format_t val)
 make a format missing from a snd_pcm_format_mask_t
size_t snd_pcm_subformat_mask_sizeof ()
 get size of snd_pcm_subformat_mask_t
int snd_pcm_subformat_mask_malloc (snd_pcm_subformat_mask_t **ptr)
 allocate an empty snd_pcm_subformat_mask_t using standard malloc
void snd_pcm_subformat_mask_free (snd_pcm_subformat_mask_t *obj)
 frees a previously allocated snd_pcm_subformat_mask_t
void snd_pcm_subformat_mask_copy (snd_pcm_subformat_mask_t *dst, const snd_pcm_subformat_mask_t *src)
 copy one snd_pcm_subformat_mask_t to another
void snd_pcm_subformat_mask_none (snd_pcm_subformat_mask_t *mask)
 reset all bits in a snd_pcm_subformat_mask_t
void snd_pcm_subformat_mask_any (snd_pcm_subformat_mask_t *mask)
 set all bits in a snd_pcm_subformat_mask_t
int snd_pcm_subformat_mask_test (const snd_pcm_subformat_mask_t *mask, snd_pcm_subformat_t val)
 test the presence of a subformat in a snd_pcm_subformat_mask_t
int snd_pcm_subformat_mask_empty (const snd_pcm_subformat_mask_t *mask)
 test, if given a snd_pcm_subformat_mask_t is empty
void snd_pcm_subformat_mask_set (snd_pcm_subformat_mask_t *mask, snd_pcm_subformat_t val)
 make a subformat present in a snd_pcm_subformat_mask_t
void snd_pcm_subformat_mask_reset (snd_pcm_subformat_mask_t *mask, snd_pcm_subformat_t val)
 make a subformat missing from a snd_pcm_subformat_mask_t
size_t snd_pcm_hw_params_sizeof ()
 get size of snd_pcm_hw_params_t
int snd_pcm_hw_params_malloc (snd_pcm_hw_params_t **ptr)
 allocate an invalid snd_pcm_hw_params_t using standard malloc
void snd_pcm_hw_params_free (snd_pcm_hw_params_t *obj)
 frees a previously allocated snd_pcm_hw_params_t
void snd_pcm_hw_params_copy (snd_pcm_hw_params_t *dst, const snd_pcm_hw_params_t *src)
 copy one snd_pcm_hw_params_t to another
snd_pcm_start_t snd_pcm_sw_params_get_start_mode (const snd_pcm_sw_params_t *params)
 (DEPRECATED) Get start mode from a software configuration container
 link_warning (snd_pcm_sw_params_get_start_mode,"Warning: start_mode is deprecated, consider to use start_threshold")
int snd_pcm_sw_params_set_xrun_mode (snd_pcm_t *pcm ATTRIBUTE_UNUSED, snd_pcm_sw_params_t *params, snd_pcm_xrun_t val) int snd_pcm_sw_params_set_xrun_mode(snd_pcm_t *pcm
 (DEPRECATED) Set xrun mode inside a software configuration container
snd_pcm_xrun_t snd_pcm_sw_params_get_xrun_mode (const snd_pcm_sw_params_t *params)
 (DEPRECATED) Get xrun mode from a software configuration container
 link_warning (snd_pcm_sw_params_get_xrun_mode,"Warning: xrun_mode is deprecated, consider to use stop_threshold")
int snd_pcm_sw_params_set_tstamp_mode (snd_pcm_t *pcm ATTRIBUTE_UNUSED, snd_pcm_sw_params_t *params, snd_pcm_tstamp_t val) int snd_pcm_sw_params_set_tstamp_mode(snd_pcm_t *pcm
 Set timestamp mode inside a software configuration container.
void snd_pcm_status_get_tstamp (const snd_pcm_status_t *obj, snd_timestamp_t *ptr)
 Get "now" timestamp from a PCM status container.
snd_pcm_sframes_t snd_pcm_status_get_delay (const snd_pcm_status_t *obj)
 Get delay from a PCM status container (see snd_pcm_delay).
snd_pcm_uframes_t snd_pcm_status_get_avail (const snd_pcm_status_t *obj)
 Get number of frames available from a PCM status container (see snd_pcm_avail_update).
snd_pcm_uframes_t snd_pcm_status_get_avail_max (const snd_pcm_status_t *obj)
 Get maximum number of frames available from a PCM status container after last snd_pcm_status call.
snd_pcm_uframes_t snd_pcm_status_get_overrange (const snd_pcm_status_t *obj)
 Get count of ADC overrange detections since last call.
size_t snd_pcm_info_sizeof ()
 get size of snd_pcm_info_t
int snd_pcm_info_malloc (snd_pcm_info_t **ptr)
 allocate an invalid snd_pcm_info_t using standard malloc
void snd_pcm_info_free (snd_pcm_info_t *obj)
 frees a previously allocated snd_pcm_info_t
void snd_pcm_info_copy (snd_pcm_info_t *dst, const snd_pcm_info_t *src)
 copy one snd_pcm_info_t to another
unsigned int snd_pcm_info_get_device (const snd_pcm_info_t *obj)
 Get device from a PCM info container.
unsigned int snd_pcm_info_get_subdevice (const snd_pcm_info_t *obj)
 Get subdevice from a PCM info container.
snd_pcm_stream_t snd_pcm_info_get_stream (const snd_pcm_info_t *obj)
 Get stream (direction) from a PCM info container.
int snd_pcm_info_get_card (const snd_pcm_info_t *obj)
 Get card from a PCM info container.
const char * snd_pcm_info_get_id (const snd_pcm_info_t *obj)
 Get id from a PCM info container.
const char * snd_pcm_info_get_name (const snd_pcm_info_t *obj)
 Get name from a PCM info container.
const char * snd_pcm_info_get_subdevice_name (const snd_pcm_info_t *obj)
 Get subdevice name from a PCM info container.
snd_pcm_class_t snd_pcm_info_get_class (const snd_pcm_info_t *obj)
 Get class from a PCM info container.
snd_pcm_subclass_t snd_pcm_info_get_subclass (const snd_pcm_info_t *obj)
 Get subclass from a PCM info container.
unsigned int snd_pcm_info_get_subdevices_count (const snd_pcm_info_t *obj)
 Get subdevices count from a PCM info container.
unsigned int snd_pcm_info_get_subdevices_avail (const snd_pcm_info_t *obj)
 Get available subdevices count from a PCM info container.
snd_pcm_sync_id_t snd_pcm_info_get_sync (const snd_pcm_info_t *obj)
 Get hardware synchronization ID from a PCM info container.
void snd_pcm_info_set_device (snd_pcm_info_t *obj, unsigned int val)
 Set wanted device inside a PCM info container (see snd_ctl_pcm_info).
void snd_pcm_info_set_subdevice (snd_pcm_info_t *obj, unsigned int val)
 Set wanted subdevice inside a PCM info container (see snd_ctl_pcm_info).
void snd_pcm_info_set_stream (snd_pcm_info_t *obj, snd_pcm_stream_t val)
 Set wanted stream inside a PCM info container (see snd_ctl_pcm_info).
int snd_pcm_mmap_begin (snd_pcm_t *pcm, const snd_pcm_channel_area_t **areas, snd_pcm_uframes_t *offset, snd_pcm_uframes_t *frames)
 Application request to access a portion of direct (mmap) area.
snd_pcm_sframes_t snd_pcm_mmap_commit (snd_pcm_t *pcm, snd_pcm_uframes_t offset, snd_pcm_uframes_t frames)
 Application has completed the access to area requested with snd_pcm_mmap_begin.
int _snd_pcm_link_descriptors (snd_pcm_t *pcm, int *fds, int count, int(**failed)(snd_pcm_t *, int))
int _snd_pcm_poll_descriptor (snd_pcm_t *pcm)
void snd_pcm_areas_from_buf (snd_pcm_t *pcm, snd_pcm_channel_area_t *areas, void *buf)
void snd_pcm_areas_from_bufs (snd_pcm_t *pcm, snd_pcm_channel_area_t *areas, void **bufs)
snd_pcm_sframes_t snd_pcm_read_areas (snd_pcm_t *pcm, const snd_pcm_channel_area_t *areas, snd_pcm_uframes_t offset, snd_pcm_uframes_t size, snd_pcm_xfer_areas_func_t func)
snd_pcm_sframes_t snd_pcm_write_areas (snd_pcm_t *pcm, const snd_pcm_channel_area_t *areas, snd_pcm_uframes_t offset, snd_pcm_uframes_t size, snd_pcm_xfer_areas_func_t func)
snd_pcm_uframes_t _snd_pcm_mmap_hw_ptr (snd_pcm_t *pcm)
snd_pcm_uframes_t _snd_pcm_boundary (snd_pcm_t *pcm)
 link_warning (_snd_pcm_mmap_hw_ptr,"Warning: _snd_pcm_mmap_hw_ptr() is deprecated, consider to not use this function")
 link_warning (_snd_pcm_boundary,"Warning: _snd_pcm_boundary() is deprecated, consider to use snd_pcm_sw_params_current()")
int snd_pcm_slave_conf (snd_config_t *root, snd_config_t *conf, snd_config_t **_pcm_conf, unsigned int count,...)
int snd_pcm_conf_generic_id (const char *id)
void snd_pcm_set_hw_ptr (snd_pcm_t *pcm, volatile snd_pcm_uframes_t *hw_ptr, int fd, off_t offset)
void snd_pcm_set_appl_ptr (snd_pcm_t *pcm, volatile snd_pcm_uframes_t *appl_ptr, int fd, off_t offset)
void snd_pcm_link_hw_ptr (snd_pcm_t *pcm, snd_pcm_t *slave)
void snd_pcm_link_appl_ptr (snd_pcm_t *pcm, snd_pcm_t *slave)
void snd_pcm_unlink_hw_ptr (snd_pcm_t *pcm, snd_pcm_t *slave)
void snd_pcm_unlink_appl_ptr (snd_pcm_t *pcm, snd_pcm_t *slave)
 __OLD_GET (snd_pcm_hw_params_get_access, snd_pcm_access_t, int)
 __OLD_GET (snd_pcm_hw_params_get_format, snd_pcm_format_t, int)
 __OLD_GET (snd_pcm_hw_params_get_subformat, snd_pcm_subformat_t, int)
 __OLD_GET (snd_pcm_hw_params_get_channels, unsigned int, int)
 __OLD_GET1 (snd_pcm_hw_params_get_rate, unsigned int, int)
 __OLD_GET1 (snd_pcm_hw_params_get_period_time, unsigned int, int)
 __OLD_GET1 (snd_pcm_hw_params_get_period_size, snd_pcm_uframes_t, snd_pcm_sframes_t)
 __OLD_GET1 (snd_pcm_hw_params_get_periods, unsigned int, int)
 __OLD_GET1 (snd_pcm_hw_params_get_buffer_time, unsigned int, int)
 __OLD_GET (snd_pcm_hw_params_get_buffer_size, snd_pcm_uframes_t, snd_pcm_sframes_t)
 __OLD_GET1 (snd_pcm_hw_params_get_tick_time, unsigned int, int)
 __OLD_GET (snd_pcm_hw_params_get_channels_min, unsigned int, unsigned int)
 __OLD_GET1 (snd_pcm_hw_params_get_rate_min, unsigned int, unsigned int)
 __OLD_GET1 (snd_pcm_hw_params_get_period_time_min, unsigned int, unsigned int)
 __OLD_GET1 (snd_pcm_hw_params_get_period_size_min, snd_pcm_uframes_t, snd_pcm_uframes_t)
 __OLD_GET1 (snd_pcm_hw_params_get_periods_min, unsigned int, unsigned int)
 __OLD_GET1 (snd_pcm_hw_params_get_buffer_time_min, unsigned int, unsigned int)
 __OLD_GET (snd_pcm_hw_params_get_buffer_size_min, snd_pcm_uframes_t, snd_pcm_uframes_t)
 __OLD_GET1 (snd_pcm_hw_params_get_tick_time_min, unsigned int, unsigned int)
 __OLD_GET (snd_pcm_hw_params_get_channels_max, unsigned int, unsigned int)
 __OLD_GET1 (snd_pcm_hw_params_get_rate_max, unsigned int, unsigned int)
 __OLD_GET1 (snd_pcm_hw_params_get_period_time_max, unsigned int, unsigned int)
 __OLD_GET1 (snd_pcm_hw_params_get_period_size_max, snd_pcm_uframes_t, snd_pcm_uframes_t)
 __OLD_GET1 (snd_pcm_hw_params_get_periods_max, unsigned int, unsigned int)
 __OLD_GET1 (snd_pcm_hw_params_get_buffer_time_max, unsigned int, unsigned int)
 __OLD_GET (snd_pcm_hw_params_get_buffer_size_max, snd_pcm_uframes_t, snd_pcm_uframes_t)
 __OLD_GET1 (snd_pcm_hw_params_get_tick_time_max, unsigned int, unsigned int)
 __OLD_NEAR (snd_pcm_hw_params_set_channels_near, unsigned int)
 __OLD_NEAR1 (snd_pcm_hw_params_set_rate_near, unsigned int)
 __OLD_NEAR1 (snd_pcm_hw_params_set_period_time_near, unsigned int)
 __OLD_NEAR1 (snd_pcm_hw_params_set_period_size_near, snd_pcm_uframes_t)
 __OLD_NEAR1 (snd_pcm_hw_params_set_periods_near, unsigned int)
 __OLD_NEAR1 (snd_pcm_hw_params_set_buffer_time_near, unsigned int)
 __OLD_NEAR (snd_pcm_hw_params_set_buffer_size_near, snd_pcm_uframes_t)
 __OLD_NEAR1 (snd_pcm_hw_params_set_tick_time_near, unsigned int)
 __OLD_SET_FL (snd_pcm_hw_params_set_access_first, snd_pcm_access_t)
 __OLD_SET_FL (snd_pcm_hw_params_set_format_first, snd_pcm_format_t)
 __OLD_SET_FL (snd_pcm_hw_params_set_subformat_first, snd_pcm_subformat_t)
 __OLD_SET_FL (snd_pcm_hw_params_set_channels_first, unsigned int)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_rate_first, unsigned int)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_period_time_first, unsigned int)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_period_size_first, snd_pcm_uframes_t)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_periods_first, unsigned int)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_buffer_time_first, unsigned int)
 __OLD_SET_FL (snd_pcm_hw_params_set_buffer_size_first, snd_pcm_uframes_t)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_tick_time_first, unsigned int)
 __OLD_SET_FL (snd_pcm_hw_params_set_access_last, snd_pcm_access_t)
 __OLD_SET_FL (snd_pcm_hw_params_set_format_last, snd_pcm_format_t)
 __OLD_SET_FL (snd_pcm_hw_params_set_subformat_last, snd_pcm_subformat_t)
 __OLD_SET_FL (snd_pcm_hw_params_set_channels_last, unsigned int)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_rate_last, unsigned int)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_period_time_last, unsigned int)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_period_size_last, snd_pcm_uframes_t)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_periods_last, unsigned int)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_buffer_time_last, unsigned int)
 __OLD_SET_FL (snd_pcm_hw_params_set_buffer_size_last, snd_pcm_uframes_t)
 __OLD_SET_FL1 (snd_pcm_hw_params_set_tick_time_last, unsigned int)
 __OLD_GET_SW (snd_pcm_sw_params_get_tstamp_mode, snd_pcm_tstamp_t)
 __OLD_GET_SW (snd_pcm_sw_params_get_sleep_min, unsigned int)
 __OLD_GET_SW (snd_pcm_sw_params_get_avail_min, snd_pcm_uframes_t)
 __OLD_GET_SW (snd_pcm_sw_params_get_xfer_align, snd_pcm_uframes_t)
 __OLD_GET_SW (snd_pcm_sw_params_get_start_threshold, snd_pcm_uframes_t)
 __OLD_GET_SW (snd_pcm_sw_params_get_stop_threshold, snd_pcm_uframes_t)
 __OLD_GET_SW (snd_pcm_sw_params_get_silence_threshold, snd_pcm_uframes_t)
 __OLD_GET_SW (snd_pcm_sw_params_get_silence_size, snd_pcm_uframes_t)
 OBSOLETE1 (snd_pcm_hw_params_get_access, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_access_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_access_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_get_format, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_format_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_format_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_get_subformat, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_subformat_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_subformat_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_get_channels, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_channels_near, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_channels_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_channels_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_get_rate, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_rate_near, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_rate_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_rate_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_get_period_time, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_period_time_near, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_period_time_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_period_time_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_get_period_size, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_period_size_near, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_period_size_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_period_size_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_get_periods, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_periods_near, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_periods_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_periods_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_get_buffer_time, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_buffer_time_near, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_buffer_time_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_buffer_time_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_get_buffer_size, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_buffer_size_near, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_buffer_size_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_buffer_size_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_get_tick_time, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_tick_time_near, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_tick_time_first, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_hw_params_set_tick_time_last, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_sw_params_get_tstamp_mode, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_sw_params_get_sleep_min, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_sw_params_get_avail_min, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_sw_params_get_xfer_align, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_sw_params_get_start_threshold, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_sw_params_get_stop_threshold, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_sw_params_get_silence_threshold, ALSA_0.9, ALSA_0.9.0rc4)
 OBSOLETE1 (snd_pcm_sw_params_get_silence_size, ALSA_0.9, ALSA_0.9.0rc4)

Variables

snd_pcm_sframes_t INTERNAL( snd_pcm_forward )(snd_pcm_t *pcm, snd_pcm_uframes_t frames) snd_pcm_sframes_t snd_pcm_forward(snd_pcm_t *pcm
 Move application frame position forward.
const char *INTERNAL( snd_pcm_type_name )(snd_pcm_type_t type) const char *snd_pcm_type_name(snd_pcm_type_t type)
 get name of PCM type
int INTERNAL( snd_pcm_hw_params_get_access )(const snd_pcm_hw_params_t *params, snd_pcm_access_t *access) int snd_pcm_hw_params_get_access(const snd_pcm_hw_params_t *params
 Extract access type from a configuration space.
int snd_pcm_sw_params_tparams
void INTERNAL( snd_pcm_status_get_htstamp )(const snd_pcm_status_t *obj, snd_htimestamp_t *ptr) void snd_pcm_status_get_htstamp(const snd_pcm_status_t *obj
 Get "now" hi-res timestamp from a PCM status container.


Detailed Description

PCM Interface.

Author:
Jaroslav Kysela <perex@suse.cz>

Abramo Bagnara <abramo@alsa-project.org>

Date:
2000-2001
PCM Interface is designed to write or read digital audio frames. A frame is the data unit converted into/from sound in one time unit (1/rate seconds), by example if you set your playback PCM rate to 44100 you'll hear 44100 frames per second. The size in bytes of a frame may be obtained from bits needed to store a sample and channels count.

See the PCM (digital audio) interface page for more details.


Function Documentation

int snd_pcm_async snd_pcm_t pcm,
int  sig,
pid_t  pid
 

set async mode

Parameters:
pcm PCM handle
sig Signal to raise: < 0 disable, 0 default (SIGIO)
pid Process ID to signal: 0 current
Returns:
0 on success otherwise a negative error code
A signal is raised every period.

int snd_pcm_sw_params_set_tstamp_mode snd_pcm_t *pcm  ATTRIBUTE_UNUSED,
snd_pcm_sw_params_t params,
snd_pcm_tstamp_t  val
 

Set timestamp mode inside a software configuration container.

Parameters:
pcm PCM handle
params Software configuration container
val Timestamp mode
Returns:
0 otherwise a negative error code

int snd_pcm_sw_params_set_xrun_mode snd_pcm_t *pcm  ATTRIBUTE_UNUSED,
snd_pcm_sw_params_t params,
snd_pcm_xrun_t  val
 

(DEPRECATED) Set xrun mode inside a software configuration container

Parameters:
pcm PCM handle
params Software configuration container
val Xrun mode
Returns:
0 otherwise a negative error code


Variable Documentation

snd_pcm_sframes_t INTERNAL( snd_pcm_forward)(snd_pcm_t *pcm, snd_pcm_uframes_t frames) snd_pcm_sframes_t snd_pcm_forward(snd_pcm_t *pcm
 

Move application frame position forward.

Parameters:
pcm PCM handle
frames wanted skip in frames
Returns:
a positive number for actual skip otherwise a negative error code
Return values:
0 means no action

int INTERNAL( snd_pcm_hw_params_get_access)(const snd_pcm_hw_params_t *params, snd_pcm_access_t *access) int snd_pcm_hw_params_get_access(const snd_pcm_hw_params_t *params
 

Extract access type from a configuration space.

Parameters:
params Configuration space
access Returned value
Returns:
access type otherwise a negative error code if not exactly one is present

void INTERNAL( snd_pcm_status_get_htstamp)(const snd_pcm_status_t *obj, snd_htimestamp_t *ptr) void snd_pcm_status_get_htstamp(const snd_pcm_status_t *obj
 

Get "now" hi-res timestamp from a PCM status container.

Parameters:
ptr Pointer to returned timestamp

const char* INTERNAL( snd_pcm_type_name)(snd_pcm_type_t type)const char *snd_pcm_type_name(snd_pcm_type_t type)
 

get name of PCM type

Parameters:
type PCM type
Returns:
ascii name of PCM type


Generated on Fri May 27 10:32:54 2005 for ALSA project - the C library reference by  doxygen 1.4.2