summaryrefslogtreecommitdiffstats
path: root/src/modules/alsa/module-alsa-sink.c
diff options
context:
space:
mode:
authorPierre-Louis Bossart <pierre-louis.bossart@intel.com>2010-04-29 10:48:11 -0500
committerLennart Poettering <lennart@poettering.net>2010-05-08 01:38:25 +0200
commit4df443bbe682055a41e7c2248877dcc7682a69b8 (patch)
treee1c687b48d24f4c03fe7f43c1e4072fb70df9188 /src/modules/alsa/module-alsa-sink.c
parentf081c152f3d5f6a70edc6b7369445229b4f6a1b8 (diff)
add rewind-safeguard parameter
Rewinding the ring buffer completely causes audible issues with DMAs. Previous solution didn't work with tsched=0, and used tsched_watermark for guardband, which isn't linked to hardware and could become really high if underflows occurred. Added separate parameter that can be tuned to hardware limitations and size of DMA bursts.
Diffstat (limited to 'src/modules/alsa/module-alsa-sink.c')
-rw-r--r--src/modules/alsa/module-alsa-sink.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/modules/alsa/module-alsa-sink.c b/src/modules/alsa/module-alsa-sink.c
index 3aa89b2a..a73274fd 100644
--- a/src/modules/alsa/module-alsa-sink.c
+++ b/src/modules/alsa/module-alsa-sink.c
@@ -54,7 +54,8 @@ PA_MODULE_USAGE(
"tsched_buffer_size=<buffer size when using timer based scheduling> "
"tsched_buffer_watermark=<lower fill watermark> "
"ignore_dB=<ignore dB information from the device?> "
- "control=<name of mixer control>");
+ "control=<name of mixer control>"
+ "rewind_safeguard=<number of bytes that cannot be rewound");
static const char* const valid_modargs[] = {
"name",
@@ -74,6 +75,7 @@ static const char* const valid_modargs[] = {
"tsched_buffer_watermark",
"ignore_dB",
"control",
+ "rewind_safeguard",
NULL
};