How to reach GstPlayFlags for PlayBin through GObject introspection?

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

How to reach GstPlayFlags for PlayBin through GObject introspection?

Nox Deleo
Hi,

I'm trying to set some flags on a PlayBin instance, but having searched through all the introspection bindings I have, I can't seem to find the GstPlayFlags enum anywhere. Anyone have any idea where it is, or if I can even reach it through the introspection bindings?

Thanks.

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: How to reach GstPlayFlags for PlayBin through GObject introspection?

Tim-Philipp Müller-2
On Fri, 2012-12-21 at 20:13 +0000, Nox Deleo wrote:

Hi,

> I'm trying to set some flags on a PlayBin instance, but having
> searched through all the introspection bindings I have, I can't seem
> to find the GstPlayFlags enum anywhere. Anyone have any idea where it
> is, or if I can even reach it through the introspection bindings?

It's not exported, not via gobject introspection, nor in C.

You can/have to look at gst-inspect-1.0 playbin and use the values you
find there, they're part of our ABI.

It's also a function called gst_util_set_object_arg() that lets you set
values by nick/name/string, like in gst-launch.

Cheers
 -Tim
 


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: How to reach GstPlayFlags for PlayBin through GObject introspection?

Nox Deleo
Great, thanks. I gave it a try in the Python shell, but I'm not sure I've got the usage right, since the flags don't seem to change:

>>> import gi
>>> gi.require_version('Gst', '1.0')
>>> from gi.repository import Gst
>>> Gst.init(None)
[]
>>> playbin = Gst.ElementFactory.make('playbin', None)
>>> Gst.util_set_object_arg(playbin, 'flags', 'video')
>>> print(playbin.flags)
32
>>> Gst.util_set_object_arg(playbin, 'flags', 'audio')
>>> print(playbin.flags)
32
>>> Gst.util_set_object_arg(playbin, 'flags', 'audio+vis')
>>> print(playbin.flags)
32

Sorry if I've missed something obvious...didn't have the best night's sleep.


On 22 December 2012 10:45, Tim-Philipp Müller <[hidden email]> wrote:
On Fri, 2012-12-21 at 20:13 +0000, Nox Deleo wrote:

Hi,

> I'm trying to set some flags on a PlayBin instance, but having
> searched through all the introspection bindings I have, I can't seem
> to find the GstPlayFlags enum anywhere. Anyone have any idea where it
> is, or if I can even reach it through the introspection bindings?

It's not exported, not via gobject introspection, nor in C.

You can/have to look at gst-inspect-1.0 playbin and use the values you
find there, they're part of our ABI.

It's also a function called gst_util_set_object_arg() that lets you set
values by nick/name/string, like in gst-launch.

Cheers
 -Tim



_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: How to reach GstPlayFlags for PlayBin through GObject introspection?

Tim-Philipp Müller-2
On Sat, 2012-12-22 at 13:25 +0000, Nox Deleo wrote:

> Great, thanks. I gave it a try in the Python shell, but I'm not sure
> I've got the usage right, since the flags don't seem to change:

> >>> import gi
> >>> gi.require_version('Gst', '1.0')
> >>> from gi.repository import Gst
> >>> Gst.init(None)
> []
> >>> playbin = Gst.ElementFactory.make('playbin', None)
> >>> Gst.util_set_object_arg(playbin, 'flags', 'video')
> >>> print(playbin.flags)
> 32
> >>> Gst.util_set_object_arg(playbin, 'flags', 'audio')
> >>> print(playbin.flags)
> 32
> >>> Gst.util_set_object_arg(playbin, 'flags', 'audio+vis')
> >>> print(playbin.flags)
> 32
>
> Sorry if I've missed something obvious...didn't have the best night's
> sleep.

I suspect those are some other flags not related to playbin's flags
property.

Try with

print playbin.get_property('flags')

(the output of which might be a bit confusing, because we abuse one of
the enum fields for the description).

Cheers
 -Tim


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: How to reach GstPlayFlags for PlayBin through GObject introspection?

Nox Deleo
You're right on the money. The flags are being set fine. Thanks again.


On 22 December 2012 13:49, Tim-Philipp Müller <[hidden email]> wrote:
On Sat, 2012-12-22 at 13:25 +0000, Nox Deleo wrote:

> Great, thanks. I gave it a try in the Python shell, but I'm not sure
> I've got the usage right, since the flags don't seem to change:

> >>> import gi
> >>> gi.require_version('Gst', '1.0')
> >>> from gi.repository import Gst
> >>> Gst.init(None)
> []
> >>> playbin = Gst.ElementFactory.make('playbin', None)
> >>> Gst.util_set_object_arg(playbin, 'flags', 'video')
> >>> print(playbin.flags)
> 32
> >>> Gst.util_set_object_arg(playbin, 'flags', 'audio')
> >>> print(playbin.flags)
> 32
> >>> Gst.util_set_object_arg(playbin, 'flags', 'audio+vis')
> >>> print(playbin.flags)
> 32
>
> Sorry if I've missed something obvious...didn't have the best night's
> sleep.

I suspect those are some other flags not related to playbin's flags
property.

Try with

print playbin.get_property('flags')

(the output of which might be a bit confusing, because we abuse one of
the enum fields for the description).

Cheers
 -Tim


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel