From: Jason T. <ta...@sa...> - 2005-09-24 21:18:22
|
On Sat, 2005-09-24 at 17:03 -0300, Miguel Freitas wrote: > have you considered using post/deinterlace/xine_plugin.c as a > reference? the deinterlace plugin output a completely different frame > than what it receives, both in terms of colorspace and size (when > using scalerbob option). Since you mentioned this, I tested ScalerBob using xshm and observed that dest_size_cb gets called with varying sizes here as well. Specifically, I tested it with 640x480 interlaced video and for every frame dest_size_cb gets called 4 times with 640x480 aspect=3D1.0, 2 times with 640x240 aspect=3D0.5, and then that pattern repeats. I wasn't strictly correct when I said that dest_size_cb was getting called with alternating sizes with my scale plugin. I looked again, and for every frame draw, dest_size_cb gets called twice with the original frame size, and once for the scaled frame size. This doesn't seem like correct behaviour. I believe the above problem is separate from the problem I'm seeing with Xv. With Xv, frame_output_cb is reporting the frame size as being something other than what my plugin is outputting. In the end, things get scaled to the right resolution (in hardware), but the point is since my plugin is outputting a frame that's in the correct movie aspect, there shouldn't be any hardware scaling at all. With sdl, frame_output_cb reports the correct size, so this seems to be a problem with Xv. Cheers, Jason. |