diff --git a/ChangeLog b/ChangeLog index 7142384c6b..281cd8c99f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2005-11-08 Edward Hervey + + * gst/gst.defs: + * gst/gst.override: + Added new function gst.TIME_ARGS which returns the string + representation of a GstClockTime + 2005-11-04 Edward Hervey * gst/gstelement.override: diff --git a/gst/gst.defs b/gst/gst.defs index 8c84011ab5..6141cc4e82 100644 --- a/gst/gst.defs +++ b/gst/gst.defs @@ -6196,7 +6196,13 @@ ) ) - +(define-function TIME_ARGS + (c-name "GST_TIME_ARGS") + (return-type "gchar*") + (parameters + '("GstClockTime" "time") + ) +) ;; From ../gstreamer/gst/gstvalue.h diff --git a/gst/gst.override b/gst/gst.override index e45eb85ab0..c94a52fcf0 100644 --- a/gst/gst.override +++ b/gst/gst.override @@ -837,3 +837,31 @@ _wrap_gst_object_error (PyObject *whatever, PyObject *string) { return pygst_debug_log (whatever, string, GST_LEVEL_ERROR, TRUE); } +%% +override GST_TIME_ARGS kwargs +static PyObject * +_wrap_GST_TIME_ARGS(PyObject *self, PyObject *args, PyObject *kwargs) +{ + static char *kwlist[] = { "time", NULL }; + PyObject *py_time = NULL; + PyObject *string; + gchar *ret; + guint64 time; + + if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O!:time_to_string", kwlist, &PyLong_Type, &py_time)) + return NULL; + time = PyLong_AsUnsignedLongLong(py_time); + ret = g_strdup_printf("%"GST_TIME_FORMAT, GST_TIME_ARGS(time)); + + if (!ret) { + Py_INCREF(Py_None); + return Py_None; + } + + if (!(string = PyString_FromString(ret))) { + g_free(ret); + return NULL; + } + g_free(ret); + return string; +}