Hello, i'm a Telecomunication student with a question about using the Real Time Protocol implemented in Common Multimedia Library (http://www-mice.cs.ucl.ac.uk/multime...mon/index.html).
First i'll try to explain our purpose on using this library.
We are sending video using several protocols. One of them is RTP. First, we create a TCP Stream to negotiate some parameters. After that, we want to use the TCP Client IP address to send it the video. The problem is where to write the code of the function "rtp_init". This one works but it's not useful for us:

....

session = rtp_init("192.168.0.99",8888,8888,16,64000,rtp_event_handle,NULL);

if ( (nsfd = accept (sfd, (struct sockaddr*)&cli_ad, &cli_ad_len) ) == -1 )
{
printf("Error en accept()\n");
exit(-1);
}
//CODE IMPLEMENTED TO SEND TCP INFORMATION



...

This one sends the video propertly, but we don't have the client address, we want the address given by TCP accept, so we could call rtp_init anywhere using a IP address provided by TCP. We would the code this way:

if ( (nsfd = accept (sfd, (struct sockaddr*)&cli_ad, &cli_ad_len) ) == -1 )
{
printf("Error en accept()\n");
exit(-1);
}
session = rtp_init(inet_ntoa(cli_ad.sin_addr),8888,8888,16,64000,rtp_event_handle,NULL);

The problem of this code is that session is fully filled but the video is not sent.The first implementation sends the video without any problem.

We would be grateful if you feedback this message.
Thanks.

PACO