Added functionality based on the "jumpplay" patch

This commit is contained in:
Klaus Schmidinger 2015-01-26 10:20:51 +01:00
parent 77c0de71c4
commit 4fcd3ba56e
36 changed files with 405 additions and 39 deletions

View File

@ -2139,6 +2139,7 @@ Thomas G
which results in using tr(FileNameChars)
for fixing handling "none" color entries in XPM files
for fixing displaying the frame number when setting an editing mark
for the "jumpplay" patch
David Woodhouse <dwmw2@infradead.org>
for his help in replacing the get/put_unaligned() macros from asm/unaligned.h with
@ -2677,6 +2678,7 @@ Torsten Kunkel <vdrml@tkunkel.de>
for pointing out that it was not obvious how to initiate internationalization
support for a plugin
for suggesting to add a section about "Logging" to PLUGINS.html
for the "jumpplay" patch
Michael Nival <mnival@club-internet.fr>
for translating OSD texts to the French language

14
HISTORY
View File

@ -8414,7 +8414,7 @@ Video Disk Recorder Revision History
generated an index file with VDR version 2.0.6 you may want to do so again with this
version to make sure the index is OK.
2015-01-24: Version 2.1.8
2015-01-26: Version 2.1.8
- Updated the Italian OSD texts (thanks to Diego Pierotto).
- Fixed "warning: invalid suffix on literal" with GCC 4.8 and C++11 (thanks to Joerg
@ -8422,3 +8422,15 @@ Video Disk Recorder Revision History
- Fixed the link to "svdrpsend (1)" in the vdr.1 man page (thanks to Chris Mayo).
- Updated the Finnish OSD texts (thanks to Rolf Ahrenberg).
- Updated the Romanian OSD texts (thanks to Lucian Muresan).
- Added functionality based on the "jumpplay" patch from Torsten Kunkel and Thomas
Günther:
+ The new option "Setup/Replay/Pause replay when jumping to a mark" can be used to
turn off pausing replay when jumping to an editing mark with the '9' key.
+ The new option "Setup/Replay/Skip edited parts" can be used to automatically skip
the edited parts of a recording during replay, without the need to actually cut
the recording.
+ The new option "Setup/Replay/Pause replay at last mark" can be used to make replay
go into Pause mode when it has reached the last "end" mark.
+ The '8' key for testing an edited sequence now always jumps to the next *end*
mark. This allows for testing edits in recordings that have actually been cut, as
well as recordings that have not been cut, in case "Skip edited parts" is enabled.

24
MANUAL
View File

@ -943,6 +943,30 @@ Version 2.0
Defines whether the player automatically goes into Pause
mode when setting an editing mark.
Pause replay when jumping to a mark = yes
By default replay is automatically paused whenever you jump
to an editing mark with the '7' or '9' key in order to allow
you to easily adjust those marks. If this option is set to
'no', the '9' key will not pause if you are in Play mode and
the mark you jump to is not within 3 seconds of the end of
the recording.
Skip edited parts = no Defines whether the edited parts of a recording are
automatically skipped during replay. This includes jumping
to the first mark if replay starts at the beginning of the
recording, and stopping at the last mark.
In order to work, this option must be enabled before starting
replay.
Pause replay at last mark = no
If enabled, replay of a recording will go into Pause mode
when it has reached the last "end" mark (if any). Note that
the actual position at which the pause occurs may be a couple
of frames before the last "end" mark, depending on how much
data is buffered by your output device.
In order to work, this option must be enabled before starting
replay.
Resume ID = 0 Defines an additional ID that can be used in a multi user
environment, so that every user has his/her own resume
files for each recording. The valid range is 0...99, with

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: config.c 3.3 2015/01/12 14:32:17 kls Exp $
* $Id: config.c 3.4 2015/01/25 14:17:45 kls Exp $
*/
#include "config.h"
@ -470,6 +470,9 @@ cSetup::cSetup(void)
ShowRemainingTime = 0;
ProgressDisplayTime = 0;
PauseOnMarkSet = 0;
PauseOnMarkJump = 1;
SkipEdited = 0;
PauseAtLastMark = 0;
ResumeID = 0;
CurrentChannel = -1;
CurrentVolume = MAXVOLUME;
@ -683,6 +686,9 @@ bool cSetup::Parse(const char *Name, const char *Value)
else if (!strcasecmp(Name, "ShowRemainingTime")) ShowRemainingTime = atoi(Value);
else if (!strcasecmp(Name, "ProgressDisplayTime")) ProgressDisplayTime= atoi(Value);
else if (!strcasecmp(Name, "PauseOnMarkSet")) PauseOnMarkSet = atoi(Value);
else if (!strcasecmp(Name, "PauseOnMarkJump")) PauseOnMarkJump = atoi(Value);
else if (!strcasecmp(Name, "SkipEdited")) SkipEdited = atoi(Value);
else if (!strcasecmp(Name, "PauseAtLastMark")) PauseAtLastMark = atoi(Value);
else if (!strcasecmp(Name, "ResumeID")) ResumeID = atoi(Value);
else if (!strcasecmp(Name, "CurrentChannel")) CurrentChannel = atoi(Value);
else if (!strcasecmp(Name, "CurrentVolume")) CurrentVolume = atoi(Value);
@ -800,6 +806,9 @@ bool cSetup::Save(void)
Store("ShowRemainingTime", ShowRemainingTime);
Store("ProgressDisplayTime",ProgressDisplayTime);
Store("PauseOnMarkSet", PauseOnMarkSet);
Store("PauseOnMarkJump", PauseOnMarkJump);
Store("SkipEdited", SkipEdited);
Store("PauseAtLastMark", PauseAtLastMark);
Store("ResumeID", ResumeID);
Store("CurrentChannel", CurrentChannel);
Store("CurrentVolume", CurrentVolume);

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: config.h 3.11 2015/01/20 09:05:53 kls Exp $
* $Id: config.h 3.12 2015/01/25 14:16:32 kls Exp $
*/
#ifndef __CONFIG_H
@ -333,6 +333,9 @@ public:
int ShowRemainingTime;
int ProgressDisplayTime;
int PauseOnMarkSet;
int PauseOnMarkJump;
int SkipEdited;
int PauseAtLastMark;
int ResumeID;
int CurrentChannel;
int CurrentVolume;

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: dvbplayer.c 3.1 2013/12/25 13:24:07 kls Exp $
* $Id: dvbplayer.c 3.2 2015/01/25 13:12:13 kls Exp $
*/
#include "dvbplayer.h"
@ -211,6 +211,7 @@ private:
cNonBlockingFileReader *nonBlockingFileReader;
cRingBufferFrame *ringBuffer;
cPtsIndex ptsIndex;
cMarks marks;
cFileName *fileName;
cIndexFile *index;
cUnbufferedFile *replayFile;
@ -296,6 +297,8 @@ cDvbPlayer::cDvbPlayer(const char *FileName, bool PauseLive)
}
else if (PauseLive)
framesPerSecond = cRecording(FileName).FramesPerSecond(); // the fps rate might have changed from the default
if (Setup.SkipEdited || Setup.PauseAtLastMark)
marks.Load(FileName, framesPerSecond, isPesRecording);
}
cDvbPlayer::~cDvbPlayer()
@ -402,8 +405,19 @@ void cDvbPlayer::Action(void)
int pc = 0;
readIndex = Resume();
if (readIndex >= 0)
if (readIndex > 0)
isyslog("resuming replay at index %d (%s)", readIndex, *IndexToHMSF(readIndex, true, framesPerSecond));
else if (Setup.SkipEdited) {
if (marks.First() && index) {
int Index = marks.First()->Position();
uint16_t FileNumber;
off_t FileOffset;
if (index->Get(Index, &FileNumber, &FileOffset) && NextFile(FileNumber, FileOffset)) {
isyslog("starting replay at first mark %d (%s)", Index, *IndexToHMSF(Index, true, framesPerSecond));
readIndex = Index;
}
}
}
nonBlockingFileReader = new cNonBlockingFileReader;
int Length = 0;
@ -413,6 +427,8 @@ void cDvbPlayer::Action(void)
uint32_t LastStc = 0;
int LastReadIFrame = -1;
int SwitchToPlayFrame = 0;
bool CutIn = false;
bool AtLastMark = false;
if (pauseLive)
Goto(0, true);
@ -431,7 +447,7 @@ void cDvbPlayer::Action(void)
// Read the next frame from the file:
if (playMode != pmStill && playMode != pmPause) {
if (playMode != pmStill && playMode != pmPause && !AtLastMark) {
if (!readFrame && (replayFile || readIndex >= 0)) {
if (!nonBlockingFileReader->Reading()) {
if (!SwitchToPlayFrame && (playMode == pmFast || (playMode == pmSlow && playDir == pdBackward))) {
@ -468,8 +484,30 @@ void cDvbPlayer::Action(void)
else if (index) {
uint16_t FileNumber;
off_t FileOffset;
if (index->Get(readIndex + 1, &FileNumber, &FileOffset, &readIndependent, &Length) && NextFile(FileNumber, FileOffset))
if (index->Get(readIndex + 1, &FileNumber, &FileOffset, &readIndependent, &Length) && NextFile(FileNumber, FileOffset)) {
readIndex++;
if (Setup.SkipEdited || Setup.PauseAtLastMark) {
marks.Update();
cMark *m = marks.Get(readIndex);
if (m && (m->Index() & 0x01) != 0) { // we're at an end mark
m = marks.GetNextBegin(m);
int Index = -1;
if (m)
Index = m->Position(); // skip to next begin mark
else if (Setup.PauseAtLastMark)
AtLastMark = true; // triggers going into Pause mode
else if (index->IsStillRecording())
Index = index->GetNextIFrame(index->Last() - int(round(MAXSTUCKATEOF * framesPerSecond)), false); // skip, but stay off end of live-recordings
else
AtLastMark = true; // triggers stopping replay
if (Setup.SkipEdited && Index > readIndex) {
isyslog("skipping from %d (%s) to %d (%s)", readIndex - 1, *IndexToHMSF(readIndex - 1, true, framesPerSecond), Index, *IndexToHMSF(Index, true, framesPerSecond));
readIndex = Index;
CutIn = true;
}
}
}
}
else
eof = true;
}
@ -512,6 +550,11 @@ void cDvbPlayer::Action(void)
// Store the frame in the buffer:
if (readFrame) {
if (CutIn) {
if (isPesRecording)
cRemux::SetBrokenLink(readFrame->Data(), readFrame->Count());
CutIn = false;
}
if (ringBuffer->Put(readFrame))
readFrame = NULL;
else
@ -578,8 +621,17 @@ void cDvbPlayer::Action(void)
p = NULL;
}
}
else
else {
if (AtLastMark) {
if (Setup.PauseAtLastMark) {
playMode = pmPause;
AtLastMark = false;
}
else
eof = true;
}
Sleep = true;
}
// Handle hitting begin/end of recording:

16
menu.c
View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: menu.c 3.28 2015/01/15 11:14:21 kls Exp $
* $Id: menu.c 3.29 2015/01/25 15:21:42 kls Exp $
*/
#include "menu.h"
@ -3571,6 +3571,9 @@ cMenuSetupReplay::cMenuSetupReplay(void)
Add(new cMenuEditBoolItem(tr("Setup.Replay$Show remaining time"), &data.ShowRemainingTime));
Add(new cMenuEditIntItem( tr("Setup.Replay$Progress display time (s)"), &data.ProgressDisplayTime, 0, 60));
Add(new cMenuEditBoolItem(tr("Setup.Replay$Pause replay when setting mark"), &data.PauseOnMarkSet));
Add(new cMenuEditBoolItem(tr("Setup.Replay$Pause replay when jumping to a mark"), &data.PauseOnMarkJump));
Add(new cMenuEditBoolItem(tr("Setup.Replay$Skip edited parts"), &data.SkipEdited));
Add(new cMenuEditBoolItem(tr("Setup.Replay$Pause replay at last mark"), &data.PauseAtLastMark));
Add(new cMenuEditIntItem(tr("Setup.Replay$Resume ID"), &data.ResumeID, 0, 99));
}
@ -5223,6 +5226,15 @@ void cReplayControl::MarkJump(bool Forward)
if (GetIndex(Current, Total)) {
if (marks.Count()) {
if (cMark *m = Forward ? marks.GetNext(Current) : marks.GetPrev(Current)) {
if (!Setup.PauseOnMarkJump) {
bool Playing, Fwd;
int Speed;
if (GetReplayMode(Playing, Fwd, Speed) && Playing && Forward && m->Position() < Total - SecondsToFrames(3, FramesPerSecond())) {
Goto(m->Position());
Play();
return;
}
}
Goto(m->Position(), true);
displayFrames = true;
return;
@ -5287,7 +5299,7 @@ void cReplayControl::EditTest(void)
if (!m)
m = marks.GetNext(Current);
if (m) {
if ((m->Index() & 0x01) != 0)
if ((m->Index() & 0x01) == 0) // this is a "start" mark, so get the next "end" mark
m = marks.Next(m);
if (m) {
Goto(m->Position() - SecondsToFrames(3, FramesPerSecond()));

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2008-10-16 11:16-0400\n"
"Last-Translator: Osama Alrawab <alrawab@hotmail.com>\n"
"Language-Team: Arabic <ar@li.org>\n"
@ -1220,6 +1220,15 @@ msgstr "Progress display time (s)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pause replay when setting mark"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "رقم المواصلة"

View File

@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2008-03-02 19:02+0100\n"
"Last-Translator: Luca Olivetti <luca@ventoso.org>\n"
"Language-Team: Catalan <vdr@linuxtv.org>\n"
@ -1219,6 +1219,15 @@ msgstr "Visualitzaci
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pausar reproducció en establir marca"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID de Continuar"

View File

@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2010-05-06 11:00+0200\n"
"Last-Translator: Aleš Juřík <ajurik@quick.cz>\n"
"Language-Team: Czech <vdr@linuxtv.org>\n"
@ -1219,6 +1219,15 @@ msgstr "Čas zobrazení ukazatele průběhu (s)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pozastavit přehrávání při nastavování značky"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID obnovení"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Mogens Elneff <mogens@elneff.dk>\n"
"Language-Team: Danish <vdr@linuxtv.org>\n"
@ -1216,6 +1216,15 @@ msgstr ""
msgid "Setup.Replay$Pause replay when setting mark"
msgstr ""
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "Genoptagelses ID"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2010-01-16 16:46+0100\n"
"Last-Translator: Klaus Schmidinger <vdr@tvdr.de>\n"
"Language-Team: German <vdr@linuxtv.org>\n"
@ -1216,6 +1216,15 @@ msgstr "Anzeigedauer f
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pause beim Setzen einer Schnittmarke"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr "Pause beim Sprung auf eine Schnittmarke"
msgid "Setup.Replay$Skip edited parts"
msgstr "Herausgeschnittene Teile überspringen"
msgid "Setup.Replay$Pause replay at last mark"
msgstr "Pause an der letzten Schnittmarke"
msgid "Setup.Replay$Resume ID"
msgstr "Wiedergabe-ID"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Dimitrios Dimitrakos <mail@dimitrios.de>\n"
"Language-Team: Greek <vdr@linuxtv.org>\n"
@ -1216,6 +1216,15 @@ msgstr ""
msgid "Setup.Replay$Pause replay when setting mark"
msgstr ""
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID áíáìåôÜäïóçò"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2008-03-02 19:02+0100\n"
"Last-Translator: Luca Olivetti <luca@ventoso.org>\n"
"Language-Team: Spanish <vdr@linuxtv.org>\n"
@ -1217,6 +1217,15 @@ msgstr "Visualizaci
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pausar reproducción al establecer marca"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID de continuación"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Arthur Konovalov <artlov@gmail.com>\n"
"Language-Team: Estonian <vdr@linuxtv.org>\n"
@ -1216,6 +1216,15 @@ msgstr "Edenemiseriba kuvamise aeg (s)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Taasesituse peatamine markeri seadmisel"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "Jätkamise ID"

View File

@ -1220,6 +1220,15 @@ msgstr "Näytä toiston kontrollit (s)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pysäytä toisto asetettaessa merkki"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr "Pysäytä toisto hypätessä merkkiin"
msgid "Setup.Replay$Skip edited parts"
msgstr "Ohita muokatut kohdat"
msgid "Setup.Replay$Pause replay at last mark"
msgstr "Pysäytä toisto viimeiseen merkkiin"
msgid "Setup.Replay$Resume ID"
msgstr "Tallenteen paluutunniste"

View File

@ -17,7 +17,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2013-02-24 12:56+0100\n"
"Last-Translator: Dominique Plu <dplu@free.fr>\n"
"Language-Team: French <vdr@linuxtv.org>\n"
@ -1226,6 +1226,15 @@ msgstr "Afficher la barre de progression (s)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Arrêt lecture si ajout marqueur"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID de reprise"

View File

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2008-03-17 19:00+0100\n"
"Last-Translator: Adrian Caval <anrxc@sysphere.org>\n"
"Language-Team: Croatian <vdr@linuxtv.org>\n"
@ -1218,6 +1218,15 @@ msgstr ""
msgid "Setup.Replay$Pause replay when setting mark"
msgstr ""
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID nastavka"

View File

@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2013-03-01 19:22+0200\n"
"Last-Translator: István Füley <ifuley@tigercomp.ro>\n"
"Language-Team: Hungarian <vdr@linuxtv.org>\n"
@ -1220,6 +1220,15 @@ msgstr "Lejátszósáv felüntetésének ideje (mp)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "A visszajátszás megállítása vágópont kijelölésnél"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "Lejátszás ID"

View File

@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2015-01-19 20:19+0100\n"
"Last-Translator: Diego Pierotto <vdr-italian@tiscali.it>\n"
"Language-Team: Italian <vdr@linuxtv.org>\n"
@ -1223,6 +1223,15 @@ msgstr "Mostra tempo elaborazione (s)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pausa riproduzione durante impostazione segni"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID di ripristino"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2010-10-30 11:55+0200\n"
"Last-Translator: Valdemaras Pipiras <varas@ambernet.lt>\n"
"Language-Team: Lithuanian <vdr@linuxtv.org>\n"
@ -1216,6 +1216,15 @@ msgstr "Progreso rodymo laikas (s)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pristabdyti pakartojimą kai vyksta žymėjimas"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "Kūrinio ID"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2012-11-19 15:18+0100\n"
"Last-Translator: Dimitar Petrovski <dimeptr@gmail.com>\n"
"Language-Team: Macedonian <en@li.org>\n"
@ -1217,6 +1217,15 @@ msgstr "Време на прикажување на прогрес (сек)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Паузирај репродукција кога се внесува ознака"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID на продолжеток"

View File

@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2008-02-26 17:20+0100\n"
"Last-Translator: Cedric Dewijs <cedric.dewijs@telfort.nl>\n"
"Language-Team: Dutch <vdr@linuxtv.org>\n"
@ -1221,6 +1221,15 @@ msgstr "Verlopen tijd tijd (s)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pauzeer wanneer markering wordt geplaatst"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "Hervattings ID"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2007-08-12 14:17+0200\n"
"Last-Translator: Truls Slevigen <truls@slevigen.no>\n"
"Language-Team: Norwegian Nynorsk <vdr@linuxtv.org>\n"
@ -1217,6 +1217,15 @@ msgstr ""
msgid "Setup.Replay$Pause replay when setting mark"
msgstr ""
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "Resume ID"

View File

@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2008-03-09 12:59+0100\n"
"Last-Translator: Marek Nazarko <mnazarko@gmail.com>\n"
"Language-Team: Polish <vdr@linuxtv.org>\n"
@ -1218,6 +1218,15 @@ msgstr "Wy
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Wstrzymaj odtwarzanie podczas ustawiania zaznaczania"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID wznowienia"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2010-03-28 22:49+0100\n"
"Last-Translator: Cris Silva <hudokkow@gmail.com>\n"
"Language-Team: Portuguese <vdr@linuxtv.org>\n"
@ -1217,6 +1217,15 @@ msgstr ""
msgid "Setup.Replay$Pause replay when setting mark"
msgstr ""
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID de resumo"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2015-01-21 22:34+0100\n"
"Last-Translator: Lucian Muresan <lucianm@users.sourceforge.net>\n"
"Language-Team: Romanian <vdr@linuxtv.org>\n"
@ -1218,6 +1218,15 @@ msgstr "Durata afișării indicatorului de progres (s) "
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pauză la punerea marcajului de editare"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "Identificator continuare"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2013-03-10 17:13+0100\n"
"Last-Translator: Oleg Roitburd <oroitburd@gmail.com>\n"
"Language-Team: Russian <vdr@linuxtv.org>\n"
@ -1217,6 +1217,15 @@ msgstr "
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "¿Ðã×Ð ßàØ ãáâÐÝÞÒÚÕ ÜÐàÚØàÞÒÚØ"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID ÒÞáßàÞØ×ÒÕÔÕÝØï"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2013-03-04 21:24+0100\n"
"Last-Translator: Milan Hrala <hrala.milan@gmail.com>\n"
"Language-Team: Slovak <vdr@linuxtv.org>\n"
@ -1216,6 +1216,15 @@ msgstr "Doba zobrazenia ukazovate
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pozastavi» prehrávanie pri stanovení znaèky"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ident. èíslo obnovenia prehrávania"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2013-03-04 12:46+0100\n"
"Last-Translator: Matjaz Thaler <matjaz.thaler@guest.arnes.si>\n"
"Language-Team: Slovenian <vdr@linuxtv.org>\n"
@ -1217,6 +1217,15 @@ msgstr "Progresivni
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pavza predvajanja pri postavitvi zanèke"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID za predvajanje"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2013-03-16 15:05+0100\n"
"Last-Translator: Zoran Turalija <zoran.turalija@gmail.com>\n"
"Language-Team: Serbian <vdr@linuxtv.org>\n"
@ -1217,6 +1217,15 @@ msgstr "Trajanje prikazivanja progresa (s)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pauziraj reprodukciju prilikom obele¾avanja"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID reprodukcije"

View File

@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2013-02-18 17:04+0100\n"
"Last-Translator: Richard Lithvall <r-vdr@boomer.se>\n"
"Language-Team: Swedish <vdr@linuxtv.org>\n"
@ -1220,6 +1220,15 @@ msgstr "Tid f
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Pausa uppspelningen vid sättande av redigeringsmärke"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "Återupptagnings-ID"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2008-02-28 00:33+0100\n"
"Last-Translator: Oktay Yolgeçen <oktay_73@yahoo.de>\n"
"Language-Team: Turkish <vdr@linuxtv.org>\n"
@ -1216,6 +1216,15 @@ msgstr ""
msgid "Setup.Replay$Pause replay when setting mark"
msgstr ""
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "Gösteriþ ID'si"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2013-02-09 16:00+0100\n"
"Last-Translator: Yarema aka Knedlyk <yupadmin@gmail.com>\n"
"Language-Team: Ukrainian <vdr@linuxtv.org>\n"
@ -1217,6 +1217,15 @@ msgstr "Час показу індикатора (с)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "Пауза програвання при встановленні мітки"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "ID продовження"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: VDR 2.0.0\n"
"Report-Msgid-Bugs-To: <vdr-bugs@tvdr.de>\n"
"POT-Creation-Date: 2015-01-12 15:40+0100\n"
"POT-Creation-Date: 2015-01-26 11:17+0100\n"
"PO-Revision-Date: 2013-03-04 14:52+0800\n"
"Last-Translator: NFVDR <nfvdr@live.com>\n"
"Language-Team: Chinese (simplified) <nfvdr@live.com>\n"
@ -1218,6 +1218,15 @@ msgstr "处理显示时间(s)"
msgid "Setup.Replay$Pause replay when setting mark"
msgstr "暂停回放时,设置标志"
msgid "Setup.Replay$Pause replay when jumping to a mark"
msgstr ""
msgid "Setup.Replay$Skip edited parts"
msgstr ""
msgid "Setup.Replay$Pause replay at last mark"
msgstr ""
msgid "Setup.Replay$Resume ID"
msgstr "恢复 ID"

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: recording.c 3.23 2015/01/23 15:12:47 kls Exp $
* $Id: recording.c 3.24 2015/01/25 15:39:24 kls Exp $
*/
#include "recording.h"
@ -2072,7 +2072,7 @@ bool cMarks::Load(const char *RecordingFileName, double FramesPerSecond, bool Is
bool cMarks::Update(void)
{
time_t t = time(NULL);
if (t > nextUpdate) {
if (t > nextUpdate && *fileName) {
time_t LastModified = LastModifiedTime(fileName);
if (LastModified != lastFileTime) // change detected, or first run
lastChange = LastModified > 0 ? LastModified : t;