From 46ed54bc095a899bc6fe93fe727e12e96392cc0e Mon Sep 17 00:00:00 2001 From: Dieter Hametner Date: Sun, 19 Apr 2009 23:04:39 +0200 Subject: Calculate right length for TS recordings. This is a patch submitted by jowi24. Newer development versions of VDR create TS recordings. There was no support for such recordings in LIVE yet. length calculation with the new TS recordings introduced wit --- recman.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/recman.cpp b/recman.cpp index bf7ca3f..8bfccab 100644 --- a/recman.cpp +++ b/recman.cpp @@ -242,6 +242,7 @@ namespace vdrlive { { long RecLength = 0; if (!m_recording->FileName()) return 0; +#if VDRVERSNUM < 10704 cString filename = cString::sprintf("%s%s", m_recording->FileName(), INDEXFILESUFFIX); if (*filename) { if (access(filename, R_OK) == 0) { @@ -257,6 +258,14 @@ namespace vdrlive { } } } +#else + // open index file for reading only + cIndexFile *index = new cIndexFile(m_recording->FileName(), false, m_recording->IsPesRecording()); + if (index && index->Ok()) { + RecLength = (int) (index->Last() / SecondsToFrames(60, m_recording->FramesPerSecond())); + } + delete index; +#endif return RecLength; } -- cgit v1.2.3