[gstreamer-bugs] [Bug 435120] cairosvgoverlay

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Fri Sep 10 00:30:03 PDT 2010


https://bugzilla.gnome.org/show_bug.cgi?id=435120
  GStreamer | gst-plugins-bad | git

--- Comment #14 from olivier.aubert at liris.cnrs.fr 2010-09-10 07:29:56 UTC ---
Please forgive my stubbornness, but I still fail to see why the proposed
solution (filename property + request pad) is so much cleaner than the current
solution. It implies adding a number of LOC to the filter (setting up the
request pad), plus dozens of LOC to the calling code, to get less flexibility
(which is a quality I appreciate in gstreamer) in the end. The current API
provides 3 ways to input SVG data: 1/ through the data-sink pad 2/ through the
location property as a filename 3/ through the data property as actual SVG
data. It allows the user to pick the most appropriate way, according to his
needs. Does that really make the API more complicated? 

I think it all boils down to the philosophical question of "how does the
outside world interact with gstreamer". From what I understand, there are 3
ways of providing external data to gstreamer:
1. use an existing input element such as fdsrc, filesrc...
2. write your own element with appsrc (which replaces the fakesrc hack needed
before)
3. set properties
Is there any design policy that clearly prevents data to be fed through
properties? In this case, bugs should be filed against numerous other elements
(textoverlay, cairotextoverlay, clockoverlay...).

I am conscious that I do not have the same overall design awareness as you, and
that the level of quality code found in gstreamer can only be achieved by being
cautious about new code. But as far as design is concerned, I really like to
rely on the Alan Kay mantra ("make simple things simple and complex things
possible") as well as the python motto ("practictality beats purity"), which I
think are good design guidelines. And in this case, forcing users to write an
appsrc to feed data into a request pad, instead of using a single line to set a
property, looks like overkill to me.

-- 
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