[mythtv] DVD read error recovery
Robert Merkel
robert.merkel at benambra.org
Sun Mar 16 11:15:02 UTC 2008
Hi there,
I've been using MythTV for a couple of weeks now; it's great, but
there's one rather annoying problem - if there's the tiniest scratch
on a DVD, MythTV simply bails out on playing the disc.
As I understand from reading the mailing list, the issue is that
there is no kind of error recovery code in the internal player to
cope with such errors.
Given that the DTV decoder is also decoding MPEG-2, and copes with
missing data without crashing, I would like to add some kind of
error tolerance/recovery for DVD playing.
However, winding my way through the MythTV code has been a challenge, to say
the least. It seems that on a DVD read error, a -1 return value is passed all
the way up through to RingBuffer::ReadAheadThread (in RingBuffer.cpp), where
numfailures is incremented if a file read error occurs. But I'm still not
seeing how this results in the internal player terminating itself.
Sorry if I'm way off base here; I'm obviously new to the MythTV codebase,
new to threaded programming, and my primary language expertise is C rather
than C++. But I really would appreciate some help in finding the relevant
spot so I can best see how to add some error handling (which shouldn't be
all that hard, livetv copes with missing data, so it should be possible to
make the DVD player do something similar...)
TIA for your assistance.
--
-------------------------------------------------------------------------------
Robert Merkel
robert.merkel at benambra.org
http://benambra.org
On Wikipedia, there is a giant conspiracy attempting to have articles agree
with reality.
-- "Andreas", http://www.badastronomy.com/phpBB/viewtopic.php?p=245449
13/4/2004
---------------------------------------------------------------------------
More information about the mythtv-dev
mailing list