From 38ee88e5ee4c412cbd1f71dde672acdcd6f35d06 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sat, 11 Apr 2015 12:12:43 +0200 Subject: [PATCH] The script that gets called for recordings is now also called right before a recording is edited --- CONTRIBUTORS | 2 ++ HISTORY | 3 +++ INSTALL | 13 +++++++++---- cutter.c | 3 ++- recording.h | 13 +++++++------ 5 files changed, 23 insertions(+), 11 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index d80adb5c..b293b066 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -3365,6 +3365,8 @@ Dieter Ferdinand case replay was paused for reporting a problem with the system getting unresponsive when removing a huge number of files in the thread that removes deleted recordings + for suggesting to call the script that gets called for recordings also right before a + recording is edited Jasmin Jessich for modifying the CAM API so that it is possible to implement CAMs that can be freely diff --git a/HISTORY b/HISTORY index e4703349..b259e399 100644 --- a/HISTORY +++ b/HISTORY @@ -8622,3 +8622,6 @@ Video Disk Recorder Revision History - Fixed scaling subtitles (their areas could sometimes extend outside the actual OSD). - Reduced the priority of the "video directory scanner" thread (suggested by Thomas Reufer) and checking cIoThrottle::Engaged() when it is running. +- The script that gets called for recordings is now also called right before a + recording is edited, with the first parameter being "editing" (suggested by + Dieter Ferdinand). diff --git a/INSTALL b/INSTALL index ae75900b..0f36ada2 100644 --- a/INSTALL +++ b/INSTALL @@ -268,19 +268,20 @@ You can use the '-r' option to define a program or script that gets called before and after a recording is performed, and after an editing process has finished or a recording has been deleted. -The program will be called with two or three (in case of "edited") string -parameters. The first parameter is one of +The program will be called with two or three (in case of "editing" and "edited") +string parameters. The first parameter is one of before if this is *before* a recording starts started if this is after a recording has *started* after if this is *after* a recording has finished + editing if this is before *editing* a recording edited if this is after a recording has been *edited* deleted if this is after a recording has been *deleted* and the second parameter contains the full name of the recording's directory (which may not yet exists at that moment in the "before" case). -In the "edited" case it will be the name of the edited version (second -parameter) and the name of the source version (third parameter). +In the "editing" and "edited" case it will be the name of the edited version +(second parameter) and the name of the source version (third parameter). In the "deleted" case the extension of the directory name is ".del" instead of ".rec". @@ -304,6 +305,10 @@ case "$1" in after) echo "After recording $2" ;; + editing) + echo "Editing recording $2" + echo "Source recording $3" + ;; edited) echo "Edited recording $2" echo "Source recording $3" diff --git a/cutter.c b/cutter.c index 9aee66b9..55a3cd4d 100644 --- a/cutter.c +++ b/cutter.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: cutter.c 3.4 2013/10/02 13:18:02 kls Exp $ + * $Id: cutter.c 4.1 2015/04/11 12:03:25 kls Exp $ */ #include "cutter.h" @@ -675,6 +675,7 @@ bool cCutter::Start(void) editedVersionName = EditedFileName(originalVersionName); if (*editedVersionName) { if (strcmp(originalVersionName, editedVersionName) != 0) { // names must be different! + cRecordingUserCommand::InvokeCommand(RUC_EDITINGRECORDING, editedVersionName, originalVersionName); if (cVideoDirectory::RemoveVideoFile(editedVersionName) && MakeDirs(editedVersionName, true)) { Recording.WriteInfo(editedVersionName); Recordings.AddByName(editedVersionName, false); diff --git a/recording.h b/recording.h index 876e0b25..5360b13d 100644 --- a/recording.h +++ b/recording.h @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: recording.h 3.8 2015/02/07 14:29:14 kls Exp $ + * $Id: recording.h 4.1 2015/04/11 12:01:59 kls Exp $ */ #ifndef __RECORDING_H @@ -392,11 +392,12 @@ public: ///< recording. }; -#define RUC_BEFORERECORDING "before" -#define RUC_STARTRECORDING "started" -#define RUC_AFTERRECORDING "after" -#define RUC_EDITEDRECORDING "edited" -#define RUC_DELETERECORDING "deleted" +#define RUC_BEFORERECORDING "before" +#define RUC_STARTRECORDING "started" +#define RUC_AFTERRECORDING "after" +#define RUC_EDITINGRECORDING "editing" +#define RUC_EDITEDRECORDING "edited" +#define RUC_DELETERECORDING "deleted" class cRecordingUserCommand { private: