All pastes #2082607 Raw Edit

Something

public text v1 · immutable
#2082607 ·published 2011-09-25 01:24 UTC
rendered paste body
diff --git a/mythtv/libs/libmythtv/mythplayer.cpp b/mythtv/libs/libmythtv/mythplayer.cpp
index d027511..443851f 100644
--- a/mythtv/libs/libmythtv/mythplayer.cpp
+++ b/mythtv/libs/libmythtv/mythplayer.cpp
@@ -4285,7 +4285,10 @@ void MythPlayer::calcSliderPos(osdInfo &info, bool paddedFields)
     info.values.insert("progbefore", 0);
     info.values.insert("progafter",  0);
 
-    int playbackLen = totalLength;
+    int playbackLen = totalDuration;
+
+    if (totalDuration == 0 || noVideoTracks || decoder->GetCodecDecoderName() == "nuppel")
+        playbackLen = totalLength;
 
     if (livetv && player_ctx->tvchain)
     {
@@ -4303,7 +4306,9 @@ void MythPlayer::calcSliderPos(osdInfo &info, bool paddedFields)
         islive = true;
     }
 
-    float secsplayed = (float)(framesPlayed / video_frame_rate);
+    float secsplayed = (noVideoTracks || decoder->GetCodecDecoderName() == "nuppel") ? 
+        (float)(framesPlayed / video_frame_rate) :
+        (float)(disp_timecode / 1000.f);
 
     calcSliderPosPriv(info, paddedFields, playbackLen, secsplayed, islive);
 }