if( p_sys->p_mux != NULL )
{
sout_stream_id_t *id = p_sys->es[0];
- id->rtsp_id = RtspAddId( p_sys->rtsp, id, 0,
+ id->rtsp_id = RtspAddId( p_sys->rtsp, id, 0, GetDWBE( id->ssrc ),
p_sys->psz_destination, p_sys->i_ttl,
id->i_port, id->i_port + 1 );
}
if( p_sys->rtsp != NULL )
id->rtsp_id = RtspAddId( p_sys->rtsp, id, p_sys->i_es,
+ GetDWBE( id->ssrc ),
p_sys->psz_destination,
p_sys->i_ttl, id->i_port, id->i_port + 1 );
void RtspUnsetup( rtsp_stream_t *rtsp );
rtsp_stream_id_t *RtspAddId( rtsp_stream_t *rtsp, sout_stream_id_t *sid,
- unsigned i,
+ unsigned i, uint32_t ssrc,
const char *dst, int ttl,
unsigned loport, unsigned hiport );
void RtspDelId( rtsp_stream_t *rtsp, rtsp_stream_id_t * );
httpd_url_t *url;
const char *dst;
int ttl;
- unsigned loport, hiport;
+ uint32_t ssrc;
+ uint16_t loport, hiport;
};
rtsp_stream_id_t *RtspAddId( rtsp_stream_t *rtsp, sout_stream_id_t *sid,
- unsigned num,
+ unsigned num, uint32_t ssrc,
/* Multicast stuff - TODO: cleanup */
const char *dst, int ttl,
unsigned loport, unsigned hiport )
id->stream = rtsp;
id->sout_id = sid;
+ id->ssrc = ssrc;
/* TODO: can we assume that this need not be strdup'd? */
id->dst = dst;
if( id->dst != NULL )
httpd_MsgAdd( answer, "Transport",
"RTP/AVP/UDP;unicast;source=%s;"
"client_port=%u-%u;server_port=%u-%u;"
- "mode=play",
+ "ssrc=%08X;mode=play",
src, loport, loport + 1, sport,
- sport + 1 );
+ sport + 1, id->ssrc );
}
else
{
httpd_MsgAdd( answer, "Transport",
"RTP/AVP/UDP;unicast;"
"client_port=%u-%u;server_port=%u-%u;"
- "mode=play",
- loport, loport + 1, sport, sport + 1 );
+ "ssrc=%08X;mode=play",
+ loport, loport + 1, sport, sport + 1,
+ id->ssrc );
}
answer->i_status = 200;