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

Peter Mitchell peterpf_mitchell at yahoo.co.uk
Wed Jul 11 21:52:53 UTC 2012

> -----Original Message-----
> From: mythtv-users-bounces at mythtv.org [mailto:mythtv-users-
> bounces at mythtv.org] On Behalf Of Lawrence Rust
> Sent: 27 April 2012 11:33
> To: Dave Oxley
> Cc: Discussion about MythTV
> Subject: Re: [mythtv-users] Playback of encrypted dvd iso images from
> storage group
> On Fri, 2012-04-27 at 15:57 +1000, Dave Oxley wrote:
> > Has any of this been merged into 0.25?
> Unfortunately not.  Mark Kendall was looking at it but now that he's
> left I think that the patches have been left dangling.
> >  I'm specifically interested in
> > the playback of encrypted iso's from storage groups as I don't mind
> > ripping DVD's externally. Having said that I did used to use MythTV DVD
> > ripping functionality a lot in previous versions.
> If you are interested, I maintain an archive of patches here:
> http://www.softsystem.co.uk/download/mythtv/mythbuild-CURRENT.zip
> The iso playback patch (for fixes/0.25) is here:
> mythpatches-0.24/mythtv-0.25//0043-libmythtv-Play-encrypted-dvd-s-and-iso-
> images-from-s.patch
> and this is the patch that added back DVD ripping:
> mythpatches-0.24/mythtv-0.25//0034-Mythvideo-restore-DVD-ripping.patch
> This patch enables mytharchive to burn the ripped iso image:
> mythpatches-0.24/mythtv-0.25/0044-mytharchive-Add-capability-to-burn-a-
> user-selected-i.patch
> This patch adds support for storage groups to mytharchive:
> mythpatches-0.24/mythtv-0.25/0070-mytharchive-Add-support-for-Storage-
> Groups.patch
> The last patch allows mytharchive to be run on a remote frontend and
> build a DVD using material from any BE.
> In the archive there are versions of the patches against fixes/0.24,
> fixes/0.25 and master from today's git repo.  I try to update the
> patches weekly or better.
> -- Lawrence

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

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)

To this:
DVDStream::DVDStream(const QString& filename)
: RingBuffer(kRingBuffer_File), m_reader(0), m_pos(0), m_title(-1),

I noticed that the trunk version of the patch appears to have the same



More information about the mythtv-users mailing list