On Thu, 18 Oct 2001, Billy Biggs wrote:

>   Hi Mark (and list), apologies for keeping traffic so high, but I have
> another question about XVideo and it's just too useful. :)
> 
>   Say I'm attemping to play 525/59.94 video (identical problem exists
> for 625/50 systems).  Ideally, I want to do software deinterlacing and
> output full 720x486 images at 59.94fps.  However, PCs are still slow, so
> my application has three choices:
> 
>     a) full resolution 59.94 deinterlaced,
>     b) half-resolution 59.94 (using Xv for scaling up each field),
>     c) full-resolution 29.97 deinterlaced.
> 
>   Dealing with (a) and (c) is easy, but (b) is ambiguous.  I see two
> basic methods:
> 
>   Method 1: Create Xv images of size 720x240.  Make sure the scaling of
> the window is such that input scanlines are aligned to output scanlines.
> 
>   o  Blit top    fields to x,y of 0,0, w,h of 720,485 (scaled)
>   o  Blit bottom fields to x,y of 0,1, w,h of 720,486 (scaled)
> 
>   Problems:
> 
>   1) Since I usually get input as frames, I need to do an extra copy to
>      split the input into the two field buffers.  This is really, really
>      awkward since at least for DVDs we often switch between progressive
>      and interlaced input.  With the i810 at least, any time I start
>      blitting images of a new size, the card resets and I get a few bad
>      frames blit before it wakes up!  :(            (is this a bug?)
> 
>      It seems to me that the Xv API could have benefited from a pixel
>      stride parameter for blits.  Is this fixable?

   It's possible for the driver to offer a port attribute with 
top/bottom.  Maybe it's best that it's write only and applies
only to the next command.  It could work like a hint for the next
PutImage.  XvMC has explicit top/bottom/frame instructions in the
Put command.  


                                Mark.

_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert

Reply via email to