@ -506,6 +506,18 @@ static int rtsp_read_play(AVFormatContext *s)
av_log ( s , AV_LOG_DEBUG , " hello state=%d \n " , rt - > state ) ;
rt - > nb_byes = 0 ;
if ( rt - > lower_transport = = RTSP_LOWER_TRANSPORT_UDP ) {
for ( i = 0 ; i < rt - > nb_rtsp_streams ; i + + ) {
RTSPStream * rtsp_st = rt - > rtsp_streams [ i ] ;
/* Try to initialize the connection state in a
* potential NAT router by sending dummy packets .
* RTP / RTCP dummy packets are used for RDT , too .
*/
if ( rtsp_st - > rtp_handle & &
! ( rt - > server_type = = RTSP_SERVER_WMS & & i > 1 ) )
ff_rtp_send_punch_packets ( rtsp_st - > rtp_handle ) ;
}
}
if ( ! ( rt - > server_type = = RTSP_SERVER_REAL & & rt - > need_subscription ) ) {
if ( rt - > transport = = RTSP_TRANSPORT_RTP ) {
for ( i = 0 ; i < rt - > nb_rtsp_streams ; i + + ) {
@ -542,9 +554,6 @@ static int rtsp_read_play(AVFormatContext *s)
AVStream * st = NULL ;
if ( ! rtpctx | | rtsp_st - > stream_index < 0 )
continue ;
if ( CONFIG_RTPDEC & &
! ( rt - > server_type = = RTSP_SERVER_WMS & & i > 1 ) & & s - > iformat )
ff_rtp_send_punch_packets ( rtsp_st - > rtp_handle ) ;
st = s - > streams [ rtsp_st - > stream_index ] ;
rtpctx - > range_start_offset =