aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2011-05-12 15:15:07 +0200
committerAnton Khirnov <anton@khirnov.net>2011-05-13 07:38:54 +0200
commit8fb566fdf839206584b1dec7da2eb9c9540108fa (patch)
tree76abf2186c33d0ace79d07a29f5c875af34981dd
parent552a99957f7c6f6ed13795caee7ab7b9deb5d76e (diff)
downloadffmpeg-8fb566fdf839206584b1dec7da2eb9c9540108fa.tar.gz
ffmpeg: get rid of the 'q' key schizofrenia
SIGINT for quitting should be enough for everybody.
-rw-r--r--Changelog1
-rwxr-xr-xconfigure2
-rw-r--r--ffmpeg.c39
3 files changed, 4 insertions, 38 deletions
diff --git a/Changelog b/Changelog
index 3d3fe6eb57..f78150e03e 100644
--- a/Changelog
+++ b/Changelog
@@ -8,6 +8,7 @@ version <next>:
- fft and imdct optimizations for AVX (Sandy Bridge) processors
- DPX image encoder
- SMPTE 302M AES3 audio decoder
+- Remove support for quitting ffmpeg with 'q', ctrl+c should be used.
version 0.7_beta1:
diff --git a/configure b/configure
index 126a6b551c..d527ed1974 100755
--- a/configure
+++ b/configure
@@ -1069,7 +1069,6 @@ HAVE_LIST="
inet_aton
inline_asm
isatty
- kbhit
ldbrx
libdc1394_1
libdc1394_2
@@ -2792,7 +2791,6 @@ check_func ${malloc_prefix}posix_memalign && enable posix_memalign
check_func setrlimit
check_func strerror_r
check_func strtok_r
-check_func_headers conio.h kbhit
check_func_headers io.h setmode
check_func_headers lzo/lzo1x.h lzo1x_999_compress
check_lib2 "windows.h psapi.h" GetProcessMemoryInfo -lpsapi
diff --git a/ffmpeg.c b/ffmpeg.c
index 1c1be7c193..1def5426af 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -66,9 +66,6 @@
#include <sys/select.h>
#endif
-#if HAVE_KBHIT
-#include <conio.h>
-#endif
#include <time.h>
#include "cmdutils.h"
@@ -229,7 +226,6 @@ static int exit_on_error = 0;
static int using_stdin = 0;
static int verbose = 1;
static int thread_count= 1;
-static int q_pressed = 0;
static int64_t video_size = 0;
static int64_t audio_size = 0;
static int64_t extra_size = 0;
@@ -440,19 +436,9 @@ static void term_init(void)
#endif
}
-/* read a key without blocking */
-static int read_key(void)
-{
-#if HAVE_KBHIT
- if(kbhit())
- return(getch());
-#endif
- return -1;
-}
-
static int decode_interrupt_cb(void)
{
- return q_pressed || (q_pressed = read_key() == 'q');
+ return received_sigterm;
}
static int ffmpeg_exit(int ret)
@@ -1894,7 +1880,6 @@ static int transcode(AVFormatContext **output_files,
AVInputStream *ist, **ist_table = NULL;
AVInputFile *file_table;
char error[1024];
- int key;
int want_sdp = 1;
uint8_t no_packet[MAX_FILES]={0};
int no_packet_count=0;
@@ -2456,14 +2441,8 @@ static int transcode(AVFormatContext **output_files,
print_sdp(output_files, nb_output_files);
}
- if (!using_stdin && verbose >= 0) {
-#if HAVE_KBHIT
- fprintf(stderr, "Press [q] to stop encoding\n");
-#else
+ if (verbose >= 0)
fprintf(stderr, "Press ctrl-c to stop encoding\n");
-#endif
- avio_set_interrupt_cb(decode_interrupt_cb);
- }
term_init();
timer_start = av_gettime();
@@ -2477,15 +2456,6 @@ static int transcode(AVFormatContext **output_files,
redo:
ipts_min= 1e100;
opts_min= 1e100;
- /* if 'q' pressed, exits */
- if (!using_stdin) {
- if (q_pressed)
- break;
- /* read_key() returns 0 on EOF */
- key = read_key();
- if (key == 'q')
- break;
- }
/* select the stream that we must read now by looking at the
smallest output pts */
@@ -4372,10 +4342,7 @@ int main(int argc, char **argv)
#endif
av_register_all();
-#if HAVE_ISATTY
- if(isatty(STDIN_FILENO))
- avio_set_interrupt_cb(decode_interrupt_cb);
-#endif
+ avio_set_interrupt_cb(decode_interrupt_cb);
init_opts();