tunnel-sink-new: Limit the maximum latency to 200 ms 01/30201/1
authorTanu Kaskinen <tanu.kaskinen@linux.intel.com>
Fri, 3 Oct 2014 04:38:55 +0000 (07:38 +0300)
committerTanu Kaskinen <tanu.kaskinen@linux.intel.com>
Wed, 12 Nov 2014 13:57:25 +0000 (15:57 +0200)
The default maximum latency is 10 seconds, which is not good,
especially since the tunnel sink doesn't support rewinding. Due to the
lack of rewinding, e.g. volume changes take a long time with large
latencies.

Change-Id: I13753d30a17598ebc9e6a3eda3db4096ff6fcf4e

src/modules/module-tunnel-sink-new.c

index 484e538..e4b4198 100644 (file)
@@ -60,6 +60,7 @@ PA_MODULE_USAGE(
         "cookie=<cookie file path>"
         );
 
+#define MAX_LATENCY_USEC (200 * PA_USEC_PER_MSEC)
 #define TUNNEL_THREAD_FAILED_MAINLOOP 1
 
 static void stream_state_cb(pa_stream *stream, void *userdata);
@@ -499,6 +500,7 @@ int pa__init(pa_module *m) {
     u->sink->userdata = u;
     u->sink->parent.process_msg = sink_process_msg_cb;
     u->sink->update_requested_latency = sink_update_requested_latency_cb;
+    pa_sink_set_latency_range(u->sink, 0, MAX_LATENCY_USEC);
 
     /* set thread message queue */
     pa_sink_set_asyncmsgq(u->sink, u->thread_mq->inq);