ffplay always requires user intervention via the GUI to close the video at the end of the file.
This commit, stops playing and terminates the program when EOF is received. --- ffplay.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/ffplay.c b/ffplay.c index c0b326c..12de7ba 100644 --- a/ffplay.c +++ b/ffplay.c @@ -593,7 +593,7 @@ static int decoder_decode_frame(Decoder *d, AVFrame *frame, AVSubtitle *sub) { if (ret == AVERROR_EOF) { d->finished = d->pkt_serial; avcodec_flush_buffers(d->avctx); - return 0; + return -1; } if (ret >= 0) return 1; @@ -2088,8 +2088,13 @@ static int video_thread(void *arg) for (;;) { ret = get_video_frame(is, frame); - if (ret < 0) - goto the_end; + if (ret < 0) { + SDL_Event event; + event.type = FF_QUIT_EVENT; + event.user.data1 = is; + SDL_PushEvent(&event); + goto the_end; + } if (!ret) continue; -- 2.7.4 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel