Hi Brian,
I've taken a look at some of the PVR software this week. Freevo and Mythtv.
OK. I have looked at them both too in the past. I will preface all of this by saying that both are unacceptable in terms of display quality. Why? Because they are all eye-candy and features, etc. and neither deals properly with the real problem which is an interlaced display output to an interlaced device -- the television.DirectFB is the _only_ graphics display engine that is addressing this issue.
Well, AFAIK Freevo uses SDL and can display on FB.
Is this also so when you use mplayer on the fb or with SDL with a matrox G4XX?I don't know how much you know about broadcast television, but it is an interlaced format. That means that each "picture" that comes down the wire (there are 59.94 of these per second in NTSC and 50/s in PAL) is displayed on every other line of your televsion, on the lines adjacent to the previous picture. These pictures are usually called fields. First you get lines 0, 2, 4, 6, 8... which is displayed for 1/59.94th (all of my examples will be NTSC, you can substitute 50 for 59.59 and 25 for 29.97 if you are in PAL-land) of a second and then you get lines 1, 3, 5, 7, 9... which is displayed for 1/59.94th of a second. Then you get lines 0, 2, 4, 6, 8... again and then 1, 3, 5, 7, 9... again. To properly record a broadcast signal and display it back on a PVR and preserve all of the temporal information (i.e. motion), you have to be able to record each field separately, but more importantly, you have to be able to display each field separately, interlaced, just as it is broadcast (and you recorded it). Niether freevo or mythtv do this. Any solution using X11 by definition cannot do this and will in fact "tear" during display. This is because X11 cannot display the frames in sync with the vertical retrace sync of the televition. The result is that the application displaying the frames (i.e. MPlayer) never knows when the television has fully displayed a frame and therefore can never know when to start giving a new frame to the display hardware. It ends up giving a new frame while the old one is displaying resulting in a "tear" (where you see some portion of the old picture and some portion of the new picuture on the screen at the same time, separated horizontally -- i.e. the bottom half of hte old frame and the top half of the new frame).
I'm looking into the latest G400 / G450 FB stuff (from ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/ ) Perhaps the kernel can be patched to use version 1.64 (1.62 now).In terms of hardware for TV output, only the Matrox G400 is fully able to do this properly. All other TV display cards' manufacturers refuse to publish specs on how to get their cards to display to TV. There are hacks like using the BIOS for TV display output on Radeon cards and the such, but none of these give a properly interlaced, overscanned image like the G400 does with recent DirectFB code.
Some other stuff I'm looking at:
http://www.flashdance.cx/tv-out-mga-fb.html
http://www3.sympatico.ca/dan.eriksen/matrox_tvout/
I guess there is also nVidia, but those are closed source drivers, soThey use it to store the programming information and such. I haven't looked at the schema yet.
we can dismiss them without examination.
Mythtv looks more promissing. I've grabbed a mythtv src.rpm from the net and started adapting it for mdk. The configure script you'll first encounter is not for mythtv, it's for some other library it needs. There quite a number of funny paths it uses and other quirks. It also needs MySQL, which I can't get working on my box at the moment.
MySQL for a PVR? Overkill.
It's to be able to program the PVR from a web browser. I like this feature --> it'll let me program it from work :-)MySQL-3.23.53-5mdk, can somebody verify this? Mythtv has more features (web interface) than freevo and the mailinglist is quite busy.
Why would I want a web interface for my PVR? I don't want X11 as my display engine for all of the reasons I gave above, and I want a PVR, not a WebTV.
Stefan
smime.p7s
Description: S/MIME Cryptographic Signature
