[FFmpeg-devel] [PATCH] ffplay: Exit on ctrl-c.

Michael Niedermayer michaelni at gmx.at
Mon Jan 9 07:03:55 CET 2012


This allows to get out of ffplay if it or SDL got stuck.
This for example happens when the audio driver is playing something
else and doesnt support mixing multiple sources.

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
---
 ffplay.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/ffplay.c b/ffplay.c
index 1c4289c..bd7374a 100644
--- a/ffplay.c
+++ b/ffplay.c
@@ -27,6 +27,7 @@
 #include <inttypes.h>
 #include <math.h>
 #include <limits.h>
+#include <signal.h>
 #include "libavutil/avstring.h"
 #include "libavutil/colorspace.h"
 #include "libavutil/mathematics.h"
@@ -925,6 +926,11 @@ static void do_exit(VideoState *is)
     exit(0);
 }
 
+static void sigterm_handler(int sig)
+{
+    exit(123);
+}
+
 static int video_open(VideoState *is, int force_set_video_mode)
 {
     int flags = SDL_HWSURFACE | SDL_ASYNCBLIT | SDL_HWACCEL;
@@ -3182,6 +3188,9 @@ int main(int argc, char **argv)
 
     init_opts();
 
+    signal(SIGINT , sigterm_handler); /* Interrupt (ANSI).    */
+    signal(SIGTERM, sigterm_handler); /* Termination (ANSI).  */
+
     show_banner(argc, argv, options);
 
     parse_options(NULL, argc, argv, options, opt_input_file);
-- 
1.7.5.4



More information about the ffmpeg-devel mailing list