@ -739,35 +739,20 @@ static void rtsp_skip_packet(AVFormatContext *s)
}
}
static void rtsp_send_cmd ( AVFormatContext * s ,
const char * cmd , RTSPMessageHeader * reply ,
unsigned char * * content_ptr )
static void
rtsp_read_reply ( AVFormatContext * s , RTSPMessageHeader * reply ,
unsigned char * * content_ptr )
{
RTSPState * rt = s - > priv_data ;
char buf [ 4096 ] , buf1 [ 1024 ] , * q ;
unsigned char ch ;
const char * p ;
int content_length , line_count ;
int content_length , line_count = 0 ;
unsigned char * content = NULL ;
memset ( reply , 0 , sizeof ( * reply ) ) ;
rt - > seq + + ;
av_strlcpy ( buf , cmd , sizeof ( buf ) ) ;
snprintf ( buf1 , sizeof ( buf1 ) , " CSeq: %d \r \n " , rt - > seq ) ;
av_strlcat ( buf , buf1 , sizeof ( buf ) ) ;
if ( rt - > session_id [ 0 ] ! = ' \0 ' & & ! strstr ( cmd , " \n If-Match: " ) ) {
snprintf ( buf1 , sizeof ( buf1 ) , " Session: %s \r \n " , rt - > session_id ) ;
av_strlcat ( buf , buf1 , sizeof ( buf ) ) ;
}
av_strlcat ( buf , " \r \n " , sizeof ( buf ) ) ;
# ifdef DEBUG
printf ( " Sending: \n %s-- \n " , buf ) ;
# endif
url_write ( rt - > rtsp_hd , buf , strlen ( buf ) ) ;
/* parse reply (XXX: use buffers) */
line_count = 0 ;
rt - > last_reply [ 0 ] = ' \0 ' ;
for ( ; ; ) {
q = buf ;
@ -821,6 +806,30 @@ static void rtsp_send_cmd(AVFormatContext *s,
av_free ( content ) ;
}
static void rtsp_send_cmd ( AVFormatContext * s ,
const char * cmd , RTSPMessageHeader * reply ,
unsigned char * * content_ptr )
{
RTSPState * rt = s - > priv_data ;
char buf [ 4096 ] , buf1 [ 1024 ] ;
rt - > seq + + ;
av_strlcpy ( buf , cmd , sizeof ( buf ) ) ;
snprintf ( buf1 , sizeof ( buf1 ) , " CSeq: %d \r \n " , rt - > seq ) ;
av_strlcat ( buf , buf1 , sizeof ( buf ) ) ;
if ( rt - > session_id [ 0 ] ! = ' \0 ' & & ! strstr ( cmd , " \n If-Match: " ) ) {
snprintf ( buf1 , sizeof ( buf1 ) , " Session: %s \r \n " , rt - > session_id ) ;
av_strlcat ( buf , buf1 , sizeof ( buf ) ) ;
}
av_strlcat ( buf , " \r \n " , sizeof ( buf ) ) ;
# ifdef DEBUG
printf ( " Sending: \n %s-- \n " , buf ) ;
# endif
url_write ( rt - > rtsp_hd , buf , strlen ( buf ) ) ;
rtsp_read_reply ( rt , reply , content_ptr ) ;
}
/* close and free RTSP streams */
static void rtsp_close_streams ( RTSPState * rt )