[dataflow]Component Library
Is there already or are there plans for components to be shared. I know this is a little outside the scope, but it does seem to be closely related. For example if I need an RGB to YUV component, it is likely that it already exists, and if not, it is likely that someone will need it after me.
Hi Duane,
On Mon, Nov 24, 2008 at 10:02 PM, Duane McKinney
Is there already or are there plans for components to be shared. I know this is a little outside the scope, but it does seem to be closely related. For example if I need an RGB to YUV component, it is likely that it already exists, and if not, it is likely that someone will need it after me.
If you're talking about packaging the components in a shared library, yes - at one point I put together an example that shows how to package a shared component using the Extension library: http://lists.boost.org/boost-users/2008/09/40272.php I am currently rewriting dataflow, and my first major goal is to have a dataflow system that makes extensive use of such libraries of components. Best, Stjepan
If you're talking about packaging the components in a shared library, yes - at one point I put together an example that shows how to package a shared component using the Extension library: I think I was being a bit ambitious. What I was thinking, is possibly a source forge project (or sandbox/wherever) which had boost::dataflow components that people had written, and had decided to share. My experience in this area comes from gstreamer (gstreamer.freedesktop.org) which provides a library similar to boost::dataflow, but also provides libraries of componets for multimedia processing. My previous example was probably a poor one, because it would be better implemented in boost::gil. But if there were a library maintained of sources, components, and sinks. It would be helpful. It is likely that this would become a project on its own however. Maybe you could list GStreamer in your "Support for more layers" section of the documentation. I don't know if it would be something I would be capable of, if it makes sense, or how feasible it would be.
http://lists.boost.org/boost-users/2008/09/40272.php
I am currently rewriting dataflow, and my first major goal is to have a dataflow system that makes extensive use of such libraries of components.
Best,
Stjepan Thank you for you terrific work.
On Tue, Nov 25, 2008 at 10:35 AM, Duane McKinney
I think I was being a bit ambitious. What I was thinking, is possibly a source forge project (or sandbox/wherever) which had boost::dataflow components that people had written, and had decided to share.
Oh, I see :-) That's a great idea, but the prerequisite would be some sort of a stable release of dataflow... as it's being re-written, it might take a little time to get to that point.
My experience in this area comes from gstreamer (gstreamer.freedesktop.org) which provides a library similar to boost::dataflow, but also provides libraries of componets for multimedia processing. My previous example was probably a poor one, because it would be better implemented in boost::gil. But if there were a library maintained of sources, components, and sinks. It would be helpful. It is likely that this would become a project on its own however. Maybe you could list GStreamer in your "Support for more layers" section of the documentation. I don't know if it would be something I would be capable of, if it makes sense, or how feasible it would be.
I remember looking at GStreamer, and IIRC it gave me the impression that one could not build a C++ - only GStreamer app. I could be wrong, though - perhaps you can share your experience on this?
Thank you for you terrific work.
Thank you for your encouraging comment! (and the component repository idea) Stjepan
I remember looking at GStreamer, and IIRC it gave me the impression that one could not build a C++ - only GStreamer app. I could be wrong, though - perhaps you can share your experience on this?
From what I have done so far, it does not seem possible to be 100% C++. On their mail lists, they say that it is possible, so that may just be due to my lack of knowledge. I'm still a little new at c/c++. What I have done is to use the standard GStreamer C code as a wrapper for my C++ objects. So I end up with a C++ class that really does all the work. What you are doing, seems very similar to GStreamer to me. Although it is billed as a multimedia framework, it does not have to be audio/video data. It will work with any mime type. It is just that what is already there is geared towards. It would probably be worth taking a look at, if you are seeking some ideas. The learning curve is a little steep, but you can dive in pretty quickly with the basics.
participants (2)
-
Duane McKinney
-
Stjepan Rajko