Index: cfg-common.h =================================================================== --- cfg-common.h (Revision 23588) +++ cfg-common.h (Arbeitskopie) @@ -57,6 +57,7 @@ {"ipv4-only-proxy", &network_ipv4_only_proxy, CONF_TYPE_FLAG, 0, 0, 1, NULL}, {"reuse-socket", &reuse_socket, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL}, {"noreuse-socket", &reuse_socket, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL}, + {"network-timeout", &network_timeout, CONF_TYPE_INT, 0, 0, 0, NULL}, #ifdef HAVE_AF_INET6 {"prefer-ipv6", &network_prefer_ipv4, CONF_TYPE_FLAG, 0, 1, 0, NULL}, #else @@ -68,6 +69,7 @@ {"passwd", "MPlayer was compiled without streaming (network) support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, {"bandwidth", "MPlayer was compiled without streaming (network) support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, {"user-agent", "MPlayer was compiled without streaming (network) support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, + {"network-timeout", "MPlayer was compiled without streaming (network) support.\n", CONF_TYPE_PRINT, CONF_NOCFG, 0, 0, NULL}, #endif #ifdef STREAMING_LIVE555 @@ -366,6 +368,7 @@ extern char *network_useragent; extern int network_cookies_enabled; extern char *cookies_file; +extern int network_timeout; extern int network_prefer_ipv4; extern int network_ipv4_only_proxy; Index: stream/network.c =================================================================== --- stream/network.c (Revision 23588) +++ stream/network.c (Arbeitskopie) @@ -41,13 +41,14 @@ extern int stream_cache_size; /* Variables for the command line option -user, -passwd, -bandwidth, - -user-agent and -nocookies */ + -user-agent, -nocookies and -network-timeout */ char *network_username=NULL; char *network_password=NULL; int network_bandwidth=0; int network_cookies_enabled = 0; char *network_useragent=NULL; +int network_timeout=10; /* IPv6 options */ int network_ipv4_only_proxy = 0; Index: libmpdemux/demux_rtp.cpp =================================================================== --- libmpdemux/demux_rtp.cpp (Revision 23588) +++ libmpdemux/demux_rtp.cpp (Arbeitskopie) @@ -72,6 +72,7 @@ extern "C" char* network_username; extern "C" char* network_password; +extern "C" int network_timeout; static char* openURL_rtsp(RTSPClient* client, char const* url) { // If we were given a user name (and optional password), then use them: if (network_username != NULL) { @@ -505,7 +506,8 @@ TaskScheduler& scheduler = bufferQueue->readSource()->envir().taskScheduler(); int delay = bufferQueue->prevPacketPTS * 1.05 > - rtpState->mediaSession->playEndTime() ? 1000000 : 10000000; + rtpState->mediaSession->playEndTime() ? + network_timeout * 100000 : network_timeout * 1000000; task = scheduler.scheduleDelayedTask(delay, onSourceClosure, bufferQueue); scheduler.doEventLoop(&bufferQueue->blockingFlag); scheduler.unscheduleDelayedTask(task); Index: DOCS/man/en/mplayer.1 =================================================================== --- DOCS/man/en/mplayer.1 (Revision 23588) +++ DOCS/man/en/mplayer.1 (Arbeitskopie) @@ -1441,6 +1441,10 @@ .PD 1 . .TP +.B \-network-timeout (LIVE555 only) +Set network timeout. When 95% are played, a thenth is used. +. +.TP .B \-ni (AVI only) Force usage of non-interleaved AVI parser (fixes playback of some bad AVI files). Index: DOCS/man/de/mplayer.1 =================================================================== --- DOCS/man/de/mplayer.1 (Revision 23588) +++ DOCS/man/de/mplayer.1 (Arbeitskopie) @@ -1498,6 +1498,10 @@ .PD 1 . .TP +.B \-network-timeout (nur bei LIVE555) +Setzt das Netzwerktimeout fest. Nach 95% des Streams wird ein Zehntel verwendet. +. +.TP .B \-ni (nur bei AVI) Erzwingt die Benutzung des nicht-interleaved-AVI-Parsers (was die Wiedergabe einiger schlechter AVI-Dateien ermöglicht).