[gst-devel] GStreamer on Windows

Scott Peterson lunchtimemama at gmail.com
Fri Jun 29 22:50:10 CEST 2007


Hey Sébastien, thanks for lending a hand. Here's the situation:

I'm using glib binaries from the OpenVista project [1].

I initially used Gstreamer 0.10.13 binaries from freedesktop.org [2], but
now I'm building Gstreamer 0.10.13 myself with Visual Studio so that I can
debug the problem.

I tried to initialize the Gstreamer that I built, but it failed with this
error:

> Debug Assertion Failed!
> File: write.c
> Line: 68
> Expression: (_osfile(fh) & FOPEN)

The error happens in line 72 of gstregistryxml.c, in the method
gst_registry_save. The line is:

> written = write (registry->cache_file, str, len);

I think the error arises because registry->cache_file has the value 3.
registry->cache_file is assigned on line 849 of gstregistryxml.c in the
method gst_registry_xml_write_cache. The line is:

> registry->cache_file = g_mkstemp (tmp_location);

Prior to execution of this line, registry->cache_file is 0. After execution,
it is 3. Someone on IRC advised me that this is a problem having to do with
the fact that I'm building Gstreamer myself, but not glib. Unfortunately I'm
not able to build glib for a number of reasons, so I just got around this
problem by inserting

> goto fail;

before the registry->cache_file assignment. Gstreamer now initializes.

Now to the playback problem. Banshee playback is handled in a C library
called libbanshee. The relevant file is gst-playback-0.10.c [3]. When a song
is played in the interface, the method gst_playback_open is called, and then
gst_playback_play (see gst-playback-0.10.c). The error occurs while
executing gst_playback_play.

I've traced the problem to the method gst_base_src_start in gstbasesrc.c on
line 1986:

>     result = bclass->start (basesrc);

I'm not able to enter that function while debugging (what code is this
pointing to?) but when it returns, result is 0. I can provide loads of stack
trace info or variable values, but I don't know what would be helpful for
you to know. I don't understand what much of the code is doing, but I do
know that this is happening during a pad activation (whatever that is).

Thanks again for helping out and let me know what other info I can provide.

Best,
Scott

[1]
https://sourceforge.net/project/showfiles.php?group_id=74626&package_id=223067
[2] http://gstreamer.freedesktop.org/pkg/windows/releases/
[3]
http://svn.gnome.org/viewcvs/banshee/trunk/banshee/libbanshee/gst-playback-0.10.c?view=markup


On 6/28/07, Sébastien Moutte <sebastien at moutte.net> wrote:
>
> Hey Scott,
>
> I'll be happy to help you making Banshee work with Gstreamer in Windows
> if I can.
> What's the status of the problems you were having ?
> This error "GStreamer resource error: OpenRead" makes me think about a
> LIBC problem as there are some incompatiblities (with files descriptors
> for ie) between msvcrt.dll and newer versions.
> What binaries of GStreamer are you using ?
>
> Regards,
> Sebastien
>
> Scott Peterson a écrit :
> > Hey GStreamer folks! I'm porting the music app Banshee [1] to Windows
> > as a project for the Google Summer of Code. Banshee uses gstreamer for
> > its playback backend so I'm now in the process of making that work on
> > Windows. Unfortunately, I'm having a bit of trouble. I'll be fully
> > investigating the issue come next week, but I thought I'd start my
> > quest be making contact with the mailing list. I've summarized the
> > trouble I'm having on our Summer of Code list [2] so if anyone has a
> > spare moment and wouldn't mind lending a hand to a gstreamer newcomer,
> > I'd appreciate any input you might have. Thanks!
> >
> > [1] http://banshee-project.org/Main_Page
> > [2]
> >
> http://groups.google.com/group/mono-soc-2007/browse_thread/thread/d1d8510fb208bad
> > <
> http://groups.google.com/group/mono-soc-2007/browse_thread/thread/d1d8510fb208bad
> >
> >
> > --
> > Scott.
> > ------------------------------------------------------------------------
> >
> >
> -------------------------------------------------------------------------
> > 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
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20070629/154b5ea6/attachment.htm>


More information about the gstreamer-devel mailing list