changeset 2391:2298213e3016 libavformat

Set UDP receive buffer to 64k
author ramiro
date Thu, 16 Aug 2007 22:12:03 +0000
parents de8377107b07
children 39e9fb85fcbc
files udp.c
diffstat 1 files changed, 6 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/udp.c	Thu Aug 16 22:04:38 2007 +0000
+++ b/udp.c	Thu Aug 16 22:12:03 2007 +0000
@@ -43,6 +43,7 @@
 } UDPContext;
 
 #define UDP_TX_BUF_SIZE 32768
+#define UDP_MAX_PKT_SIZE 65536
 
 #ifdef CONFIG_IPV6
 
@@ -396,6 +397,11 @@
             perror("setsockopt sndbuf");
             goto fail;
         }
+    } else {
+        /* set udp recv buffer size to the largest possible udp packet size to
+         * avoid losing data on OSes that set this too low by default. */
+        tmp = UDP_MAX_PKT_SIZE;
+        setsockopt(udp_fd, SOL_SOCKET, SO_RCVBUF, &tmp, sizeof(tmp));
     }
 
     s->udp_fd = udp_fd;