[mythtv-commits] Ticket #12016: Watching in progress recording stutters
MythTV
noreply at mythtv.org
Wed Jan 15 01:35:36 UTC 2014
#12016: Watching in progress recording stutters
-------------------------------------+-------------------------------------
Reporter: angela.schmid@… | Owner:
Type: Bug Report - | Status: new
General | Milestone: unknown
Priority: minor | Version: 0.27-fixes
Component: MythTV - Video | Keywords: WatchingRecording
Playback | stutter
Severity: medium |
Ticket locked: 0 |
-------------------------------------+-------------------------------------
Since upgrading from 0.26-fixes to 0.27-fixes/master watching in progress
recordings stutters.
This happens with all mediatypes (720p, 1080i, SD) and is 100%
reproducible with all in progress recordings.
As soon as the scheduled recording is finished the stuttering finishes.
Reusing and playing another finished recording where the file is linked to
the in progress recording file there is no stuttering.
I made the following test and attached the frontend.log (--loglevel debug
-v general,playback)
01:00 started a 15 minute recording
01:05 watch in progress recording, stuttering
01:15 recording finished, till the end no stuttering (Attempting to change
from WatchingRecording to WatchingPreRecorded)
01:20 watching finished
01:30 watch finished (prerecorded) recording, no stuttering
01:45 watching finished
I tried to bisect the problem but had stack overflows and avfilter
problems from 0.27-pre to 0.27-beta.
0.27-alpha is the first version not crashing, but has stutter, so I
stopped to bisect the problem further.
The following dirty hack worked, although the recording only stops after
finishing viewing. As it might produce other problems I don’t use it in
production.
{{{
diff --git a/mythtv/libs/libmythtv/tv_play.cpp
b/mythtv/libs/libmythtv/tv_play.cpp
index 77858d0..8ecd918 100644
--- a/mythtv/libs/libmythtv/tv_play.cpp
+++ b/mythtv/libs/libmythtv/tv_play.cpp
@@ -2210,6 +2210,10 @@ void TV::HandleStateChange(PlayerContext *mctx,
PlayerContext *ctx)
TVState ctxState = ctx->GetState();
TVState desiredNextState = ctx->DequeueNextState();
+ if(desiredNextState == kState_WatchingRecording)
+ desiredNextState = kState_WatchingPreRecorded;
+
LOG(VB_GENERAL, LOG_INFO, LOC +
QString("Attempting to change from %1 to %2")
.arg(StateToString(nextState))
}}}
--
Ticket URL: <http://code.mythtv.org/trac/ticket/12016>
MythTV <http://www.mythtv.org>
MythTV Media Center
More information about the mythtv-commits
mailing list