OSDN Git Service

udp: support old, crappy non pthread mode
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 4 Jun 2011 14:55:22 +0000 (16:55 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 4 Jun 2011 14:55:22 +0000 (16:55 +0200)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
configure
libavformat/udp.c

index c054f81..a1110bd 100755 (executable)
--- a/configure
+++ b/configure
@@ -1493,7 +1493,7 @@ mmst_protocol_deps="network"
 rtmp_protocol_select="tcp_protocol"
 rtp_protocol_select="udp_protocol"
 tcp_protocol_deps="network"
-udp_protocol_deps="network pthreads"
+udp_protocol_deps="network"
 
 # filters
 blackframe_filter_deps="gpl"
index 7a01d29..7c18fb7 100644 (file)
 #include "network.h"
 #include "os_support.h"
 #include "url.h"
+
+#if HAVE_PTHREADS
 #include <pthread.h>
+#endif
+
 #include <sys/time.h>
 
 #ifndef IPV6_ADD_MEMBERSHIP
@@ -58,7 +62,9 @@ typedef struct {
     int circular_buffer_size;
     AVFifoBuffer *fifo;
     int circular_buffer_error;
+#if HAVE_PTHREADS
     pthread_t circular_buffer_thread;
+#endif
 } UDPContext;
 
 #define UDP_TX_BUF_SIZE 32768
@@ -505,6 +511,7 @@ static int udp_open(URLContext *h, const char *uri, int flags)
 
     s->udp_fd = udp_fd;
 
+#if HAVE_PTHREADS
     if (!is_output && s->circular_buffer_size) {
         /* start the task going */
         s->fifo = av_fifo_alloc(s->circular_buffer_size);
@@ -513,6 +520,7 @@ static int udp_open(URLContext *h, const char *uri, int flags)
             goto fail;
         }
     }
+#endif
 
     return 0;
  fail: