From 4fcd3ba56e37ced65a7591d9165322154ed86fce Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Mon, 26 Jan 2015 10:20:51 +0100 Subject: [PATCH] Added functionality based on the "jumpplay" patch --- CONTRIBUTORS | 2 ++ HISTORY | 14 +++++++++++- MANUAL | 24 ++++++++++++++++++++ config.c | 11 +++++++++- config.h | 5 ++++- dvbplayer.c | 62 +++++++++++++++++++++++++++++++++++++++++++++++----- menu.c | 16 ++++++++++++-- po/ar.po | 11 +++++++++- po/ca_ES.po | 11 +++++++++- po/cs_CZ.po | 11 +++++++++- po/da_DK.po | 11 +++++++++- po/de_DE.po | 11 +++++++++- po/el_GR.po | 11 +++++++++- po/es_ES.po | 11 +++++++++- po/et_EE.po | 11 +++++++++- po/fi_FI.po | 9 ++++++++ po/fr_FR.po | 11 +++++++++- po/hr_HR.po | 11 +++++++++- po/hu_HU.po | 11 +++++++++- po/it_IT.po | 11 +++++++++- po/lt_LT.po | 11 +++++++++- po/mk_MK.po | 11 +++++++++- po/nl_NL.po | 11 +++++++++- po/nn_NO.po | 11 +++++++++- po/pl_PL.po | 11 +++++++++- po/pt_PT.po | 11 +++++++++- po/ro_RO.po | 11 +++++++++- po/ru_RU.po | 11 +++++++++- po/sk_SK.po | 11 +++++++++- po/sl_SI.po | 11 +++++++++- po/sr_RS.po | 11 +++++++++- po/sv_SE.po | 11 +++++++++- po/tr_TR.po | 11 +++++++++- po/uk_UA.po | 11 +++++++++- po/zh_CN.po | 11 +++++++++- recording.c | 4 ++-- 36 files changed, 405 insertions(+), 39 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 21f71c8a..885c5e91 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -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 for his help in replacing the get/put_unaligned() macros from asm/unaligned.h with @@ -2677,6 +2678,7 @@ Torsten Kunkel 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 for translating OSD texts to the French language diff --git a/HISTORY b/HISTORY index cc468e90..5e988820 100644 --- a/HISTORY +++ b/HISTORY @@ -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 + Gnther: + + 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. diff --git a/MANUAL b/MANUAL index 4c7e6c88..e984d099 100644 --- a/MANUAL +++ b/MANUAL @@ -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 diff --git a/config.c b/config.c index af791b32..69a26245 100644 --- a/config.c +++ b/config.c @@ -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); diff --git a/config.h b/config.h index e84d4e94..7a81372f 100644 --- a/config.h +++ b/config.h @@ -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; diff --git a/dvbplayer.c b/dvbplayer.c index 1858cb98..1b049f26 100644 --- a/dvbplayer.c +++ b/dvbplayer.c @@ -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: diff --git a/menu.c b/menu.c index a48bfdaf..7231e129 100644 --- a/menu.c +++ b/menu.c @@ -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())); diff --git a/po/ar.po b/po/ar.po index 827973c1..d1dc741f 100644 --- a/po/ar.po +++ b/po/ar.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Arabic \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 "رقم المواصلة" diff --git a/po/ca_ES.po b/po/ca_ES.po index 207901c2..640fa2c1 100644 --- a/po/ca_ES.po +++ b/po/ca_ES.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Catalan \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" diff --git a/po/cs_CZ.po b/po/cs_CZ.po index d39933d7..243be562 100644 --- a/po/cs_CZ.po +++ b/po/cs_CZ.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Czech \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í" diff --git a/po/da_DK.po b/po/da_DK.po index 5436690c..2fcff826 100644 --- a/po/da_DK.po +++ b/po/da_DK.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Danish \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" diff --git a/po/de_DE.po b/po/de_DE.po index 4512b446..26ae4d9a 100644 --- a/po/de_DE.po +++ b/po/de_DE.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: German \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" diff --git a/po/el_GR.po b/po/el_GR.po index a6c4c301..0104f418 100644 --- a/po/el_GR.po +++ b/po/el_GR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Greek \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 " diff --git a/po/es_ES.po b/po/es_ES.po index e1425189..e66cfca9 100644 --- a/po/es_ES.po +++ b/po/es_ES.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Spanish \n" @@ -1217,6 +1217,15 @@ msgstr "Visualizaci msgid "Setup.Replay$Pause replay when setting mark" msgstr "Pausar reproduccin 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 continuacin" diff --git a/po/et_EE.po b/po/et_EE.po index 75ba6be4..cfdeb90e 100644 --- a/po/et_EE.po +++ b/po/et_EE.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Estonian \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" diff --git a/po/fi_FI.po b/po/fi_FI.po index 77aa6bf6..656efc12 100644 --- a/po/fi_FI.po +++ b/po/fi_FI.po @@ -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" diff --git a/po/fr_FR.po b/po/fr_FR.po index 01c9750c..59876a34 100644 --- a/po/fr_FR.po +++ b/po/fr_FR.po @@ -17,7 +17,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: French \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" diff --git a/po/hr_HR.po b/po/hr_HR.po index eea285bd..5e2ff230 100644 --- a/po/hr_HR.po +++ b/po/hr_HR.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Croatian \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" diff --git a/po/hu_HU.po b/po/hu_HU.po index f4b3734d..412d3892 100644 --- a/po/hu_HU.po +++ b/po/hu_HU.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Hungarian \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" diff --git a/po/it_IT.po b/po/it_IT.po index 7de85a2a..39678f93 100644 --- a/po/it_IT.po +++ b/po/it_IT.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Italian \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" diff --git a/po/lt_LT.po b/po/lt_LT.po index 10f1ffec..339a44b4 100644 --- a/po/lt_LT.po +++ b/po/lt_LT.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Lithuanian \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" diff --git a/po/mk_MK.po b/po/mk_MK.po index 556032cc..50d94d47 100644 --- a/po/mk_MK.po +++ b/po/mk_MK.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Macedonian \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 на продолжеток" diff --git a/po/nl_NL.po b/po/nl_NL.po index 1f46225c..59b034aa 100644 --- a/po/nl_NL.po +++ b/po/nl_NL.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Dutch \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" diff --git a/po/nn_NO.po b/po/nn_NO.po index 2ee08166..a57a094c 100644 --- a/po/nn_NO.po +++ b/po/nn_NO.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Norwegian Nynorsk \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" diff --git a/po/pl_PL.po b/po/pl_PL.po index e7c81b7b..9b3ce36f 100644 --- a/po/pl_PL.po +++ b/po/pl_PL.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Polish \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" diff --git a/po/pt_PT.po b/po/pt_PT.po index b58b4838..c26c5126 100644 --- a/po/pt_PT.po +++ b/po/pt_PT.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Portuguese \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" diff --git a/po/ro_RO.po b/po/ro_RO.po index f4cbab80..ccd32182 100644 --- a/po/ro_RO.po +++ b/po/ro_RO.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Romanian \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" diff --git a/po/ru_RU.po b/po/ru_RU.po index 4a7a2936..7800502f 100644 --- a/po/ru_RU.po +++ b/po/ru_RU.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Russian \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 " diff --git a/po/sk_SK.po b/po/sk_SK.po index 80d340ae..d70d790d 100644 --- a/po/sk_SK.po +++ b/po/sk_SK.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Slovak \n" @@ -1216,6 +1216,15 @@ msgstr "Doba zobrazenia ukazovate msgid "Setup.Replay$Pause replay when setting mark" msgstr "Pozastavi prehrvanie pri stanoven znaky" +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 prehrvania" diff --git a/po/sl_SI.po b/po/sl_SI.po index b0b41356..f8e5d624 100644 --- a/po/sl_SI.po +++ b/po/sl_SI.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Slovenian \n" @@ -1217,6 +1217,15 @@ msgstr "Progresivni msgid "Setup.Replay$Pause replay when setting mark" msgstr "Pavza predvajanja pri postavitvi zanke" +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" diff --git a/po/sr_RS.po b/po/sr_RS.po index 42423d31..b05eb56d 100644 --- a/po/sr_RS.po +++ b/po/sr_RS.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Serbian \n" @@ -1217,6 +1217,15 @@ msgstr "Trajanje prikazivanja progresa (s)" msgid "Setup.Replay$Pause replay when setting mark" msgstr "Pauziraj reprodukciju prilikom obeleavanja" +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" diff --git a/po/sv_SE.po b/po/sv_SE.po index 63ab5dbc..7a036c85 100644 --- a/po/sv_SE.po +++ b/po/sv_SE.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Swedish \n" @@ -1220,6 +1220,15 @@ msgstr "Tid f msgid "Setup.Replay$Pause replay when setting mark" msgstr "Pausa uppspelningen vid sttande av redigeringsmrke" +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" diff --git a/po/tr_TR.po b/po/tr_TR.po index 1ced923d..819ba6cd 100644 --- a/po/tr_TR.po +++ b/po/tr_TR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 Yolgeen \n" "Language-Team: Turkish \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 "Gsteri ID'si" diff --git a/po/uk_UA.po b/po/uk_UA.po index 3a20b3ed..f424e60f 100644 --- a/po/uk_UA.po +++ b/po/uk_UA.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Ukrainian \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 продовження" diff --git a/po/zh_CN.po b/po/zh_CN.po index 0e061a54..72f367d0 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: VDR 2.0.0\n" "Report-Msgid-Bugs-To: \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 \n" "Language-Team: Chinese (simplified) \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" diff --git a/recording.c b/recording.c index 7832d0f8..079e0de2 100644 --- a/recording.c +++ b/recording.c @@ -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;