Rename "stop" to "interrupt"

The purpose of video_buffer_stop() is to interrupt any blocking call, so
rename it to video_buffer_interrupt().
pull/449/head
Romain Vimont 5 years ago
parent fff87095d9
commit 84270e2d18

@ -317,7 +317,7 @@ SDL_bool decoder_start(struct decoder *decoder) {
}
void decoder_stop(struct decoder *decoder) {
video_buffer_stop(decoder->video_buffer);
video_buffer_interrupt(decoder->video_buffer);
}
void decoder_join(struct decoder *decoder) {

@ -27,7 +27,7 @@ SDL_bool video_buffer_init(struct video_buffer *vb) {
SDL_DestroyMutex(vb->mutex);
goto error_2;
}
vb->stopped = SDL_FALSE;
vb->interrupted = SDL_FALSE;
#endif
// there is initially no rendering frame, so consider it has already been
@ -65,7 +65,7 @@ SDL_bool video_buffer_offer_decoded_frame(struct video_buffer *vb) {
#ifndef SKIP_FRAMES
// if SKIP_FRAMES is disabled, then the decoder must wait for the current
// frame to be consumed
while (!vb->rendering_frame_consumed && !vb->stopped) {
while (!vb->rendering_frame_consumed && !vb->interrupted) {
cond_wait(vb->rendering_frame_consumed_cond, vb->mutex);
}
#else
@ -97,12 +97,12 @@ const AVFrame *video_buffer_consume_rendered_frame(struct video_buffer *vb) {
return vb->rendering_frame;
}
void video_buffer_stop(struct video_buffer *vb) {
void video_buffer_interrupt(struct video_buffer *vb) {
#ifdef SKIP_FRAMES
(void) vb; // unused
#else
mutex_lock(vb->mutex);
vb->stopped = SDL_TRUE;
vb->interrupted = SDL_TRUE;
mutex_unlock(vb->mutex);
// wake up blocking wait
cond_signal(vb->rendering_frame_consumed_cond);

@ -15,7 +15,7 @@ struct video_buffer {
AVFrame *rendering_frame;
SDL_mutex *mutex;
#ifndef SKIP_FRAMES
SDL_bool stopped;
SDL_bool interrupted;
SDL_cond *rendering_frame_consumed_cond;
#endif
SDL_bool rendering_frame_consumed;
@ -37,6 +37,6 @@ SDL_bool video_buffer_offer_decoded_frame(struct video_buffer *vb);
const AVFrame *video_buffer_consume_rendered_frame(struct video_buffer *vb);
// wake up and avoid any blocking call
void video_buffer_stop(struct video_buffer *vb);
void video_buffer_interrupt(struct video_buffer *vb);
#endif

Loading…
Cancel
Save