diff --git a/docs/libs/gst-plugins-base-libs-docs.sgml b/docs/libs/gst-plugins-base-libs-docs.sgml index 54df8dba20..fdceb38539 100644 --- a/docs/libs/gst-plugins-base-libs-docs.sgml +++ b/docs/libs/gst-plugins-base-libs-docs.sgml @@ -189,6 +189,7 @@ + @@ -202,6 +203,7 @@ flags. + diff --git a/docs/libs/gst-plugins-base-libs-sections.txt b/docs/libs/gst-plugins-base-libs-sections.txt index 15bd466856..091b7b5314 100644 --- a/docs/libs/gst-plugins-base-libs-sections.txt +++ b/docs/libs/gst-plugins-base-libs-sections.txt @@ -3,7 +3,6 @@ gstappsrc appsrc gst/app/gstappsrc.h -GstAppSrc GstAppStreamType gst_app_src_set_caps gst_app_src_get_caps @@ -35,7 +34,9 @@ GST_APP_BUFFER_CLASS GST_IS_APP_BUFFER GST_IS_APP_BUFFER_CLASS GST_TYPE_APP_BUFFER +GST_TYPE_APP_STREAM_TYPE +GstAppSrc GstAppSrcPrivate GstAppBuffer GstAppBufferClass @@ -48,7 +49,6 @@ gst_app_buffer_new gstappsink appsink gst/app/gstappsink.h -GstAppSink gst_app_sink_set_caps gst_app_sink_get_caps gst_app_sink_is_eos @@ -64,6 +64,7 @@ gst_app_sink_pull_buffer_list GstAppSinkCallbacks gst_app_sink_set_callbacks +GstAppSink GstAppSinkPrivate GstAppSinkClass GST_APP_SINK @@ -859,6 +860,22 @@ gst_netbuffer_get_type
gstriff gst/riff/riff-media.h +gst_riff_create_audio_caps +gst_riff_create_audio_template_caps +gst_riff_create_iavs_caps +gst_riff_create_iavs_template_caps +gst_riff_create_video_caps +gst_riff_create_video_template_caps +gst_riff_init +gst_riff_parse_chunk +gst_riff_parse_file_header +gst_riff_parse_info +gst_riff_parse_strf_auds +gst_riff_parse_strf_iavs +gst_riff_parse_strf_vids +gst_riff_parse_strh +gst_riff_read_chunk + GST_RIFF_00 GST_RIFF_0021 GST_RIFF_0031 @@ -1043,28 +1060,12 @@ GST_RIFF_yuy2 GST_RIFF_yv12 gst_riff_acid -gst_riff_create_audio_caps -gst_riff_create_audio_template_caps -gst_riff_create_iavs_caps -gst_riff_create_iavs_template_caps -gst_riff_create_video_caps -gst_riff_create_video_template_caps gst_riff_dmlh gst_riff_index_entry -gst_riff_init -gst_riff_parse_chunk -gst_riff_parse_file_header -gst_riff_parse_info -gst_riff_parse_strf_auds -gst_riff_parse_strf_iavs -gst_riff_parse_strf_vids -gst_riff_parse_strh -gst_riff_read_chunk gst_riff_strf_auds gst_riff_strf_iavs gst_riff_strf_vids gst_riff_strh -
@@ -1392,6 +1393,7 @@ gst_rtp_buffer_list_add_extension_twobytes_header gstrtspdefs gst/rtsp/gstrtspdefs.h GST_RTSP_CHECK +GST_RTSP_AUTH_MAX GstRTSPEvent GstRTSPResult GstRTSPFamily @@ -1399,7 +1401,6 @@ GstRTSPState GstRTSPVersion GstRTSPMethod GstRTSPAuthMethod -GST_RTSP_AUTH_MAX GstRTSPHeaderField GstRTSPStatusCode gst_rtsp_strresult @@ -1739,6 +1740,7 @@ GST_TAG_CAPTURING_FLASH_FIRED GST_TAG_CAPTURING_FLASH_MODE GST_TAG_CAPTURING_METERING_MODE GST_TAG_CAPTURING_SOURCE +GST_TAG_CAPTURING_EXPOSURE_COMPENSATION GST_TAG_IMAGE_HORIZONTAL_PPI GST_TAG_IMAGE_VERTICAL_PPI gst_tag_register_musicbrainz_tags @@ -1786,6 +1788,8 @@ gst_tag_list_add_id3_image gst/tag/tag.h gst_tag_list_from_xmp_buffer gst_tag_list_to_xmp_buffer +gst_tag_list_to_xmp_buffer_full +gst_tag_xmp_list_schemas @@ -1820,7 +1824,6 @@ gst_tag_demux_result_get_type
gsttaglanguagecodes gst/tag/tag.h - gst_tag_get_language_codes gst_tag_get_language_name gst_tag_get_language_code @@ -1829,6 +1832,26 @@ gst_tag_get_language_code_iso_639_2B gst_tag_get_language_code_iso_639_2T
+
+gsttagxmpwriter +gst_tag_xmp_writer_add_all_schemas +gst_tag_xmp_writer_add_schema +gst_tag_xmp_writer_has_schema +gst_tag_xmp_writer_remove_schema +gst_tag_xmp_writer_remove_all_schemas +gst_tag_xmp_writer_tag_list_to_xmp_buffer + +GstTagXmpWriter +GstTagXmpWriterInterface +GST_TYPE_TAG_XMP_WRITER +GST_TAG_XMP_WRITER +GST_TAG_XMP_WRITER_INTERFACE +GST_IS_TAG_XMP_WRITER +GST_IS_TAG_XMP_WRITER_INTERFACE +GST_TAG_XMP_WRITER_GET_INTERFACE +gst_tag_xmp_writer_get_type +
+ # base utils
@@ -1836,6 +1859,11 @@ gst_tag_get_language_code_iso_639_2T gst/pbutils/pbutils.h gst_pb_utils_init +
+ +
+gstpluginsbaseversion +gst/pbutils/gstpluginsbaseversion.h GST_PLUGINS_BASE_VERSION_MAJOR GST_PLUGINS_BASE_VERSION_MINOR @@ -2054,6 +2082,20 @@ GST_VIDEO_CAPS_BGR_16 GST_VIDEO_CAPS_RGB8_PALETTED GST_VIDEO_CAPS_GRAY8 GST_VIDEO_CAPS_GRAY16 +GST_VIDEO_CAPS_ARGB_64 +GST_VIDEO_CAPS_r210 +GST_VIDEO_COMP1_MASK_15 +GST_VIDEO_COMP1_MASK_15_INT +GST_VIDEO_COMP1_MASK_16 +GST_VIDEO_COMP1_MASK_16_INT +GST_VIDEO_COMP2_MASK_15 +GST_VIDEO_COMP2_MASK_15_INT +GST_VIDEO_COMP2_MASK_16 +GST_VIDEO_COMP2_MASK_16_INT +GST_VIDEO_COMP3_MASK_15 +GST_VIDEO_COMP3_MASK_15_INT +GST_VIDEO_COMP3_MASK_16 +GST_VIDEO_COMP3_MASK_16_INT GST_VIDEO_FPS_RANGE GST_VIDEO_GREEN_MASK_15 GST_VIDEO_GREEN_MASK_15_INT @@ -2071,12 +2113,15 @@ GstVideoFormat gst_video_calculate_display_ratio gst_video_frame_rate gst_video_get_size +gst_video_get_size_from_caps gst_video_format_convert gst_video_format_new_caps gst_video_format_new_caps_interlaced +gst_video_format_new_template_caps gst_video_format_get_component_height gst_video_format_get_component_offset gst_video_format_get_component_width +gst_video_format_get_component_depth gst_video_format_get_pixel_stride gst_video_format_get_row_stride gst_video_format_get_size diff --git a/gst-libs/gst/app/gstappsink.c b/gst-libs/gst/app/gstappsink.c index 76cff42c67..4e6906995f 100644 --- a/gst-libs/gst/app/gstappsink.c +++ b/gst-libs/gst/app/gstappsink.c @@ -17,22 +17,6 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ - -/** - * SECTION:element-appsink - * - * Appsink is a sink plugin that supports many different methods for making - * the application get a handle on the GStreamer data in a pipeline. Unlike - * most GStreamer elements, Appsink provides external API functions. - * - * For the documentation of the API, please see the - * libgstapp section in - * the GStreamer Plugins Base Libraries documentation. - * - * Since: 0.10.22 - */ - - /** * SECTION:gstappsink * @short_description: Easy way for applications to extract buffers from a @@ -281,10 +265,10 @@ gst_app_sink_class_init (GstAppSinkClass * klass) * GstAppSink::new-preroll: * @appsink: the appsink element that emited the signal * - * Signal that a new preroll buffer is available. + * Signal that a new preroll buffer is available. * * This signal is emited from the steaming thread and only when the - * "emit-signals" property is %TRUE. + * "emit-signals" property is %TRUE. * * The new preroll buffer can be retrieved with the "pull-preroll" action * signal or gst_app_sink_pull_preroll() either from this signal callback @@ -304,7 +288,7 @@ gst_app_sink_class_init (GstAppSinkClass * klass) * Signal that a new buffer is available. * * This signal is emited from the steaming thread and only when the - * "emit-signals" property is %TRUE. + * "emit-signals" property is %TRUE. * * The new buffer can be retrieved with the "pull-buffer" action * signal or gst_app_sink_pull_buffer() either from this signal callback @@ -324,7 +308,7 @@ gst_app_sink_class_init (GstAppSinkClass * klass) * Signal that a new bufferlist is available. * * This signal is emited from the steaming thread and only when the - * "emit-signals" property is %TRUE. + * "emit-signals" property is %TRUE. * * The new buffer can be retrieved with the "pull-buffer-list" action * signal or gst_app_sink_pull_buffer_list() either from this signal callback @@ -354,10 +338,10 @@ gst_app_sink_class_init (GstAppSinkClass * klass) * when calling gst_app_sink_pull_buffer() or the "pull-buffer" action signal. * * If an EOS event was received before any buffers, this function returns - * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. + * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. * * This function blocks until a preroll buffer or EOS is received or the appsink - * element is set to the READY/NULL state. + * element is set to the READY/NULL state. * * Returns: a #GstBuffer or NULL when the appsink is stopped or EOS. */ @@ -371,11 +355,11 @@ gst_app_sink_class_init (GstAppSinkClass * klass) * @appsink: the appsink element to emit this signal on * * This function blocks until a buffer or EOS becomes available or the appsink - * element is set to the READY/NULL state. + * element is set to the READY/NULL state. * * This function will only return buffers when the appsink is in the PLAYING * state. All rendered buffers will be put in a queue so that the application - * can pull buffers at its own rate. + * can pull buffers at its own rate. * * Note that when the application does not pull buffers fast enough, the * queued buffers could consume a lot of memory, especially when dealing with @@ -383,7 +367,7 @@ gst_app_sink_class_init (GstAppSinkClass * klass) * the "drop" and "max-buffers" properties. * * If an EOS event was received before any buffers, this function returns - * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. + * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. * * Returns: a #GstBuffer or NULL when the appsink is stopped or EOS. */ @@ -397,11 +381,11 @@ gst_app_sink_class_init (GstAppSinkClass * klass) * @appsink: the appsink element to emit this signal on * * This function blocks until a buffer list or EOS becomes available or the appsink - * element is set to the READY/NULL state. + * element is set to the READY/NULL state. * * This function will only return bufferlists when the appsink is in the PLAYING * state. All rendered bufferlists will be put in a queue so that the application - * can pull bufferlists at its own rate. + * can pull bufferlists at its own rate. * * Note that when the application does not pull bufferlists fast enough, the * queued bufferlists could consume a lot of memory, especially when dealing with @@ -409,7 +393,7 @@ gst_app_sink_class_init (GstAppSinkClass * klass) * the "drop" and "max-buffers" properties. * * If an EOS event was received before any buffers, this function returns - * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. + * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. * * Returns: a #GstBufferList or NULL when the appsink is stopped or EOS. */ @@ -924,7 +908,7 @@ not_started: * Set the capabilities on the appsink element. This function takes * a copy of the caps structure. After calling this method, the sink will only * accept caps that match @caps. If @caps is non-fixed, you must check the caps - * on the buffers to get the actual used caps. + * on the buffers to get the actual used caps. * * Since: 0.10.22 */ @@ -1209,10 +1193,10 @@ gst_app_sink_get_drop (GstAppSink * appsink) * when calling gst_app_sink_pull_buffer(). * * If an EOS event was received before any buffers, this function returns - * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. + * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. * * This function blocks until a preroll buffer or EOS is received or the appsink - * element is set to the READY/NULL state. + * element is set to the READY/NULL state. * * Returns: a #GstBuffer or NULL when the appsink is stopped or EOS. * @@ -1271,7 +1255,7 @@ not_started: * @appsink: a #GstAppSink * * This function blocks until a buffer or EOS becomes available or the appsink - * element is set to the READY/NULL state. + * element is set to the READY/NULL state. * * This function will only return buffers when the appsink is in the PLAYING * state. All rendered buffers will be put in a queue so that the application @@ -1280,7 +1264,7 @@ not_started: * especially when dealing with raw video frames. * * If an EOS event was received before any buffers, this function returns - * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. + * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. * * Returns: a #GstBuffer or NULL when the appsink is stopped or EOS. * @@ -1299,7 +1283,7 @@ gst_app_sink_pull_buffer (GstAppSink * appsink) * @appsink: a #GstAppSink * * This function blocks until a buffer list or EOS becomes available or the - * appsink element is set to the READY/NULL state. + * appsink element is set to the READY/NULL state. * * This function will only return buffer lists when the appsink is in the * PLAYING state. All rendered buffer lists will be put in a queue so that @@ -1309,7 +1293,7 @@ gst_app_sink_pull_buffer (GstAppSink * appsink) * video frames. * * If an EOS event was received before any buffer lists, this function returns - * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. + * %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. * * Returns: a #GstBufferList or NULL when the appsink is stopped or EOS. */ diff --git a/gst-libs/gst/app/gstappsrc.c b/gst-libs/gst/app/gstappsrc.c index ca28036176..7ba7020820 100644 --- a/gst-libs/gst/app/gstappsrc.c +++ b/gst-libs/gst/app/gstappsrc.c @@ -17,21 +17,6 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ - -/** - * SECTION:element-appsrc - * - * The appsrc element can be used by applications to insert data into a - * GStreamer pipeline. Unlike most GStreamer elements, Appsrc provides - * external API functions. - * - * For the documentation of the API, please see the - * libgstapp section in the - * GStreamer Plugins Base Libraries documentation. - * - * Since: 0.10.22 - */ - /** * SECTION:gstappsrc * @short_description: Easy way for applications to inject buffers into a @@ -95,7 +80,7 @@ * For the stream and seekable modes, setting this property is optional but * recommended. * - * When the application is finished pushing data into appsrc, it should call + * When the application is finished pushing data into appsrc, it should call * gst_app_src_end_of_stream() or emit the end-of-stream action signal. After * this call, no more buffers can be pushed into appsrc until a flushing seek * happened or the state of the appsrc has gone through READY. @@ -467,7 +452,7 @@ gst_app_src_class_init (GstAppSrcClass * klass) * GstAppSrc::end-of-stream: * @appsrc: the appsrc * - * Notify @appsrc that no more buffer are available. + * Notify @appsrc that no more buffer are available. */ gst_app_src_signals[SIGNAL_END_OF_STREAM] = g_signal_new ("end-of-stream", G_TYPE_FROM_CLASS (klass), @@ -1063,7 +1048,7 @@ seek_error: * a copy of the caps structure. After calling this method, the source will * only produce caps that match @caps. @caps must be fixed and the caps on the * buffers must match the caps or left NULL. - * + * * Since: 0.10.22 */ void @@ -1096,7 +1081,7 @@ gst_app_src_set_caps (GstAppSrc * appsrc, const GstCaps * caps) * Get the configured caps on @appsrc. * * Returns: the #GstCaps produced by the source. gst_caps_unref() after usage. - * + * * Since: 0.10.22 */ GstCaps * @@ -1124,8 +1109,8 @@ gst_app_src_get_caps (GstAppSrc * appsrc) * @size: the size to set * * Set the size of the stream in bytes. A value of -1 means that the size is - * not known. - * + * not known. + * * Since: 0.10.22 */ void @@ -1148,10 +1133,10 @@ gst_app_src_set_size (GstAppSrc * appsrc, gint64 size) * @appsrc: a #GstAppSrc * * Get the size of the stream in bytes. A value of -1 means that the size is - * not known. + * not known. * * Returns: the size of the stream previously set with gst_app_src_set_size(); - * + * * Since: 0.10.22 */ gint64 @@ -1180,8 +1165,8 @@ gst_app_src_get_size (GstAppSrc * appsrc) * Set the stream type on @appsrc. For seekable streams, the "seek" signal must * be connected to. * - * A stream_type stream - * + * A stream_type stream + * * Since: 0.10.22 */ void @@ -1207,7 +1192,7 @@ gst_app_src_set_stream_type (GstAppSrc * appsrc, GstAppStreamType type) * with gst_app_src_set_stream_type(). * * Returns: the stream type. - * + * * Since: 0.10.22 */ GstAppStreamType @@ -1236,7 +1221,7 @@ gst_app_src_get_stream_type (GstAppSrc * appsrc) * Set the maximum amount of bytes that can be queued in @appsrc. * After the maximum amount of bytes are queued, @appsrc will emit the * "enough-data" signal. - * + * * Since: 0.10.22 */ void @@ -1265,7 +1250,7 @@ gst_app_src_set_max_bytes (GstAppSrc * appsrc, guint64 max) * Get the maximum amount of bytes that can be queued in @appsrc. * * Returns: The maximum amount of bytes that can be queued. - * + * * Since: 0.10.22 */ guint64 @@ -1319,7 +1304,7 @@ gst_app_src_set_latencies (GstAppSrc * appsrc, gboolean do_min, guint64 min, * * Configure the @min and @max latency in @src. If @min is set to -1, the * default latency calculations for pseudo-live sources will be used. - * + * * Since: 0.10.22 */ void @@ -1335,7 +1320,7 @@ gst_app_src_set_latency (GstAppSrc * appsrc, guint64 min, guint64 max) * @max: the min latency * * Retrieve the min and max latencies in @min and @max respectively. - * + * * Since: 0.10.22 */ void @@ -1511,7 +1496,7 @@ eos: * Returns: #GST_FLOW_OK when the buffer was successfuly queued. * #GST_FLOW_WRONG_STATE when @appsrc is not PAUSED or PLAYING. * #GST_FLOW_UNEXPECTED when EOS occured. - * + * * Since: 0.10.22 */ GstFlowReturn @@ -1537,7 +1522,7 @@ gst_app_src_push_buffer_action (GstAppSrc * appsrc, GstBuffer * buffer) * * Returns: #GST_FLOW_OK when the EOS was successfuly queued. * #GST_FLOW_WRONG_STATE when @appsrc is not PAUSED or PLAYING. - * + * * Since: 0.10.22 */ GstFlowReturn @@ -1550,7 +1535,7 @@ gst_app_src_end_of_stream (GstAppSrc * appsrc) priv = appsrc->priv; g_mutex_lock (priv->mutex); - /* can't accept buffers when we are flushing. We can accept them when we are + /* can't accept buffers when we are flushing. We can accept them when we are * EOS although it will not do anything. */ if (priv->flushing) goto flushing; diff --git a/gst-libs/gst/audio/gstaudioclock.h b/gst-libs/gst/audio/gstaudioclock.h index fb50bcf6b9..906c80243f 100644 --- a/gst-libs/gst/audio/gstaudioclock.h +++ b/gst-libs/gst/audio/gstaudioclock.h @@ -60,14 +60,13 @@ typedef GstClockTime (*GstAudioClockGetTimeFunc) (GstClock *clock, gpointer user /** * GstAudioClock: - * @clock: parent #GstSystemClock * * Opaque #GstAudioClock. */ struct _GstAudioClock { GstSystemClock clock; - /* --- protected --- */ + /*< protected >*/ GstAudioClockGetTimeFunc func; gpointer user_data; diff --git a/gst-libs/gst/audio/gstaudiofilter.h b/gst-libs/gst/audio/gstaudiofilter.h index 0b30aabce0..ed50317b35 100644 --- a/gst-libs/gst/audio/gstaudiofilter.h +++ b/gst-libs/gst/audio/gstaudiofilter.h @@ -47,7 +47,6 @@ typedef struct _GstAudioFilterClass GstAudioFilterClass; /** * GstAudioFilter: - * @basetransform: Element parent class * * Base class for audio filters with the same format for input and output. * diff --git a/gst-libs/gst/audio/gstaudioiec61937.c b/gst-libs/gst/audio/gstaudioiec61937.c index caf150d2e8..9ad787b3d9 100644 --- a/gst-libs/gst/audio/gstaudioiec61937.c +++ b/gst-libs/gst/audio/gstaudioiec61937.c @@ -22,11 +22,11 @@ /** * SECTION:gstaudioiec61937 * @short_description: Utility functions for IEC 61937 payloading + * @since: 0.10.35 * * This module contains some helper functions for encapsulating various * audio formats in IEC 61937 headers and padding. * - * Since: 0.10.35 */ #ifdef HAVE_CONFIG_H @@ -60,12 +60,14 @@ caps_get_string_field (const GstCaps * caps, const gchar * field) } /** - * gst_audio_iec61937_frame_size - * @type: the type of data to be payloaded as a #GstBufferFormatType + * gst_audio_iec61937_frame_size: + * @spec: the ringbufer spec * - * Returns 0 if the given @type is not supported or cannot be payloaded, else - * returns the size of the buffer expected by gst_audio_iec61937_payload() for - * payloading @type. + * Calculated the size of the buffer expected by gst_audio_iec61937_payload() for + * payloading type from @spec. + * + * Returns: the size or 0 if the given @type is not supported or cannot be + * payloaded. * * Since: 0.10.35 */ @@ -128,19 +130,19 @@ gst_audio_iec61937_frame_size (const GstRingBufferSpec * spec) } /** - * gst_audio_iec61937_payload + * gst_audio_iec61937_payload: * @src: a buffer containing the data to payload * @src_n: size of @src in bytes * @dst: the destination buffer to store the payloaded contents in. Should not * overlap with @src * @dst_n: size of @dst in bytes - * @type: the type of data in @src + * @spec: the ringbufer spec for @src * - * Payloads @src in the form specified by IEC 61937 for @type and stores - * the result in @dst. @src must contain exactly one frame of data and the - * frame is not checked for errors. + * Payloads @src in the form specified by IEC 61937 for the type from @spec and + * stores the result in @dst. @src must contain exactly one frame of data and + * the frame is not checked for errors. * - * Returns: transfer-full: #TRUE if the payloading was successful, #FALSE + * Returns: transfer-full: %TRUE if the payloading was successful, %FALSE * otherwise. * * Since: 0.10.35 diff --git a/gst-libs/gst/audio/gstaudioiec61937.h b/gst-libs/gst/audio/gstaudioiec61937.h index 52da245870..b33297a8eb 100644 --- a/gst-libs/gst/audio/gstaudioiec61937.h +++ b/gst-libs/gst/audio/gstaudioiec61937.h @@ -18,13 +18,6 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ -/** - * SECTION:gstaudioiec61937 - * @short_description: Utility functions for IEC 61937 payloading - * - * This module contains some helper functions for encapsulating various - * audio formats in IEC 61937 headers and padding. - */ #ifndef __GST_AUDIO_IEC61937_H__ #define __GST_AUDIO_IEC61937_H__ diff --git a/gst-libs/gst/audio/gstaudiosrc.h b/gst-libs/gst/audio/gstaudiosrc.h index d3b714dd44..3caa98e664 100644 --- a/gst-libs/gst/audio/gstaudiosrc.h +++ b/gst-libs/gst/audio/gstaudiosrc.h @@ -40,7 +40,6 @@ typedef struct _GstAudioSrcClass GstAudioSrcClass; /** * GstAudioSrc: - * @element: parent class * * Base class for simple audio sources. */ diff --git a/gst-libs/gst/audio/gstbaseaudiosink.c b/gst-libs/gst/audio/gstbaseaudiosink.c index bd2c6018db..6d09d12caa 100644 --- a/gst-libs/gst/audio/gstbaseaudiosink.c +++ b/gst-libs/gst/audio/gstbaseaudiosink.c @@ -704,6 +704,7 @@ gst_base_audio_sink_setcaps (GstBaseSink * bsink, GstCaps * caps) GstBaseAudioSink *sink = GST_BASE_AUDIO_SINK (bsink); GstRingBufferSpec *spec; GstClockTime now; + GstClockTime crate_num, crate_denom; if (!sink->ringbuffer) return FALSE; @@ -745,6 +746,13 @@ gst_base_audio_sink_setcaps (GstBaseSink * bsink, GstCaps * caps) gst_ring_buffer_activate (sink->ringbuffer, TRUE); } + /* due to possible changes in the spec file we should recalibrate the clock */ + gst_clock_get_calibration (sink->provided_clock, NULL, NULL, + &crate_num, &crate_denom); + gst_clock_set_calibration (sink->provided_clock, + gst_clock_get_internal_time (sink->provided_clock), now, crate_num, + crate_denom); + /* calculate actual latency and buffer times. * FIXME: In 0.11, store the latency_time internally in ns */ spec->latency_time = gst_util_uint64_scale (spec->segsize, diff --git a/gst-libs/gst/audio/gstringbuffer.h b/gst-libs/gst/audio/gstringbuffer.h index 8aa2be7181..bfa72417b0 100644 --- a/gst-libs/gst/audio/gstringbuffer.h +++ b/gst-libs/gst/audio/gstringbuffer.h @@ -116,6 +116,53 @@ typedef enum GST_BUFTYPE_MPEG4_AAC, } GstBufferFormatType; +/** + * GstBufferFormat: + * @GST_UNKNOWN: unspecified + * @GST_S8: integer signed 8 bit + * @GST_U8: integer unsigned 8 bit + * @GST_S16_LE: integer signed 16 bit little endian + * @GST_S16_BE: integer signed 16 bit big endian + * @GST_U16_LE: integer unsigned 16 bit little endian + * @GST_U16_BE: integer unsigned 16 bit big endian + * @GST_S24_LE: integer signed 24 bit little endian + * @GST_S24_BE: integer signed 24 bit big endian + * @GST_U24_LE: integer unsigned 24 bit little endian + * @GST_U24_BE: integer unsigned 24 bit big endian + * @GST_S32_LE: integer signed 32 bit little endian + * @GST_S32_BE: integer signed 32 bit big endian + * @GST_U32_LE: integer unsigned 32 bit little endian + * @GST_U32_BE: integer unsigned 32 bit big endian + * @GST_S24_3LE: integer signed 24 bit little endian packed in 3 bytes + * @GST_S24_3BE: integer signed 24 bit big endian packed in 3 bytes + * @GST_U24_3LE: integer unsigned 24 bit little endian packed in 3 bytes + * @GST_U24_3BE: integer unsigned 24 bit big endian packed in 3 bytes + * @GST_S20_3LE: integer signed 20 bit little endian packed in 3 bytes + * @GST_S20_3BE: integer signed 20 bit big endian packed in 3 bytes + * @GST_U20_3LE: integer unsigned 20 bit little endian packed in 3 bytes + * @GST_U20_3BE: integer unsigned 20 bit big endian packed in 3 bytes + * @GST_S18_3LE: integer signed 18 bit little endian packed in 3 bytes + * @GST_S18_3BE: integer signed 18 bit big endian packed in 3 bytes + * @GST_U18_3LE: integer unsigned 18 bit little endian packed in 3 bytes + * @GST_U18_3BE: integer unsigned 18 bit big endian packed in 3 bytes + * @GST_FLOAT32_LE: floating 32 bit little endian + * @GST_FLOAT32_BE: floating 32 bit big endian + * @GST_FLOAT64_LE: floating 64 bit little endian + * @GST_FLOAT64_BE: floating 64 bit big endian + * @GST_MU_LAW: mu-law + * @GST_A_LAW: a-law + * @GST_IMA_ADPCM: ima adpcm + * @GST_MPEG: mpeg audio (but not aac) + * @GST_GSM: gsm + * @GST_IEC958: IEC958 frames + * @GST_AC3: ac3 + * @GST_EAC3: eac3 + * @GST_DTS: dts + * @GST_MPEG2_AAC: mpeg-2 aac + * @GST_MPEG4_AAC: mpeg-4 aac + * + * The detailed format of the samples in the ringbuffer. + */ typedef enum { GST_UNKNOWN, diff --git a/gst-libs/gst/audio/multichannel.h b/gst-libs/gst/audio/multichannel.h index 2d9685d629..3a3efe3d79 100644 --- a/gst-libs/gst/audio/multichannel.h +++ b/gst-libs/gst/audio/multichannel.h @@ -42,6 +42,9 @@ G_BEGIN_DECLS * @GST_AUDIO_CHANNEL_POSITION_NONE: used for position-less channels, e.g. * from a sound card that records 1024 channels; mutually exclusive with * any other channel position + * @GST_AUDIO_CHANNEL_POSITION_INVALID: invalid position + * + * Audio channel positions. */ typedef enum { GST_AUDIO_CHANNEL_POSITION_INVALID = -1, @@ -74,6 +77,7 @@ typedef enum { * are defined or all positions are undefined, but can't mix'n'match */ GST_AUDIO_CHANNEL_POSITION_NONE, + /*< private >*/ /* don't use - counter */ GST_AUDIO_CHANNEL_POSITION_NUM } GstAudioChannelPosition; diff --git a/gst-libs/gst/cdda/gstcddabasesrc.h b/gst-libs/gst/cdda/gstcddabasesrc.h index b4c6f8e15e..b754e43010 100644 --- a/gst-libs/gst/cdda/gstcddabasesrc.h +++ b/gst-libs/gst/cdda/gstcddabasesrc.h @@ -115,6 +115,17 @@ struct _GstCddaBaseSrc { gpointer _gst_reserved2[GST_PADDING/2]; }; +/** + * GstCddaBaseSrcClass: + * @pushsrc_class: the parent class + * @open: opening the device + * @close: closing the device + * @read_sector: reading a sector + * @get_default_device: getting the default device + * @probe_devices: probing possible devices + * + * Cdda source base class. + */ struct _GstCddaBaseSrcClass { GstPushSrcClass pushsrc_class; diff --git a/gst-libs/gst/interfaces/colorbalance.h b/gst-libs/gst/interfaces/colorbalance.h index 2be7db6c35..62771b5027 100644 --- a/gst-libs/gst/interfaces/colorbalance.h +++ b/gst-libs/gst/interfaces/colorbalance.h @@ -66,6 +66,17 @@ typedef enum GST_COLOR_BALANCE_SOFTWARE } GstColorBalanceType; +/** + * GstColorBalanceClass: + * @klass: the parent interface + * @balance_type: implementation type + * @list_channels: list handled channels + * @set_value: set a channel value + * @get_value: get a channel value + * @value_changed: default handler for value changed notification + * + * Color-balance interface. + */ struct _GstColorBalanceClass { GTypeInterface klass; @@ -85,6 +96,7 @@ struct _GstColorBalanceClass { GstColorBalanceChannel *channel, gint value); + /*< private >*/ gpointer _gst_reserved[GST_PADDING]; }; diff --git a/gst-libs/gst/interfaces/colorbalancechannel.h b/gst-libs/gst/interfaces/colorbalancechannel.h index f279f38ac6..22a2a7f3b9 100644 --- a/gst-libs/gst/interfaces/colorbalancechannel.h +++ b/gst-libs/gst/interfaces/colorbalancechannel.h @@ -57,7 +57,13 @@ struct _GstColorBalanceChannel { gint max_value; }; - +/** + * GstColorBalanceChannelClass: + * @parent: the parent interface + * @value_changed: default handler for value changed notification + * + * Color-balance channel class. + */ struct _GstColorBalanceChannelClass { GObjectClass parent; @@ -65,6 +71,7 @@ struct _GstColorBalanceChannelClass { void (* value_changed) (GstColorBalanceChannel *channel, gint value); + /*< private >*/ gpointer _gst_reserved[GST_PADDING]; }; diff --git a/gst-libs/gst/interfaces/mixer.h b/gst-libs/gst/interfaces/mixer.h index ae3e830285..71c8f7542f 100644 --- a/gst-libs/gst/interfaces/mixer.h +++ b/gst-libs/gst/interfaces/mixer.h @@ -47,6 +47,13 @@ G_BEGIN_DECLS typedef struct _GstMixer GstMixer; typedef struct _GstMixerClass GstMixerClass; +/** + * GstMixerType: + * @GST_MIXER_HARDWARE: mixing is implemented with dedicated hardware. + * @GST_MIXER_SOFTWARE: mixing is implemented via software processing. + * + * Mixer classification. + */ typedef enum { GST_MIXER_HARDWARE, diff --git a/gst-libs/gst/interfaces/mixeroptions.h b/gst-libs/gst/interfaces/mixeroptions.h index 2724da59d5..9b65bb1003 100644 --- a/gst-libs/gst/interfaces/mixeroptions.h +++ b/gst-libs/gst/interfaces/mixeroptions.h @@ -49,22 +49,25 @@ typedef struct _GstMixerOptionsClass GstMixerOptionsClass; /** * GstMixerOptions: - * @parent: Parent object * @values: List of option strings. Do not access this member directly, * always use gst_mixer_options_get_values() instead. + * + * Mixer control object. */ struct _GstMixerOptions { GstMixerTrack parent; + /*< public >*/ /* list of strings (do not access directly) (FIXME 0.11: make private) */ GList *values; + /*< private >*/ gpointer _gst_reserved[GST_PADDING]; }; /** * GstMixerOptionsClass: - * @parent: Parent class + * @parent: the parent interface * @get_values: Optional implementation of gst_mixer_options_get_values(). * (Since: 0.10.18) */ diff --git a/gst-libs/gst/interfaces/navigation.h b/gst-libs/gst/interfaces/navigation.h index cf7f7b9778..b4eaca5f5d 100644 --- a/gst-libs/gst/interfaces/navigation.h +++ b/gst-libs/gst/interfaces/navigation.h @@ -39,12 +39,20 @@ G_BEGIN_DECLS typedef struct _GstNavigation GstNavigation; typedef struct _GstNavigationInterface GstNavigationInterface; +/** + * GstNavigationInterface: + * @g_iface: the parent interface + * @send_event: sending a navigation event + * + * Color-balance interface. + */ struct _GstNavigationInterface { GTypeInterface g_iface; /* virtual functions */ void (*send_event) (GstNavigation *navigation, GstStructure *structure); - + + /*< private >*/ gpointer _gst_reserved[GST_PADDING]; }; @@ -109,7 +117,7 @@ typedef enum { GST_NAVIGATION_COMMAND_MENU5 = 5, GST_NAVIGATION_COMMAND_MENU6 = 6, GST_NAVIGATION_COMMAND_MENU7 = 7, - + GST_NAVIGATION_COMMAND_LEFT = 20, GST_NAVIGATION_COMMAND_RIGHT = 21, GST_NAVIGATION_COMMAND_UP = 22, @@ -130,6 +138,14 @@ typedef enum { #define GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU GST_NAVIGATION_COMMAND_MENU7 /* Queries */ +/** + * GstNavigationQueryType: + * @GST_NAVIGATION_QUERY_INVALID: invalid query + * @GST_NAVIGATION_QUERY_COMMANDS: command query + * @GST_NAVIGATION_QUERY_ANGLES: viewing angle query + * + * Tyoes of navigation interface queries. + */ typedef enum { GST_NAVIGATION_QUERY_INVALID = 0, @@ -245,9 +261,9 @@ gboolean gst_navigation_event_parse_command (GstEvent *event, /* interface virtual function wrappers */ void gst_navigation_send_event (GstNavigation *navigation, GstStructure *structure); -void gst_navigation_send_key_event (GstNavigation *navigation, +void gst_navigation_send_key_event (GstNavigation *navigation, const char *event, const char *key); -void gst_navigation_send_mouse_event (GstNavigation *navigation, +void gst_navigation_send_mouse_event (GstNavigation *navigation, const char *event, int button, double x, double y); void gst_navigation_send_command (GstNavigation *navigation, GstNavigationCommand command); diff --git a/gst-libs/gst/interfaces/tuner.h b/gst-libs/gst/interfaces/tuner.h index e7ca24e69f..c728135b85 100644 --- a/gst-libs/gst/interfaces/tuner.h +++ b/gst-libs/gst/interfaces/tuner.h @@ -45,6 +45,25 @@ G_BEGIN_DECLS typedef struct _GstTuner GstTuner; typedef struct _GstTunerClass GstTunerClass; +/** + * GstTunerClass: + * @klass: the parent interface + * @list_channels: list available channels + * @set_channel: set to a channel + * @get_channel: return the current channel + * @list_norms: list available norms + * @set_norm: set a norm + * @get_norm: return the current norm + * @set_frequency: set the frequency + * @get_frequency: return the current frequency + * @signal_strength: get the signal strength + * @channel_changed: default handler for channel changed notification + * @norm_changed: default handler for norm changed notification + * @frequency_changed: default handler for frequency changed notification + * @signal_changed: default handler for signal-strength changed notification + * + * Tuner interface. + */ struct _GstTunerClass { GTypeInterface klass; @@ -80,6 +99,7 @@ struct _GstTunerClass { GstTunerChannel *channel, gint signal); + /*< private >*/ gpointer _gst_reserved[GST_PADDING]; }; diff --git a/gst-libs/gst/interfaces/xoverlay.c b/gst-libs/gst/interfaces/xoverlay.c index e7bd6558ff..6fcb5ccad0 100644 --- a/gst-libs/gst/interfaces/xoverlay.c +++ b/gst-libs/gst/interfaces/xoverlay.c @@ -66,23 +66,23 @@ * // ignore anything but 'prepare-xwindow-id' element messages * if (GST_MESSAGE_TYPE (message) != GST_MESSAGE_ELEMENT) * return GST_BUS_PASS; - * + * * if (!gst_structure_has_name (message->structure, "prepare-xwindow-id")) * return GST_BUS_PASS; - * + * * win = XCreateSimpleWindow (disp, root, 0, 0, 320, 240, 0, 0, 0); - * + * * XSetWindowBackgroundPixmap (disp, win, None); - * + * * XMapRaised (disp, win); - * + * * XSync (disp, FALSE); - * + * * gst_x_overlay_set_window_handle (GST_X_OVERLAY (GST_MESSAGE_SRC (message)), * win); - * + * * gst_message_unref (message); - * + * * return GST_BUS_DROP; * } * ... @@ -158,17 +158,17 @@ * return GST_BUS_PASS; * if (!gst_structure_has_name (message->structure, "prepare-xwindow-id")) * return GST_BUS_PASS; - * + * * if (video_window_xid != 0) { * GstXOverlay *xoverlay; - * + * * // GST_MESSAGE_SRC (message) will be the video sink element * xoverlay = GST_X_OVERLAY (GST_MESSAGE_SRC (message)); * gst_x_overlay_set_window_handle (xoverlay, video_window_xid); * } else { * g_warning ("Should have obtained video_window_xid by now!"); * } - * + * * gst_message_unref (message); * return GST_BUS_DROP; * } @@ -182,7 +182,7 @@ * if (!gdk_window_ensure_native (widget->window)) * g_error ("Couldn't create native window needed for GstXOverlay!"); * #endif - * + * * #ifdef GDK_WINDOWING_X11 * video_window_xid = GDK_WINDOW_XID (video_window->window); * #endif @@ -208,12 +208,12 @@ * ... * // show the GUI * gtk_widget_show_all (app_window); - * + * * // realize window now so that the video window gets created and we can * // obtain its XID before the pipeline is started up and the videosink * // asks for the XID of the window to render onto * gtk_widget_realize (window); - * + * * // we should have the XID now * g_assert (video_window_xid != 0); * ... @@ -235,39 +235,39 @@ * #include <glib.h> * #include <gst/gst.h> * #include <gst/interfaces/xoverlay.h> - * + * * #include <QApplication> * #include <QTimer> * #include <QWidget> - * + * * int main(int argc, char *argv[]) * { * if (!g_thread_supported ()) * g_thread_init (NULL); - * + * * gst_init (&argc, &argv); * QApplication app(argc, argv); * app.connect(&app, SIGNAL(lastWindowClosed()), &app, SLOT(quit ())); - * + * * // prepare the pipeline - * + * * GstElement *pipeline = gst_pipeline_new ("xvoverlay"); * GstElement *src = gst_element_factory_make ("videotestsrc", NULL); * GstElement *sink = gst_element_factory_make ("xvimagesink", NULL); * gst_bin_add_many (GST_BIN (pipeline), src, sink, NULL); * gst_element_link (src, sink); - * + * * // prepare the ui - * + * * QWidget window; * window.resize(320, 240); * window.show(); - * + * * WId xwinid = window.winId(); * gst_x_overlay_set_window_handle (GST_X_OVERLAY (sink), xwinid); - * + * * // run the pipeline - * + * * GstStateChangeReturn sret = gst_element_set_state (pipeline, * GST_STATE_PLAYING); * if (sret == GST_STATE_CHANGE_FAILURE) { @@ -276,13 +276,13 @@ * // Exit application * QTimer::singleShot(0, QApplication::activeWindow(), SLOT(quit())); * } - * + * * int ret = app.exec(); - * + * * window.hide(); * gst_element_set_state (pipeline, GST_STATE_NULL); * gst_object_unref (pipeline); - * + * * return ret; * } * ]| @@ -333,12 +333,12 @@ gst_x_overlay_base_init (gpointer g_class) /** * gst_x_overlay_set_xwindow_id: - * @overlay: a #GstXOverlay to set the XWindow on. - * @xwindow_id: a #XID referencing the XWindow. + * @overlay: a #GstXOverlay to set the window on. + * @xwindow_id: a XID referencing the XWindow. * * This will call the video overlay's set_xwindow_id method. You should * use this method to tell to a XOverlay to display video output to a - * specific XWindow. Passing 0 as the xwindow_id will tell the overlay to + * specific XWindow. Passing 0 as the @xwindow_id will tell the overlay to * stop using that window and create an internal one. * * Deprecated: Use gst_x_overlay_set_window_handle() instead. @@ -358,13 +358,13 @@ gst_x_overlay_set_xwindow_id (GstXOverlay * overlay, gulong xwindow_id) /** * gst_x_overlay_set_window_handle: - * @overlay: a #GstXOverlay to set the XWindow on. - * @xwindow_id: a #XID referencing the XWindow. + * @overlay: a #GstXOverlay to set the window on. + * @handle: a handle referencing the window. * * This will call the video overlay's set_window_handle method. You * should use this method to tell to a XOverlay to display video output to a - * specific XWindow. Passing 0 as the xwindow_id will tell the overlay to - * stop using that window and create an internal one. + * specific window (e.g. an XWindow on X11). Passing 0 as the @handle will + * tell the overlay to stop using that window and create an internal one. * * Since: 0.10.31 */ @@ -452,7 +452,7 @@ gst_x_overlay_got_window_handle (GstXOverlay * overlay, guintptr handle) * @overlay: a #GstXOverlay which does not yet have an XWindow. * * This will post a "prepare-xwindow-id" element message on the bus - * to give applications an opportunity to call + * to give applications an opportunity to call * gst_x_overlay_set_xwindow_id() before a plugin creates its own * window. * diff --git a/gst-libs/gst/interfaces/xoverlay.h b/gst-libs/gst/interfaces/xoverlay.h index 055f510050..6ac355c25f 100644 --- a/gst-libs/gst/interfaces/xoverlay.h +++ b/gst-libs/gst/interfaces/xoverlay.h @@ -52,10 +52,11 @@ typedef struct _GstXOverlayClass GstXOverlayClass; /** * GstXOverlayClass: * @klass: parent interface type. - * @set_xwindow_id: virtual method to configure the XWindow id + * @set_xwindow_id: (deprecated) virtual method to configure the XWindow handle * @expose: virtual method to handle expose events * @handle_events: virtual method to handle events * @set_render_rectangle: virtual method to set the render rectangle (since 0.10.29) + * @set_window_handle: virtual method to configure the window handle * * #GstXOverlay interface */ @@ -67,14 +68,16 @@ struct _GstXOverlayClass { void (* set_xwindow_id) (GstXOverlay *overlay, gulong xwindow_id); #else +#ifndef __GTK_DOC_IGNORE__ void (* set_xwindow_id_disabled) (GstXOverlay *overlay, gulong xwindow_id); +#endif #endif /* not GST_DISABLE_DEPRECATED */ void (* expose) (GstXOverlay *overlay); - + void (* handle_events) (GstXOverlay *overlay, - gboolean handle_events); + gboolean handle_events); void (* set_render_rectangle) (GstXOverlay *overlay, gint x, gint y, @@ -90,7 +93,7 @@ GType gst_x_overlay_get_type (void); /* virtual class function wrappers */ #ifndef GST_DISABLE_DEPRECATED -void gst_x_overlay_set_xwindow_id (GstXOverlay *overlay, +void gst_x_overlay_set_xwindow_id (GstXOverlay *overlay, gulong xwindow_id); #endif @@ -103,7 +106,7 @@ void gst_x_overlay_expose (GstXOverlay *overlay); void gst_x_overlay_handle_events (GstXOverlay *overlay, gboolean handle_events); -void gst_x_overlay_set_window_handle (GstXOverlay *overlay, +void gst_x_overlay_set_window_handle (GstXOverlay *overlay, guintptr handle); /* public methods to dispatch bus messages */ diff --git a/gst-libs/gst/pbutils/gstpluginsbaseversion.c b/gst-libs/gst/pbutils/gstpluginsbaseversion.c index 997a0b8363..82645c14bf 100644 --- a/gst-libs/gst/pbutils/gstpluginsbaseversion.c +++ b/gst-libs/gst/pbutils/gstpluginsbaseversion.c @@ -26,7 +26,7 @@ * if you need to check at runtime what version of the gst-plugins-base * libraries are being used / you are currently linked against. * - * The version macros get defined by including . + * The version macros get defined by including <gst/pbutils/pbutils.h>. */ #include "gstpluginsbaseversion.h" diff --git a/gst-libs/gst/rtp/gstbasertpaudiopayload.c b/gst-libs/gst/rtp/gstbasertpaudiopayload.c index 32d2cbac7a..b8b78d59ae 100644 --- a/gst-libs/gst/rtp/gstbasertpaudiopayload.c +++ b/gst-libs/gst/rtp/gstbasertpaudiopayload.c @@ -21,12 +21,9 @@ * SECTION:gstbasertpaudiopayload * @short_description: Base class for audio RTP payloader * - * - * * Provides a base class for audio RTP payloaders for frame or sample based * audio codecs (constant bitrate) - * - * + * * This class derives from GstBaseRTPPayload. It can be used for payloading * audio codecs. It will only work with constant bitrate codecs. It supports * both frame based and sample based codecs. It takes care of packing up the @@ -38,7 +35,8 @@ * equal to min-ptime (if set). If min-ptime is not set, any residual data is * sent in a last RTP packet. In the case of frame based codecs, the resulting * RTP packets always contain full frames. - * + * + * * Usage * * To use this base class, your child element needs to call either diff --git a/gst-libs/gst/rtp/gstbasertpaudiopayload.h b/gst-libs/gst/rtp/gstbasertpaudiopayload.h index 3fdb488a61..13b93667b9 100644 --- a/gst-libs/gst/rtp/gstbasertpaudiopayload.h +++ b/gst-libs/gst/rtp/gstbasertpaudiopayload.h @@ -61,10 +61,17 @@ struct _GstBaseRTPAudioPayload gpointer _gst_reserved[GST_PADDING]; }; +/** + * GstBaseRTPAudioPayloadClass: + * @parent_class: the parent class + * + * Base class for audio RTP payloader. + */ struct _GstBaseRTPAudioPayloadClass { GstBaseRTPPayloadClass parent_class; + /*< private >*/ gpointer _gst_reserved[GST_PADDING]; }; diff --git a/gst-libs/gst/rtp/gstbasertpdepayload.c b/gst-libs/gst/rtp/gstbasertpdepayload.c index 1ca03f8600..c8be565243 100644 --- a/gst-libs/gst/rtp/gstbasertpdepayload.c +++ b/gst-libs/gst/rtp/gstbasertpdepayload.c @@ -1,5 +1,5 @@ /* GStreamer - * Copyright (C) <2005> Philippe Khalaf + * Copyright (C) <2005> Philippe Khalaf * Copyright (C) <2005> Nokia Corporation * * This library is free software; you can redistribute it and/or @@ -22,11 +22,7 @@ * SECTION:gstbasertpdepayload * @short_description: Base class for RTP depayloader * - * - * * Provides a base class for RTP depayloaders - * - * */ #include "gstbasertpdepayload.h" diff --git a/gst-libs/gst/rtp/gstbasertpdepayload.h b/gst-libs/gst/rtp/gstbasertpdepayload.h index 01c52474b2..68f178da5e 100644 --- a/gst-libs/gst/rtp/gstbasertpdepayload.h +++ b/gst-libs/gst/rtp/gstbasertpdepayload.h @@ -1,5 +1,5 @@ /* GStreamer - * Copyright (C) <2005> Philippe Khalaf + * Copyright (C) <2005> Philippe Khalaf * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -62,6 +62,18 @@ struct _GstBaseRTPDepayload gpointer _gst_reserved[GST_PADDING-1]; }; +/** + * GstBaseRTPDepayloadClass: + * @parent_class: the parent class + * @set_caps: configure the depayloader + * @add_to_queue: (deprecated) + * @process: process incoming rtp packets + * @set_gst_timestamp: convert from RTP timestamp to GST timestamp + * @packet_lost: signal the depayloader about packet loss + * @handle_event: custom event handling + * + * Base class for audio RTP payloader. + */ struct _GstBaseRTPDepayloadClass { GstElementClass parent_class; diff --git a/gst-libs/gst/rtp/gstbasertppayload.c b/gst-libs/gst/rtp/gstbasertppayload.c index 973e763501..33e6a90e4d 100644 --- a/gst-libs/gst/rtp/gstbasertppayload.c +++ b/gst-libs/gst/rtp/gstbasertppayload.c @@ -16,11 +16,7 @@ * SECTION:gstbasertppayload * @short_description: Base class for RTP payloader * - * - * * Provides a base class for RTP payloaders - * - * */ #ifdef HAVE_CONFIG_H diff --git a/gst-libs/gst/rtp/gstbasertppayload.h b/gst-libs/gst/rtp/gstbasertppayload.h index 266b116c25..2987b3ccc4 100644 --- a/gst-libs/gst/rtp/gstbasertppayload.h +++ b/gst-libs/gst/rtp/gstbasertppayload.h @@ -120,6 +120,16 @@ struct _GstBaseRTPPayload } abidata; }; +/** + * GstBaseRTPPayloadClass: + * @parent_class: the parent class + * @set_caps: configure the payloader + * @handle_buffer: process data + * @handle_event: custom event handling + * @get_caps: get desired caps + * + * Base class for audio RTP payloader. + */ struct _GstBaseRTPPayloadClass { GstElementClass parent_class; diff --git a/gst-libs/gst/rtsp/gstrtspdefs.h b/gst-libs/gst/rtsp/gstrtspdefs.h index 9652f179df..d67babd1c0 100644 --- a/gst-libs/gst/rtsp/gstrtspdefs.h +++ b/gst-libs/gst/rtsp/gstrtspdefs.h @@ -185,7 +185,7 @@ typedef enum { * @GST_RTSP_GET: the GET method (HTTP). Since 0.10.25 * @GST_RTSP_POST: the POST method (HTTP). Since 0.10.25 * - * The different supported RTSP methods. + * The different supported RTSP methods. */ typedef enum { GST_RTSP_INVALID = 0, @@ -221,11 +221,17 @@ typedef enum { /** * GST_RTSP_AUTH_MAX: * - * Strongest available authentication method + * Strongest available authentication method */ #define GST_RTSP_AUTH_MAX GST_RTSP_AUTH_DIGEST +/** + * GstRTSPHeaderField: + * + * Enumeration of rtsp header fields. + */ typedef enum { + /*< protected >*/ GST_RTSP_HDR_INVALID, /* @@ -330,51 +336,57 @@ typedef enum { GST_RTSP_HDR_LAST } GstRTSPHeaderField; +/** + * GstRTSPStatusCode: + * + * Enumeration of rtsp status codes. + */ typedef enum { - GST_RTSP_STS_INVALID = 0, - GST_RTSP_STS_CONTINUE = 100, - GST_RTSP_STS_OK = 200, - GST_RTSP_STS_CREATED = 201, - GST_RTSP_STS_LOW_ON_STORAGE = 250, - GST_RTSP_STS_MULTIPLE_CHOICES = 300, - GST_RTSP_STS_MOVED_PERMANENTLY = 301, - GST_RTSP_STS_MOVE_TEMPORARILY = 302, - GST_RTSP_STS_SEE_OTHER = 303, - GST_RTSP_STS_NOT_MODIFIED = 304, - GST_RTSP_STS_USE_PROXY = 305, - GST_RTSP_STS_BAD_REQUEST = 400, - GST_RTSP_STS_UNAUTHORIZED = 401, - GST_RTSP_STS_PAYMENT_REQUIRED = 402, - GST_RTSP_STS_FORBIDDEN = 403, - GST_RTSP_STS_NOT_FOUND = 404, - GST_RTSP_STS_METHOD_NOT_ALLOWED = 405, - GST_RTSP_STS_NOT_ACCEPTABLE = 406, - GST_RTSP_STS_PROXY_AUTH_REQUIRED = 407, - GST_RTSP_STS_REQUEST_TIMEOUT = 408, - GST_RTSP_STS_GONE = 410, - GST_RTSP_STS_LENGTH_REQUIRED = 411, - GST_RTSP_STS_PRECONDITION_FAILED = 412, - GST_RTSP_STS_REQUEST_ENTITY_TOO_LARGE = 413, - GST_RTSP_STS_REQUEST_URI_TOO_LARGE = 414, - GST_RTSP_STS_UNSUPPORTED_MEDIA_TYPE = 415, - GST_RTSP_STS_PARAMETER_NOT_UNDERSTOOD = 451, - GST_RTSP_STS_CONFERENCE_NOT_FOUND = 452, - GST_RTSP_STS_NOT_ENOUGH_BANDWIDTH = 453, - GST_RTSP_STS_SESSION_NOT_FOUND = 454, - GST_RTSP_STS_METHOD_NOT_VALID_IN_THIS_STATE = 455, - GST_RTSP_STS_HEADER_FIELD_NOT_VALID_FOR_RESOURCE = 456, - GST_RTSP_STS_INVALID_RANGE = 457, - GST_RTSP_STS_PARAMETER_IS_READONLY = 458, - GST_RTSP_STS_AGGREGATE_OPERATION_NOT_ALLOWED = 459, - GST_RTSP_STS_ONLY_AGGREGATE_OPERATION_ALLOWED = 460, - GST_RTSP_STS_UNSUPPORTED_TRANSPORT = 461, - GST_RTSP_STS_DESTINATION_UNREACHABLE = 462, - GST_RTSP_STS_INTERNAL_SERVER_ERROR = 500, - GST_RTSP_STS_NOT_IMPLEMENTED = 501, - GST_RTSP_STS_BAD_GATEWAY = 502, - GST_RTSP_STS_SERVICE_UNAVAILABLE = 503, - GST_RTSP_STS_GATEWAY_TIMEOUT = 504, - GST_RTSP_STS_RTSP_VERSION_NOT_SUPPORTED = 505, + /*< protected >*/ + GST_RTSP_STS_INVALID = 0, + GST_RTSP_STS_CONTINUE = 100, + GST_RTSP_STS_OK = 200, + GST_RTSP_STS_CREATED = 201, + GST_RTSP_STS_LOW_ON_STORAGE = 250, + GST_RTSP_STS_MULTIPLE_CHOICES = 300, + GST_RTSP_STS_MOVED_PERMANENTLY = 301, + GST_RTSP_STS_MOVE_TEMPORARILY = 302, + GST_RTSP_STS_SEE_OTHER = 303, + GST_RTSP_STS_NOT_MODIFIED = 304, + GST_RTSP_STS_USE_PROXY = 305, + GST_RTSP_STS_BAD_REQUEST = 400, + GST_RTSP_STS_UNAUTHORIZED = 401, + GST_RTSP_STS_PAYMENT_REQUIRED = 402, + GST_RTSP_STS_FORBIDDEN = 403, + GST_RTSP_STS_NOT_FOUND = 404, + GST_RTSP_STS_METHOD_NOT_ALLOWED = 405, + GST_RTSP_STS_NOT_ACCEPTABLE = 406, + GST_RTSP_STS_PROXY_AUTH_REQUIRED = 407, + GST_RTSP_STS_REQUEST_TIMEOUT = 408, + GST_RTSP_STS_GONE = 410, + GST_RTSP_STS_LENGTH_REQUIRED = 411, + GST_RTSP_STS_PRECONDITION_FAILED = 412, + GST_RTSP_STS_REQUEST_ENTITY_TOO_LARGE = 413, + GST_RTSP_STS_REQUEST_URI_TOO_LARGE = 414, + GST_RTSP_STS_UNSUPPORTED_MEDIA_TYPE = 415, + GST_RTSP_STS_PARAMETER_NOT_UNDERSTOOD = 451, + GST_RTSP_STS_CONFERENCE_NOT_FOUND = 452, + GST_RTSP_STS_NOT_ENOUGH_BANDWIDTH = 453, + GST_RTSP_STS_SESSION_NOT_FOUND = 454, + GST_RTSP_STS_METHOD_NOT_VALID_IN_THIS_STATE = 455, + GST_RTSP_STS_HEADER_FIELD_NOT_VALID_FOR_RESOURCE = 456, + GST_RTSP_STS_INVALID_RANGE = 457, + GST_RTSP_STS_PARAMETER_IS_READONLY = 458, + GST_RTSP_STS_AGGREGATE_OPERATION_NOT_ALLOWED = 459, + GST_RTSP_STS_ONLY_AGGREGATE_OPERATION_ALLOWED = 460, + GST_RTSP_STS_UNSUPPORTED_TRANSPORT = 461, + GST_RTSP_STS_DESTINATION_UNREACHABLE = 462, + GST_RTSP_STS_INTERNAL_SERVER_ERROR = 500, + GST_RTSP_STS_NOT_IMPLEMENTED = 501, + GST_RTSP_STS_BAD_GATEWAY = 502, + GST_RTSP_STS_SERVICE_UNAVAILABLE = 503, + GST_RTSP_STS_GATEWAY_TIMEOUT = 504, + GST_RTSP_STS_RTSP_VERSION_NOT_SUPPORTED = 505, GST_RTSP_STS_OPTION_NOT_SUPPORTED = 551 } GstRTSPStatusCode; diff --git a/gst-libs/gst/tag/gstxmptag.c b/gst-libs/gst/tag/gstxmptag.c index fed08b41a9..55529be38b 100644 --- a/gst-libs/gst/tag/gstxmptag.c +++ b/gst-libs/gst/tag/gstxmptag.c @@ -162,10 +162,10 @@ xmp_tag_get_type_name (XmpTag * xmptag) switch (xmptag->type) { case GstXmpTagTypeSeq: return "rdf:Seq"; - default: - g_assert_not_reached (); case GstXmpTagTypeBag: return "rdf:Bag"; + default: + g_assert_not_reached (); } } @@ -844,7 +844,7 @@ deserialize_xmp_rating (XmpTag * xmptag, GstTagList * taglist, return; } - if (value < 0 || value > 100) { + if (value > 100) { GST_WARNING ("Unsupported Rating tag %u (should be from 0 to 100), " "ignoring", value); return; @@ -1073,7 +1073,7 @@ read_one_tag (GstTagList * list, XmpTag * xmptag, g_return_if_fail (tag != NULL); - if (xmptag && xmptag->deserialize) { + if (xmptag->deserialize) { xmptag->deserialize (xmptag, list, tag, xmptag->tag_name, v, pending_tags); return; } diff --git a/gst-libs/gst/video/convertframe.c b/gst-libs/gst/video/convertframe.c index 5220eb9023..3d71675f52 100644 --- a/gst-libs/gst/video/convertframe.c +++ b/gst-libs/gst/video/convertframe.c @@ -236,7 +236,7 @@ link_failed: * @from_caps: the #GstCaps to convert from * @to_caps: the #GstCaps to convert to * @timeout: the maximum amount of time allowed for the processing. - * @err: pointer to a #GError. Can be %NULL. + * @error: pointer to a #GError. Can be %NULL. * * Converts a raw video buffer into the specified output caps. * @@ -256,7 +256,7 @@ gst_video_convert_frame (GstBuffer * buf, GstCaps * from_caps, { GstMessage *msg; GstBuffer *result = NULL; - GError *error = NULL; + GError *err = NULL; GstBus *bus; GstCaps *to_caps_copy = NULL; GstFlowReturn ret; @@ -278,8 +278,7 @@ gst_video_convert_frame (GstBuffer * buf, GstCaps * from_caps, } pipeline = - build_convert_frame_pipeline (&src, &sink, from_caps, to_caps_copy, - &error); + build_convert_frame_pipeline (&src, &sink, from_caps, to_caps_copy, &err); if (!pipeline) goto no_pipeline; @@ -317,14 +316,14 @@ gst_video_convert_frame (GstBuffer * buf, GstCaps * from_caps, case GST_MESSAGE_ERROR:{ gchar *dbg = NULL; - gst_message_parse_error (msg, &error, &dbg); - if (error) { - GST_ERROR ("Could not convert video frame: %s", error->message); - GST_DEBUG ("%s [debug: %s]", error->message, GST_STR_NULL (dbg)); - if (err) - *err = error; + gst_message_parse_error (msg, &err, &dbg); + if (err) { + GST_ERROR ("Could not convert video frame: %s", err->message); + GST_DEBUG ("%s [debug: %s]", err->message, GST_STR_NULL (dbg)); + if (error) + *error = err; else - g_error_free (error); + g_error_free (err); } g_free (dbg); break; @@ -336,8 +335,8 @@ gst_video_convert_frame (GstBuffer * buf, GstCaps * from_caps, gst_message_unref (msg); } else { GST_ERROR ("Could not convert video frame: timeout during conversion"); - if (err) - *err = g_error_new (GST_CORE_ERROR, GST_CORE_ERROR_FAILED, + if (error) + *error = g_error_new (GST_CORE_ERROR, GST_CORE_ERROR_FAILED, "Could not convert video frame: timeout during conversion"); } @@ -353,10 +352,10 @@ no_pipeline: { gst_caps_unref (to_caps_copy); - if (err) - *err = error; + if (error) + *error = err; else - g_error_free (error); + g_error_free (err); return NULL; } @@ -576,6 +575,7 @@ done: * @to_caps: the #GstCaps to convert to * @timeout: the maximum amount of time allowed for the processing. * @callback: %GstVideoConvertFrameCallback that will be called after conversion. + * @user_data: extra data that will be passed to the @callback * @destroy_notify: %GDestroyNotify to be called after @user_data is not needed anymore * * Converts a raw video buffer into the specified output caps. diff --git a/gst-libs/gst/video/gstvideofilter.h b/gst-libs/gst/video/gstvideofilter.h index 1c02061c15..bb0183e47c 100644 --- a/gst-libs/gst/video/gstvideofilter.h +++ b/gst-libs/gst/video/gstvideofilter.h @@ -47,6 +47,12 @@ struct _GstVideoFilter { gboolean inited; }; +/** + * GstVideoFilterClass: + * @parent_class: the parent class structure + * + * The video filter class structure. + */ struct _GstVideoFilterClass { GstBaseTransformClass parent_class; }; diff --git a/gst-libs/gst/video/gstvideosink.h b/gst-libs/gst/video/gstvideosink.h index d03a285393..f53459e6e8 100644 --- a/gst-libs/gst/video/gstvideosink.h +++ b/gst-libs/gst/video/gstvideosink.h @@ -27,7 +27,7 @@ #include G_BEGIN_DECLS - + #define GST_TYPE_VIDEO_SINK (gst_video_sink_get_type()) #define GST_VIDEO_SINK(obj) \ (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_VIDEO_SINK, GstVideoSink)) @@ -60,7 +60,7 @@ G_BEGIN_DECLS #define GST_VIDEO_SINK_WIDTH(obj) (GST_VIDEO_SINK_CAST (obj)->width) #define GST_VIDEO_SINK_HEIGHT(obj) (GST_VIDEO_SINK_CAST (obj)->height) - + typedef struct _GstVideoSink GstVideoSink; typedef struct _GstVideoSinkClass GstVideoSinkClass; typedef struct _GstVideoRectangle GstVideoRectangle; @@ -84,7 +84,6 @@ struct _GstVideoRectangle { /** * GstVideoSink: - * @element: the parent object structure (which is GstBaseSink) * @height: video height (derived class needs to set this) * @width: video width (derived class needs to set this) * @@ -93,9 +92,10 @@ struct _GstVideoRectangle { */ struct _GstVideoSink { GstBaseSink element; /* FIXME 0.11: this should not be called 'element' */ - + + /*< public >*/ gint width, height; - + /*< private >*/ GstVideoSinkPrivate *priv; diff --git a/gst-libs/gst/video/video.c b/gst-libs/gst/video/video.c index 73093e6296..3b28bbaea4 100644 --- a/gst-libs/gst/video/video.c +++ b/gst-libs/gst/video/video.c @@ -31,7 +31,7 @@ * * * - * This library contains some helper functions and includes the + * This library contains some helper functions and includes the * videosink and videofilter base classes. * * @@ -53,7 +53,7 @@ static GstVideoFormat gst_video_format_from_rgb16_masks (int red_mask, * * A convenience function to retrieve a GValue holding the framerate * from the caps on a pad. - * + * * The pad needs to have negotiated caps containing a framerate property. * * Returns: NULL if the pad has no configured caps or the configured caps @@ -121,7 +121,7 @@ no_fraction: * * Inspect the caps of the provided pad and retrieve the width and height of * the video frames it is configured for. - * + * * The pad needs to have negotiated caps containing width and height properties. * * Returns: TRUE if the width and height could be retrieved. @@ -181,13 +181,13 @@ no_size: * @display_par_n: Numerator of the pixel aspect ratio of the display device * @display_par_d: Denominator of the pixel aspect ratio of the display device * - * Given the Pixel Aspect Ratio and size of an input video frame, and the - * pixel aspect ratio of the intended display device, calculates the actual + * Given the Pixel Aspect Ratio and size of an input video frame, and the + * pixel aspect ratio of the intended display device, calculates the actual * display ratio the video will be rendered with. * - * Returns: A boolean indicating success and a calculated Display Ratio in the - * dar_n and dar_d parameters. - * The return value is FALSE in the case of integer overflow or other error. + * Returns: A boolean indicating success and a calculated Display Ratio in the + * dar_n and dar_d parameters. + * The return value is FALSE in the case of integer overflow or other error. * * Since: 0.10.7 */ @@ -299,7 +299,7 @@ gst_video_parse_caps_color_matrix (GstCaps * caps) * halfway-sited vertically), "jpeg" for JPEG and Theora style * chroma siting (halfway-sited both horizontally and vertically). * Other chroma site values are possible, but uncommon. - * + * * When no chroma site is specified in the caps, it should be assumed * to be "mpeg2". * @@ -681,10 +681,10 @@ gst_video_format_new_caps_raw (GstVideoFormat format) blue_mask = GST_VIDEO_COMP1_MASK_15_INT; break; default: - return NULL; + g_assert_not_reached (); } } else if (bpp != 8) { - return NULL; + g_assert_not_reached (); } caps = gst_caps_new_simple ("video/x-raw-rgb", @@ -977,7 +977,7 @@ gst_video_format_to_fourcc (GstVideoFormat format) * @blue_mask: blue bit mask * * Converts red, green, blue bit masks into the corresponding - * #GstVideoFormat. + * #GstVideoFormat. * * Since: 0.10.16 * @@ -1216,7 +1216,7 @@ gst_video_format_is_gray (GstVideoFormat format) /** * gst_video_format_has_alpha: * @format: a #GstVideoFormat - * + * * Returns TRUE or FALSE depending on if the video format provides an * alpha channel. * @@ -1278,9 +1278,10 @@ gst_video_format_has_alpha (GstVideoFormat format) /** * gst_video_format_get_component_depth: * @format: a #GstVideoFormat - * + * @component: the video component (e.g. 0 for 'R' in RGB) + * * Returns the number of bits used to encode an individual pixel of - * a given component. Typically this is 8, although higher and lower + * a given @component. Typically this is 8, although higher and lower * values are possible for some formats. * * Since: 0.10.33 @@ -1767,7 +1768,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, GST_ROUND_UP_4 (GST_ROUND_UP_2 (width) / 2) * (GST_ROUND_UP_2 (height) / 2); } - return 0; + break; case GST_VIDEO_FORMAT_YV12: /* same as I420, but components 1+2 swapped */ if (component == 0) return 0; @@ -1778,7 +1779,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, GST_ROUND_UP_4 (GST_ROUND_UP_2 (width) / 2) * (GST_ROUND_UP_2 (height) / 2); } - return 0; + break; case GST_VIDEO_FORMAT_YUY2: if (component == 0) return 0; @@ -1786,7 +1787,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 1; if (component == 2) return 3; - return 0; + break; case GST_VIDEO_FORMAT_YVYU: if (component == 0) return 0; @@ -1794,7 +1795,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 3; if (component == 2) return 1; - return 0; + break; case GST_VIDEO_FORMAT_UYVY: if (component == 0) return 1; @@ -1802,7 +1803,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 0; if (component == 2) return 2; - return 0; + break; case GST_VIDEO_FORMAT_AYUV: if (component == 0) return 1; @@ -1812,7 +1813,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 3; if (component == 3) return 0; - return 0; + break; case GST_VIDEO_FORMAT_RGBx: case GST_VIDEO_FORMAT_RGBA: if (component == 0) @@ -1823,7 +1824,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 2; if (component == 3) return 3; - return 0; + break; case GST_VIDEO_FORMAT_BGRx: case GST_VIDEO_FORMAT_BGRA: if (component == 0) @@ -1834,7 +1835,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 0; if (component == 3) return 3; - return 0; + break; case GST_VIDEO_FORMAT_xRGB: case GST_VIDEO_FORMAT_ARGB: if (component == 0) @@ -1845,7 +1846,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 3; if (component == 3) return 0; - return 0; + break; case GST_VIDEO_FORMAT_xBGR: case GST_VIDEO_FORMAT_ABGR: if (component == 0) @@ -1856,7 +1857,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 1; if (component == 3) return 0; - return 0; + break; case GST_VIDEO_FORMAT_RGB: case GST_VIDEO_FORMAT_v308: if (component == 0) @@ -1865,7 +1866,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 1; if (component == 2) return 2; - return 0; + break; case GST_VIDEO_FORMAT_BGR: if (component == 0) return 2; @@ -1873,7 +1874,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 1; if (component == 2) return 0; - return 0; + break; case GST_VIDEO_FORMAT_Y41B: if (component == 0) return 0; @@ -1882,7 +1883,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, if (component == 2) return (GST_ROUND_UP_4 (width) + (GST_ROUND_UP_16 (width) / 4)) * height; - return 0; + break; case GST_VIDEO_FORMAT_Y42B: if (component == 0) return 0; @@ -1890,7 +1891,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return GST_ROUND_UP_4 (width) * height; if (component == 2) return (GST_ROUND_UP_4 (width) + (GST_ROUND_UP_8 (width) / 2)) * height; - return 0; + break; case GST_VIDEO_FORMAT_Y444: return GST_ROUND_UP_4 (width) * height * component; case GST_VIDEO_FORMAT_v210: @@ -1904,7 +1905,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 2; if (component == 2) return 6; - return 0; + break; case GST_VIDEO_FORMAT_NV12: if (component == 0) return 0; @@ -1912,6 +1913,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return GST_ROUND_UP_4 (width) * GST_ROUND_UP_2 (height); if (component == 2) return GST_ROUND_UP_4 (width) * GST_ROUND_UP_2 (height) + 1; + break; case GST_VIDEO_FORMAT_NV21: if (component == 0) return 0; @@ -1919,6 +1921,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return GST_ROUND_UP_4 (width) * GST_ROUND_UP_2 (height) + 1; if (component == 2) return GST_ROUND_UP_4 (width) * GST_ROUND_UP_2 (height); + break; case GST_VIDEO_FORMAT_GRAY8: case GST_VIDEO_FORMAT_GRAY16_BE: case GST_VIDEO_FORMAT_GRAY16_LE: @@ -1943,6 +1946,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, 2 * GST_ROUND_UP_4 (GST_ROUND_UP_2 (width) / 2) * (GST_ROUND_UP_2 (height) / 2); } + break; case GST_VIDEO_FORMAT_RGB8_PALETTED: return 0; case GST_VIDEO_FORMAT_YUV9: @@ -1955,7 +1959,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, GST_ROUND_UP_4 (GST_ROUND_UP_4 (width) / 4) * (GST_ROUND_UP_4 (height) / 4); } - return 0; + break; case GST_VIDEO_FORMAT_YVU9: if (component == 0) return 0; @@ -1966,7 +1970,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, } if (component == 2) return GST_ROUND_UP_4 (width) * height; - return 0; + break; case GST_VIDEO_FORMAT_IYU1: if (component == 0) return 1; @@ -1974,6 +1978,7 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 0; if (component == 2) return 4; + break; case GST_VIDEO_FORMAT_ARGB64: case GST_VIDEO_FORMAT_AYUV64: if (component == 0) @@ -1984,10 +1989,12 @@ gst_video_format_get_component_offset (GstVideoFormat format, return 6; if (component == 3) return 0; - return 0; + break; default: - return 0; + break; } + GST_WARNING ("unhandled format %d or component %d", format, component); + return 0; } /** diff --git a/gst/app/gstapp.c b/gst/app/gstapp.c index 098fbdd209..ca54ae4bc6 100644 --- a/gst/app/gstapp.c +++ b/gst/app/gstapp.c @@ -16,6 +16,32 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ +/** + * SECTION:element-appsrc + * + * The appsrc element can be used by applications to insert data into a + * GStreamer pipeline. Unlike most GStreamer elements, Appsrc provides + * external API functions. + * + * For the documentation of the API, please see the + * libgstapp section in the + * GStreamer Plugins Base Libraries documentation. + * + * Since: 0.10.22 + */ +/** + * SECTION:element-appsink + * + * Appsink is a sink plugin that supports many different methods for making + * the application get a handle on the GStreamer data in a pipeline. Unlike + * most GStreamer elements, Appsink provides external API functions. + * + * For the documentation of the API, please see the + * libgstapp section in + * the GStreamer Plugins Base Libraries documentation. + * + * Since: 0.10.22 + */ #ifdef HAVE_CONFIG_H #include "config.h" diff --git a/gst/subparse/gstsubparse.c b/gst/subparse/gstsubparse.c index afc58bae4a..b4bbb5fa1c 100644 --- a/gst/subparse/gstsubparse.c +++ b/gst/subparse/gstsubparse.c @@ -1203,7 +1203,8 @@ gst_sub_parse_data_format_autodetect_regex_once (GstSubParseRegex regtype) switch (regtype) { case GST_SUB_PARSE_REGEX_MDVDSUB: result = - (gpointer) g_regex_new ("^\\{[0-9]+\\}\\{[0-9]+\\}", 0, 0, &gerr); + (gpointer) g_regex_new ("^\\{[0-9]+\\}\\{[0-9]+\\}", + G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, &gerr); if (result == NULL) { g_warning ("Compilation of mdvd regex failed: %s", gerr->message); g_error_free (gerr); @@ -1213,7 +1214,7 @@ gst_sub_parse_data_format_autodetect_regex_once (GstSubParseRegex regtype) result = (gpointer) g_regex_new ("^([ 0-9]){0,3}[0-9]\\s*(\x0d)?\x0a" "[ 0-9][0-9]:[ 0-9][0-9]:[ 0-9][0-9][,.][ 0-9]{0,2}[0-9]" " +--> +([ 0-9])?[0-9]:[ 0-9][0-9]:[ 0-9][0-9][,.][ 0-9]{0,2}[0-9]", - 0, 0, &gerr); + G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, &gerr); if (result == NULL) { g_warning ("Compilation of subrip regex failed: %s", gerr->message); g_error_free (gerr); @@ -1221,7 +1222,7 @@ gst_sub_parse_data_format_autodetect_regex_once (GstSubParseRegex regtype) break; case GST_SUB_PARSE_REGEX_DKS: result = (gpointer) g_regex_new ("^\\[[0-9]+:[0-9]+:[0-9]+\\].*", - 0, 0, &gerr); + G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, &gerr); if (result == NULL) { g_warning ("Compilation of dks regex failed: %s", gerr->message); g_error_free (gerr); @@ -1741,12 +1742,7 @@ gst_subparse_type_find (GstTypeFind * tf, gpointer private) } } converted_str = gst_convert_to_utf8 (str, 128, enc, &tmp, &err); - if (converted_str == NULL) { - GST_DEBUG ("Charset conversion failed: %s", err->message); - g_error_free (err); - g_free (str); - return; - } else { + if (converted_str != NULL) { g_free (str); str = converted_str; }