From 23f723af4e6700c7e08dc9557d24bd4e2c63ff03 Mon Sep 17 00:00:00 2001 From: Bryan Gleeson Date: Fri, 10 Jun 2011 13:02:20 -0700 Subject: [PATCH] Signed-off-by: Bryan Gleeson Change socket buffer size handling to avoid playback underruns When a TCP socket is created the size of the send buffer (SO_SNDBUF) used is determined by the OS, using the net.ipv4.tcp_wmem sysctl parameter. Previously a call to setsockopt set the buffer size to a value that was too small, and that in some cases could result in underruns and choppy playback. This setsockopt call has now been removed so that the value determined by the OS is used unchanged. Note that the value used for the send buffer size is the 2nd value in net.ipv4.tcp_wmem, e.g. if this is set to "4096 65536 8388608" the send buffer size is set to 65536. --- src/modules/raop/raop_client.c | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/src/modules/raop/raop_client.c b/src/modules/raop/raop_client.c index 05c7b16..f85188f 100644 --- a/src/modules/raop/raop_client.c +++ b/src/modules/raop/raop_client.c @@ -220,7 +220,6 @@ static void on_connection(pa_socket_client *sc, pa_iochannel *io, void *userdata c->fd = pa_iochannel_get_send_fd(io); pa_iochannel_set_noclose(io, TRUE); - pa_iochannel_socket_set_sndbuf(io, 1024); pa_iochannel_free(io); pa_make_tcp_socket_low_delay(c->fd); -- 1.7.3.4