mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2024-11-26 13:00:33 +00:00
Use sdp c= line if the rtsp Transport line doesn't have a destination
Transport:destination in rtsp is optional, c= line in sdp is compulsory Patch from Armand Bendanan (name.surnameATfreeDOTfr) Originally committed as revision 20362 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
76e6e9c330
commit
224b44957b
@ -1125,12 +1125,19 @@ make_setup_request (AVFormatContext *s, const char *host, int port,
|
||||
{
|
||||
char url[1024];
|
||||
struct in_addr in;
|
||||
int port, ttl;
|
||||
|
||||
in.s_addr = htonl(reply->transports[0].destination);
|
||||
if (reply->transports[0].destination) {
|
||||
in.s_addr = htonl(reply->transports[0].destination);
|
||||
port = reply->transports[0].port_min;
|
||||
ttl = reply->transports[0].ttl;
|
||||
} else {
|
||||
in = rtsp_st->sdp_ip;
|
||||
port = rtsp_st->sdp_port;
|
||||
ttl = rtsp_st->sdp_ttl;
|
||||
}
|
||||
snprintf(url, sizeof(url), "rtp://%s:%d?ttl=%d",
|
||||
inet_ntoa(in),
|
||||
reply->transports[0].port_min,
|
||||
reply->transports[0].ttl);
|
||||
inet_ntoa(in), port, ttl);
|
||||
if (url_open(&rtsp_st->rtp_handle, url, URL_RDWR) < 0) {
|
||||
err = AVERROR_INVALIDDATA;
|
||||
goto fail;
|
||||
|
Loading…
Reference in New Issue
Block a user