mirror of
https://github.com/vdr-projects/vdr.git
synced 2025-03-01 10:50:46 +00:00
Edited recordings now show error count of original if there are no error indicators in the index
This commit is contained in:
parent
d8ab5dc5c6
commit
d00ae923ab
4
HISTORY
4
HISTORY
@ -9984,7 +9984,7 @@ Video Disk Recorder Revision History
|
||||
version numbering. Version numbers are simply counted upwards, with each of the three
|
||||
parts ("version", "major", "minor") always being a single digit, and '0' being skipped.
|
||||
|
||||
2024-09-19:
|
||||
2024-09-20:
|
||||
|
||||
- Fix for compilers that don't like non-constant format strings (thanks to Stefan Hofmann).
|
||||
- Deprecated code is now marked with [[deprecated]] to issue a compile time warning when
|
||||
@ -10012,5 +10012,5 @@ Video Disk Recorder Revision History
|
||||
- The info file of an edited recording now contains the number of errors in the edited
|
||||
version. Note that this applies only to recordings that have errors stored in their
|
||||
index file. If errors are not stored in the index file, the edited version will have
|
||||
its number of errors set to zero.
|
||||
its number of errors set to that of the original recording.
|
||||
APIVERSNUM is now 30005.
|
||||
|
12
cutter.c
12
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 5.2 2024/09/19 20:21:58 kls Exp $
|
||||
* $Id: cutter.c 5.3 2024/09/20 21:34:18 kls Exp $
|
||||
*/
|
||||
|
||||
#include "cutter.h"
|
||||
@ -302,6 +302,10 @@ cCuttingThread::cCuttingThread(const char *FromFileName, const char *ToFileName,
|
||||
maxVideoFileSize = MEGABYTE(Setup.MaxVideoFileSize);
|
||||
if (isPesRecording && maxVideoFileSize > MEGABYTE(MAXVIDEOFILESIZEPES))
|
||||
maxVideoFileSize = MEGABYTE(MAXVIDEOFILESIZEPES);
|
||||
if (fromIndex->GetErrors()->Size() > 0) {
|
||||
recordingInfo->SetErrors(0); // the fromIndex has error indicators, so we reset the error count
|
||||
recordingInfo->Write();
|
||||
}
|
||||
Start();
|
||||
}
|
||||
else
|
||||
@ -616,6 +620,9 @@ void cCuttingThread::HandleErrors(bool Force)
|
||||
if (frameErrors > recordingInfo->Errors()) {
|
||||
recordingInfo->SetErrors(frameErrors);
|
||||
recordingInfo->Write();
|
||||
Force = true;
|
||||
}
|
||||
if (Force) {
|
||||
LOCK_RECORDINGS_WRITE;
|
||||
Recordings->UpdateByName(editedRecordingName);
|
||||
}
|
||||
@ -631,6 +638,7 @@ void cCuttingThread::Action(void)
|
||||
if (!fromFile || !toFile)
|
||||
return;
|
||||
int LastEndIndex = -1;
|
||||
HandleErrors(true); // to make sure an initially reset error count is displayed correctly
|
||||
while (BeginMark && Running()) {
|
||||
// Suspend cutting if we have severe throughput problems:
|
||||
if (Throttled()) {
|
||||
@ -706,8 +714,8 @@ bool cCutter::Start(void)
|
||||
cRecordingUserCommand::InvokeCommand(RUC_EDITINGRECORDING, editedVersionName, originalVersionName);
|
||||
if (cVideoDirectory::RemoveVideoFile(editedVersionName) && MakeDirs(editedVersionName, true)) {
|
||||
recordingInfo.Read();
|
||||
recordingInfo.SetErrors(0);
|
||||
recordingInfo.SetFileName(editedVersionName);
|
||||
recordingInfo.Write();
|
||||
SetRecordingTimerId(editedVersionName, cString::sprintf("%d@%s", 0, Setup.SVDRPHostName));
|
||||
cuttingThread = new cCuttingThread(originalVersionName, editedVersionName, &recordingInfo);
|
||||
return true;
|
||||
|
6
vdr.5
6
vdr.5
@ -8,7 +8,7 @@
|
||||
.\" License as specified in the file COPYING that comes with the
|
||||
.\" vdr distribution.
|
||||
.\"
|
||||
.\" $Id: vdr.5 5.11 2024/09/19 20:21:58 kls Exp $
|
||||
.\" $Id: vdr.5 5.12 2024/09/20 21:34:18 kls Exp $
|
||||
.\"
|
||||
.TH vdr 5 "27 Dec 2021" "2.7" "Video Disk Recorder Files"
|
||||
.SH NAME
|
||||
@ -825,7 +825,9 @@ The 'O' tag contains the number of errors that occurred during recording.
|
||||
If it is zero, the recording can be safely considered error free. The higher the value,
|
||||
the more damaged the recording is.
|
||||
If this is an edited recording, the number of errors is that of the edited
|
||||
recording.
|
||||
recording, if the index of the original recording contains error indicators
|
||||
(i.e. the original recording's index was created with VDR version 2.7.2 or
|
||||
later). Otherwise it's the number of errors in the original recording.
|
||||
.SS RESUME
|
||||
The file \fIresume\fR (if present in a recording directory) contains
|
||||
the position within the recording where the last replay session left off.
|
||||
|
Loading…
x
Reference in New Issue
Block a user