Re: GStreamermm playbin2 question
- From: Dirk Vanden Boer <dirk vdb gmail com>
- To: José Alburquerque <jaalburquerque cox net>, gtkmm-list gnome org
- Subject: Re: GStreamermm playbin2 question
- Date: Sun, 17 May 2009 10:44:53 +0200
2009/5/17 José Alburquerque <jaalburquerque cox net>:
> Hi. Glad to see you're using gstreamermm.
I feel awkward when I have to use plain C interfaces :-)
> On Sat, 2009-05-16 at 19:39 +0200, Dirk Vanden Boer wrote:
>> Hi,
>>
>> I'm having some troubles playing files with gstreamermm using playbin2.
>>
>> Playing a list of files works like a charm when I connect to the
>> signal_about_to_finish and set a new uri in the signal handler.
>> The problem I face is playing multiple files and putting the stream to
>> the READY status in between the files.
>
> I'm not sure what's happening. Maybe it has to do with how playbin2[1]
> changes states. The docs mentions that it is done in a separate thread
> and apps should be written to work asynchronously. I don't enough about
> this but make sure that parts of your code can handle things with this
> in mind.
>
> [1]
> http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-plugins/html/gst-plugins-base-plugins-playbin2.html
Yes, I have read that page. That is why I check the return the state
of the set_state method and if it returns STATE_CHANGE_ASYNC I do a
get_state which waits for the state change to actually finish. But no
matter how high I set the timeout of the get_state method it still
returns STATE_CHANGE_ASYNC which means the state change still isn't
finished.
>> After putting the stream to the READY status I can't put it into the
>> PLAYING status again. I created a minimal testcase that reproduces my
>> problem.
>> The file can be found here:
>> http://code.google.com/p/gejengel/source/browse/trunk/data/main.cpp
>> Compile with: g++ main.cpp -o test `pkg-config --cflags --libs gstreamermm-0.10`
>
> This code runs okay here.
Thanks for trying it out, I ran it again myself and indeed it
sometimes works, but eventually it will fail on my machine.
>> The test case also contains a bug report concerning a segfault in the
>> parse method of MessageStateChanged, it's explained on line 100
>
> Thanks and apologies for that. David had caught this bug and fixed it
> some time ago and I should have paid more attention to its importance
> and usefulness and made a release. The soon upcoming release will have
> this and a few other bugs fixed.
Sounds good.
> --
> José Alburquerque
>
>
Regards,
Dirk
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]