I might have found out the problem.  You need to call .new() to construct
it.  I got rid of the critical and all constructors are being called.  I
just need to verify the actual renderer is working.
On Feb 25, 2015 11:29 AM, "Jens Georg" <[email protected]> wrote:

> Hi,
>
> I'm watching the GNOME github repositories so I've noticed your pr, thanks.
>
> Usually we use GNOME Bugzilla for patch submission, but, I guess PR is
> fine as well.
>
> About your issue: It might be that this library is not using GObject-Syle
> construction properly. I would have to check but I'm currently moving house
> so time is limited.
>
>  I submitted a pull request on github[1].  I'm not sure that's the
>> appropriate place, but it's there.  This is an attempt to provide
>> introspection data about the rygel-renderer-gst interfaces so that
>> python and other languages that use GI will be able to build
>> renderers.  It doesn't quite work just yet, I'm running into some
>> issues testing it.
>>
>> Consider the following example python code:
>>
>> #!/usr/bin/env python
>>
>> import gi
>>
>> from gi.repository import Gst, GObject, RygelRendererGst, GLib
>>
>> GObject.threads_init()
>>
>> Gst.init(None)
>>
>> renderer = RygelRendererGst.PlaybinRenderer(title = "my awesome
>> title")
>>
>> GLib.MainLoop().run()
>>
>> When run it produces two CRITICAL errors:
>>
>> (python:28864): RygelRenderer-CRITICAL **: plugin_construct: assertion
>> 'player != NULL' failed
>> (python:28864): RygelCore-CRITICAL **: rygel_plugin_set_title:
>> assertion 'self != NULL' failed
>>
>> I am not very familiar with vala, but it seems like the constructor[2]
>> for RygelRenderer is not being called.  Instead, the "constructed()"
>> override is being called first, and tries to construct the plugin,
>> which fails because player is still null.  I can test this by
>> inserting a "debug(...)" and "assert_not_reached ()" in both
>> MediaRenderer(...) and constructed() and see which one gets called
>> first.  The output of the above example becomes (run with
>> "G_MESSAGES_DEBUG=all")
>>
>> (python:2136): RygelCore-DEBUG: rygel-media-device.vala:65: No
>> listening port specified, using random TCP port
>> (python:2136): RygelRenderer-CRITICAL **: plugin_construct: assertion
>> 'player != NULL' failed
>> (python:2136): RygelCore-CRITICAL **: rygel_plugin_set_title:
>> assertion 'self != NULL' failed
>> (python:2136): RygelRenderer-DEBUG: rygel-media-renderer.vala:68:
>> constructed() called
>>
>> **
>>
>> RygelRenderer:ERROR:rygel-media-renderer.c:346:rygel_media_renderer_real_
>> constructed:
>> code should not be reached
>>
>> Aborted (core dumped)
>>
>> Any guidance on how to debug this further would be appreciated.
>>
>> -Kevron
>>
>> [1] - https://github.com/GNOME/rygel/pull/1 [1]
>> [2] -
>> https://github.com/tripzero/rygel/blob/master/src/
>> librygel-renderer/rygel-media-renderer.vala#L51
>> [2]
>> [3] -
>> https://github.com/tripzero/rygel/blob/master/src/
>> librygel-renderer/rygel-media-renderer.vala#L60
>> [3]
>>
>> Links:
>> ------
>> [1] https://github.com/GNOME/rygel/pull/1
>> [2]
>> https://github.com/tripzero/rygel/blob/master/src/
>> librygel-renderer/rygel-media-renderer.vala#L51
>> [3]
>> https://github.com/tripzero/rygel/blob/master/src/
>> librygel-renderer/rygel-media-renderer.vala#L60
>>
>> _______________________________________________
>> rygel-list mailing list
>> [email protected]
>> https://mail.gnome.org/mailman/listinfo/rygel-list
>>
>
>
_______________________________________________
rygel-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/rygel-list

Reply via email to