diff --git a/configure.ac b/configure.ac index c3e0583fe1..5c0c55c500 100644 --- a/configure.ac +++ b/configure.ac @@ -197,6 +197,12 @@ then AC_DEFINE_UNQUOTED(HAVE_GST_TAG, 1, [We can use the gst-tag library]) fi + if test $GST_PB_MINOR_VERSION -lt "23" + then + IGNORE_GST_PB_0_10_23="gst-pb-0.10.23.ignore" + else + IGNORE_GST_PB_0_10_23="" + fi else IGNORE_GST_0_10_13="" IGNORE_GST_0_10_14="" @@ -210,6 +216,7 @@ else IGNORE_GST_PB_0_10_14="" IGNORE_GST_PB_0_10_16="" IGNORE_GST_PB_0_10_18="" + IGNORE_GST_PB_0_10_23="" AC_DEFINE_UNQUOTED(HAVE_PLUGINS_INSTALL, 1, [We can use the plugins-install methods]) AC_DEFINE_UNQUOTED(HAVE_GST_AUDIO, 1, [We can use the gst-audio library]) AC_DEFINE_UNQUOTED(HAVE_GST_VIDEO, 1, [We can use the gst-video library]) @@ -228,6 +235,7 @@ AC_SUBST(IGNORE_GST_0_10_23) AC_SUBST(IGNORE_GST_PB_0_10_14) AC_SUBST(IGNORE_GST_PB_0_10_16) AC_SUBST(IGNORE_GST_PB_0_10_18) +AC_SUBST(IGNORE_GST_PB_0_10_23) AC_SUBST(HAVE_VIDEO_ORIENTATION) AC_SUBST(HAVE_PLUGINS_INSTALL) AM_CONDITIONAL(HAVE_GST_AUDIO, $HAVE_GST_AUDIO) diff --git a/gst/Makefile.am b/gst/Makefile.am index 3bf5176845..0e9f67a703 100644 --- a/gst/Makefile.am +++ b/gst/Makefile.am @@ -37,6 +37,7 @@ versioned_overrides = \ gst-pb-0.10.14.ignore \ gst-pb-0.10.16.ignore \ gst-pb-0.10.18.ignore \ + gst-pb-0.10.23.ignore \ gst-disable-loadsave.ignore INCLUDES = $(PYTHON_INCLUDES) diff --git a/gst/audio.defs b/gst/audio.defs index 5f58288327..be8e7934ad 100644 --- a/gst/audio.defs +++ b/gst/audio.defs @@ -265,6 +265,22 @@ ) ) +(define-function clock_get_time + (c-name "gst_audio_clock_get_time") + (return-type "GstClockTime") + (parameters + '("GstClock*" "clock") + ) +) + +(define-function clock_adjust + (c-name "gst_audio_clock_adjust") + (return-type "GstClockTime") + (parameters + '("GstClock*" "clock") + '("GstClockTime" "time") + ) +) ;; From gstaudiofilter.h diff --git a/gst/audio.override b/gst/audio.override index 5a38d756f9..59672e75c5 100644 --- a/gst/audio.override +++ b/gst/audio.override @@ -59,6 +59,7 @@ import gst.Message as PyGstMessage_Type import gst.SystemClock as PyGstSystemClock_Type import gst.BaseTransform as PyGstBaseTransform_Type import gst.BaseSink as PyGstBaseSink_Type +import gst.Clock as PyGstClock_Type %% include gstversion.override diff --git a/gst/gst-pb-0.10.23.ignore b/gst/gst-pb-0.10.23.ignore new file mode 100644 index 0000000000..97075c5f90 --- /dev/null +++ b/gst/gst-pb-0.10.23.ignore @@ -0,0 +1,18 @@ +%% +ignore + gst_audio_clock_get_time + gst_audio_clock_adjust + gst_navigation_query_* + gst_navigation_message_* + gst_navigation_event_* + gst_navigation_send_command + gst_video_format_parse_caps_interlaced + gst_video_format_new_caps_interlaced +%% +ignore-type + GstNavigationCommand + GstNavigationQueryType + GstNavigationMessageType + GstNavigationEventType +%% + diff --git a/gst/gstversion.override.in b/gst/gstversion.override.in index 1bb987710a..f18e46a429 100644 --- a/gst/gstversion.override.in +++ b/gst/gstversion.override.in @@ -12,5 +12,6 @@ include @IGNORE_GST_0_10_21@ @IGNORE_GST_0_10_22@ @IGNORE_GST_0_10_23@ +@IGNORE_GST_PB_0_10_23@ @IGNORE_GST_LOADSAVE@ %% diff --git a/gst/interfaces.defs b/gst/interfaces.defs index af587acbf6..5fdbe770ba 100644 --- a/gst/interfaces.defs +++ b/gst/interfaces.defs @@ -146,6 +146,8 @@ (values '("none" "GST_MIXER_FLAG_NONE") '("auto-notifications" "GST_MIXER_FLAG_AUTO_NOTIFICATIONS") + '("has-whitelist" "GST_MIXER_FLAG_HAS_WHITELIST") + '("grouping" "GST_MIXER_FLAG_GROUPING") ) ) @@ -160,6 +162,70 @@ '("record" "GST_MIXER_TRACK_RECORD") '("master" "GST_MIXER_TRACK_MASTER") '("software" "GST_MIXER_TRACK_SOFTWARE") + '("no-record" "GST_MIXER_TRACK_NO_RECORD") + '("no-mute" "GST_MIXER_TRACK_NO_MUTE") + '("whitelist" "GST_MIXER_TRACK_WHITELIST") + ) +) + +(define-enum NavigationCommand + (in-module "Gst") + (c-name "GstNavigationCommand") + (gtype-id "GST_TYPE_NAVIGATION_COMMAND") + (values + '("invalid" "GST_NAVIGATION_COMMAND_INVALID") + '("menu1" "GST_NAVIGATION_COMMAND_MENU1") + '("menu2" "GST_NAVIGATION_COMMAND_MENU2") + '("menu3" "GST_NAVIGATION_COMMAND_MENU3") + '("menu4" "GST_NAVIGATION_COMMAND_MENU4") + '("menu5" "GST_NAVIGATION_COMMAND_MENU5") + '("menu6" "GST_NAVIGATION_COMMAND_MENU6") + '("menu7" "GST_NAVIGATION_COMMAND_MENU7") + '("left" "GST_NAVIGATION_COMMAND_LEFT") + '("right" "GST_NAVIGATION_COMMAND_RIGHT") + '("up" "GST_NAVIGATION_COMMAND_UP") + '("down" "GST_NAVIGATION_COMMAND_DOWN") + '("activate" "GST_NAVIGATION_COMMAND_ACTIVATE") + '("prev-angle" "GST_NAVIGATION_COMMAND_PREV_ANGLE") + '("next-angle" "GST_NAVIGATION_COMMAND_NEXT_ANGLE") + ) +) + +(define-enum NavigationQueryType + (in-module "Gst") + (c-name "GstNavigationQueryType") + (gtype-id "GST_TYPE_NAVIGATION_QUERY_TYPE") + (values + '("invalid" "GST_NAVIGATION_QUERY_INVALID") + '("commands" "GST_NAVIGATION_QUERY_COMMANDS") + '("angles" "GST_NAVIGATION_QUERY_ANGLES") + ) +) + +(define-enum NavigationMessageType + (in-module "Gst") + (c-name "GstNavigationMessageType") + (gtype-id "GST_TYPE_NAVIGATION_MESSAGE_TYPE") + (values + '("invalid" "GST_NAVIGATION_MESSAGE_INVALID") + '("mouse-over" "GST_NAVIGATION_MESSAGE_MOUSE_OVER") + '("commands-changed" "GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED") + '("angles-changed" "GST_NAVIGATION_MESSAGE_ANGLES_CHANGED") + ) +) + +(define-enum NavigationEventType + (in-module "Gst") + (c-name "GstNavigationEventType") + (gtype-id "GST_TYPE_NAVIGATION_EVENT_TYPE") + (values + '("invalid" "GST_NAVIGATION_EVENT_INVALID") + '("key-press" "GST_NAVIGATION_EVENT_KEY_PRESS") + '("key-release" "GST_NAVIGATION_EVENT_KEY_RELEASE") + '("mouse-button-press" "GST_NAVIGATION_EVENT_MOUSE_BUTTON_PRESS") + '("mouse-button-release" "GST_NAVIGATION_EVENT_MOUSE_BUTTON_RELEASE") + '("mouse-move" "GST_NAVIGATION_EVENT_MOUSE_MOVE") + '("command" "GST_NAVIGATION_EVENT_COMMAND") ) ) @@ -474,11 +540,194 @@ ;; From /opt/gnome/include/gstreamer-0.7/gst/navigation/navigation.h -(define-function gst_navigation_get_type +(define-function navigation_get_type (c-name "gst_navigation_get_type") (return-type "GType") ) +(define-function navigation_query_get_type + (c-name "gst_navigation_query_get_type") + (return-type "GstNavigationQueryType") + (parameters + '("GstQuery*" "query") + ) +) + +(define-function navigation_query_new_commands + (c-name "gst_navigation_query_new_commands") + (caller-owns-return #t) + (return-type "GstQuery*") +) + +(define-function navigation_query_set_commands + (c-name "gst_navigation_query_set_commands") + (return-type "none") + (parameters + '("GstQuery*" "query") + '("gint" "n_cmds") + ) + (varargs #t) +) + +(define-function navigation_query_set_commandsv + (c-name "gst_navigation_query_set_commandsv") + (return-type "none") + (parameters + '("GstQuery*" "query") + '("gint" "n_cmds") + '("GstNavigationCommand*" "cmds") + ) +) + +(define-function navigation_query_parse_commands_length + (c-name "gst_navigation_query_parse_commands_length") + (return-type "gboolean") + (parameters + '("GstQuery*" "query") + '("guint*" "n_cmds") + ) +) + +(define-function navigation_query_parse_commands_nth + (c-name "gst_navigation_query_parse_commands_nth") + (return-type "gboolean") + (parameters + '("GstQuery*" "query") + '("guint" "nth") + '("GstNavigationCommand*" "cmd") + ) +) + +(define-function navigation_query_new_angles + (c-name "gst_navigation_query_new_angles") + (caller-owns-return #t) + (return-type "GstQuery*") +) + +(define-function navigation_query_set_angles + (c-name "gst_navigation_query_set_angles") + (return-type "none") + (parameters + '("GstQuery*" "query") + '("guint" "cur_angle") + '("guint" "n_angles") + ) +) + +(define-function navigation_query_parse_angles + (c-name "gst_navigation_query_parse_angles") + (return-type "gboolean") + (parameters + '("GstQuery*" "query") + '("guint*" "cur_angle") + '("guint*" "n_angles") + ) +) + +(define-function navigation_message_get_type + (c-name "gst_navigation_message_get_type") + (return-type "GstNavigationMessageType") + (parameters + '("GstMessage*" "message") + ) +) + +(define-function navigation_message_new_mouse_over + (c-name "gst_navigation_message_new_mouse_over") + (return-type "GstMessage*") + (caller-owns-return #t) + (parameters + '("GstObject*" "src") + '("gboolean" "active") + ) +) + +(define-function navigation_message_parse_mouse_over + (c-name "gst_navigation_message_parse_mouse_over") + (return-type "gboolean") + (parameters + '("GstMessage*" "message") + '("gboolean*" "active") + ) +) + +(define-function navigation_message_new_commands_changed + (c-name "gst_navigation_message_new_commands_changed") + (return-type "GstMessage*") + (caller-owns-return #t) + (parameters + '("GstObject*" "src") + ) +) + +(define-function navigation_message_new_angles_changed + (c-name "gst_navigation_message_new_angles_changed") + (return-type "GstMessage*") + (caller-owns-return #t) + (parameters + '("GstObject*" "src") + '("guint" "cur_angle") + '("guint" "n_angles") + ) +) + +(define-function navigation_message_parse_angles_changed + (c-name "gst_navigation_message_parse_angles_changed") + (return-type "gboolean") + (parameters + '("GstMessage*" "message") + '("guint*" "cur_angle") + '("guint*" "n_angles") + ) +) + +(define-function navigation_event_get_type + (c-name "gst_navigation_event_get_type") + (return-type "GstNavigationEventType") + (parameters + '("GstEvent*" "event") + ) +) + +(define-function navigation_event_parse_key_event + (c-name "gst_navigation_event_parse_key_event") + (return-type "gboolean") + (parameters + '("GstEvent*" "event") + '("const-gchar**" "key") + ) +) + +(define-function navigation_event_parse_mouse_button_event + (c-name "gst_navigation_event_parse_mouse_button_event") + (return-type "gboolean") + (parameters + '("GstEvent*" "event") + '("gint*" "button") + '("gdouble*" "x") + '("gdouble*" "y") + ) +) + +(define-function navigation_event_parse_mouse_move_event + (c-name "gst_navigation_event_parse_mouse_move_event") + (return-type "gboolean") + (parameters + '("GstEvent*" "event") + '("gdouble*" "x") + '("gdouble*" "y") + ) +) + +(define-function navigation_event_parse_command + (c-name "gst_navigation_event_parse_command") + (return-type "gboolean") + (parameters + '("GstEvent*" "event") + '("GstNavigationCommand*" "command") + ) +) + (define-method send_event (of-object "GstNavigation") (c-name "gst_navigation_send_event") @@ -518,6 +767,15 @@ ) ) +(define-method send_command + (of-object "GstNavigation") + (c-name "gst_navigation_send_command") + (return-type "none") + (parameters + '("GstNavigationCommand" "command") + ) +) + ;; From /opt/gnome/include/gstreamer-0.7/gst/propertyprobe/propertyprobe.h (define-function gst_property_probe_get_type diff --git a/gst/interfaces.override b/gst/interfaces.override index a28952ac14..8c0f6e72da 100644 --- a/gst/interfaces.override +++ b/gst/interfaces.override @@ -47,6 +47,7 @@ import gobject.GObject as PyGObject_Type import gst.Object as PyGstObject_Type import gst.Structure as PyGstStructure_Type import gst.Element as PyGstElement_Type +import gst.Query as PyGstQuery_Type %% include xoverlay.override diff --git a/gst/video.defs b/gst/video.defs index 23875beac6..20f03c9644 100644 --- a/gst/video.defs +++ b/gst/video.defs @@ -39,6 +39,7 @@ '("bgr" "GST_VIDEO_FORMAT_BGR") '("y41b" "GST_VIDEO_FORMAT_Y41B") '("y42b" "GST_VIDEO_FORMAT_Y42B") + '("yvyu" "GST_VIDEO_FORMAT_YVYU") ) ) @@ -110,6 +111,15 @@ ) ) +(define-function format_parse_caps_interlaced + (c-name "gst_video_format_parse_caps_interlaced") + (return-type "gboolean") + (parameters + '("GstCaps*" "caps") + '("gboolean*" "interlaced") + ) +) + (define-function parse_caps_framerate (c-name "gst_video_parse_caps_framerate") (return-type "gboolean") @@ -133,6 +143,7 @@ (define-method new_caps (of-object "GstVideoFormat") (c-name "gst_video_format_new_caps") + (caller-owns-return #t) (return-type "GstCaps*") (parameters '("int" "width") @@ -144,6 +155,22 @@ ) ) +(define-method new_caps_interlaced + (of-object "GstVideoFormat") + (c-name "gst_video_format_new_caps_interlaced") + (caller-owns-return #t) + (return-type "GstCaps*") + (parameters + '("int" "width") + '("int" "height") + '("int" "framerate_n") + '("int" "framerate_d") + '("int" "par_n") + '("int" "par_d") + '("gboolean" "interlaced") + ) +) + (define-function format_from_fourcc (c-name "gst_video_format_from_fourcc") (return-type "GstVideoFormat")