The script that gets called for recordings is now also called right before a recording is edited

This commit is contained in:
Klaus Schmidinger 2015-04-11 12:12:43 +02:00
parent 7d49075079
commit 38ee88e5ee
5 changed files with 23 additions and 11 deletions

View File

@ -3365,6 +3365,8 @@ Dieter Ferdinand <dieter.ferdinand@gmx.de>
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 <jasmin@anw.at>
for modifying the CAM API so that it is possible to implement CAMs that can be freely

View File

@ -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).

13
INSTALL
View File

@ -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"

View File

@ -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);

View File

@ -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: