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

Helper Functions
[PCM Interface]


Functions

int snd_pcm_format_signed (snd_pcm_format_t format)
 Return sign info for a PCM sample linear format.

int snd_pcm_format_unsigned (snd_pcm_format_t format)
 Return sign info for a PCM sample linear format.

int snd_pcm_format_linear (snd_pcm_format_t format)
 Return linear info for a PCM sample format.

int snd_pcm_format_float (snd_pcm_format_t format)
 Return float info for a PCM sample format.

int snd_pcm_format_little_endian (snd_pcm_format_t format)
 Return endian info for a PCM sample format.

int snd_pcm_format_big_endian (snd_pcm_format_t format)
 Return endian info for a PCM sample format.

int snd_pcm_format_cpu_endian (snd_pcm_format_t format)
 Return endian info for a PCM sample format.

int snd_pcm_format_width (snd_pcm_format_t format)
 Return nominal bits per a PCM sample.

int snd_pcm_format_physical_width (snd_pcm_format_t format)
 Return bits needed to store a PCM sample.

snd_pcm_format_t snd_pcm_build_linear_format (int width, int pwidth, int unsignd, int big_endian)
 Compose a PCM sample linear format.

ssize_t snd_pcm_format_size (snd_pcm_format_t format, size_t samples)
 Return bytes needed to store a quantity of PCM sample.

u_int8_t snd_pcm_format_silence (snd_pcm_format_t format)
 Return 8 bit expressing silence for a PCM sample format.

u_int16_t snd_pcm_format_silence_16 (snd_pcm_format_t format)
 Return 16 bit expressing silence for a PCM sample format.

u_int32_t snd_pcm_format_silence_32 (snd_pcm_format_t format)
 Return 32 bit expressing silence for a PCM sample format.

u_int64_t snd_pcm_format_silence_64 (snd_pcm_format_t format)
 Return 64 bit expressing silence for a PCM sample format.

int snd_pcm_format_set_silence (snd_pcm_format_t format, void *buf, unsigned int samples)
 Silence a PCM samples buffer.

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_pcm_area_silence (const snd_pcm_channel_area_t *dst_channel, 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_channels, 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_channel, snd_pcm_uframes_t dst_offset, const snd_pcm_channel_area_t *src_channel, 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_channels, snd_pcm_uframes_t dst_offset, const snd_pcm_channel_area_t *src_channels, snd_pcm_uframes_t src_offset, unsigned int channels, snd_pcm_uframes_t frames, snd_pcm_format_t format)
 Copy one or more areas.


Detailed Description

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

Function Documentation

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.

Parameters:
dst_area  destination area specification
dst_offset  offset in frames inside destination area
src_area  source area specification
src_offset  offset in frames inside source area
samples  samples to copy
format  PCM sample format
Returns:
0 on success otherwise a negative error code

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.

Parameters:
dst_area  area specification
dst_offset  offset in frames inside area
samples  samples to silence
format  PCM sample format
Returns:
0 on success otherwise a negative error code

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.

Parameters:
dst_areas  destination areas specification (one for each channel)
dst_offset  offset in frames inside destination area
src_areas  source areas specification (one for each channel)
src_offset  offset in frames inside source area
channels  channels count
frames  frames to copy
format  PCM sample format
Returns:
0 on success otherwise a negative error code

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.

Parameters:
dst_areas  areas specification (one for each channel)
dst_offset  offset in frames inside area
channels  channels count
frames  frames to silence
format  PCM sample format
Returns:
0 on success otherwise a negative error code

snd_pcm_format_t snd_pcm_build_linear_format int    width,
int    pwidth,
int    unsignd,
int    big_endian
 

Compose a PCM sample linear format.

Parameters:
width  Nominal bits per sample
pwidth  Physical bit width of the format
unsignd  Sign: 0 signed, 1 unsigned
Returns:
big_endian Endian: 0 little endian, 1 big endian

snd_pcm_sframes_t snd_pcm_bytes_to_frames snd_pcm_t   pcm,
ssize_t    bytes
 

Convert bytes in frames for a PCM.

Parameters:
pcm  PCM handle
bytes  quantity in bytes
Returns:
quantity expressed in frames

