9442e691e4
Add maximum latency tracking to the ALSA subsystem for PCM playback. In ALSA, the playback application controls the buffer size and thus indirectly the period of latency that it can deal with. This patch uses 75% of the total available latency as threshold to announce to the latency subsystem; While 75% is a crude heuristic it's a quite reasonable one; the remaining 25% can be used for all driver processing for the next samples which is also proportional to the size of the buffer. With ogg123 a latency setting of about 4msec was seen (at 44Khz), while with the "play" command a much longer maximum tolerable latency was seen. Other, more multimedia oriented players as well as games, will have a lot smaller buffers to allow better synchronization and those will actually get into the latency domains where there is impact on the power management rules. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org> |
||
---|---|---|
.. | ||
ac97_codec.h | ||
ad1816a.h | ||
ad1848.h | ||
ainstr_fm.h | ||
ainstr_gf1.h | ||
ainstr_iw.h | ||
ainstr_simple.h | ||
ak4xxx-adda.h | ||
ak4114.h | ||
ak4117.h | ||
ak4531_codec.h | ||
asequencer.h | ||
asound_fm.h | ||
asound.h | ||
asoundef.h | ||
control.h | ||
core.h | ||
cs46xx_dsp_scb_types.h | ||
cs46xx_dsp_spos.h | ||
cs46xx_dsp_task_types.h | ||
cs46xx.h | ||
cs4231.h | ||
cs8403.h | ||
cs8427.h | ||
driver.h | ||
emu10k1_synth.h | ||
emu10k1.h | ||
emu8000_reg.h | ||
emu8000.h | ||
emux_legacy.h | ||
emux_synth.h | ||
es1688.h | ||
gus.h | ||
hdsp.h | ||
hdspm.h | ||
hwdep.h | ||
i2c.h | ||
info.h | ||
initval.h | ||
Kbuild | ||
memalloc.h | ||
minors.h | ||
mixer_oss.h | ||
mpu401.h | ||
opl3.h | ||
opl4.h | ||
pcm_oss.h | ||
pcm_params.h | ||
pcm-indirect.h | ||
pcm.h | ||
rawmidi.h | ||
sb16_csp.h | ||
sb.h | ||
seq_device.h | ||
seq_instr.h | ||
seq_kernel.h | ||
seq_midi_emul.h | ||
seq_midi_event.h | ||
seq_oss_legacy.h | ||
seq_oss.h | ||
seq_virmidi.h | ||
sfnt_info.h | ||
snd_wavefront.h | ||
soundfont.h | ||
sscape_ioctl.h | ||
tea575x-tuner.h | ||
tea6330t.h | ||
timer.h | ||
tlv.h | ||
trident.h | ||
typedefs.h | ||
uda1341.h | ||
util_mem.h | ||
version.h | ||
vx_core.h | ||
wavefront_fx.h | ||
wavefront.h | ||
ymfpci.h |