[Bug 760172] New: [PATCH] dx9screencapsrc: add "cursor" option to draw the cursor

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Jan 5 10:31:13 PST 2016


https://bugzilla.gnome.org/show_bug.cgi?id=760172

            Bug ID: 760172
           Summary: [PATCH] dx9screencapsrc: add "cursor" option to draw
                    the cursor
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: Windows
            Status: NEW
          Severity: enhancement
          Priority: Normal
         Component: gst-plugins-bad
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: fzwoch at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

Created attachment 318272
  --> https://bugzilla.gnome.org/attachment.cgi?id=318272&action=edit
dx9screencapsrc cursor patch

Drawing is done via the GDI drawing functions. The cursor is
converted to a monochrome version before drawing. This is because
the GDI drawing functions seem to have undefined behavior with
cursor images including an alpha channel.

I could not find any other reliable way to draw these alpha
channel cursors without producing unwanted artifacts. These type
of cursors were introduced with Window Vista when run with it's
Aero theme.

Also adjust the cursor coordinates when capturing non-primary
screens via the "monitor" option.

--

This is close to the version found in the "gdiscreencapsrc" element of the same
plugin. I think the gdi version is lacking support for non-primary screens
though (but I may not have been looking close enough). Also it took me quite
some time on figuring out on how to reliably draw the cursor due to the
behavior of alpha channel cursors. It depends on the application if it shows a
monochrome or alpha channel cursor on _modern_ Windows systems. This looked
like the cursor was _randomly_ disappearing in the captured image.

This now should reliably draw a cursor into the image - with a little loss of
fidelity. Usually it is the cursor's drop shadow effect that is missing.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list