Возможности PCM устройства
struct ado_pcm_cap {
uint32_t chn_flags;
uint32_t formats;
uint32_t rates;
uint32_t min_rate;
uint32_t max_rate;
uint32_t min_voices;
uint32_t max_voices;
uint32_t min_fragsize;
uint32_t max_fragsize;
uint32_t max_dma_size;
uint32_t max_frags;
} ado_pcm_cap_t;
Структура ado_pcm_cap_t
конкретизирует возможности PCM устройства по воспроизведению и захвату аудио потоков. Поля структуры:
- chn_flags
- Один из флагов
SND_PCM_CHNINFO_*
(см. snd_pcm_channel_info()). - formats
- Поддерживаемые форматы; произвольна комбинация флагов
SND_PCM_FMT_*
(см. snd_pcm_find()). - rates
- Частота семплов. Комбинация флагов:
- SND_PCM_RATE_8000
- SND_PCM_RATE_11025
- SND_PCM_RATE_16000
- SND_PCM_RATE_22050
- SND_PCM_RATE_32000
- SND_PCM_RATE_44100
- SND_PCM_RATE_48000
- SND_PCM_RATE_88200
- SND_PCM_RATE_96000
- SND_PCM_RATE_176400
- SND_PCM_RATE_192000
либо один из следующих: - SND_PCM_RATE_CONTINUOUS
- частоты в заданном диапазоне (см. поля min_rate и max_rate).
- SND_PCM_RATE_8000_44100
- все частоты от
8000
до 44100
. - SND_PCM_RATE_8000_48000
- все частоты от
8000
до 48000
.
- min_rate
- минимальная частота семплов (используется при rates равном
SND_PCM_RATE_CONTINUOUS
). - max_rate
- максимальная частота семплов (используется при rates равном
SND_PCM_RATE_CONTINUOUS
). - min_voices
- Минимальное число голосов в канале.
- max_voices
- Максимальное число голосов в канале.
- min_fragsize
- Минимальный размер фрагмента при передаче средствами DMA.
- max_fragsize
- Максимальный размер фрагмента при передаче средствами DMA.
- max_dma_size
- Максимальный размер DMA-буфера. Значение
0
означает отсутствие ограничений. - max_frags
- Максимальное число фрагментов. Значение
0
означает отсутствие ограничений.
ЗОСРВ «Нейтрино»
ado_pcm_create(), snd_pcm_channel_info(), snd_pcm_find()
Предыдущий раздел: Библиотека libado