[mythtv-users] Playback of encrypted dvd iso images from storage group

Greg Grotsky spikeygg.mythbox at gmail.com
Sat Aug 25 01:10:41 UTC 2012


On Thu, Jul 12, 2012 at 1:11 AM, Lawrence Rust <lvr at softsystem.co.uk> wrote:

> On Wed, 2012-07-11 at 22:52 +0100, Peter Mitchell wrote:
> [snip]
> > This is a great set of patches that has restored my ability to playback
> > encrypted DVD iso images sadly lost when I upgraded from 0.21 to 0.25.1
> > fixes and switched my video collection over to use storage groups without
> > realizing the ramifications. Thanks for maintaining this Lawrence!
> >
> > There is however a minor bug in
> > mythpatches-0.24/mythtv-0.25//0034-Mythvideo-restore-DVD-ripping.patch.
>
> You must mean
> mythtv-0.25/0043-libmythtv-Play-encrypted-dvd-s-and-iso-images-from-s.patch
>
> > With the patch installed I found that intermittently the playback of any
> iso
> > image regardless of being encrypted or not would fail. Indeed the same
> image
> > might play one time and then fail to play subsequently due to seek errors
> > when reading the iso image.
> >
> > Fortunately the issue is easy to resolve. In class dvdstream.cpp variable
> > m_start is not being initialized at instantiation by the constructor
> which
> > means it is initially set to whatever happened to be on the heap when the
> > class is instantiated. As this variable is being used as an offset for
> seeks
> > within the iso image this quickly leads to problems unless you get lucky
> and
> > m_start happened to be randomly set to zero.
> >
> > To fix simply change the constructor to set m_start to zero. If this is
> done
> > then this patch works everytime - well for me at least!
> > As an example the DVDStream constructor could be changed from this:
> >
> > DVDStream::DVDStream(const QString& filename)
> > : RingBuffer(kRingBuffer_File), m_reader(0), m_pos(0), m_title(-1)
> > {
> >     OpenFile(filename);
> > }
> >
> > To this:
> > DVDStream::DVDStream(const QString& filename)
> > : RingBuffer(kRingBuffer_File), m_reader(0), m_pos(0), m_title(-1),
> > m_start(0)
> > {
> >     OpenFile(filename);
> > }
> >
>
> Well spotted and thanks ever so much for taking the time to test and
> find a fix.  Much appreciated.
>
> That will teach me to double check my patches with valgrind before
> posting them.  It's a pity that gcc doesn't pick this out with a warning
> for an uninitialised variable - must look into that.
>
> > I noticed that the trunk version of the patch appears to have the same
> > issue.
>
> I'll fix that too.
>
> Hopefully sometime soon these patches will find their way into git
> master.
>
>
Did these patches ever make it into git master? I have libdvdcss2 installed
(along with all the necessary dvdnav and dvdread pkgs) and it's not getting
picked up by mythvideo when I play an ISO file. I see these messages from
the frontend:
libdvdnav: Using dvdnav version svnR1215
libdvdread: Encrypted DVD support unavailable.

When I use mplayer to play the same file before the video starts playing it
automatically launches libdvdcss and I see it create files inside
~/.dvdcss.

Is there some way to have mythtv/mythvideo do this? Lawrence's links are
broken, anyone have an updated version?

Thanks,
-Greg
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.mythtv.org/pipermail/mythtv-users/attachments/20120824/0872ce21/attachment.html>


More information about the mythtv-users mailing list