mirror of
https://github.com/mpv-player/mpv
synced 2025-03-24 04:08:19 +00:00
Modifies behavior of -edlout
Now it creates a new file and writes edit decision list (EDL) records to it just as it did before but instead of making pas-2-seconds blocks for each 'i' keystroke lets the user hits 'i' to mark the start or end of a block. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18916 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
f78a2c4910
commit
d2e67a69fb
@ -304,7 +304,7 @@ Adjust subtitle delay by +/- 0.1 seconds.
|
||||
.IPs "r and t"
|
||||
Move subtitles up/down.
|
||||
.IPs "i (\-edlout mode only)"
|
||||
Set EDL mark.
|
||||
Set start or end of an EDL skip and write it out to the given file.
|
||||
.IPs "s (\-vf screenshot only)"
|
||||
Take a screenshot.
|
||||
.IPs "I"
|
||||
@ -727,9 +727,8 @@ Support must be compiled in by configuring with --enable-crash-debug.
|
||||
.
|
||||
.TP
|
||||
.B \-edlout <filename>
|
||||
Creates a new file and writes edit decision list (EDL) records to that file.
|
||||
During playback, when the user hits 'i', an entry to skip over the last two
|
||||
seconds of playback will be written to the file.
|
||||
Creates a new file and writes edit decision list (EDL) records to it.
|
||||
During playback, the user hits 'i' to mark the start or end of a skip block
|
||||
This provides a starting point from which the user can fine-tune EDL entries
|
||||
later.
|
||||
See DOCS/\:HTML/\:en/\:edl.html for details.
|
||||
|
@ -198,6 +198,9 @@ static char help_text[]=
|
||||
#define MSGTR_EdlBadLineOverlap "Last stop position was [%f]; next start is [%f].\n"\
|
||||
"Entries must be in chronological order, cannot overlap. Discarding.\n"
|
||||
#define MSGTR_EdlBadLineBadStop "Stop time has to be after start time.\n"
|
||||
#define MSGTR_EdloutBadStop "EDL skip canceled, last start > stop\n"
|
||||
#define MSGTR_EdloutStartSkip "EDL skip start, press 'i' again to end block.\n"
|
||||
#define MSGTR_EdloutEndSkip "EDL skip end, line written.\n"
|
||||
|
||||
// mplayer.c OSD
|
||||
|
||||
|
17
mplayer.c
17
mplayer.c
@ -397,6 +397,7 @@ short user_muted = 0; ///< Stores whether user wanted muted mode.
|
||||
short edl_muted = 0; ///< Stores whether EDL is currently in muted mode.
|
||||
short edl_decision = 0; ///< 1 when an EDL operation has been made.
|
||||
FILE* edl_fd = NULL; ///< fd to write to when in -edlout mode.
|
||||
float begin_skip = MP_NOPTS_VALUE; ///< start time of the current skip while on edlout mode
|
||||
|
||||
static unsigned int inited_flags=0;
|
||||
#define INITED_VO 1
|
||||
@ -4226,7 +4227,21 @@ if(step_sec>0) {
|
||||
if( edl_fd ) {
|
||||
float v = sh_video ? sh_video->pts :
|
||||
playing_audio_pts(sh_audio, d_audio, audio_out);
|
||||
fprintf( edl_fd, "%f %f %d\n", v-2, v, 0 );
|
||||
|
||||
if(begin_skip == MP_NOPTS_VALUE)
|
||||
{
|
||||
begin_skip = v;
|
||||
mp_msg(MSGT_CPLAYER, MSGL_INFO, MSGTR_EdloutStartSkip);
|
||||
}else{
|
||||
if(begin_skip > v)
|
||||
{
|
||||
mp_msg(MSGT_CPLAYER, MSGL_WARN, MSGTR_EdloutBadStop);
|
||||
}else{
|
||||
fprintf(edl_fd, "%f %f %d\n", begin_skip, v, 0);
|
||||
mp_msg(MSGT_CPLAYER, MSGL_INFO, MSGTR_EdloutEndSkip);
|
||||
}
|
||||
begin_skip = MP_NOPTS_VALUE;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case MP_CMD_SWITCH_RATIO : {
|
||||
|
Loading…
Reference in New Issue
Block a user