[gst-devel] Potential replacement for dvdreadsrc

Jason Gerard DeRose jderose at jasonderose.org
Sat Nov 25 04:26:12 CET 2006


Hello,

I've been working on a potential replacement for the dvdreadsrc element
and want to get some advice on where to go from here.  This all started
as my work on seek related bug (1), but the more I worked on dvdreadsrc,
the more I wanted to rewrite it from scratch, especially to address what
I felt were some readability problems in dvdreadsrc.  I've been calling
my element "dvdsrc".

So, on with my questions:

Question 1:
Is my copyright notice (2) correct?  I started my element using
gst-template.

Question 2:
Do any of the gst-template or dvdreadsrc authors have any problem with
the manner in which their names have been listed?

Question 3:
After further testing and development, can my element be included in
gst-plugins-ugly in the 0.10 series?  I would like to see playbin use my
element over dvdreadsrc.  However, dvdreadsrc should remain for backward
compatibility as there is one respect in which my dvdsrc element is not
a drop in replacement: it does not allow seeking or querying in the
sector or bytes formats.  The manner in which dvdreadsrc implemented
this was very broken for a significant percentage of DVDs.  It is
difficult to implement correctly and moreover, as both dvdreadsrc and
dvdsrc currently operate only in push mode, is unused by most
applications, including anything playbin-based.  So I left it out of my
dvdsrc, but feedback is welcomed on this decision.

Question 4:
To push or to pull?  Seeing the discussion about JACK makes me wonder:
in the future of GStreamer, are pull sources preferred?  Is it worth the
complexity and effort to implement dvdsrc as a pull source?

Question 5:
Should there be separate dvdnavsrc-like and dvdreadsrc-like elements, or
should there be a single element that does both?  I originally set out
to rewrite dvdreadsrc as that is what I need for KungFu, my DVD ripper.
 But as long as this stuff is fresh in my head, I'd like to help enable
full DVD support for gst0.10.  What is the current status of dvdnavsrc?
 Where would my efforts best be directed if I wanted to work on this?
Should I work on adding Nav support to my element, for a future
all-in-one DVD-src element?

Question 6:
What are some tricky multi-angle DVDs that I should test?  My dvdsrc
element currently does *not* support multi-angle DVDs as I don't own any
to test, so if anyone has any suggestions... ;)


Anyway...

My element currently uses GST_RANK_PRIMARY, so if installed, it will be
used over dvdreadsrc by the autopluggers.  Aside from multi-angle DVD
support, it seems to be working as a drop-in replacement for dvdreadsrc.

This is the first gstreamer plugin I've written, so any advice from more
experience developers would of course be welcomed.  I've been keeping my
work synced to a Bazaar repository on launchpad:
https://launchpad.net/people/jderose/+branch/kungfu/dvdsrc

Cheers,
Jason


Footnotes:

(1) The "Seek on DVD not performed relative to title" bug,
http://bugzilla.gnome.org/show_bug.cgi?id=372797
This bug occurs when seeking on a title that is in a title_set with more
than one title, as is often the case with TV serials that have several
episodes per DVD.  I posted lots of my progress at this bug report, so
be warned that it's long winded and some of my ideas in the beginning
were wrong.

(2) My notice is as follows:
/*
 * GStreamer gst-template:
 * Copyright (C) 2005 Thomas Vander Stichele <thomas at apestaart.org>
 * Copyright (C) 2005 Ronald S. Bultje <rbultje at ronald.bitfreak.net>
 *
 * Original dvdreadsrc:
 * Copyright (C) 1999 Erik Walthinsen <omega at cse.ogi.edu>
 * Copyright (C) 2001 Billy Biggs <vektor at dumbterm.net>.
 * Copyright (C) 2006 Tim-Philipp Müller <tim centricular net>
 *
 * New dvdsrc, based on gst-template and dvdreadsrc:
 * Copyright (C) 2006 Jason Gerard DeRose <jderose at jasonderose.org>
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Library General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Library General Public License for more details.
 *
 * You should have received a copy of the GNU Library General Public
 * License along with this library; if not, write to the
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 * Boston, MA 02111-1307, USA.
 */



-------------- next part --------------
A non-text attachment was scrubbed...
Name: dvdsrc.tar.gz
Type: application/x-gzip
Size: 29216 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20061124/f36b69f5/attachment.bin>


More information about the gstreamer-devel mailing list