[mythtv] mythplayer.cpp query

Daniel Kristjansson danielk at cuymedia.net
Tue Mar 13 14:52:41 UTC 2012

On Tue, 2012-03-13 at 14:20 +0000, Russell Gower wrote:
> On 13 Mar 2012, at 13:40, Daniel Kristjansson wrote:
> Hi Daniel,
>   Isn't tv_rec.cpp part of the backend process that creates the recordings? 

> I've concatenated the recording files from two back to back recording together and verified that the transition between programs is practically seem less so i'm pretty sure creating the recording isn't the issue. 
I don't think that is a good test, you really want to diff
the time where the last keyframe is found on the old channel
and the first keyframe is found on the new channel.

> I then took a closer look at the frontend logs and could see a large (and variable) duration between the "SwitchToProgram - start" and "SwitchToProgram - end" entries, this method pauses playback, clears the decoded frames buffer (i think), opens the new recording file and then resumes play back - I'm looking to see if all that is really necessary.
We need a good deal of buffering because of the DecoderBase
architecture. We do the demux in GetFrame() and so we need that
to be able to return a frame very quickly. If it freezes up
waiting for data it blocks the UI thread. To fix that we need
to run a loop that feeds video and audio queues outside the UI
thread and have GetFrame() simply pop frames off that queue.
This something I plan to do but it is not a task someone just
digging into the code for the first time is going to be able
to do.

-- Daniel

More information about the mythtv-dev mailing list