Commit a5779e7c authored by Rafaël Carré's avatar Rafaël Carré

opensles: implement drain with msleep

parent 284d24cb
...@@ -115,11 +115,17 @@ static void Clean( aout_sys_t *p_sys ) ...@@ -115,11 +115,17 @@ static void Clean( aout_sys_t *p_sys )
free( p_sys ); free( p_sys );
} }
static void Flush(audio_output_t *p_aout, bool wait) static void Flush(audio_output_t *p_aout, bool drain)
{ {
(void)wait; /* FIXME */
aout_sys_t *p_sys = p_aout->sys; aout_sys_t *p_sys = p_aout->sys;
if (drain) {
mtime_t delay;
vlc_mutex_lock( &p_sys->lock );
delay = p_sys->length;
vlc_mutex_unlock( &p_sys->lock );
msleep(delay);
} else {
vlc_mutex_lock( &p_sys->lock ); vlc_mutex_lock( &p_sys->lock );
SetPlayState( p_sys->playerPlay, SL_PLAYSTATE_STOPPED ); SetPlayState( p_sys->playerPlay, SL_PLAYSTATE_STOPPED );
Clear( p_sys->playerBufferQueue ); Clear( p_sys->playerBufferQueue );
...@@ -129,6 +135,7 @@ static void Flush(audio_output_t *p_aout, bool wait) ...@@ -129,6 +135,7 @@ static void Flush(audio_output_t *p_aout, bool wait)
p_sys->pp_last = &p_sys->p_chain; p_sys->pp_last = &p_sys->p_chain;
p_sys->length = 0; p_sys->length = 0;
vlc_mutex_unlock( &p_sys->lock ); vlc_mutex_unlock( &p_sys->lock );
}
} }
static void Pause(audio_output_t *p_aout, bool pause, mtime_t date) static void Pause(audio_output_t *p_aout, bool pause, mtime_t date)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment