diff --git a/src/modules/module-rtp-sink.c b/src/modules/module-rtp-sink.c index 67b28ed88..d4e30a6bc 100644 --- a/src/modules/module-rtp-sink.c +++ b/src/modules/module-rtp-sink.c @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include @@ -425,6 +425,15 @@ static int make_multicast_socket(struct sockaddr_storage *src, socklen_t src_len if (setsockopt(fd, IPPROTO_IP, IP_MULTICAST_TTL, &val, sizeof(val)) < 0) pw_log_warn("setsockopt(IP_MULTICAST_TTL) failed: %m"); + val = 6; + if (setsockopt(fd, SOL_SOCKET, SO_PRIORITY, &val, sizeof(val)) < 0) + pw_log_warn("setsockopt(SO_PRIORITY) failed: %m"); + + val = IPTOS_LOWDELAY; + if (setsockopt(fd, IPPROTO_IP, IP_TOS, &val, sizeof(val)) < 0) + pw_log_warn("setsockopt(SO_PRIORITY) failed: %m"); + + return fd; error: close(fd);