This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTSP Streamer do not restart : bind error on socket



Dear All,

I re-open a Topic that i though solved (http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/100/p/206848/737480.aspx#737480)

At first I suspected that the problem was due to ONVIF device test tool but recently I reproduced the problem with a simple RTSP client.

Let me explain my problem :

Normal Case :

My IPNETCAM reference design is running and the web configuration interface is launched in IE.

If I change, for example, the resolution (I move from 1080p to 720p), it will force the av_server, wis-streamer, ... to reload.

In this case, no problem, i can see after few seconds my 720p stream in the web interface.

Problem Case :

Now, if i do the same thing but before changing the resolution, I launch an RTSP viewer (VLC, ONVIF DEVICE MANGER, ...) when the wis-streamer restart, I can see (on the uart terminal) this message : Failed to create RTSP server: bind() error (port number: 8557): Address already in use. The stream will never be available.

If I do a netstat -nan | grep 8557 command in the terminal i can see that the seocket used by the streamer is in a TIME_WAIT state and that's why when the wis-streamer try to reload, it fail to bind the socket number 8557.


Does anyone have experienced the same problem and found a solution ?

I think it is really critical as far as in a normal case of working several client can be connected on the camera and if an operator/VMS change the resolution, the streamer must restart in any case.

The only thing I found to workaround this is to make a huge (60s) between wis-streamer closing and re-opening to let the time to TIME_WAIT to timeout. This is really ugly and maybe it's more linked to how the streamer is closed.

Any help will be highly appreciated. 

Best regards

ADB

P.S. I was able to reproduce the problem on 3.1 and 4.0 Releases