[vlc-devel] commit: Remove splice support - it does not quite help for UDP & DCCP ( Rémi Denis-Courmont )
git version control
git at videolan.org
Sat May 3 22:06:06 CEST 2008
vlc | branch: master | Rémi Denis-Courmont <rem at videolan.org> | Sat May 3 23:06:41 2008 +0300| [a9b034cf7998a55b8403858e83ad481a803cf79d]
Remove splice support - it does not quite help for UDP & DCCP
(at least currently)
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a9b034cf7998a55b8403858e83ad481a803cf79d
---
configure.ac | 4 ----
modules/stream_out/rtp.c | 38 --------------------------------------
2 files changed, 0 insertions(+), 42 deletions(-)
diff --git a/configure.ac b/configure.ac
index 1bb0cac..a39434c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -474,10 +474,6 @@ AH_BOTTOM([#include <vlc_fixups.h>])
AC_CHECK_FUNCS(mmap, [VLC_ADD_PLUGIN([access_mmap])])
-AS_IF([test "${SYS}" = "linux"], [
- AC_CHECK_FUNCS(tee)
-])
-
dnl Check for setlocal and langinfo
AC_CHECK_FUNCS(setlocale)
AC_CHECK_HEADERS(langinfo.h)
diff --git a/modules/stream_out/rtp.c b/modules/stream_out/rtp.c
index f0aae26..41a163b 100644
--- a/modules/stream_out/rtp.c
+++ b/modules/stream_out/rtp.c
@@ -1361,17 +1361,6 @@ static void ThreadSend( vlc_object_t *p_this )
{
sout_stream_id_t *id = (sout_stream_id_t *)p_this;
unsigned i_caching = id->i_caching;
-#ifdef HAVE_TEE
- int fd[5] = { -1, -1, -1, -1, -1 };
-
- if( pipe( fd ) )
- fd[0] = fd[1] = -1;
- else
- if( pipe( fd ) )
- fd[2] = fd[3] = -1;
- else
- fd[4] = open( "/dev/null", O_WRONLY );
-#endif
while( !id->b_die )
{
@@ -1382,12 +1371,6 @@ static void ThreadSend( vlc_object_t *p_this )
mtime_t i_date = out->i_dts + i_caching;
ssize_t len = out->i_buffer;
-#ifdef HAVE_TEE
- if( fd[4] != -1 )
- len = write( fd[1], out->p_buffer, len);
- if( len == -1 )
- continue; /* Uho - should not happen */
-#endif
mwait( i_date );
vlc_mutex_lock( &id->lock_sink );
@@ -1398,20 +1381,8 @@ static void ThreadSend( vlc_object_t *p_this )
{
SendRTCP( id->sinkv[i].rtcp, out );
-#ifdef HAVE_TEE
- tee( fd[0], fd[3], len, 0 );
- if( splice( fd[2], NULL, id->sinkv[i].rtp_fd, NULL, len,
- SPLICE_F_NONBLOCK ) >= 0 )
- continue;
- if( errno == EAGAIN )
- continue;
-
- /* splice failed */
- splice( fd[2], NULL, fd[4], NULL, len, 0 );
-#else
if( send( id->sinkv[i].rtp_fd, out->p_buffer, len, 0 ) >= 0 )
continue;
-#endif
/* Retry sending to root out soft-errors */
if( send( id->sinkv[i].rtp_fd, out->p_buffer, len, 0 ) >= 0 )
continue;
@@ -1419,11 +1390,7 @@ static void ThreadSend( vlc_object_t *p_this )
deadv[deadc++] = id->sinkv[i].rtp_fd;
}
vlc_mutex_unlock( &id->lock_sink );
-
block_Release( out );
-#ifdef HAVE_TEE
- splice( fd[0], NULL, fd[4], NULL, len, 0 );
-#endif
for( unsigned i = 0; i < deadc; i++ )
{
@@ -1441,11 +1408,6 @@ static void ThreadSend( vlc_object_t *p_this )
rtp_add_sink( id, fd, true );
}
}
-
-#ifdef HAVE_TEE
- for( unsigned i = 0; i < 5; i++ )
- close( fd[i] );
-#endif
}
int rtp_add_sink( sout_stream_id_t *id, int fd, bool rtcp_mux )
More information about the vlc-devel
mailing list