[mythtv] "prebuffering pause"

Daniel Thor Kristjansson danielk at cat.nyu.edu
Thu Feb 12 03:05:43 EST 2004


Did the stuttering show up as a bunch of "prebuffering pause" messages
on the frontend?

I think I tracked that problem down, it's a frontend only problem. When
decoding the video to an Xv buffer you only have a limited number of
them to decode to, with plain Xv you get 31, with XvMC you get 7 (you
can actually increase this to 8, but that only helps a little).
A few of these can't be freed, at a minimum buffers you haven't seen,
plus the previous I frame and the next and prev P frames. Right now
we're even reserving B frames we've displayed. Then you need 2 free
buffers before you even try to fill buffers, there is just very little
play here.

But there is hope, I and P frames don't need on B frames, B frames
don't even rely on other B frames. So you can drop them cold once they
are displayed or skipped in the player. This can't be done by just
discarding the frame, I think because the past and future frames are
set incorrectly, but I've got to verify this. If true, this should be
fixable. Hopefully this will fix our stuttering problem, since the next
option is to make the getFrame in the avformatdecoder faster, which
isn't as simple.

I did get the dropping of B-Frames to work with sound, but there are
some minor problems that require a little videoout_xvmc fixing, but it
played all but one of my stations well with OSD. The exception was the
1920x1080i CBS station, and that was just because of prebuffering
problem.

I probably won't have any time for this until next week, but I'll try
to make a little time to turn tonight's Myth C++ style cleanups into a
set of patches ;)

-- Daniel
  << When truth is outlawed; only outlaws will tell the truth. >> - RLiegh

On Mon, 9 Feb 2004, John P. Poet wrote:

]
]On Mon, 9 Feb 2004, Daniel Thor Kristjansson wrote:
]
]>
]> Does anyone other than Doug on this list have an HDTV tuner?
]>
]> Just curious. I haven't gotten any feedback on my patches. I just found
]> a one liner bug in the hdtv-recording patch that would have prevented
]> almost anyone but me from using it, but no one pointed it out.
]> (I'll be posting a fix to that bug later tonight.)
]>
]> -- Daniel
]>   << When truth is outlawed; only outlaws will tell the truth. >> - RLiegh
]
]
]Something about the desired frequency not being set correctly?  I commented
]out that test, and then it worked okay for me.  I have not had a chance to
]use it much, though.
]
]Keep on working on it!  I for one, appreciate the effort.
]
]In trying to track down the problem with my PBS stations, I discovered how
]easy it is for the backend to starve the frontend.  Just adding a few
]debugging outputs in the backend, and the frontend starts stuttering badly.
]Made me realize that the backend needs to be as efficient as possible.
]
]I will probably try your XvMC interlace patch Wednesday night.  Been a long
]time since I compiled Myth with XvMC enabled.
]
]John
]
]
]
]


More information about the mythtv-dev mailing list