Comment 39 for bug 478710

Revision history for this message
Jörn Reder (joern-reder) wrote :

Hiho,

at first, sorry that answering to this bug took some time, but I had
to upgrade one of my Ubuntu workstations to Karmic first and of
course had to take time to reproduce this bug somehow...

My diagnostics so far:

- I think what happens here, is that transcode can't copy all
  frames from the title to the harddisk, resp. the number of
  frames announced in the TOC (Table of Content) of the DVD
  differs too much from the number of frames grabbed by transcode.

- dvd::rip can't do anything against the short ripping itself,
  but there was a bug that this was not reported as an error,
  instead the job just appeared to be hanging.

  The short ripping could be a transcode / libdvdread issue,
  probably it depends on the DVD and may be some nasty copy
  protection which uses malformed information in the DVD TOC.
  Unfortunetaly dvd::rip relies on proper operation of transcode
  here and in particular has no code (and never will have) to
  circumvent any copy protection.

- The bug was not in dvd::rip itself, but in a Perl module used
  by dvd::rip (Event::ExecFlow). Happily enough both share the
  same author ;)

- Please use v0.64 of Event::ExecFlow which is available here:

  http://www.exit1.org/packages/Event-ExecFlow/dist/Event-ExecFlow-0.64.tar.gz

  I recommend installing it this way (to prevent conflicts with
  the version installed to your system directories), as a normal
  user - not root!

    % perl Makefile.PL INSTALL_BASE=~/myperl
    % make test
    % make install

  Then modify your environment this way:

    % export PATH=~/myperl/bin:$PATH
    % export PERL5LIB=~/myperl/lib/perl5

  And start dvd::rip from command line:

    % dvdrip

  Now you should get the "ripping short" error message, an
  immediately aborted job and a properly working dvd::rip
  afterwards (no hanging).

- As well I have made a preliminary build of dvd::rip, which
  turns the "ripping short" error into a warning, so the ripping
  process continues and the user can decide whether the missed
  frames are critical or not. Get it from here:

  http://www.exit1.org/dvdrip/dist/dvdrip-0.98.11_01.tar.gz

  (this is preliminary because 0.98.11 will contain more
   stuff which has accumulated on my harddisk and probably
   will be released during x-mas vacation)

  I recommend to install it as well to your home directory
  as with Event::ExecFLow:

    % perl Makefile.PL INSTALL_BASE=~/myperl
    % make test
    % make install

  Then always start dvd::rip this way:

    % export PATH=~/myperl/bin:$PATH
    % export PERL5LIB=~/myperl/lib/perl5
    % dvdrip

- If you want to get rid of this extra Event::ExecFlow and
  dvd::rip installation just remove the ~/myperl directory.

Please report here whether these diagnostics are true for your
cases and whether the newer versions now work as expected.

Jörn