After more than one year in the works, the version 0.6 of GSVideo finally comes out as… 0.7! (I felt that naming the final package as 0.6 after a string of things such as 0.6-pre0, pre1, pre2, pre3, pre4 and pre5 lacked a certain sense of novelty :-) ). In any case, this release has been possible by the contributions of many users and developers, who suggested numerous improvements and pointed out bugs and errors. The package is now split according to the OS platform, click on the following links to grab the version for Linux, Mac (Snow Leopard only , sorry Leopard version still not ready) and Windows.
The release notes list all of the changes that took place since the last stable version (0.6-pre5). With regards to the Linux and Windows versions, this release can be seen mostly as incremental one, with a number of small fixes (such as working speed() method in GSMovie) and improvements (more codecs and automatic video format detection in the GSMovieMaker).
The major “breakthrough” happened on the Mac front, where I was finally able to find a way to bundle the gstreamer binaries with the gsvideo library in such a way that there is no need of any additional installs or messing around with system environmental variables. The process I followed to compile gstreamer binaries that can be accommodated inside any OSX application is a complex one, and since it could be of help for other people out there trying to achieve a similar goal, I’ll describe it in more detail in another post.
Figure above: GSVideo exported application working!
The downside of the Mac version is that the current package works only for Snow Leopard. I’m compiling GStreamer on a Snow Leopard machine and the resulting binaries are incompatible with older versions of OSX. This will be solved as soon as I find a way to compile GStreamer on Snow Leopard in some sort of “compatibility” mode with Leopard (but I don’t know if this exists at all), or just find a spare OSX 10.5 machine (donations are welcome :-) ).
A couple of further observations regarding the Mac version of GSVideo:
- When running the sketches from the PDE you might get a warning message about plugins, probably something like this: (GSVideo:1026): “GStreamer-WARNING **: External plugin loader failed. This most likely means that the plugin loader helper binary was not found or could not be run.” Just ignore it, this will be hopefully removed in the next version.
- GSVideo comes with its own gstreamer binaries (located inside <contributed libraries folder>/GSVideo/library/gstreamer/macosx, which are the ones it tries to load when gstreamer is not detected to be installed globally on the system. However, if a gstreamer distribution is found in /opt/local, then it will use it instead of the bundled one. In fact, similar thing happens in Windows.
Note that since each platform package of GSVideo only comes with the gstreamer binaries for that platform, then the exported applications will contain only one version of the gstreamer binaries. To put it in a more concrete example: say that you are using GSVideo on Mac OSX, and choose to generate an exported application for Windows. Then the exported application will contain gstreamer binaries for OSX and not for windows. So it won’t be functional on a windows machine (unless there is a global copy of gstreamer available on that machine or you manually copy the gstreamer binaries into the exported application folder).