GNOME Bugzilla – Bug 166785
[PATCH] New plugin: scroller
Last modified: 2005-04-14 12:40:26 UTC
When we can mix arbitrary video buffers onto another, and the mixer element is pretty flexible, as a simple demonstration, one can do a scroller element. Onto its sinkpad, one connects the foreground, onto the srcpad, the mixer, and the scroller element fiddles the xpos and ypos properties of the mixer element. That is what this plugin does. It is implemented as a base class, on top of which I built two simple scrollers (bouncingscroller, which makes the buffer scroll from one position to another and then back; and loopingscroller which scrolls from one position to another, then jumps to the starting position and starts again). Ideas on how to make it better are welcome (I couldn't find a way to remove the requirement that scroller's srcpad must be linked to a mixer element... it would be nice if one could insert another element inbetween...). The plugin was developed for the imagemixer element I submitted in bug #166783.
Created attachment 37241 [details] [review] Patch implementing the plugin In case this gets applied, please preserve the comment block at the end of the sources (or at least, the arch-tag line), so that my version control system does not get confused when I sync to CVS. Thanks!
I figured it would probably better to implement this by subclassing imagemixer.. I'll do that when time permits, then submit a new patch.
Marking patch as such for the patch-bug-bots. :).
Since I submitted this, I came to the conclusion that scrolling is probably best implemented on the application level, and not as a gstreamer plugin. The rationale is that the application has way more information at hand about how to do the scrolling, and when the merge position can be set on the mixer element, it is pretty trivial to alter that property from time to time. Therefore, I'd like to close this report with a NOTABUG resolution. Any objections? (Probably none, but still :)
Allrighty then, probably a good idea. It was very specific anyway.