mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 05:06:17 +00:00
add GstPropsEntry and wrappers for most of get_* methods
Original commit message from CVS: add GstPropsEntry and wrappers for most of get_* methods
This commit is contained in:
parent
2ad1bbe34c
commit
166d345b1f
5 changed files with 247 additions and 56 deletions
15
ChangeLog
15
ChangeLog
|
@ -1,3 +1,18 @@
|
||||||
|
2003-01-04 David I. Lehn <dlehn@users.sourceforge.net>
|
||||||
|
|
||||||
|
* gstreamer/gstreamer.override, gstreamer/gstreamer-extra.defs: add
|
||||||
|
GstPropsEntry and wrappers for most of get_* methods
|
||||||
|
|
||||||
|
* gstreamer/gstreamer-arg-types.py: add GstClockID as a pointer arg
|
||||||
|
type (not too useful, really need to make it a boxed type)
|
||||||
|
|
||||||
|
2003-01-02 David I. Lehn <dlehn@users.sourceforge.net>
|
||||||
|
|
||||||
|
* gstreamer/__init__.py: add threads_init() function
|
||||||
|
|
||||||
|
* gstreamer/gstreamer.override: add pad and element query and convert
|
||||||
|
methods
|
||||||
|
|
||||||
2002-12-31 David I. Lehn <dlehn@users.sourceforge.net>
|
2002-12-31 David I. Lehn <dlehn@users.sourceforge.net>
|
||||||
|
|
||||||
* configure.ac: require PyGTK 1.99.14
|
* configure.ac: require PyGTK 1.99.14
|
||||||
|
|
|
@ -32,6 +32,12 @@
|
||||||
(gtype-id "GST_TYPE_PROPS")
|
(gtype-id "GST_TYPE_PROPS")
|
||||||
)
|
)
|
||||||
|
|
||||||
|
(define-boxed PropsEntry
|
||||||
|
(in-module "Gst")
|
||||||
|
(c-name "GstPropsEntry")
|
||||||
|
(gtype-id "GST_TYPE_PROPS_ENTRY")
|
||||||
|
)
|
||||||
|
|
||||||
;;
|
;;
|
||||||
;; HACK
|
;; HACK
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -272,17 +272,13 @@ _wrap_gst_pad_query(PyGObject *self, PyObject *args, PyObject *kwargs)
|
||||||
GstQueryType type;
|
GstQueryType type;
|
||||||
GstFormat format;
|
GstFormat format;
|
||||||
gint64 value;
|
gint64 value;
|
||||||
gboolean gret;
|
gboolean ret;
|
||||||
PyObject *ret;
|
|
||||||
|
|
||||||
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "ii:GstPad.query", kwlist, &type, &format))
|
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "ii:GstPad.query", kwlist, &type, &format))
|
||||||
return NULL;
|
return NULL;
|
||||||
value = 0;
|
value = 0;
|
||||||
gret = gst_pad_query(GST_PAD(self->obj), type, &format, &value);
|
ret = gst_pad_query(GST_PAD(self->obj), type, &format, &value);
|
||||||
ret = PyTuple_New(2);
|
return Py_BuildValue("(bl)", ret, value);
|
||||||
PyTuple_SetItem(ret, 0, PyInt_FromLong(gret));
|
|
||||||
PyTuple_SetItem(ret, 1, PyLong_FromLongLong(value));
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
%%
|
%%
|
||||||
override gst_element_query kwargs
|
override gst_element_query kwargs
|
||||||
|
@ -294,17 +290,13 @@ _wrap_gst_element_query(PyGObject *self, PyObject *args, PyObject *kwargs)
|
||||||
GstQueryType type;
|
GstQueryType type;
|
||||||
GstFormat format;
|
GstFormat format;
|
||||||
gint64 value;
|
gint64 value;
|
||||||
gboolean gret;
|
gboolean ret;
|
||||||
PyObject *ret;
|
|
||||||
|
|
||||||
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "ii:GstElement.query", kwlist, &type, &format))
|
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "ii:GstElement.query", kwlist, &type, &format))
|
||||||
return NULL;
|
return NULL;
|
||||||
value = 0;
|
value = 0;
|
||||||
gret = gst_element_query(GST_ELEMENT(self->obj), type, &format, &value);
|
ret = gst_element_query(GST_ELEMENT(self->obj), type, &format, &value);
|
||||||
ret = PyTuple_New(2);
|
return Py_BuildValue("(bl)", ret, value);
|
||||||
PyTuple_SetItem(ret, 0, PyInt_FromLong(gret));
|
|
||||||
PyTuple_SetItem(ret, 1, PyLong_FromLongLong(value));
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
%%
|
%%
|
||||||
override gst_pad_convert kwargs
|
override gst_pad_convert kwargs
|
||||||
|
@ -316,18 +308,14 @@ _wrap_gst_pad_convert(PyGObject *self, PyObject *args, PyObject *kwargs)
|
||||||
GstFormat src_format, dest_format;
|
GstFormat src_format, dest_format;
|
||||||
PyObject *src_value_obj;
|
PyObject *src_value_obj;
|
||||||
gint64 src_value, dest_value;
|
gint64 src_value, dest_value;
|
||||||
gboolean gret;
|
gboolean ret;
|
||||||
PyObject *ret;
|
|
||||||
|
|
||||||
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iOi:GstPad.convert", kwlist, &src_format, &src_value_obj, &dest_format))
|
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iOi:GstPad.convert", kwlist, &src_format, &src_value_obj, &dest_format))
|
||||||
return NULL;
|
return NULL;
|
||||||
src_value = PyLong_AsLongLong(src_value_obj);
|
src_value = PyLong_AsLongLong(src_value_obj);
|
||||||
dest_value = 0;
|
dest_value = 0;
|
||||||
gret = gst_pad_convert(GST_PAD(self->obj), src_format, src_value, &dest_format, &dest_value);
|
ret = gst_pad_convert(GST_PAD(self->obj), src_format, src_value, &dest_format, &dest_value);
|
||||||
ret = PyTuple_New(2);
|
return Py_BuildValue("(bl)", ret, dest_value);
|
||||||
PyTuple_SetItem(ret, 0, PyInt_FromLong(gret));
|
|
||||||
PyTuple_SetItem(ret, 1, PyLong_FromLongLong(dest_value));
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
%%
|
%%
|
||||||
override gst_element_convert kwargs
|
override gst_element_convert kwargs
|
||||||
|
@ -339,16 +327,110 @@ _wrap_gst_element_convert(PyGObject *self, PyObject *args, PyObject *kwargs)
|
||||||
GstFormat src_format, dest_format;
|
GstFormat src_format, dest_format;
|
||||||
PyObject *src_value_obj;
|
PyObject *src_value_obj;
|
||||||
gint64 src_value, dest_value;
|
gint64 src_value, dest_value;
|
||||||
gboolean gret;
|
gboolean ret;
|
||||||
PyObject *ret;
|
|
||||||
|
|
||||||
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iOi:GstElement.convert", kwlist, &src_format, &src_value_obj, &dest_format))
|
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iOi:GstElement.convert", kwlist, &src_format, &src_value_obj, &dest_format))
|
||||||
return NULL;
|
return NULL;
|
||||||
src_value = PyLong_AsLongLong(src_value_obj);
|
src_value = PyLong_AsLongLong(src_value_obj);
|
||||||
dest_value = 0;
|
dest_value = 0;
|
||||||
gret = gst_element_convert(GST_ELEMENT(self->obj), src_format, src_value, &dest_format, &dest_value);
|
ret = gst_element_convert(GST_ELEMENT(self->obj), src_format, src_value, &dest_format, &dest_value);
|
||||||
ret = PyTuple_New(2);
|
return Py_BuildValue("(bl)", ret, dest_value);
|
||||||
PyTuple_SetItem(ret, 0, PyInt_FromLong(gret));
|
}
|
||||||
PyTuple_SetItem(ret, 1, PyLong_FromLongLong(dest_value));
|
%%
|
||||||
return ret;
|
override gst_props_entry_get_int
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_int(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gint val;
|
||||||
|
|
||||||
|
val = 0;
|
||||||
|
ret = gst_props_entry_get_int(pyg_boxed_get(self, GstPropsEntry), &val);
|
||||||
|
return Py_BuildValue("(bi)", ret, val);
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_float
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_float(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gfloat val;
|
||||||
|
|
||||||
|
val = 0.0f;
|
||||||
|
ret = gst_props_entry_get_float(pyg_boxed_get(self, GstPropsEntry), &val);
|
||||||
|
return Py_BuildValue("(bf)", ret, val);
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_fourcc_int
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_fourcc_int(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gint32 val;
|
||||||
|
|
||||||
|
val = 0;
|
||||||
|
ret = gst_props_entry_get_fourcc_int(pyg_boxed_get(self, GstPropsEntry), &val);
|
||||||
|
return Py_BuildValue("(bi)", ret, val);
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_boolean
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_boolean(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gboolean val;
|
||||||
|
PyObject *py_val;
|
||||||
|
|
||||||
|
val = FALSE;
|
||||||
|
ret = gst_props_entry_get_boolean(pyg_boxed_get(self, GstPropsEntry), &val);
|
||||||
|
|
||||||
|
py_val = val ? Py_True : Py_False;
|
||||||
|
return Py_BuildValue("(bO)", ret, py_val);
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_string
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_string(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
const gchar *val;
|
||||||
|
|
||||||
|
val = NULL;
|
||||||
|
ret = gst_props_entry_get_string(pyg_boxed_get(self, GstPropsEntry), &val);
|
||||||
|
if (ret) {
|
||||||
|
return Py_BuildValue("(bs)", ret, val);
|
||||||
|
} else {
|
||||||
|
return Py_BuildValue("(bO)", ret, Py_None);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_int_range
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_int_range(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gint min, max;
|
||||||
|
|
||||||
|
min = max = 0;
|
||||||
|
ret = gst_props_entry_get_int_range(pyg_boxed_get(self, GstPropsEntry), &min, &max);
|
||||||
|
return Py_BuildValue("(bii)", ret, min, max);
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_float_range
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_float_range(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gfloat min, max;
|
||||||
|
|
||||||
|
min = max = 0.0f;
|
||||||
|
ret = gst_props_entry_get_float_range(pyg_boxed_get(self, GstPropsEntry), &min, &max);
|
||||||
|
return Py_BuildValue("(bff)", ret, min, max);
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,6 +32,12 @@
|
||||||
(gtype-id "GST_TYPE_PROPS")
|
(gtype-id "GST_TYPE_PROPS")
|
||||||
)
|
)
|
||||||
|
|
||||||
|
(define-boxed PropsEntry
|
||||||
|
(in-module "Gst")
|
||||||
|
(c-name "GstPropsEntry")
|
||||||
|
(gtype-id "GST_TYPE_PROPS_ENTRY")
|
||||||
|
)
|
||||||
|
|
||||||
;;
|
;;
|
||||||
;; HACK
|
;; HACK
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -272,17 +272,13 @@ _wrap_gst_pad_query(PyGObject *self, PyObject *args, PyObject *kwargs)
|
||||||
GstQueryType type;
|
GstQueryType type;
|
||||||
GstFormat format;
|
GstFormat format;
|
||||||
gint64 value;
|
gint64 value;
|
||||||
gboolean gret;
|
gboolean ret;
|
||||||
PyObject *ret;
|
|
||||||
|
|
||||||
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "ii:GstPad.query", kwlist, &type, &format))
|
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "ii:GstPad.query", kwlist, &type, &format))
|
||||||
return NULL;
|
return NULL;
|
||||||
value = 0;
|
value = 0;
|
||||||
gret = gst_pad_query(GST_PAD(self->obj), type, &format, &value);
|
ret = gst_pad_query(GST_PAD(self->obj), type, &format, &value);
|
||||||
ret = PyTuple_New(2);
|
return Py_BuildValue("(bl)", ret, value);
|
||||||
PyTuple_SetItem(ret, 0, PyInt_FromLong(gret));
|
|
||||||
PyTuple_SetItem(ret, 1, PyLong_FromLongLong(value));
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
%%
|
%%
|
||||||
override gst_element_query kwargs
|
override gst_element_query kwargs
|
||||||
|
@ -294,17 +290,13 @@ _wrap_gst_element_query(PyGObject *self, PyObject *args, PyObject *kwargs)
|
||||||
GstQueryType type;
|
GstQueryType type;
|
||||||
GstFormat format;
|
GstFormat format;
|
||||||
gint64 value;
|
gint64 value;
|
||||||
gboolean gret;
|
gboolean ret;
|
||||||
PyObject *ret;
|
|
||||||
|
|
||||||
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "ii:GstElement.query", kwlist, &type, &format))
|
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "ii:GstElement.query", kwlist, &type, &format))
|
||||||
return NULL;
|
return NULL;
|
||||||
value = 0;
|
value = 0;
|
||||||
gret = gst_element_query(GST_ELEMENT(self->obj), type, &format, &value);
|
ret = gst_element_query(GST_ELEMENT(self->obj), type, &format, &value);
|
||||||
ret = PyTuple_New(2);
|
return Py_BuildValue("(bl)", ret, value);
|
||||||
PyTuple_SetItem(ret, 0, PyInt_FromLong(gret));
|
|
||||||
PyTuple_SetItem(ret, 1, PyLong_FromLongLong(value));
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
%%
|
%%
|
||||||
override gst_pad_convert kwargs
|
override gst_pad_convert kwargs
|
||||||
|
@ -316,18 +308,14 @@ _wrap_gst_pad_convert(PyGObject *self, PyObject *args, PyObject *kwargs)
|
||||||
GstFormat src_format, dest_format;
|
GstFormat src_format, dest_format;
|
||||||
PyObject *src_value_obj;
|
PyObject *src_value_obj;
|
||||||
gint64 src_value, dest_value;
|
gint64 src_value, dest_value;
|
||||||
gboolean gret;
|
gboolean ret;
|
||||||
PyObject *ret;
|
|
||||||
|
|
||||||
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iOi:GstPad.convert", kwlist, &src_format, &src_value_obj, &dest_format))
|
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iOi:GstPad.convert", kwlist, &src_format, &src_value_obj, &dest_format))
|
||||||
return NULL;
|
return NULL;
|
||||||
src_value = PyLong_AsLongLong(src_value_obj);
|
src_value = PyLong_AsLongLong(src_value_obj);
|
||||||
dest_value = 0;
|
dest_value = 0;
|
||||||
gret = gst_pad_convert(GST_PAD(self->obj), src_format, src_value, &dest_format, &dest_value);
|
ret = gst_pad_convert(GST_PAD(self->obj), src_format, src_value, &dest_format, &dest_value);
|
||||||
ret = PyTuple_New(2);
|
return Py_BuildValue("(bl)", ret, dest_value);
|
||||||
PyTuple_SetItem(ret, 0, PyInt_FromLong(gret));
|
|
||||||
PyTuple_SetItem(ret, 1, PyLong_FromLongLong(dest_value));
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
%%
|
%%
|
||||||
override gst_element_convert kwargs
|
override gst_element_convert kwargs
|
||||||
|
@ -339,16 +327,110 @@ _wrap_gst_element_convert(PyGObject *self, PyObject *args, PyObject *kwargs)
|
||||||
GstFormat src_format, dest_format;
|
GstFormat src_format, dest_format;
|
||||||
PyObject *src_value_obj;
|
PyObject *src_value_obj;
|
||||||
gint64 src_value, dest_value;
|
gint64 src_value, dest_value;
|
||||||
gboolean gret;
|
gboolean ret;
|
||||||
PyObject *ret;
|
|
||||||
|
|
||||||
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iOi:GstElement.convert", kwlist, &src_format, &src_value_obj, &dest_format))
|
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iOi:GstElement.convert", kwlist, &src_format, &src_value_obj, &dest_format))
|
||||||
return NULL;
|
return NULL;
|
||||||
src_value = PyLong_AsLongLong(src_value_obj);
|
src_value = PyLong_AsLongLong(src_value_obj);
|
||||||
dest_value = 0;
|
dest_value = 0;
|
||||||
gret = gst_element_convert(GST_ELEMENT(self->obj), src_format, src_value, &dest_format, &dest_value);
|
ret = gst_element_convert(GST_ELEMENT(self->obj), src_format, src_value, &dest_format, &dest_value);
|
||||||
ret = PyTuple_New(2);
|
return Py_BuildValue("(bl)", ret, dest_value);
|
||||||
PyTuple_SetItem(ret, 0, PyInt_FromLong(gret));
|
}
|
||||||
PyTuple_SetItem(ret, 1, PyLong_FromLongLong(dest_value));
|
%%
|
||||||
return ret;
|
override gst_props_entry_get_int
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_int(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gint val;
|
||||||
|
|
||||||
|
val = 0;
|
||||||
|
ret = gst_props_entry_get_int(pyg_boxed_get(self, GstPropsEntry), &val);
|
||||||
|
return Py_BuildValue("(bi)", ret, val);
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_float
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_float(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gfloat val;
|
||||||
|
|
||||||
|
val = 0.0f;
|
||||||
|
ret = gst_props_entry_get_float(pyg_boxed_get(self, GstPropsEntry), &val);
|
||||||
|
return Py_BuildValue("(bf)", ret, val);
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_fourcc_int
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_fourcc_int(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gint32 val;
|
||||||
|
|
||||||
|
val = 0;
|
||||||
|
ret = gst_props_entry_get_fourcc_int(pyg_boxed_get(self, GstPropsEntry), &val);
|
||||||
|
return Py_BuildValue("(bi)", ret, val);
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_boolean
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_boolean(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gboolean val;
|
||||||
|
PyObject *py_val;
|
||||||
|
|
||||||
|
val = FALSE;
|
||||||
|
ret = gst_props_entry_get_boolean(pyg_boxed_get(self, GstPropsEntry), &val);
|
||||||
|
|
||||||
|
py_val = val ? Py_True : Py_False;
|
||||||
|
return Py_BuildValue("(bO)", ret, py_val);
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_string
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_string(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
const gchar *val;
|
||||||
|
|
||||||
|
val = NULL;
|
||||||
|
ret = gst_props_entry_get_string(pyg_boxed_get(self, GstPropsEntry), &val);
|
||||||
|
if (ret) {
|
||||||
|
return Py_BuildValue("(bs)", ret, val);
|
||||||
|
} else {
|
||||||
|
return Py_BuildValue("(bO)", ret, Py_None);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_int_range
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_int_range(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gint min, max;
|
||||||
|
|
||||||
|
min = max = 0;
|
||||||
|
ret = gst_props_entry_get_int_range(pyg_boxed_get(self, GstPropsEntry), &min, &max);
|
||||||
|
return Py_BuildValue("(bii)", ret, min, max);
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
override gst_props_entry_get_float_range
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
_wrap_gst_props_entry_get_float_range(PyObject *self)
|
||||||
|
{
|
||||||
|
gboolean ret;
|
||||||
|
gfloat min, max;
|
||||||
|
|
||||||
|
min = max = 0.0f;
|
||||||
|
ret = gst_props_entry_get_float_range(pyg_boxed_get(self, GstPropsEntry), &min, &max);
|
||||||
|
return Py_BuildValue("(bff)", ret, min, max);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue