Good point. I am using Linux and you were right the code only set time once to

struct timeval time;
time.tv_sec = 1;
time.tv_usec = 0;

I modified the code to reinitialize it before every select() call. Now I have select() returning 0 in 1 second intervals. Varying the timeout between 1 and 10 secs didn't help.

openAudio()
openAudio() is OK
Select() returns:0
Select() returns:0
Select() returns:0
Select() returns:0
Select() returns:0
...
_________________________
_______ Thomas