mirror of
https://github.com/mpv-player/mpv.git
synced 2024-09-20 12:02:23 +02:00
Add heartbeat-cmd option
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25639 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
91ba3d6531
commit
c3d4f52d7c
@ -836,6 +836,24 @@ More intense frame dropping (breaks decoding).
|
|||||||
Leads to image distortion!
|
Leads to image distortion!
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
|
.B \-heartbeat-cmd
|
||||||
|
Command that is executed every 30 seconds during playback via system() -
|
||||||
|
i.e. using the shell.
|
||||||
|
.sp 1
|
||||||
|
.I NOTE:
|
||||||
|
MPlayer uses this command without any checking, it is your responsibility
|
||||||
|
to ensure it does not cause security problems (e.g. make sure to use full
|
||||||
|
paths if "." is in your path like on Windows).
|
||||||
|
.sp 1
|
||||||
|
This can be "misused" to disable screensavers that do not support the proper
|
||||||
|
X API for this.
|
||||||
|
.sp 1
|
||||||
|
.I EXAMPLE for gnome screensaver:
|
||||||
|
mplayer \-heartbeat-cmd "gnome-screensaver-command -p" file
|
||||||
|
.RE
|
||||||
|
.PD 1
|
||||||
|
.
|
||||||
|
.TP
|
||||||
.B \-identify
|
.B \-identify
|
||||||
Shorthand for \-msglevel identify=4.
|
Shorthand for \-msglevel identify=4.
|
||||||
Show file parameters in an easily parseable format.
|
Show file parameters in an easily parseable format.
|
||||||
|
@ -207,6 +207,7 @@ const m_option_t mplayer_opts[]={
|
|||||||
{"stop_xscreensaver", "Use -stop-xscreensaver instead, options with _ have been obsoleted.\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
|
{"stop_xscreensaver", "Use -stop-xscreensaver instead, options with _ have been obsoleted.\n", CONF_TYPE_PRINT, 0, 0, 0, NULL},
|
||||||
{"fstype", &vo_fstype_list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
|
{"fstype", &vo_fstype_list, CONF_TYPE_STRING_LIST, 0, 0, 0, NULL},
|
||||||
#endif
|
#endif
|
||||||
|
{"heartbeat-cmd", &heartbeat_cmd, CONF_TYPE_STRING, 0, 0, 0, NULL},
|
||||||
{"mouseinput", &vo_nomouse_input, CONF_TYPE_FLAG, 0, 1, 0, NULL},
|
{"mouseinput", &vo_nomouse_input, CONF_TYPE_FLAG, 0, 1, 0, NULL},
|
||||||
{"nomouseinput", &vo_nomouse_input, CONF_TYPE_FLAG,0, 0, 1, NULL},
|
{"nomouseinput", &vo_nomouse_input, CONF_TYPE_FLAG,0, 0, 1, NULL},
|
||||||
|
|
||||||
|
10
mplayer.c
10
mplayer.c
@ -89,6 +89,8 @@ int enable_mouse_movements=0;
|
|||||||
char * proc_priority=NULL;
|
char * proc_priority=NULL;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
char *heartbeat_cmd;
|
||||||
|
|
||||||
#define ROUND(x) ((int)((x)<0 ? (x)-0.5 : (x)+0.5))
|
#define ROUND(x) ((int)((x)<0 ? (x)-0.5 : (x)+0.5))
|
||||||
|
|
||||||
#ifdef HAVE_RTC
|
#ifdef HAVE_RTC
|
||||||
@ -3442,6 +3444,14 @@ if(!mpctx->sh_video) {
|
|||||||
xscreensaver_heartbeat();
|
xscreensaver_heartbeat();
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
if (heartbeat_cmd) {
|
||||||
|
static unsigned last_heartbeat;
|
||||||
|
unsigned now = GetTimerMS();
|
||||||
|
if (now - last_heartbeat > 30000) {
|
||||||
|
last_heartbeat = now;
|
||||||
|
system(heartbeat_cmd);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
frame_time_remaining = sleep_until_update(&time_frame, &aq_sleep_time);
|
frame_time_remaining = sleep_until_update(&time_frame, &aq_sleep_time);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user