;; ;; Boxed types ;; (define-boxed Buffer (in-module "Gst") (c-name "GstBuffer") (gtype-id "GST_TYPE_BUFFER") ) (define-boxed BufferPool (in-module "Gst") (c-name "GstBufferPool") (gtype-id "GST_TYPE_BUFFER_POOL") ) (define-boxed Caps (in-module "Gst") (c-name "GstCaps") (gtype-id "GST_TYPE_CAPS") ) (define-boxed Event (in-module "Gst") (c-name "GstEvent") (gtype-id "GST_TYPE_EVENT") ) (define-boxed Props (in-module "Gst") (c-name "GstProps") (gtype-id "GST_TYPE_PROPS") ) (define-boxed PropsEntry (in-module "Gst") (c-name "GstPropsEntry") (gtype-id "GST_TYPE_PROPS_ENTRY") ) ;; ;; Override normal *_get_type handling via rename ;; (define-method get_props_type (of-object "GstPropsEntry") (c-name "gst_props_entry_get_props_type") (return-type "GstPropsType") ) ;; ;; Access GstProps properties list ;; (define-method get_list (of-object "GstProps") (c-name "gst_props_get_list") (return-type "const-GList*") ) ;; ;; Accelerate common GstBin iterate loop ;; (define-function iterate_bin_all (c-name "iterate_bin_all") (return-type "none") (parameters '("GstBin*" "bin") ) ) (define-function add_iterate_bin (c-name "add_iterate_bin") (return-type "guint") (parameters '("GstBin*" "bin") ) ) (define-function remove_iterate_bin (c-name "remove_iterate_bin") (return-type "none") (parameters '("guint" "id") ) ) ;; ;; HACK ;; (define-method get_data (of-object "GstBuffer") (c-name "gst_buffer_get_data") (return-type "char*") ) (define-method set_data (of-object "GstBuffer") (c-name "gst_buffer_set_data") (return-type "none") (parameters '("char*" "data") ) ) ;; ;; Element constructor override; uses a nonexistant make_element ;; which is defined in gstreamer.overrides ;; (define-function gst_element_factory_make_element (is-constructor-of "GstElement") (c-name "gst_element_factory_make_element") (return-type "GstElement*") (parameters '("const-gchar*" "elementname") '("const-gchar*" "name") ) )