[gst-devel] [directdrawsink] when screen resolution size LESS than video caps size

Julien Isorce julien.isorce at gmail.com
Thu Jul 17 16:39:06 CEST 2008


Hi,

In a particular context that I can explain later if needed, I have a screen
with resoltuion equals to 640*480 and the video source size is 720*576 (>
640*480).
The following pipeline does not work:

gst-launch-0.10 videotestsrc ! video/x-raw-rgb, width=720, height=576 !
directdrawsink

It failed on the the gst_directdraw_sink_set_caps methods when creating the
offscreen (gst_directdraw_sink_check_offscreen_surface):
IDirectDraw7_CreateSurface returns :

DDERR_INVALIDPARAMS ->
HRESULT: 0x80070057 (2147942487)
Name: E_INVALIDARG
Description: An invalid parameter was passed to the returning function
Severity code: Failed
Facility Code: FACILITY_WIN32 (7)
Error Code: 0x0057 (87)

I tried other size and it failed only when the screen resoltuion size is
less than the video source size.

I can add that it works on newer drivers, so to reproduce *just turn off the
"device acceleration" *( in screen properties, advanced, Troubleshoot tab,
move the slide to None, then apply).
Then try : gst-launch-0.10 videotestsrc ! video/x-raw-rgb, width=1640,
height=1080 ! directdrawsink if your screen resolution is 1280 * 1024.

*I haved tested on linux (to compare with ximagesink)*, and I forced the
system to not use device acceleration (just use vesa instead of of the
driver card), and it works fine.

Ok then even if you tell me now : "it 's not a bug in directdrawsink and
it's not possible to make it work on win32", I can add that I am also using
the gstxoverlay interface to see the video in a smaller window size than the
video capture size. So it should be possible.

And so the problem is from directdrawsink implementation which does not give
a chance to work when "gst_directdraw_sink_check_offscreen_surface" failed
in the "set_caps" method.

So do I have to report a bug ?

J.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20080717/b5ba9ef5/attachment.htm>


More information about the gstreamer-devel mailing list