[FFmpeg-cvslog] r24037 - in trunk: Changelog doc/ffplay-doc.texi ffplay.c
stefano
subversion
Sun Jul 4 14:43:12 CEST 2010
Author: stefano
Date: Sun Jul 4 14:43:12 2010
New Revision: 24037
Log:
Implement -onkeydown and -onmousedown options for ffplay.
Patch by Alexei Svitkine cout << name << "." << surname << "@" << "gmail.com".
See thread:
Subject: [FFmpeg-devel] new command-line option for ffplay
Date: Wed, 23 Jun 2010 09:13:50 -0400
Modified:
trunk/Changelog
trunk/doc/ffplay-doc.texi
trunk/ffplay.c
Modified: trunk/Changelog
==============================================================================
--- trunk/Changelog Sun Jul 4 12:49:58 2010 (r24036)
+++ trunk/Changelog Sun Jul 4 14:43:12 2010 (r24037)
@@ -18,6 +18,7 @@ version <next>:
- RTSP tunneling over HTTP
- RTP depacketization of SVQ3
- -strict inofficial replaced by -strict unofficial
+- ffplay -exitonkeydown and -exitonmousedown options added
version 0.6:
Modified: trunk/doc/ffplay-doc.texi
==============================================================================
--- trunk/doc/ffplay-doc.texi Sun Jul 4 12:49:58 2010 (r24036)
+++ trunk/doc/ffplay-doc.texi Sun Jul 4 14:43:12 2010 (r24037)
@@ -108,6 +108,10 @@ Select the desired subtitle stream numbe
refers to the list of all the input subtitle streams. If it is greater
than the number of subtitle streams minus one, then the last one is
selected, if it is negative the subtitle rendering is disabled.
+ at item -exitonkeydown
+Exit if any key is pressed.
+ at item -exitonmousedown
+Exit if any mouse button is pressed.
@end table
@section While playing
Modified: trunk/ffplay.c
==============================================================================
--- trunk/ffplay.c Sun Jul 4 12:49:58 2010 (r24036)
+++ trunk/ffplay.c Sun Jul 4 14:43:12 2010 (r24037)
@@ -260,6 +260,8 @@ static int error_recognition = FF_ER_CAR
static int error_concealment = 3;
static int decoder_reorder_pts= -1;
static int autoexit;
+static int exit_on_keydown;
+static int exit_on_mousedown;
static int loop=1;
static int framedrop=1;
@@ -2819,6 +2821,10 @@ static void event_loop(void)
SDL_WaitEvent(&event);
switch(event.type) {
case SDL_KEYDOWN:
+ if (exit_on_keydown) {
+ do_exit();
+ break;
+ }
switch(event.key.keysym.sym) {
case SDLK_ESCAPE:
case SDLK_q:
@@ -2887,6 +2893,10 @@ static void event_loop(void)
}
break;
case SDL_MOUSEBUTTONDOWN:
+ if (exit_on_mousedown) {
+ do_exit();
+ break;
+ }
case SDL_MOUSEMOTION:
if(event.type ==SDL_MOUSEBUTTONDOWN){
x= event.button.x;
@@ -3068,6 +3078,8 @@ static const OptionDef options[] = {
{ "sync", HAS_ARG | OPT_FUNC2 | OPT_EXPERT, {(void*)opt_sync}, "set audio-video sync. type (type=audio/video/ext)", "type" },
{ "threads", HAS_ARG | OPT_FUNC2 | OPT_EXPERT, {(void*)opt_thread_count}, "thread count", "count" },
{ "autoexit", OPT_BOOL | OPT_EXPERT, {(void*)&autoexit}, "exit at the end", "" },
+ { "exitonkeydown", OPT_BOOL | OPT_EXPERT, {(void*)&exit_on_keydown}, "exit on key down", "" },
+ { "exitonmousedown", OPT_BOOL | OPT_EXPERT, {(void*)&exit_on_mousedown}, "exit on mouse down", "" },
{ "loop", OPT_INT | HAS_ARG | OPT_EXPERT, {(void*)&loop}, "set number of times the playback shall be looped", "loop count" },
{ "framedrop", OPT_BOOL | OPT_EXPERT, {(void*)&framedrop}, "drop frames when cpu is too slow", "" },
{ "window_title", OPT_STRING | HAS_ARG, {(void*)&window_title}, "set window title", "window title" },
More information about the ffmpeg-cvslog
mailing list