Re: Further gstreamermm wrapping



Milosz Derezynski wrote:
There is one difference between the rest of the plugins as found in the -good, -bad and -ugly packages (and 3rd party plugins): Those are the base types which everything derives of.

The reason why it would make sense to explicitly wrap the core and base plugins (e.g. GstBaseSrc) is that then it would be possible to write wholly new elements (plugins) using our C++ binding; otherwise this would be not possible, not even with the code generator i'm working on, as this only wraps properties and signals, which is enough for normal elements as they usually don't expose specific API in the sense of methods, they only have own properties and signals to be attached to.

Sorry it took a while to get back, I had thinking to do. :-) It turns out that only #1 (http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/ ) and #3 (http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/ ) are "wrappable" because the gstreamer API does not make includes for #2 and #4 public. That said, I think that gst-python wraps #1 and only the interfaces from #3. Maybe we can get away with just interfaces also. :-) On the other hand, if anything else from gst-plugins-base (#3) needs to be wrapped, it should be fairly easy: gstreamermm now has a sub-branch (gstreamerbasemm) in which the inclusion of the interfaces and other objects from #3 (if needed) are contemplated.

I'm planning to work a bit on the interfaces because I think that they will add needed functionality such as drawing video to windows, etc. I'll post when I get something working. Take care.

"Normal" here refers to anything that isn't a base for anything else. Derivation from specific elements isn't possible or needed either (and hence it's not neccessary to wrap all of them which would be a daunting task to keep up with, if possible at all), because they usually don't extend the object structure beyond what they've inherited from their base (e.g. GstGIOSrc only fulfills the GstBaseSrc API, but doesn't extend it).

-- Milosz

--
José Alburquerque
jaalburquerque cox net

The path to real wisdom begins with a deep loving respect for the ever living God (Prov. 1:7)



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]