最終更新:2026-04-14 (火) 10:35:19 (33d)
ALSA/パラメータ
https://www.alsa-project.org/wiki/FramesPeriods
用語
例
- aplay -v
$ aplay /usr/share/sounds/alsa/Front_Center.wav -v Playing WAVE '/usr/share/sounds/alsa/Front_Center.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono ALSA <-> PulseAudio PCM I/O Plugin Its setup is: stream : PLAYBACK access : RW_INTERLEAVED format : S16_LE subformat : STD channels : 1 rate : 48000 exact rate : 48000 (48000/1) msbits : 16 buffer_size : 24000 period_size : 6000 period_time : 125000 tstamp_mode : NONE tstamp_type : GETTIMEOFDAY period_step : 1 avail_min : 6000 period_event : 0 start_threshold : 24000 stop_threshold : 24000 silence_threshold: 0 silence_size : 0 boundary : 6755399441055744000
snd_pcm_t
ALSA/PCM/buffer_size?
- PCMバッファ全体のサイズ(フレーム数単位)
- 例: 48kHzなら 24000フレーム ÷ 48000 = 500ms分
ALSA/PCM/period_size
- 1周期(period)あたりのフレーム数。
- アプリケーションが1回のread/writeで処理する単位。
- 例: 48kHzなら 6000 ÷ 48000 = 125msごとに割り込み/通知が発生。
ALSA/PCM/period_time?
- period_sizeを時間に換算した値(マイクロ秒単位)。
- 125000μs = 125ms
ALSA/PCM/period_step?
- 何period分おきにwakeupするかの係数
ALSA/PCM/avail_min?
- snd_pcm_wait()やpoll() が返ってくる条件となる最小利用可能フレーム数。
- 通常はperiod_sizeと同じ値に設定される。
ALSA/PCM/start_threshold?
- バッファに溜まったフレーム数がこの値に達すると、PCMが自動的に再生を開始する閾値。
ALSA/PCM/stop_threshold?
- バッファの空き領域がこの値を超えたとき(=データが枯渇したとき)にPCMを停止する閾値。
ALSA/PCM/silence_threshold?
- バッファの空き領域がこの値を下回ったとき、ALSAが自動的に無音データを書き込む機能の閾値。
ALSA/PCM/silence_size?
aplay
- aplay --dump-hw-params: dump hw_params of the device
- aplay -v: show PCM structure and setup (accumulative)

