[gstreamer-bugs] [Bug 638891] New: New QoS event encouraging degraded rendering when window is obscured
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Fri Jan 7 00:54:08 PST 2011
https://bugzilla.gnome.org/show_bug.cgi?id=638891
GStreamer | gstreamer (core) | 0.10.28
Summary: New QoS event encouraging degraded rendering when
window is obscured
Classification: Desktop
Product: GStreamer
Version: 0.10.28
OS/Version: All
Status: UNCONFIRMED
Severity: enhancement
Priority: Normal
Component: gstreamer (core)
AssignedTo: gstreamer-bugs at lists.sourceforge.net
ReportedBy: yongnian.le at intel.com
QAContact: gstreamer-bugs at lists.sourceforge.net
GNOME target: ---
GNOME version: ---
There might be many cases that some window is invisible
(for example other window is in full screen), its related sink elements are
still busy in rendering and upstream elements are busy in processing and
decoding. Here a new event type "QOS_OBSCURED" is introduced.
The UI toolkit (Gtk+, Qt) already keeps track of windows status information:
visible or invisible etc. So it would be straightforward to extend the
GstVideoSink class to have a property that encourages degraded rendering. When
such property is set, the "QOS_OBSCURED" event is pushed to upstream elements
for handling: degraded quality for less resources.
And, for bonus points, as there is a trend in the industry toward stream
switching for video over the internet, such event could be used to select
appropriate media info in future.
After discussion with David Schleef (ds at entropywave.com) and Halley Zhao
(halley.zhao at intel.com), the patches (based on version 0.10.28) for such
mechanism are ready for video rendering degradation when it is invisible. They
include below changes:
1. gstquark.h/gstquark.c: new quark string
2. gstevent.h/gstevent.c: new QoS event
3. gstvideosink.c: generate new QoS event when it encourages degraded rendering
3. gsttee.c: degrade handling rate when it receives degraded rendering request
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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