long snd_pcm_bytes_to_samples snd_pcm_t   pcm,
ssize_t    bytes
 

Convert bytes in samples for a PCM.

Parameters:
pcm  PCM handle
bytes  quantity in bytes
Returns:
quantity expressed in samples

int snd_pcm_format_big_endian snd_pcm_format_t    format
 

Return endian info for a PCM sample format.

Parameters:
format  Format
Returns:
0 little endian, 1 big endian, a negative error code if endian independent

int snd_pcm_format_cpu_endian snd_pcm_format_t    format
 

Return endian info for a PCM sample format.

Parameters:
format  Format
Returns:
0 swapped, 1 CPU endian, a negative error code if endian independent

int snd_pcm_format_float snd_pcm_format_t    format
 

Return float info for a PCM sample format.

Parameters:
format  Format
Returns:
0 non float, 1 float

int snd_pcm_format_linear snd_pcm_format_t    format
 

Return linear info for a PCM sample format.

Parameters:
format  Format
Returns:
0 non linear, 1 linear

int snd_pcm_format_little_endian snd_pcm_format_t    format
 

Return endian info for a PCM sample format.

Parameters:
format  Format
Returns:
0 big endian, 1 little endian, a negative error code if endian independent

int snd_pcm_format_physical_width snd_pcm_format_t    format
 

Return bits needed to store a PCM sample.

Parameters:
format  Sample format
Returns:
bits per sample, a negative error code if not applicable

int snd_pcm_format_set_silence snd_pcm_format_t    format,
void *    data,
unsigned int    samples
 

Silence a PCM samples buffer.

Parameters:
format  Sample format
data  Buffer
Returns:
samples Samples count
Examples:
/test/latency.c.

int snd_pcm_format_signed snd_pcm_format_t    format
 

Return sign info for a PCM sample linear format.

Parameters:
format  Format
Returns:
0 unsigned, 1 signed, a negative error code if format is not linear

u_int8_t snd_pcm_format_silence snd_pcm_format_t    format
 

Return 8 bit expressing silence for a PCM sample format.

Parameters:
format  Sample format
Returns:
silence 8 bit word

u_int16_t snd_pcm_format_silence_16 snd_pcm_format_t    format
 

Return 16 bit expressing silence for a PCM sample format.

Parameters:
format  Sample format
Returns:
silence 16 bit word

u_int32_t snd_pcm_format_silence_32 snd_pcm_format_t    format
 

Return 32 bit expressing silence for a PCM sample format.

Parameters:
format  Sample format
Returns:
silence 32 bit word

u_int64_t snd_pcm_format_silence_64 snd_pcm_format_t    format
 

Return 64 bit expressing silence for a PCM sample format.

Parameters:
format  Sample format
Returns:
silence 64 bit word

ssize_t snd_pcm_format_size snd_pcm_format_t    format,
size_t    samples
 

Return bytes needed to store a quantity of PCM sample.

Parameters:
format  Sample format
samples  Samples count
Returns:
bytes needed, a negative error code if not integer or unknown

int snd_pcm_format_unsigned snd_pcm_format_t    format
 

Return sign info for a PCM sample linear format.

Parameters:
format  Format
Returns:
0 signed, 1 unsigned, a negative error code if format is not linear

int snd_pcm_format_width snd_pcm_format_t    format
 

Return nominal bits per a PCM sample.

Parameters:
format  Sample format
Returns:
bits per sample, a negative error code if not applicable
Examples:
/test/latency.c, and /test/pcm.c.

ssize_t snd_pcm_frames_to_bytes snd_pcm_t   pcm,
snd_pcm_sframes_t    frames
 

Convert frames in bytes for a PCM.

Parameters:
pcm  PCM handle
frames  quantity in frames
Returns:
quantity expressed in bytes

ssize_t snd_pcm_samples_to_bytes snd_pcm_t   pcm,
long    samples
 

Convert samples in bytes for a PCM.

Parameters:
pcm  PCM handle
samples  quantity in samples
Returns:
quantity expressed in bytes


Generated on Thu Mar 27 07:55:58 2003 for ALSA project - the C library reference by doxygen1.2.18