mirror of https://github.com/mpv-player/mpv
Patch from Andreas Hess <jaska@gmx.net>:
rtsp://<host>/<file>:<port> is not a valid URL, but rtsp://<host>:<port>/<file> is. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@10318 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
fd55a47f01
commit
2b73c29ab6
|
@ -948,36 +948,31 @@ realrtsp_streaming_start( stream_t *stream ) {
|
|||
char *mrl;
|
||||
int port;
|
||||
int redirected, temp;
|
||||
char aport[10];
|
||||
if( stream==NULL ) return -1;
|
||||
|
||||
temp = 5; // counter so we don't get caught in infinite redirections (you never know)
|
||||
|
||||
do {
|
||||
|
||||
redirected = 0;
|
||||
redirected = 0;
|
||||
|
||||
fd = connect2Server( stream->streaming_ctrl->url->hostname,
|
||||
port = (stream->streaming_ctrl->url->port ? stream->streaming_ctrl->url->port : 554) );
|
||||
printf("rtsp:// fd=%d\n",fd);
|
||||
if(fd<0) return -1;
|
||||
|
||||
sprintf(aport,"%d",port);
|
||||
mrl = (char *)malloc(strlen(stream->streaming_ctrl->url->url)+1+10+1);
|
||||
strcpy(mrl,stream->streaming_ctrl->url->url);
|
||||
strcat(mrl,":");
|
||||
strcat(mrl,aport);
|
||||
rtsp = rtsp_session_start(fd,&mrl, stream->streaming_ctrl->url->file,
|
||||
stream->streaming_ctrl->url->hostname, port, &redirected);
|
||||
fd = connect2Server( stream->streaming_ctrl->url->hostname,
|
||||
port = (stream->streaming_ctrl->url->port ? stream->streaming_ctrl->url->port : 554) );
|
||||
if(fd<0) return -1;
|
||||
|
||||
mrl = malloc(sizeof(char)*(strlen(stream->streaming_ctrl->url->hostname)+strlen(stream->streaming_ctrl->url->file)+16));
|
||||
sprintf(mrl,"rtsp://%s:%i/%s",stream->streaming_ctrl->url->hostname,port,stream->streaming_ctrl->url->file);
|
||||
rtsp = rtsp_session_start(fd,&mrl, stream->streaming_ctrl->url->file,
|
||||
stream->streaming_ctrl->url->hostname, port, &redirected);
|
||||
|
||||
if ( redirected == 1 ) {
|
||||
url_free(stream->streaming_ctrl->url);
|
||||
stream->streaming_ctrl->url = url_new(mrl);
|
||||
closesocket(fd);
|
||||
}
|
||||
if ( redirected == 1 ) {
|
||||
url_free(stream->streaming_ctrl->url);
|
||||
stream->streaming_ctrl->url = url_new(mrl);
|
||||
closesocket(fd);
|
||||
}
|
||||
|
||||
free(mrl);
|
||||
temp--;
|
||||
free(mrl);
|
||||
temp--;
|
||||
|
||||
} while( (redirected != 0) && (temp > 0) );
|
||||
|
||||
|
|
Loading…
Reference in New Issue