KernelLabs tvtime dropping V4L1 support

Well, it’s been a long time coming, but the kernel folks are finally dropping support for the Video4Linux 1 API in Linux 2.6.38. As a result, applications which depended on the API (such as tvtime) have to change to no longer use the old API.

At KernelLabs, tvtime is our “go-to” tool for demonstrating driver functionality to commercial customers, so it made sense for us to do the work to clean up the code. We’ve wanted to do this for a while, since the V4L1 cruft made the code much more complicated and therefore made testing that much harder.

In the end, it only took about an hour to remove the V4L1 dependency, and the results can be found here:

And as per usual, here are the commands required to build:
hg clone http://www.kernellabs.com/hg/~dheitmueller/tvtime
cd tvtime
autoreconf
./configure --disable-nls
make
make install

(or alternatively you can just run it where it lies by running ./src/tvtime)

If anybody notices any functional difference resulting from this change, please let me know. That is, unless you are expecting it to work with your very old V4L1-only device, in which case I might suggest spending $20 and buying a new card…

Devin, I am running gentoo and I am trying to import your work to our distro since the version of tvtime that we have will no longer compile against 2.6.38 headers.
1- If I download the gz file from http://www.kernellabs.com/hg/~dheitmueller/tvtime can I skip the mercurial copy since running hg clone http://www.kernellabs.com/hg/~dheitmueller gave me errors about hg forest.
2- Assuming that the gz file mentioned in 1* is the updated patched sources ready to build, here is what happens when I run autoreconf

What a coincidence! I was just about to send that very same information to the Nigerian Gaming and Email Lottery Corporation, (it must truly be my lucky day) as my address happened to have won the lottery! I’ll just CC you in on my response to them, and you can grab the particulars from that message. 😉

It sounds like you have a generic build-time dependency problem that is not specific to the dropping of V4L1 support.

I would recommend you see if you can build the tvtime that came with your distro – I suspect you will find the same problem. I usually satisfy the build-time dependencies that are associated with the distro’s version of tvtime, at which point you won’t have any trouble building the KL version. For example on Ubuntu I would run:

It’s hard to say when/if the KernelLabs tree will go into upstream distributions. The problem is the original project has been dead for *years*, and that is what distros are shipping. We’ve made an effort to merge all the distro-maintained patches to make it easier for them to switch to our tree as the upstream source, but it is ultimately up to them to decide whether to switch.

Regarding the ALSA mixer situation, there are virtually no cards still made which don’t provide an ALSA device (and haven’t been for a number of years). I am likely to drop the ALSA mixer config entirely and switch to a model that strictly works with cards that use an ALSA device. People who have an archaic card that doesn’t provide an ALSA device can stick with whatever version of tvtime they have. Time to enter the 21st century.

The archaic card still receives archaic analog TV. Seems sad to dumpster it and buy a card that receives the same TV but with a different audio system. Wouldn’t controlling just one line-in volume and mute be fairly easy to keep?
Thanks for the work and responding to my questions. I don’t mean to be ungrateful.

There were changes to newer versions of glibc that prevented even the virgin upstream sources from tvtime.sourceforge.net from building under recent versions of Ubuntu.

If you had “older sources” building, they were probably patched by the maintainer of whatever distribution you were using (to confirm, you can get the get the upstream tarball from tvtime.sourceforge.net).

[quote]The archaic card still receives archaic analog TV. Seems sad to dumpster it and buy a card that receives the same TV but with a different audio system. Wouldnâ€™t controlling just one line-in volume and mute be fairly easy to keep?
Thanks for the work and responding to my questions. I donâ€™t mean to be ungrateful.[/quote]

I second that.
I am using legacy stuff cause i cant afford to buy the new one! I’m still a student struggling with my finances. Spending 20 or 50 bucks on new hardware is not a healthy move for me right now! And you should know that there are many like me out there.

My (analog)tv card(hauppauge) is working perfect right now running on Ubuntu 10.10!
I am located in Europe!

I donâ€™t mean to be ungrateful either and i DO thank you for your ongoing support!

Not sure where to post this. There doesn’t seem to be a bug tracker. So here goes:

Gentoo Linux recently switched from the old tvtime (from 2005) and now uses the kernellabs version. But there’s a bug now that wasn’t there before: launching tvtime lockup up ALSA. For as long as tvtime is running, no other application can output sound: