I recently got arturo’s GStreamer player which normally runs under Linux to work on Windows XP in codeblocks in OF version 0.061. This plays back a large number of audio and video file types and is capable of streaming as well.
Firstly thanks very much for putting this up! Much appreciated but I’m having a bit of trouble getting the example to run. I followed your steps above, but when I run it a system error box comes up saying that libgthread-2.0-0.dll and** libgmodule-2.0-0.dll** are missing. I tried to find these from google (placed in bin) but I get another error:
‘The procedure entry point g_module_open_ut8 could not be located in the dynamic link library libgmodule-2.0-0.dll’
Very confused!? Any ideas (prob using completely the wrong dlls - should these be in the library already)?
So I’ve been playing around with this guy for the last couple of hours. Hopefully in the future i’ll be leveraging the superior streaming capabilities of gstreamer/VLC for a project i’m working on, but for now i’ve just been testing its speed/compatibility for regular + HD video files. It looks exciting, but results have been mixed:
1st, the good: trying to play a 1080p/5d mk2 video files without Gstreamer - about 8fps.
with Gstreamer about 500-800fps . (measured with fraps). That’s an obvious major performance increase, and means I can run some projects in 1080p in OF now.
also was able to play OGG, MKV, etc. fileformats.
the less than perfect things: in some applications, like while grabbing every frame, and manipulating a pixel array, it ended up being slower than the regular videoplayer. Also, i ran into some glitches while switching video files. If I don’t call closemovie() before loading a new movie file, It will play both movies simultaneously in one box. Also videoObject.height has a value of NAN, although videoObject.getHeight() works correctly. I expect there are enough little differences from the standard ofVideoPlayer to make it a bit of a headache to convert old projects with. And I’m getting some crashes still, that I haven’t identified the cause of yet.
Regarding performance of Gstreamer vs ofVideoPlayer, I found that in general it depended very much on the codec in question. Apple codecs tend to work better with quicktime, but other more obscure codecs tend to work better with GStreamer…it’s a little bit trial and error.
Fishkingsin, I think you need to set the GST_PLUGINS_PATH environment variable in codeblocks for it to run within CB. On some version of windows you don’t need to do that for some reason…but try it and should solve your problem. Set this variable to the path of your Gstreamer plugins. There should be a system wide variable already set to this if you can run it outside of CB, so just copy that one if you like.
@ drosen … I haven’t tried streaming yet with GStreamer, either under Linux or Windows. I think arturo has though…so if you post your example with instructions maybe I can have a try at getting it working
@grimus my ‘example’ was just the worlds most basic. load 1 file, call update() and draw() on it. However, issues could have come from the fact that I was streaming from my Mac to my windows box. I was mistakenly thinking that VLC is based on GStreamer.
It was the only program I could get to properly load that particular stream.