Ivtv and VPS/PDs (was Re: [mythtv] vps once again...)
Michael T. Dean
mtdean at thirdcontact.com
Fri Jul 23 14:56:28 EDT 2004
>>... until ivtv
>>releases a "stable" 0.1.10 version (i.e. a version that is intended for
>>general use by all end users, for distribution by packagers, and for use
>>as a basis of development in other projects), MythTV is being developed
>>for use with ivtv 0.1.9.
>i know it belongs to the ivtv mailing list
So let's move it over. I'm actually on both lists. :) (Make sure you
don't Reply All.) (For ivtv-devel users, the beginning of this thread
can be found at http://www.gossamer-threads.com/lists/mythtv/dev/77650
. Quick summary: Manuel (maestro) is considering implementing some
VPS/PDS support in MythTV using the PVR-x50 with Hans' recent VBI/VPS work.)
>but you seem to have (a little) insight there:
Like I said, only observations from reading the lists--mainly just
catching you up on "history." (If anything I say is wrong, someone
please let us know.)
>do you have any infos when such a stable release will happen,
Hans tried to get development to stabilize for a short term to get an
ivtv-0.1.10pre3 release out, but the card didn't seem to like the
schedule. ;) I haven't heard anything more on it lately, but I can
almost definitely say there will be a 0.1.10pre3 before 0.1.10 final
Getting 0.1.10 final out (with all Hans'
auto-detection/auto-module-loading work) would be very nice since most
problems are related to users incorrectly specifying the module options
or incorrectly loading the modules. However, I think (pure speculation)
that Hans may be waiting *because* of the auto-detection
code--occasionally, a user will report a new card that isn't properly
autodetected, so when these reports die out, he may resume work on
getting a pre-release out.
>and won't it be 0.2 since in the readme states 0.1 isn't developed
>actively anymore. (i think that interferes with ck's efforts doesnt it?)
Well, Kevin Thayer is working on 0.2--which is basically a ground-up
redesign of the entire driver (something that every software development
project should do at least once). It sounds like it will do some great
things, but it takes time.
Chris Kennedy has been trying to get the existing/working (0.1.10pre2)
drivers to provide professional-quality video capture/editing support.
He basically works on it at work, then goes home to work on it for fun
(and, maybe sleeps for 15 or 20 minutes a day ;).
Hans Verkuil has been working on autodetection, autoloading, VBI, radio,
PCM capture, and other "additional features" of the cards (i.e. beyond
just video encoding/decoding).
And many others are working on testing, miscellaneous fixes, etc.
(Sorry if I missed anyone who feels he/she has done enough work to
warrant an "introduction." Feel free to introduce yourself to Manuel. ;)
All of the work being done by Chris/Hans/everyone else will still be
useful for the 0.2 drivers. After all, the hard part is finding out how
to make things works. As a matter of fact, getting back to the
redesign-from-the-ground-up idea, figuring out how things work on 0.1.10
will allow Kevin, et. al., to use the lessons learned from the 0.1.10
effort to ensure that the features are "designed into" the new drivers
as opposed to just "bolted on." In other words, not knowing how
something works makes it more difficult to design for that feature--you
might start down one path, and, by the time you get things working,
realize that there was a better way to add the feature. Although you
can then change the code to use the better way, doing so may introduce
bugs or leave some unnecessary code lying around. Therefore, figuring
all this out before 0.2 will (IMHO) help to make 0.2 a better driver.
>>So, for all practical purposes, ivtv-0.1.9 is the most current driver
>>version available because all other versions are development versions
>>not intended for general use. So, if you can create VPS support that
>>has no effect on users of the 0.1.9 drivers (not to mention users of
>>non-ivtv-based cards) but that just works if the VPS data is available
>>(possibly with a switch to enable/disable VPS support), you might be
>>able to convince the main developers to include that patch in the main
>>branch. Otherwise, you might have to wait for ivtv-0.1.10 (or ivtv
>>0.2.0). Also, I think the BTTV cards support VBI, so in theory, if you
>>write the VPS code generically enough, it can be used for BTTV cards and
>hm it seems as if the vbi support in the newer ivtv drivers is already implemented.
>i posted a msg on the ivtv list on this topic and awaiting answers.
>so if it would be (re) implemented to work with 0.1.9 and mythtv it
>would probably only live until ivtv > 0.1.9 is released, (because it
>will then be supported by the driver) the mythtv - changes may persist
>if they work with the new drivers or will need to be reimplemented. that
>sounds like doing work twice doesn't it?
Since ivtv 0.1.9 has already been released, any changes made to it would
be similar to the ck patches--they would be development versions,
because they wouldn't be the "officially sanctioned" stable release (as
a matter of fact, Hans has some patches for 0.1.9 -
http://www.xs4all.nl/~hverkuil/ - which add at least VBI support, if not
VPS support). Also, I'm pretty sure that VBI/VPS support requires
changes to the 0.1.9 drivers, so implementing it at the user level (i.e.
MythTV) wouldn't be possible. Therefore, trying to ensure VPS support
in 0.1.9 is not possible.
Instead, you'll probably need to ensure that the code you add to MythTV
does not interfere with users of 0.1.9 (i.e. if no VPS signal is
detected, your code doesn't do anything). Also, it's critical that your
changes do not require users to upgrade to a newer release version of
the ivtv drivers--that they can continue to use drivers without VBI/VPS
support. If you can accomplish these two things, and if you also write
the code so that it can be extended for use with the BTTV drivers (or
even better, so it works with the BTTV drivers), you'll probably be able
to get your changes into Myth (and make a lot of people around the world
>>BTW, you'll make many more friends on this list if you reply to a post
>>by adding to the bottom (bottom-posting) or by responding to parts of a
>>post "inline" as I did. And, it's always a good idea to trim the
>>extraneous material from previous messages.
>thanks for the hint. i'll try to bear this in mind for my future
>postings (guess this one's ok?!)
More information about the mythtv-dev