[gst-devel] Problem with gst-python in windows
NeBlackCat (lists)
lists at asd-group.com
Wed May 16 15:23:23 CEST 2007
Hi Jodim,
I can't help with your problem, but could you list exactly what you did
to get to the point of successfully running gstplayer?
I tried to do that and ended up with all sorts of problems. For a while
I could run gstplayer but couldn't get it to do anything, now any gst
related thing that I run (including gstplayer) just crashes. Perhaps
anyone else with experience of gst on Windows can chime in too, it would
be appreciated.
Here's what I did, starting from scratch (following Sebastien Moutte's
instructions at the bottom of http://perso.orange.es/moutte983/gstreamer/) :
1) Installed GTK+ runtime environment v. 2.10.6-1 (and The GIMP 2.2.14
to test it) from:
http://internap.dl.sourceforge.net/sourceforge/gimp-win/gtk%2B-2.10.6-1-setup.zip
Installed into default location: <progs>\Common\GTK\2.0\
2) Installed GStreamer core binaries v. 0.10 (from CVS on 2007-03-12)
from:
http://perso.orange.es/moutte983/gstreamer/cvs/gstreamer-0.10.cvs12032007.setup.zip
Installed into default location: <progs>\Common\GStreamer\0.10\
3) Installed GStreamer base plugin binaries v. 0.10 (from CVS on
2007-03-12) from:
http://perso.orange.es/moutte983/gstreamer/cvs/gst-plugins-base-0.10.cvs12032007.setup.zip
4) Installed GStreamer good plugin binaries v. 0.10 (from CVS on
2007-03-12) from:
http://perso.orange.es/moutte983/gstreamer/cvs/gst-plugins-good-0.10.cvs12032007.setup.zip
5) Installed GStreamer bad plugin binaries v. 0.10 (from CVS on
2007-02-07) from:
http://perso.orange.es/moutte983/gstreamer/cvs/gst-plugins-bad-0.10.cvs20032007.setup.zip
6) Installed gstplayer from
http://perso.orange.es/moutte983/gstreamer/gstplayer/gstplayer.zip by
copying gstplayer.exe into
<progs>\Common\GStreamer\0.10\bin\
At this point I could run gstplayer and play my test ogg, which it does
with a nice visualisation. However I couldnt play my test mpeg1, avi
(xvid), flac or wma (error messages). So I then:
7) Installed GStreamer ugly plugin binaries v. 0.10 (from CVS on
2007-03-12) from:
http://perso.orange.es/moutte983/gstreamer/cvs/gst-plugins-ugly-0.10.cvs12032007.setup.zip
8) Installed GStreamer ffmpeg plugin binaries v. 0.10.02 from:
http://perso.orange.es/moutte983/gstreamer/releases/gst-ffmpeg/gst-ffmpeg-0.10.2.win32.zip
(extracted libgstffmpeg.dll into
<progs>\Common\GStreamer\0.10\lib\gstreamer-0.10\)
Now I could play the test mpeg1 and avi (though only the audio played).
Flac still gave the error message and wma was just ignored completely.
But that's ok, this was progress.
Now is where it starts to get nasty. I wanted to compile a simple test
program from the gst API manual. Sebastien says you can do this by
downloading his two CVS DEV packages (C headers and link libs), which I did:
9) Installed GStreamer dev package 0.10 (CVS) from:
http://perso.orange.es/moutte983/gstreamer/cvs/11022007/gstreamer-0.10.cvs.win32dev.zip
(unzipped into new directory <progs>\Common\GStreamer\0.10.dev\)
10) Created a simple VS.NET 2003 C project (console application), with
one C file, and pasted in the short "hello world" audio player test
program from the gst API manual at:
http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/chapter-helloworld.html
and then:
a) setting the project's properties to reflect:
includes: <progs>\Common\GStreamer\0.10.dev\include\
libs: <progs>\Common\GStreamer\0.10.dev\lib\
link with: libgstreamer-0.10.lib
compile options: compile as C (not C++)
put output files in <progs>\Common\GStreamer\0.10\bin\
b) deleting the MS-specific #includes in stdafx.h
11) The frst problem was that it wouldnt compile due to lack of glib.h
(included in gst.h)
After some googling around I installed:
http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.12/glib-dev-2.12.11.zip
into <progs>\Common\GStreamer\0.10.dev\
and added to my project's properties:
include dirs: <progs>\Common\GStreamer\0.10.dev\include\glib-2.0\
link to: glib-2.0.lib
12) Now it wouldn't compile it couldnt find glibconfig.h (included in
glib's gtypes.h). Oops that seems to be in a lib directory,
so the project needs to include
<progs}\Common\GStreamer\0.10.dev\lib\glib-2.0\include\
13) Uhoh now libxml/parser.h (really) isn't there. More googling, then
installing:
http://www.zlatkovic.com/pub/libxml/libxml2-2.6.27.win32.zip and
adding libxml2.lib to project's links.
14) Whoops, compiler now says libxml2 needs iconv.h, so that means
installing:
http://www.zlatkovic.com/pub/libxml/iconv-1.9.2.win32.zip and adding
to iconv.lib to project's links
15) Now we can compile! But there's unresolved symbols in the link
(_g_signal_connect_data, _g_object_set, _g_type_check_instance_cast)
after grepping the .libs, give project a link to gobject-2.0.lib
16) Now we can link too!! So I eagerly hop over to the gst bin directory
and run my test.exe,
but Windows won't run it (more accurately, something that it
dynamically loads, as the test
prog does run and print stuff) as it needs avcodec-51.dll. A lot of
experimentally renaming files later,
it turns out to be libgstffmpeg.dll that needs it, but it didnt need
it when gstplayer.exe ran.
17) Dilemma time - is libgstffmpeg.dll needed to play an ogg file (which
is what the demo does)?
Or should I get the DLLs that libgstffmpeg.dll needs from somewhere? I
decide to firstly
try without it, as gstplayer.exe didn't seem to need it to play ogg.
Inexperience with gst, here.
18) Next problem - test program runs but now prints:
"** (test.exe:1548): CRITICAL **: file
E:\devel-cvs\src\gstreamer\gst\gstinfo.c: line 413: assertion `category
!= NULL' failed
One element could not be created"
19) Not much help with this on the net, googled one post guessing about
gst's debugging macros needing to be
used, but not enough info on what to do. Ok, let's try with
libgstffmpeg.dll back in. Found the DLLs it needs here:
http://neuron2.net/dgavcdec/dgavcdec100a3.zip, unzipped them into gst
bin dir.
20) Well that stopped the test prog printing "One element could not be
created" but it still prints the critical assertion, and now it crashes
too. As do gstplayer.exe, gst-inspect-0.10.exe and gst-launch-00.10.exe
now :-(
At this point I've decided to seek help on here..so HELP!!
As a newbie I'll probably be hung for saying it, but gst looks a great
cross platform project which really needs to make (excuse the pun)
Windows an equal citizen, by having a proper package of binaries, dev
kits (including dependencies) and natively compilable sources and test
apps, with MS VS Express project files, that you can install and run out
of the box. I'd like to have a go at that, if someone will help a
complete GNU novice (gnuvice?) do it and tolerate lots of stupid questions!
- John
jodim wrote:
> Hi,
> After installing Christian Schaller's gstreamer cvs binaries including gst-python bindings for win32 and successfully testing gstplayer, tried to run a simple python script using python24 but the gst python module cannot find procedure "gst_segtrap_is_enabled" in gstreamer dll even though gst version is > 0.10.9. Checked exports on all libgstreamer-0.10.dll provided by the different binaries in http://perso.orange.es/moutte983/gstreamer/ but none of them export that function. Do let me know if there's something else I can do to help.
>
> Many thanks,
> jodim
>
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
More information about the gstreamer-devel
mailing list