kgst contains the KDE bindings for GStreamer. These bindings are necessary for using GStreamer for output in KDE applications. To my knowledge, juk is the only application that uses this. Source tarballs can be found at: <http://developer.kde.org/~wheeler/files/src/>. I have only tested this ebuild on KDE 3.2. Also, header files seem to be installed in an odd place (/usr/include/kde/gst), but fixing this would also require fixing kdemultimedia (which expects to find the headers there). Currently, I have this package installed as 'media-libs/kgst'. This package depends on both 'media-libs/gstreamer' and 'media-libs/gst-plugins'.
Created attachment 26685 [details] kgst-0.6.1.ebuild Proposed ebuild for GStreamer KDE bindings.
Created attachment 26686 [details] kgst-0.6.1.ebuild Proposed ebuild GStreamer KDE bindings (cleaned up a bit).
This package will not build against gstreamer-0.8 for me.
Well, I thought I had it. The first problem was that the configure script only checks for gstreamer-0.6 or 0.7. If it doesn't find one of those it completes successfully but nothing gets compiled. I modified the configure scripts so it would attempt to compile with gstreamer-0.8, but I got compile errors. I didn't bother looking into it much, just went ahead and unmerged gstreamer-0.8.1and emerged streamer-0.6.4 and reverted to the original kgst package. But I still got compile errors. Discovered it was due to a couple bugs in the gstreamer headers. ( see bug 52235 ) Once I fixed those it compiled fine against gstreamer-0.6.4. So I emerged gstreamer-0.8.1 again, and sure enough, it had the same header bugs as 0.6.4. But the kgst compile still dies even with those fixed. This is the error I get now. --------------------------------------------------------------------------- caps.cpp: In destructor `virtual KDE::GST::Caps::~Caps()': caps.cpp:39: error: `gst_caps_destroy' undeclared (first use this function) caps.cpp:39: error: (Each undeclared identifier is reported only once for each function it appears in.) caps.cpp: In constructor `KDE::GST::Caps::Caps(const QString&, const QString&, KDE::GST::Props*)': caps.cpp:48: error: `GstProps' undeclared (first use this function) caps.cpp:48: error: parse error before `)' token caps.cpp: In constructor `KDE::GST::Caps::Caps(const QString&, short unsigned int, KDE::GST::Props*)': caps.cpp:58: error: parse error before `)' token caps.cpp: In member function `KDE::GST::Caps* KDE::GST::Caps::ref()': caps.cpp:67: error: `gst_caps_ref' undeclared (first use this function) caps.cpp: In member function `KDE::GST::Caps* KDE::GST::Caps::unref()': caps.cpp:71: error: `gst_caps_unref' undeclared (first use this function) caps.cpp: In member function `KDE::GST::Caps* KDE::GST::Caps::copyOnWrite()': caps.cpp:83: error: `gst_caps_copy_on_write' undeclared (first use this function) caps.cpp: In member function `KDE::GST::Caps* KDE::GST::Caps::chain(KDE::GST::Caps*, KDE::GST::Caps*, KDE::GST::Caps*, KDE::GST::Caps*, KDE::GST::Caps*)': caps.cpp:93: error: `gst_caps_chain' undeclared (first use this function) caps.cpp: In member function `KDE::GST::Caps* KDE::GST::Caps::prepend(KDE::GST::Caps*)': caps.cpp:124: error: `gst_caps_prepend' undeclared (first use this function) caps.cpp: In member function `void KDE::GST::Caps::setName(const QString&)': caps.cpp:129: error: `gst_caps_set_name' undeclared (first use this function) caps.cpp: In member function `QString KDE::GST::Caps::getName()': caps.cpp:133: error: `gst_caps_get_name' undeclared (first use this function) caps.cpp: In member function `void KDE::GST::Caps::setTypeId(short unsigned int)': caps.cpp:137: error: `gst_caps_set_type_id' undeclared (first use this function) caps.cpp: In member function `short unsigned int KDE::GST::Caps::getTypeId()': caps.cpp:141: error: `gst_caps_get_type_id' undeclared (first use this function) caps.cpp: In member function `void KDE::GST::Caps::setMime(const QString&)': caps.cpp:145: error: `gst_caps_set_mime' undeclared (first use this function) caps.cpp: In member function `QString KDE::GST::Caps::getMime()': caps.cpp:149: error: `gst_caps_get_mime' undeclared (first use this function) caps.cpp: In member function `KDE::GST::Caps* KDE::GST::Caps::setProps(KDE::GST::Props*)': caps.cpp:153: error: parse error before `)' token caps.cpp: In member function `KDE::GST::Props* KDE::GST::Caps::props()': caps.cpp:158: error: `gst_caps_get_props' undeclared (first use this function) caps.cpp: In member function `KDE::GST::Caps* KDE::GST::Caps::getByName(const QString&)': caps.cpp:170: error: `gst_caps_get_by_name' undeclared (first use this function) caps.cpp: In member function `KDE::GST::Caps::Caps(const QString&, const QString&, KDE::GST::Props*)': caps.cpp:44: warning: unused parameter `KDE::GST::Props*props' caps.cpp: In member function `KDE::GST::Caps::Caps(const QString&, short unsigned int, KDE::GST::Props*)': caps.cpp:54: warning: unused parameter `KDE::GST::Props*props' caps.cpp: In member function `KDE::GST::Caps* KDE::GST::Caps::setProps(KDE::GST::Props*)': caps.cpp:152: warning: unused parameter `KDE::GST::Props*props' make[4]: *** [caps.lo] Error 1 ---------------------------------------------------------------- So I guess it needs a little updating to work with gstreamer-0.8. It's working beautifully with gstreamer-0.6.4 though. Thanks for the ebuild.
gst_caps_destroy is a function which is exported by gstreamer C++ bindings, not gstreamer itself i don't know what is the current state of C++ bindings, i think only python ones are up-to-date/in a working state
Thanks for the information, Zack and Stephane. I'll try to find out whether the C++ bindings are still being maintained. If not, I'll probably have to put a gstreamer version restriction in the ebuild until a fix can be found.
Since these don't work again 0.8 and that's basically the stable version, I think we probably won't put this in portage