2008-12-31 13:06:58 +00:00
|
|
|
;; -*- scheme -*-
|
|
|
|
; object definitions ...
|
|
|
|
(define-object VideoFilter
|
|
|
|
(in-module "Gst")
|
|
|
|
(parent "GstBaseTransform")
|
|
|
|
(c-name "GstVideoFilter")
|
|
|
|
(gtype-id "GST_TYPE_VIDEO_FILTER")
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-object VideoSink
|
|
|
|
(in-module "Gst")
|
|
|
|
(parent "GstBaseSink")
|
|
|
|
(c-name "GstVideoSink")
|
|
|
|
(gtype-id "GST_TYPE_VIDEO_SINK")
|
|
|
|
)
|
|
|
|
|
|
|
|
;; Enumerations and flags ...
|
|
|
|
|
|
|
|
(define-enum VideoFormat
|
|
|
|
(in-module "Gst")
|
|
|
|
(c-name "GstVideoFormat")
|
|
|
|
(gtype-id "GST_TYPE_VIDEO_FORMAT")
|
|
|
|
(values
|
|
|
|
'("unknown" "GST_VIDEO_FORMAT_UNKNOWN")
|
|
|
|
'("i420" "GST_VIDEO_FORMAT_I420")
|
|
|
|
'("yv12" "GST_VIDEO_FORMAT_YV12")
|
|
|
|
'("yuy2" "GST_VIDEO_FORMAT_YUY2")
|
|
|
|
'("uyvy" "GST_VIDEO_FORMAT_UYVY")
|
|
|
|
'("ayuv" "GST_VIDEO_FORMAT_AYUV")
|
|
|
|
'("rgbx" "GST_VIDEO_FORMAT_RGBx")
|
|
|
|
'("bgrx" "GST_VIDEO_FORMAT_BGRx")
|
|
|
|
'("xrgb" "GST_VIDEO_FORMAT_xRGB")
|
|
|
|
'("xbgr" "GST_VIDEO_FORMAT_xBGR")
|
|
|
|
'("rgba" "GST_VIDEO_FORMAT_RGBA")
|
|
|
|
'("bgra" "GST_VIDEO_FORMAT_BGRA")
|
|
|
|
'("argb" "GST_VIDEO_FORMAT_ARGB")
|
|
|
|
'("abgr" "GST_VIDEO_FORMAT_ABGR")
|
|
|
|
'("rgb" "GST_VIDEO_FORMAT_RGB")
|
|
|
|
'("bgr" "GST_VIDEO_FORMAT_BGR")
|
|
|
|
'("y41b" "GST_VIDEO_FORMAT_Y41B")
|
|
|
|
'("y42b" "GST_VIDEO_FORMAT_Y42B")
|
2009-04-17 17:28:08 +00:00
|
|
|
'("yvyu" "GST_VIDEO_FORMAT_YVYU")
|
2010-01-15 16:26:20 +00:00
|
|
|
'("y444" "GST_VIDEO_FORMAT_Y444")
|
|
|
|
'("v210" "GST_VIDEO_FORMAT_v210")
|
|
|
|
'("v216" "GST_VIDEO_FORMAT_v216")
|
|
|
|
'("nv12" "GST_VIDEO_FORMAT_NV12")
|
|
|
|
'("nv21" "GST_VIDEO_FORMAT_NV21")
|
2010-06-27 08:35:55 +00:00
|
|
|
'("gray8" "GST_VIDEO_FORMAT_GRAY8")
|
|
|
|
'("gray16-be" "GST_VIDEO_FORMAT_GRAY16_BE")
|
|
|
|
'("gray16-le" "GST_VIDEO_FORMAT_GRAY16_LE")
|
|
|
|
'("v308" "GST_VIDEO_FORMAT_v308")
|
|
|
|
'("y800" "GST_VIDEO_FORMAT_Y800")
|
|
|
|
'("y16" "GST_VIDEO_FORMAT_Y16")
|
|
|
|
'("rgb16" "GST_VIDEO_FORMAT_RGB16")
|
|
|
|
'("bgr16" "GST_VIDEO_FORMAT_BGR16")
|
|
|
|
'("rgb15" "GST_VIDEO_FORMAT_RGB15")
|
|
|
|
'("bgr15" "GST_VIDEO_FORMAT_BGR15")
|
2010-10-18 07:36:13 +00:00
|
|
|
'("uyvp" "GST_VIDEO_FORMAT_UYVP")
|
|
|
|
'("a420" "GST_VIDEO_FORMAT_A420")
|
2011-01-05 14:04:05 +00:00
|
|
|
'("rgb8-paletted" "GST_VIDEO_FORMAT_RGB8_PALETTED")
|
|
|
|
'("yuv9" "GST_VIDEO_FORMAT_YUV9")
|
|
|
|
'("yvu9" "GST_VIDEO_FORMAT_YVU9")
|
|
|
|
'("iyu1" "GST_VIDEO_FORMAT_IYU1")
|
2008-12-31 13:06:58 +00:00
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
;; From gstvideofilter.h
|
|
|
|
|
|
|
|
(define-function gst_video_filter_get_type
|
|
|
|
(c-name "gst_video_filter_get_type")
|
|
|
|
(return-type "GType")
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;; From gstvideosink.h
|
|
|
|
|
|
|
|
(define-function gst_video_sink_get_type
|
|
|
|
(c-name "gst_video_sink_get_type")
|
|
|
|
(return-type "GType")
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-function video_sink_center_rect
|
|
|
|
(c-name "gst_video_sink_center_rect")
|
|
|
|
(return-type "none")
|
|
|
|
(parameters
|
|
|
|
'("GstVideoRectangle" "src")
|
|
|
|
'("GstVideoRectangle" "dst")
|
|
|
|
'("GstVideoRectangle*" "result")
|
|
|
|
'("gboolean" "scaling")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
;; From video.h
|
|
|
|
|
|
|
|
(define-function get_size
|
|
|
|
(c-name "gst_video_get_size")
|
|
|
|
(return-type "gboolean")
|
|
|
|
(parameters
|
|
|
|
'("GstPad*" "pad")
|
|
|
|
'("gint*" "width")
|
|
|
|
'("gint*" "height")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-function calculate_display_ratio
|
|
|
|
(c-name "gst_video_calculate_display_ratio")
|
|
|
|
(return-type "gboolean")
|
|
|
|
(parameters
|
|
|
|
'("guint*" "dar_n")
|
|
|
|
'("guint*" "dar_d")
|
|
|
|
'("guint" "video_width")
|
|
|
|
'("guint" "video_height")
|
|
|
|
'("guint" "video_par_n")
|
|
|
|
'("guint" "video_par_d")
|
|
|
|
'("guint" "display_par_n")
|
|
|
|
'("guint" "display_par_d")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-function format_parse_caps
|
|
|
|
(c-name "gst_video_format_parse_caps")
|
|
|
|
(return-type "gboolean")
|
|
|
|
(parameters
|
|
|
|
'("GstCaps*" "caps")
|
|
|
|
'("GstVideoFormat*" "format")
|
|
|
|
'("int*" "width")
|
|
|
|
'("int*" "height")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
2009-04-17 17:28:08 +00:00
|
|
|
(define-function format_parse_caps_interlaced
|
|
|
|
(c-name "gst_video_format_parse_caps_interlaced")
|
|
|
|
(return-type "gboolean")
|
|
|
|
(parameters
|
|
|
|
'("GstCaps*" "caps")
|
|
|
|
'("gboolean*" "interlaced")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
2008-12-31 13:06:58 +00:00
|
|
|
(define-function parse_caps_framerate
|
|
|
|
(c-name "gst_video_parse_caps_framerate")
|
|
|
|
(return-type "gboolean")
|
|
|
|
(parameters
|
|
|
|
'("GstCaps*" "caps")
|
|
|
|
'("int*" "fps_n")
|
|
|
|
'("int*" "fps_d")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-function parse_caps_pixel_aspect_ratio
|
|
|
|
(c-name "gst_video_parse_caps_pixel_aspect_ratio")
|
|
|
|
(return-type "gboolean")
|
|
|
|
(parameters
|
|
|
|
'("GstCaps*" "caps")
|
|
|
|
'("int*" "par_n")
|
|
|
|
'("int*" "par_d")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
2010-06-27 08:35:55 +00:00
|
|
|
(define-function parse_caps_color_matrix
|
|
|
|
(c-name "gst_video_parse_caps_color_matrix")
|
|
|
|
(return-type "const-char*")
|
|
|
|
(parameters
|
|
|
|
'("GstCaps*" "caps")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-function parse_caps_chroma_site
|
|
|
|
(c-name "gst_video_parse_caps_chroma_site")
|
|
|
|
(return-type "const-char*")
|
|
|
|
(parameters
|
|
|
|
'("GstCaps*" "caps")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
2011-01-05 14:04:05 +00:00
|
|
|
(define-function video_parse_caps_palette
|
|
|
|
(c-name "gst_video_parse_caps_palette")
|
|
|
|
(return-type "GstBuffer*")
|
|
|
|
(parameters
|
|
|
|
'("GstCaps*" "caps")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
2008-12-31 13:06:58 +00:00
|
|
|
(define-method new_caps
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_new_caps")
|
2009-04-17 17:28:08 +00:00
|
|
|
(caller-owns-return #t)
|
|
|
|
(return-type "GstCaps*")
|
|
|
|
(parameters
|
|
|
|
'("int" "width")
|
|
|
|
'("int" "height")
|
|
|
|
'("int" "framerate_n")
|
|
|
|
'("int" "framerate_d")
|
|
|
|
'("int" "par_n")
|
|
|
|
'("int" "par_d")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method new_caps_interlaced
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_new_caps_interlaced")
|
|
|
|
(caller-owns-return #t)
|
2008-12-31 13:06:58 +00:00
|
|
|
(return-type "GstCaps*")
|
|
|
|
(parameters
|
|
|
|
'("int" "width")
|
|
|
|
'("int" "height")
|
|
|
|
'("int" "framerate_n")
|
|
|
|
'("int" "framerate_d")
|
|
|
|
'("int" "par_n")
|
|
|
|
'("int" "par_d")
|
2009-04-17 17:28:08 +00:00
|
|
|
'("gboolean" "interlaced")
|
2008-12-31 13:06:58 +00:00
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-function format_from_fourcc
|
|
|
|
(c-name "gst_video_format_from_fourcc")
|
|
|
|
(return-type "GstVideoFormat")
|
|
|
|
(parameters
|
|
|
|
'("guint32" "fourcc")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method to_fourcc
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_to_fourcc")
|
|
|
|
(return-type "guint32")
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method is_rgb
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_is_rgb")
|
|
|
|
(return-type "gboolean")
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method is_yuv
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_is_yuv")
|
|
|
|
(return-type "gboolean")
|
2010-06-27 08:35:55 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
(define-method is_gray
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_is_gray")
|
|
|
|
(return-type "gboolean")
|
2008-12-31 13:06:58 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
(define-method has_alpha
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_has_alpha")
|
|
|
|
(return-type "gboolean")
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method get_row_stride
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_get_row_stride")
|
|
|
|
(return-type "int")
|
|
|
|
(parameters
|
|
|
|
'("int" "component")
|
|
|
|
'("int" "width")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method get_pixel_stride
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_get_pixel_stride")
|
|
|
|
(return-type "int")
|
|
|
|
(parameters
|
|
|
|
'("int" "component")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method get_component_width
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_get_component_width")
|
|
|
|
(return-type "int")
|
|
|
|
(parameters
|
|
|
|
'("int" "component")
|
|
|
|
'("int" "width")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method get_component_height
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_get_component_height")
|
|
|
|
(return-type "int")
|
|
|
|
(parameters
|
|
|
|
'("int" "component")
|
|
|
|
'("int" "height")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method get_component_offset
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_get_component_offset")
|
|
|
|
(return-type "int")
|
|
|
|
(parameters
|
|
|
|
'("int" "component")
|
|
|
|
'("int" "width")
|
|
|
|
'("int" "height")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method get_size
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_get_size")
|
|
|
|
(return-type "int")
|
|
|
|
(parameters
|
|
|
|
'("int" "width")
|
|
|
|
'("int" "height")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-method convert
|
|
|
|
(of-object "GstVideoFormat")
|
|
|
|
(c-name "gst_video_format_convert")
|
|
|
|
(return-type "gboolean")
|
|
|
|
(parameters
|
|
|
|
'("int" "width")
|
|
|
|
'("int" "height")
|
|
|
|
'("int" "fps_n")
|
|
|
|
'("int" "fps_d")
|
|
|
|
'("GstFormat" "src_format")
|
|
|
|
'("gint64" "src_value")
|
|
|
|
'("GstFormat" "dest_format")
|
|
|
|
'("gint64*" "dest_value")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
2010-01-15 16:26:20 +00:00
|
|
|
(define-function event_new_still_frame
|
|
|
|
(c-name "gst_video_event_new_still_frame")
|
|
|
|
(return-type "GstEvent*")
|
|
|
|
(parameters
|
|
|
|
'("gboolean" "in_still")
|
|
|
|
)
|
|
|
|
)
|
2008-12-31 13:06:58 +00:00
|
|
|
|
2010-01-15 16:26:20 +00:00
|
|
|
(define-function event_parse_still_frame
|
|
|
|
(c-name "gst_video_event_parse_still_frame")
|
|
|
|
(return-type "gboolean")
|
|
|
|
(parameters
|
|
|
|
'("GstEvent*" "event")
|
|
|
|
'("gboolean*" "in_still")
|
|
|
|
)
|
|
|
|
)
|
2010-10-18 07:36:13 +00:00
|
|
|
(define-function video_convert_frame
|
|
|
|
(c-name "gst_video_convert_frame")
|
|
|
|
(return-type "GstBuffer*")
|
|
|
|
(parameters
|
|
|
|
'("GstBuffer*" "buf")
|
|
|
|
'("const-GstCaps*" "to_caps")
|
|
|
|
'("GstClockTime" "timeout")
|
|
|
|
'("GError**" "error")
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
(define-function video_convert_frame_async
|
|
|
|
(c-name "gst_video_convert_frame_async")
|
|
|
|
(return-type "none")
|
|
|
|
(parameters
|
|
|
|
'("GstBuffer*" "buf")
|
|
|
|
'("const-GstCaps*" "to_caps")
|
|
|
|
'("GstClockTime" "timeout")
|
|
|
|
'("GstVideoConvertFrameCallback" "callback")
|
|
|
|
'("gpointer" "user_data")
|
|
|
|
'("GDestroyNotify" "destroy_notify")
|
|
|
|
)
|
|
|
|
)
|