
ijr at po
Jul 19, 2002, 3:26 PM
Post #2 of 2
(1467 views)
Permalink
|
|
Re: Some questions about mythtv's technology
[In reply to]
|
|
On Friday 19 July 2002 05:28 pm, mythtv [at] interlinx wrote: > Hello, > > I took a look at some of your project's notes and screenshots as well > as some list messages. I have a few questions. I am developing a > "set-top" linux PVR as well so I am quite familiar with all of the > issues. > > First of all, I have gathered that you are using X11 and the Xvideo > extension for your output. How do you control flipping the images of > a video stream from one frame to the next such that they only get > flipped on the vertical retrace (vsync pulse). As I understood it, > this was not possible in X11/Xv. If you can't do this, then you must > get horrible tearing of your displayed video streams. Actually, I only see very minor tearing when using a monitor as a display device, and that very rarely. On a TV as an output device, none at all. XvPutImage with a call to XSync immediately after seems to automatically sync up with the retrace. The video output code does make its best attempt to display frames at exactly the right times, which also helps. > I have also gathered that you are using the Nuppel video format. I > have not really looked much into this format myself, but does it store > field information (i.e. interlaced streams) or is it progressive like > MPEG1 and store frames? If it's progressive like MPEG1, how do you > deal with the temporal issues of two fields, each being a different > snapshot in time being combined together into a single frame? Do you > get interlace artifacts or does Nuppel have some > "smoothing/blending/interpolating" algorithm to combine the two fields > into a single frame? The format's basically similar to MJPEG, and so, a whole lot like MPEG1 with mostly key frames. At least, as I understand things. So yeah, it stores full frames. I've got code in there to deinterlace the image (grabbed the linear blend filter from mplayer), but that's only needed when displayed on a monitor -- the tv out (at least with nvidia's drivers) does the right thing and separates the frame into its fields for display. > Do you not feel that an interlaced storage format that saves the > temporal information from two fields is better suited when your output > target is an interlaced device like a television? Probably, but this works pretty well. Isaac
|