From 653b7f1da41ea6a380681b29aa80fca626a75933 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Sun, 15 Dec 2019 12:18:09 +0200 Subject: [PATCH] Update gir-files to 1.16.2 --- gir-files/GES-1.0.gir | 10214 ++++++-- gir-files/Gst-1.0.gir | 40879 ++++++++++++++++++++++++------ gir-files/GstApp-1.0.gir | 1018 +- gir-files/GstAudio-1.0.gir | 7080 +++++- gir-files/GstBase-1.0.gir | 7778 ++++-- gir-files/GstCheck-1.0.gir | 1151 +- gir-files/GstGL-1.0.gir | 4509 ++-- gir-files/GstMpegts-1.0.gir | 2650 +- gir-files/GstNet-1.0.gir | 585 +- gir-files/GstPbutils-1.0.gir | 2891 ++- gir-files/GstPlayer-1.0.gir | 1743 +- gir-files/GstRtp-1.0.gir | 4203 ++- gir-files/GstRtsp-1.0.gir | 3072 ++- gir-files/GstRtspServer-1.0.gir | 7930 ++++-- gir-files/GstSdp-1.0.gir | 3971 ++- gir-files/GstTag-1.0.gir | 1193 +- gir-files/GstVideo-1.0.gir | 6589 +++-- gir-files/GstWebRTC-1.0.gir | 397 +- 18 files changed, 85403 insertions(+), 22450 deletions(-) diff --git a/gir-files/GES-1.0.gir b/gir-files/GES-1.0.gir index 24fdf4634..86ef46ee9 100644 --- a/gir-files/GES-1.0.gir +++ b/gir-files/GES-1.0.gir @@ -17,6 +17,166 @@ and/or use gtk-doc annotations. --> shared-library="libges-1.0.so.0" c:identifier-prefixes="GES" c:symbol-prefixes="ges"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESAsset" glib:get-type="ges_asset_get_type" glib:type-struct="AssetClass"> - The Assets in the GStreamer Editing Services represent the resources + The Assets in the GStreamer Editing Services represent the resources that can be used. You can create assets for any type that implements the #GESExtractable interface, for example #GESClips, #GESFormatter, and #GESTrackElement do implement it. This means that assets will represent for example a #GESUriClips, #GESBaseEffect etc, @@ -82,11 +244,14 @@ and standard effects (actually not implemented yet) and you can simply query tho You can request the creation of #GESAssets using either ges_asset_request() or ges_asset_request_async(). All the #GESAssets are cached and thus any asset that has already been created can be requested again without overhead. + - Sets an asset from the internal cache as needing reload. An asset needs reload + Sets an asset from the internal cache as needing reload. An asset needs reload in the case where, for example, we were missing a GstPlugin to use it and that plugin has been installed, or, that particular asset content as changed meanwhile (in the case of the usage of proxies). @@ -94,50 +259,68 @@ meanwhile (in the case of the usage of proxies). Once an asset has been set as "needs reload", requesting that asset again will lead to it being re discovered, and reloaded as if it was not in the cache before. + - %TRUE if the asset was in the cache and could be set as needing reload, + %TRUE if the asset was in the cache and could be set as needing reload, %FALSE otherwise. - The #GType of the object that can be extracted from the + The #GType of the object that can be extracted from the asset to be reloaded. - The identifier of the asset to mark as needing reload + The identifier of the asset to mark as needing reload - Create a #GESAsset in the most simple cases, you should look at the @extractable_type + Create a #GESAsset in the most simple cases, you should look at the @extractable_type documentation to see if that constructor can be called for this particular type As it is recommanded not to instanciate assets for GESUriClip synchronously, it will not work with this method, but you can instead use the specific #ges_uri_clip_asset_request_sync method if you really want to. + - A reference to the wanted #GESAsset or %NULL + A reference to the wanted #GESAsset or %NULL - The #GType of the object that can be extracted from the new asset. + The #GType of the object that can be extracted from the new asset. - The Identifier or %NULL + The Identifier or %NULL - The @callback will be called from a running #GMainLoop which is iterating a #GMainContext. + The @callback will be called from a running #GMainLoop which is iterating a #GMainContext. Note that, users should ensure the #GMainContext, since this method will notify @callback from the thread which was associated with a thread default #GMainContext at calling ges_init(). @@ -173,17 +356,22 @@ asset_loaded_cb (GESAsset * source, GAsyncResult * res, gpointer user_data) ges_asset_request_async (GES_TYPE_URI_CLIP, some_uri, NULL, (GAsyncReadyCallback) asset_loaded_cb, user_data); ]| + - The #GType of the object that can be extracted from the + The #GType of the object that can be extracted from the new asset. The class must implement the #GESExtractable interface. - The Identifier of the asset we want to create. This identifier depends of the extractable, + The Identifier of the asset we want to create. This identifier depends of the extractable, type you want. By default it is the name of the class itself (or %NULL), but for example for a GESEffect, it will be the pipeline description, for a GESUriClip it will be the name of the file, etc... You should refer to the documentation of the #GESExtractable @@ -194,7 +382,9 @@ type you want to create a #GESAsset for. transfer-ownership="none" nullable="1" allow-none="1"> - optional %GCancellable object, %NULL to ignore. + optional %GCancellable object, %NULL to ignore. allow-none="1" scope="async" closure="4"> - a #GAsyncReadyCallback to call when the initialization is finished, + a #GAsyncReadyCallback to call when the initialization is finished, Note that the @source of the callback will be the #GESAsset, but you need to make sure that the asset is properly loaded using the #ges_asset_request_finish method. This asset can not be used as is. @@ -213,7 +405,9 @@ method. This asset can not be used as is. transfer-ownership="none" nullable="1" allow-none="1"> - The user data to pass when @callback is called + The user data to pass when @callback is called @@ -221,35 +415,50 @@ method. This asset can not be used as is. - Finalize the request of an async #GESAsset + Finalize the request of an async #GESAsset + - The #GESAsset previously requested + The #GESAsset previously requested - The #GAsyncResult from which to get the newly created #GESAsset + The #GAsyncResult from which to get the newly created #GESAsset - Extracts a new #GObject from @asset. The type of the object is + Extracts a new #GObject from @asset. The type of the object is defined by the extractable-type of @asset, you can check what type will be extracted from @asset using #ges_asset_get_extractable_type + - A newly created #GESExtractable + A newly created #GESExtractable - The #GESAsset to get extract an object from + The #GESAsset to get extract an object from + @@ -263,6 +472,7 @@ type will be extracted from @asset using + @@ -276,6 +486,7 @@ type will be extracted from @asset using + @@ -292,6 +503,7 @@ type will be extracted from @asset using + @@ -302,17 +514,24 @@ type will be extracted from @asset using - Extracts a new #GObject from @asset. The type of the object is + Extracts a new #GObject from @asset. The type of the object is defined by the extractable-type of @asset, you can check what type will be extracted from @asset using #ges_asset_get_extractable_type + - A newly created #GESExtractable + A newly created #GESExtractable - The #GESAsset to get extract an object from + The #GESAsset to get extract an object from @@ -320,73 +539,105 @@ type will be extracted from @asset using + - The #GError of the asset or %NULL if + The #GError of the asset or %NULL if the asset was loaded without issue - The asset to retrieve the error from + The asset to retrieve the error from - Gets the type of object that can be extracted from @self + Gets the type of object that can be extracted from @self + - the type of object that can be extracted from @self + the type of object that can be extracted from @self - The #GESAsset + The #GESAsset - Gets the ID of a #GESAsset + Gets the ID of a #GESAsset + - The ID of @self + The ID of @self - The #GESAsset to get ID from + The #GESAsset to get ID from + - The proxy in use for @asset + The proxy in use for @asset - The #GESAsset to get currenlty used proxy + The #GESAsset to get currenlty used proxy + - The #GESAsset that is proxied by @proxy + The #GESAsset that is proxied by @proxy - The #GESAsset from which to get the the asset it proxies. + The #GESAsset from which to get the the asset it proxies. + - The list of proxies @asset has. Note that the default asset to be + The list of proxies @asset has. Note that the default asset to be used is always the first in that list. @@ -394,30 +645,41 @@ used is always the first in that list. - The #GESAsset to get proxies from + The #GESAsset to get proxies from - A proxying asset is an asset that can substitue the real @asset. For example if you + A proxying asset is an asset that can substitue the real @asset. For example if you have a full HD #GESUriClipAsset you might want to set a lower resolution (HD version of the same file) as proxy. Note that when an asset is proxied, calling #ges_asset_request will actually return the proxy asset. + - %TRUE if @proxy has been set on @asset, %FALSE otherwise. + %TRUE if @proxy has been set on @asset, %FALSE otherwise. - The #GESAsset to set proxy on + The #GESAsset to set proxy on - The #GESAsset that should be used as default proxy for @asset or + The #GESAsset that should be used as default proxy for @asset or %NULL if you want to use the currently set proxy. Note that an asset can proxy one and only one other asset. @@ -425,19 +687,28 @@ one other asset. - Removes @proxy from the list of known proxies for @asset. + Removes @proxy from the list of known proxies for @asset. If @proxy was the current proxy for @asset, stop using it. + - %TRUE if @proxy was a known proxy for @asset, %FALSE otherwise. + %TRUE if @proxy was a known proxy for @asset, %FALSE otherwise. - The #GESAsset to stop proxying with @proxy + The #GESAsset to stop proxying with @proxy - The #GESAsset to stop considering as a proxy for @asset + The #GESAsset to stop considering as a proxy for @asset @@ -467,7 +738,7 @@ If @proxy was the current proxy for @asset, stop using it. - + @@ -475,11 +746,13 @@ If @proxy was the current proxy for @asset, stop using it. + + @@ -492,13 +765,18 @@ If @proxy was the current proxy for @asset, stop using it. + - A newly created #GESExtractable + A newly created #GESExtractable - The #GESAsset to get extract an object from + The #GESAsset to get extract an object from @@ -506,6 +784,7 @@ If @proxy was the current proxy for @asset, stop using it. + @@ -521,6 +800,7 @@ If @proxy was the current proxy for @asset, stop using it. + @@ -536,6 +816,7 @@ If @proxy was the current proxy for @asset, stop using it. + @@ -553,12 +834,13 @@ If @proxy was the current proxy for @asset, stop using it. - + + @@ -567,6 +849,7 @@ If @proxy was the current proxy for @asset, stop using it. + glib:type-name="GESAudioSource" glib:get-type="ges_audio_source_get_type" glib:type-struct="AudioSourceClass"> - ## Children Properties + ## Children Properties You can use the following children properties through the #ges_track_element_set_child_property and alike set of methods: @@ -600,6 +885,7 @@ You can use the following children properties through the </tbody> </tgroup> </informaltable> + @@ -609,7 +895,7 @@ You can use the following children properties through the - + @@ -617,11 +903,13 @@ You can use the following children properties through the + + @@ -633,7 +921,7 @@ You can use the following children properties through the - + @@ -641,6 +929,7 @@ You can use the following children properties through the + - Outputs a test audio stream using audiotestsrc. The default property values + Outputs a test audio stream using audiotestsrc. The default property values output silence. Useful for testing pipelines, or to fill gaps in an audio track. + - Get the current frequency of @self. + Get the current frequency of @self. + - The current frequency of @self. + The current frequency of @self. - a #GESAudioTestSource + a #GESAudioTestSource - Get the current volume of @self. + Get the current volume of @self. + - The current volume of @self + The current volume of @self - a #GESAudioTestSource + a #GESAudioTestSource - Lets you set the frequency applied on the track element + Lets you set the frequency applied on the track element + - a #GESAudioTestSource + a #GESAudioTestSource - The frequency you want to apply on @self + The frequency you want to apply on @self - Sets the volume of the test audio signal. + Sets the volume of the test audio signal. + - a #GESAudioTestSource + a #GESAudioTestSource - The volume you want to apply on @self + The volume you want to apply on @self @@ -722,7 +1042,7 @@ track. c:type="GESAudioTestSourcePrivate*"/> - + @@ -730,11 +1050,12 @@ track. + - + @@ -742,6 +1063,7 @@ track. + glib:type-name="GESAudioTrack" glib:get-type="ges_audio_track_get_type" glib:type-struct="AudioTrackClass"> - Sane default properties to specify and fixate the output stream are + Sane default properties to specify and fixate the output stream are set as restriction-caps. It is advised, to modify these properties, to use #ges_track_update_restriction_caps, setting them directly is @@ -763,13 +1087,19 @@ The default properties are: - channels: 2 - rate: 44100 - layout: interleaved + - Creates a new #GESAudioTrack of type #GES_TRACK_TYPE_AUDIO and with generic + Creates a new #GESAudioTrack of type #GES_TRACK_TYPE_AUDIO and with generic raw audio caps ("audio/x-raw"); + - A new #GESTrack + A new #GESTrack @@ -780,7 +1110,7 @@ raw audio caps ("audio/x-raw"); - + @@ -788,11 +1118,12 @@ raw audio caps ("audio/x-raw"); + - + @@ -800,6 +1131,7 @@ raw audio caps ("audio/x-raw"); + glib:type-name="GESAudioTransition" glib:get-type="ges_audio_transition_get_type" glib:type-struct="AudioTransitionClass"> + - Creates a new #GESAudioTransition. + Creates a new #GESAudioTransition. + - The newly created #GESAudioTransition. + The newly created #GESAudioTransition. @@ -825,7 +1163,7 @@ raw audio caps ("audio/x-raw"); c:type="GESAudioTransitionPrivate*"/> - + @@ -833,11 +1171,12 @@ raw audio caps ("audio/x-raw"); + - + @@ -845,6 +1184,7 @@ raw audio caps ("audio/x-raw"); + glib:type-name="GESAudioUriSource" glib:get-type="ges_audio_uri_source_get_type" glib:type-struct="AudioUriSourceClass"> + - The location of the file/resource to use. + The location of the file/resource to use. @@ -872,7 +1215,7 @@ raw audio caps ("audio/x-raw"); - + @@ -880,11 +1223,12 @@ raw audio caps ("audio/x-raw"); + - + @@ -892,7 +1236,116 @@ raw audio caps ("audio/x-raw"); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESBaseEffect" glib:get-type="ges_base_effect_get_type" glib:type-struct="BaseEffectClass"> + @@ -910,7 +1364,7 @@ raw audio caps ("audio/x-raw"); - + @@ -918,12 +1372,15 @@ raw audio caps ("audio/x-raw"); + - parent class + parent class - + @@ -936,8 +1393,11 @@ raw audio caps ("audio/x-raw"); glib:type-name="GESBaseEffectClip" glib:get-type="ges_base_effect_clip_get_type" glib:type-struct="BaseEffectClipClass"> - The effect will be applied on the sources that have lower priorities + The effect will be applied on the sources that have lower priorities (higher number) between the inpoint and the end of it. + @@ -947,7 +1407,7 @@ raw audio caps ("audio/x-raw"); - + @@ -955,11 +1415,12 @@ raw audio caps ("audio/x-raw"); + - + @@ -967,10 +1428,12 @@ raw audio caps ("audio/x-raw"); + + glib:type-name="GESBaseTransitionClip" glib:get-type="ges_base_transition_clip_get_type" glib:type-struct="BaseTransitionClipClass"> + @@ -990,7 +1454,7 @@ raw audio caps ("audio/x-raw"); c:type="GESBaseTransitionClipPrivate*"/> - + @@ -998,11 +1462,12 @@ raw audio caps ("audio/x-raw"); + - + @@ -1010,6 +1475,7 @@ raw audio caps ("audio/x-raw"); + glib:type-name="GESBaseXmlFormatter" glib:get-type="ges_base_xml_formatter_get_type" glib:type-struct="BaseXmlFormatterClass"> + @@ -1028,7 +1495,7 @@ raw audio caps ("audio/x-raw"); c:type="GESBaseXmlFormatterPrivate*"/> - + @@ -1036,6 +1503,7 @@ raw audio caps ("audio/x-raw"); + @@ -1044,6 +1512,7 @@ raw audio caps ("audio/x-raw"); + @@ -1058,7 +1527,7 @@ raw audio caps ("audio/x-raw"); - + @@ -1066,8 +1535,146 @@ raw audio caps ("audio/x-raw"); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A #GList containing the children of @object + + + + a #GESContainer + + + + + + + + + + + + + + + + + + + The span of priorities this object occupies. + + + + a #GESContainer + + + + glib:type-name="GESClip" glib:get-type="ges_clip_get_type" glib:type-struct="ClipClass"> - A #GESClip is a 'natural' object which controls one or more + A #GESClip is a 'natural' object which controls one or more #GESTrackElement(s) in one or more #GESTrack(s). Keeps a reference to the #GESTrackElement(s) it created and sets/updates their properties. + + - the #GESTrackElement to be used, or %NULL if it can't provide one + the #GESTrackElement to be used, or %NULL if it can't provide one for the given @track. - a #GESClip + a #GESClip - a #GESTrackType + a #GESTrackType + - %TRUE on success %FALSE on failure. + %TRUE on success %FALSE on failure. - a #GESClip + a #GESClip - a #GESTrackType + a #GESTrackType - Extracts a #GESTrackElement from @asset and adds it to the @clip. + Extracts a #GESTrackElement from @asset and adds it to the @clip. Should only be called in order to add operations to a #GESClip, ni other cases TrackElement are added automatically when adding the #GESClip/#GESAsset to a layer. Takes a reference on @track_element. + - Created #GESTrackElement or NULL + Created #GESTrackElement or NULL if an error happened - a #GESClip + a #GESClip - a #GESAsset with #GES_TYPE_TRACK_ELEMENT as extractable_type + a #GESAsset with #GES_TYPE_TRACK_ELEMENT as extractable_type - Finds the #GESTrackElement controlled by @clip that is used in @track. You + Finds the #GESTrackElement controlled by @clip that is used in @track. You may optionally specify a GType to further narrow search criteria. Note: If many objects match, then the one with the highest priority will be returned. + - The #GESTrackElement used by @track, + The #GESTrackElement used by @track, else %NULL. Unref after usage - a #GESClip + a #GESClip - a #GESTrack or NULL + a #GESTrack or NULL - a #GType indicating the type of track element you are looking + a #GType indicating the type of track element you are looking for or %G_TYPE_NONE if you do not care about the track type. @@ -1191,10 +1835,15 @@ for or %G_TYPE_NONE if you do not care about the track type. - Finds all the #GESTrackElement controlled by @clip that is used in @track. You + Finds all the #GESTrackElement controlled by @clip that is used in @track. You may optionally specify a GType to further narrow search criteria. + - a #GList of the + a #GList of the #GESTrackElement contained in @clip. The refcount of the objects will be increased. The user will have to unref each #GESTrackElement and free the #GList. @@ -1204,77 +1853,109 @@ unref each #GESTrackElement and free the #GList. - a #GESClip + a #GESClip - a #GESTrack or NULL + a #GESTrack or NULL - a #GESTrackType indicating the type of tracks in which elements + a #GESTrackType indicating the type of tracks in which elements should be searched. - a #GType indicating the type of track element you are looking + a #GType indicating the type of track element you are looking for or %G_TYPE_NONE if you do not care about the track type. - Get the #GESLayer to which this clip belongs. + Get the #GESLayer to which this clip belongs. + - The #GESLayer where this @clip is being + The #GESLayer where this @clip is being used, or %NULL if it is not used on any layer. The caller should unref it usage. - a #GESClip + a #GESClip - Get the formats supported by @clip. + Get the formats supported by @clip. + - The formats supported by @clip. + The formats supported by @clip. - the #GESClip + the #GESClip - Gets the index position of an effect. + Gets the index position of an effect. + - The top index of the effect, -1 if something went wrong. + The top index of the effect, -1 if something went wrong. - The origin #GESClip + The origin #GESClip - The #GESBaseEffect we want to get the top index from + The #GESBaseEffect we want to get the top index from + @@ -1288,9 +1969,14 @@ usage. - Get effects applied on @clip + Get effects applied on @clip + - a #GList of the + a #GList of the #GESBaseEffect that are applied on @clip order by ascendant priorities. The refcount of the objects will be increased. The user will have to unref each #GESBaseEffect and free the #GList. @@ -1300,64 +1986,93 @@ unref each #GESBaseEffect and free the #GList. - The origin #GESClip + The origin #GESClip - Moves @clip to @layer. If @clip is not in any layer, it adds it to + Moves @clip to @layer. If @clip is not in any layer, it adds it to @layer, else, it removes it from its current layer, and adds it to @layer. + - %TRUE if @clip could be moved %FALSE otherwize + %TRUE if @clip could be moved %FALSE otherwize - a #GESClip + a #GESClip - the new #GESLayer + the new #GESLayer - Sets the formats supported by the file. + Sets the formats supported by the file. + - the #GESClip to set supported formats on + the #GESClip to set supported formats on - the #GESTrackType defining formats supported by @clip + the #GESTrackType defining formats supported by @clip - This is a convenience method that lets you set the index of a top effect. + This is a convenience method that lets you set the index of a top effect. + - %TRUE if @effect was successfuly moved, %FALSE otherwise. + %TRUE if @effect was successfuly moved, %FALSE otherwise. - The origin #GESClip + The origin #GESClip - The #GESBaseEffect to move + The #GESBaseEffect to move - the new index at which to move the @effect inside this + the new index at which to move the @effect inside this #GESClip @@ -1365,6 +2080,7 @@ unref each #GESBaseEffect and free the #GList. + @@ -1381,7 +2097,9 @@ unref each #GESBaseEffect and free the #GList. - The function modifies @clip, and creates another #GESClip so we have two + The function modifies @clip, and creates another #GESClip so we have two clips at the end, splitted at the time specified by @position, as a position in the timeline (not in the clip to be split). For example, if ges_clip_split is called on a 4-second clip playing from 0:01.00 until @@ -1397,24 +2115,33 @@ four seconds after it starts, will set the inpoint of the new clip to six seconds after that of the clip to split. For this, the rate-changing property must be registered using @ges_effect_class_register_rate_property; for the 'pitch' plugin, this is already done. + - The newly created #GESClip resulting + The newly created #GESClip resulting from the splitting or %NULL if the clip can't be split. - the #GESClip to split + the #GESClip to split - a #GstClockTime representing the timeline position at which to split + a #GstClockTime representing the timeline position at which to split - The GESLayer where this clip is being used. If you want to connect to its + The GESLayer where this clip is being used. If you want to connect to its notify signal you should connect to it with g_signal_connect_after as the signal emission can be stop in the first fase. @@ -1423,7 +2150,9 @@ signal emission can be stop in the first fase. writable="1" construct="1" transfer-ownership="none"> - The formats supported by the clip. + The formats supported by the clip. @@ -1433,7 +2162,7 @@ signal emission can be stop in the first fase. - + @@ -1445,40 +2174,57 @@ signal emission can be stop in the first fase. glib:type-name="GESClipAsset" glib:get-type="ges_clip_asset_get_type" glib:type-struct="ClipAssetClass"> - The #GESUriClipAsset is a special #GESAsset specilized in #GESClip. + The #GESUriClipAsset is a special #GESAsset specilized in #GESClip. it is mostly used to get information about the #GESTrackType-s the objects extracted from it can potentialy create #GESTrackElement for. + - Gets track types for which objects extracted from @self can create #GESTrackElement + Gets track types for which objects extracted from @self can create #GESTrackElement + - The track types on which @self will create TrackElement when added to + The track types on which @self will create TrackElement when added to a layer - a #GESClipAsset + a #GESClipAsset - Sets track types for which objects extracted from @self can create #GESTrackElement + Sets track types for which objects extracted from @self can create #GESTrackElement + - a #GESClipAsset + a #GESClipAsset - The track types supported by the GESClipAsset + The track types supported by the GESClipAsset @@ -1487,7 +2233,9 @@ a layer writable="1" construct="1" transfer-ownership="none"> - The formats supported by the asset. + The formats supported by the asset. @@ -1497,7 +2245,7 @@ a layer - + @@ -1505,42 +2253,52 @@ a layer + - + + - Subclasses can override the @create_track_element. + Subclasses can override the @create_track_element. + - method to create a single #GESTrackElement for a given #GESTrack. + method to create a single #GESTrackElement for a given #GESTrack. - method to create multiple #GESTrackElements for a + method to create multiple #GESTrackElements for a #GESTrack. - + + glib:type-name="GESCommandLineFormatter" glib:get-type="ges_command_line_formatter_get_type" glib:type-struct="CommandLineFormatterClass"> + + @@ -1575,6 +2335,7 @@ a layer + @@ -1582,6 +2343,7 @@ a layer + glib:type-name="GESContainer" glib:get-type="ges_container_get_type" glib:type-struct="ContainerClass"> - The #GESContainer base class. + The #GESContainer base class. + - Groups the #GESContainer-s provided in @containers. It creates a subclass + Groups the #GESContainer-s provided in @containers. It creates a subclass of #GESContainer, depending on the containers provided in @containers. Basically, if all the containers in @containers should be contained in a same clip (all the #GESTrackElement they contain have the exact same start/inpoint/duration and are in the same layer), it will create a #GESClip otherwise a #GESGroup will be created + - The #GESContainer (subclass) resulting of the + The #GESContainer (subclass) resulting of the grouping @@ -1611,7 +2381,9 @@ grouping transfer-ownership="none" nullable="1" allow-none="1"> - The + The #GESContainer to group, they must all be in a same #GESTimeline @@ -1620,6 +2392,7 @@ grouping + @@ -1633,6 +2406,7 @@ grouping + @@ -1646,6 +2420,7 @@ grouping + @@ -1659,20 +2434,29 @@ grouping - Edit @container in the different exisiting #GESEditMode modes. In the case of + Edit @container in the different exisiting #GESEditMode modes. In the case of slide, and roll, you need to specify a #GESEdge + - %TRUE if the container as been edited properly, %FALSE if an error + %TRUE if the container as been edited properly, %FALSE if an error occured - the #GESClip to edit + the #GESClip to edit - The layers you want the edit to + The layers you want the edit to happen in, %NULL means that the edition is done in all the #GESLayers contained in the current timeline. @@ -1680,26 +2464,35 @@ occured - The priority of the layer @container should land in. + The priority of the layer @container should land in. If the layer you're trying to move the container to doesn't exist, it will be created automatically. -1 means no move. - The #GESEditMode in which the editition will happen. + The #GESEditMode in which the editition will happen. - The #GESEdge the edit should happen on. + The #GESEdge the edit should happen on. - The position at which to edit @container (in nanosecond) + The position at which to edit @container (in nanosecond) + @@ -1713,11 +2506,16 @@ occured - Ungroups the #GESTimelineElement contained in this GESContainer, + Ungroups the #GESTimelineElement contained in this GESContainer, creating new #GESContainer containing those #GESTimelineElement apropriately. + - The list of + The list of #GESContainer resulting from the ungrouping operation The user is responsible for unreffing the contained objects and freeing the list. @@ -1727,47 +2525,69 @@ and freeing the list. - The #GESContainer to ungroup + The #GESContainer to ungroup - Wether to recursively ungroup @container + Wether to recursively ungroup @container - Add the #GESTimelineElement to the container. + Add the #GESTimelineElement to the container. + - %TRUE on success, %FALSE on failure. + %TRUE on success, %FALSE on failure. - a #GESContainer + a #GESContainer - the #GESTimelineElement + the #GESTimelineElement - Edit @container in the different exisiting #GESEditMode modes. In the case of + Edit @container in the different exisiting #GESEditMode modes. In the case of slide, and roll, you need to specify a #GESEdge + - %TRUE if the container as been edited properly, %FALSE if an error + %TRUE if the container as been edited properly, %FALSE if an error occured - the #GESClip to edit + the #GESClip to edit - The layers you want the edit to + The layers you want the edit to happen in, %NULL means that the edition is done in all the #GESLayers contained in the current timeline. @@ -1775,31 +2595,44 @@ occured - The priority of the layer @container should land in. + The priority of the layer @container should land in. If the layer you're trying to move the container to doesn't exist, it will be created automatically. -1 means no move. - The #GESEditMode in which the editition will happen. + The #GESEditMode in which the editition will happen. - The #GESEdge the edit should happen on. + The #GESEdge the edit should happen on. - The position at which to edit @container (in nanosecond) + The position at which to edit @container (in nanosecond) - Get the list of #GESTimelineElement contained in @container + Get the list of #GESTimelineElement contained in @container The user is responsible for unreffing the contained objects and freeing the list. + - The list of + The list of timeline element contained in @container. @@ -1807,38 +2640,56 @@ timeline element contained in @container. - a #GESContainer + a #GESContainer - Whether to recursively get children in @container + Whether to recursively get children in @container - Release the @child from the control of @container. + Release the @child from the control of @container. + - %TRUE if the @child was properly released, else %FALSE. + %TRUE if the @child was properly released, else %FALSE. - a #GESContainer + a #GESContainer - the #GESTimelineElement to release + the #GESTimelineElement to release - Ungroups the #GESTimelineElement contained in this GESContainer, + Ungroups the #GESTimelineElement contained in this GESContainer, creating new #GESContainer containing those #GESTimelineElement apropriately. + - The list of + The list of #GESContainer resulting from the ungrouping operation The user is responsible for unreffing the contained objects and freeing the list. @@ -1848,31 +2699,41 @@ and freeing the list. - The #GESContainer to ungroup + The #GESContainer to ungroup - Wether to recursively ungroup @container + Wether to recursively ungroup @container - The span of priorities which this container occupies. + The span of priorities which this container occupies. - A list of TimelineElement + A list of TimelineElement controlled by this Container. NOTE: Do not modify. - The span of priorities this container occupies + The span of priorities this container occupies @@ -1885,12 +2746,14 @@ controlled by this Container. NOTE: Do not modify. - + - Will be emitted after a child was added to @container. + Will be emitted after a child was added to @container. Usually you should connect with #g_signal_connect_after as in the first emission stage, the signal emission might get stopped internally. @@ -1899,19 +2762,25 @@ get stopped internally. - the #GESTimelineElement that was added. + the #GESTimelineElement that was added. - Will be emitted after a child was removed from @container. + Will be emitted after a child was removed from @container. - the #GESTimelineElement that was removed. + the #GESTimelineElement that was removed. @@ -1920,11 +2789,13 @@ get stopped internally. + + @@ -1940,6 +2811,7 @@ get stopped internally. + @@ -1955,6 +2827,7 @@ get stopped internally. + @@ -1970,6 +2843,7 @@ get stopped internally. + @@ -1985,8 +2859,11 @@ get stopped internally. + - The list of + The list of #GESContainer resulting from the ungrouping operation The user is responsible for unreffing the contained objects and freeing the list. @@ -1996,11 +2873,15 @@ and freeing the list. - The #GESContainer to ungroup + The #GESContainer to ungroup - Wether to recursively ungroup @container + Wether to recursively ungroup @container @@ -2008,6 +2889,7 @@ and freeing the list. + @@ -2022,18 +2904,25 @@ and freeing the list. + - %TRUE if the container as been edited properly, %FALSE if an error + %TRUE if the container as been edited properly, %FALSE if an error occured - the #GESClip to edit + the #GESClip to edit - The layers you want the edit to + The layers you want the edit to happen in, %NULL means that the edition is done in all the #GESLayers contained in the current timeline. @@ -2041,21 +2930,29 @@ occured - The priority of the layer @container should land in. + The priority of the layer @container should land in. If the layer you're trying to move the container to doesn't exist, it will be created automatically. -1 means no move. - The #GESEditMode in which the editition will happen. + The #GESEditMode in which the editition will happen. - The #GESEdge the edit should happen on. + The #GESEdge the edit should happen on. - The position at which to edit @container (in nanosecond) + The position at which to edit @container (in nanosecond) @@ -2065,26 +2962,34 @@ occured - + + - A function that will be called to create the #GstElement that will be used + A function that will be called to create the #GstElement that will be used as a source to fill the gaps in @track. + - A #GstElement (must be a source) that will be used to + A #GstElement (must be a source) that will be used to fill the gaps (periods of time in @track that containes no source). - the #GESTrack + the #GESTrack @@ -2092,7 +2997,9 @@ fill the gaps (periods of time in @track that containes no source). - Creates the 'primary' track element for this @clip. + Creates the 'primary' track element for this @clip. Subclasses should implement this method if they only provide a single #GESTrackElement per track. @@ -2106,18 +3013,25 @@ that should be controlled by @clip for the given @track. The returned #GESTrackElement will be automatically added to the list of objects controlled by the #GESClip. + - the #GESTrackElement to be used, or %NULL if it can't provide one + the #GESTrackElement to be used, or %NULL if it can't provide one for the given @track. - a #GESClip + a #GESClip - a #GESTrackType + a #GESTrackType @@ -2125,52 +3039,167 @@ for the given @track. - Create all track elements this clip handles for this type of track. + Create all track elements this clip handles for this type of track. Subclasses should implement this method if they potentially need to return more than one #GESTrackElement(s) for a given #GESTrack. + - %TRUE on success %FALSE on failure. + %TRUE on success %FALSE on failure. - a #GESClip + a #GESClip - a #GESTrackType + a #GESTrackType + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The edges of an object contain in a #GESTimeline or #GESTrack + The edges of an object contain in a #GESTimeline or #GESTrack - Represents the start of an object. + Represents the start of an object. - Represents the end of an object. + Represents the end of an object. - Represent the fact we are not workin with any edge of an + Represent the fact we are not workin with any edge of an object. + @@ -2185,20 +3214,26 @@ return more than one #GESTrackElement(s) for a given #GESTrack. glib:type-name="GESEditMode" glib:get-type="ges_edit_mode_get_type" c:type="GESEditMode"> - You can also find more explanation about the behaviour of those modes at: + You can also find more explanation about the behaviour of those modes at: <ulink url="http://pitivi.org/manual/trimming.html"> trim, ripple and roll</ulink> and <ulink url="http://pitivi.org/manual/usingclips.html">clip management</ulink>. - The object is edited the normal way (default). + The object is edited the normal way (default). - The objects are edited in ripple mode. + The objects are edited in ripple mode. The Ripple mode allows you to modify the beginning/end of a clip and move the neighbours accordingly. This will change the overall timeline duration. In the case of ripple end, the duration of the @@ -2209,7 +3244,9 @@ and <ulink url="http://pitivi.org/manual/usingclips.html">clip management& value="2" c:identifier="GES_EDIT_MODE_ROLL" glib:nick="edit_roll"> - The object is edited in roll mode. + The object is edited in roll mode. The Roll mode allows you to modify the position of an editing point between two clips without modifying the inpoint of the first clip nor the out-point of the second clip. This will not change the @@ -2219,7 +3256,9 @@ and <ulink url="http://pitivi.org/manual/usingclips.html">clip management& value="3" c:identifier="GES_EDIT_MODE_TRIM" glib:nick="edit_trim"> - The object is edited in trim mode. + The object is edited in trim mode. The Trim mode allows you to modify the in-point/duration of a clip without modifying its position in the timeline. @@ -2227,7 +3266,9 @@ and <ulink url="http://pitivi.org/manual/usingclips.html">clip management& value="4" c:identifier="GES_EDIT_MODE_SLIDE" glib:nick="edit_slide"> - The object is edited in slide mode. + The object is edited in slide mode. The Slide mode allows you to modify the position of a clip in a timeline without modifying its duration or its in-point, but will modify the duration of the previous clip and in-point of the @@ -2242,23 +3283,31 @@ and <ulink url="http://pitivi.org/manual/usingclips.html">clip management& glib:type-name="GESEffect" glib:get-type="ges_effect_get_type" glib:type-struct="EffectClass"> + - Creates a new #GESEffect from the description of the bin. It should be + Creates a new #GESEffect from the description of the bin. It should be possible to determine the type of the effect through the element 'klass' metadata of the GstElements that will be created. In that corner case, you should use: #ges_asset_request (GES_TYPE_EFFECT, "audio your ! bin ! description", NULL); and extract that asset to be in full control. + - a newly created #GESEffect, or %NULL if something went + a newly created #GESEffect, or %NULL if something went wrong. - The gst-launch like bin description of the effect + The gst-launch like bin description of the effect @@ -2267,7 +3316,9 @@ wrong. writable="1" construct-only="1" transfer-ownership="none"> - The description of the effect bin with a gst-launch-style + The description of the effect bin with a gst-launch-style pipeline description. Example: "videobalance saturation=1.5 hue=+0.5" @@ -2280,7 +3331,7 @@ Example: "videobalance saturation=1.5 hue=+0.5" - + @@ -2292,6 +3343,7 @@ Example: "videobalance saturation=1.5 hue=+0.5" glib:type-name="GESEffectAsset" glib:get-type="ges_effect_asset_get_type" glib:type-struct="EffectAssetClass"> + @@ -2302,7 +3354,7 @@ Example: "videobalance saturation=1.5 hue=+0.5" - + @@ -2310,12 +3362,13 @@ Example: "videobalance saturation=1.5 hue=+0.5" + - + @@ -2323,12 +3376,16 @@ Example: "videobalance saturation=1.5 hue=+0.5" + + - parent class + parent class @@ -2337,13 +3394,15 @@ Example: "videobalance saturation=1.5 hue=+0.5" - + - Register an element that can change the rate at which media is playing. The + Register an element that can change the rate at which media is playing. The property type must be float or double, and must be a factor of the rate, i.e. a value of 2.0 must mean that the media plays twice as fast. For example, this is true for the properties 'rate' and 'tempo' of the element @@ -2353,22 +3412,31 @@ the right segment seeks to be sent to the sources. A reference to the GESEffectClass can be obtained as follows: GES_EFFECT_CLASS (g_type_class_ref (GES_TYPE_EFFECT)); + - whether the rate property was succesfully registered. When this + whether the rate property was succesfully registered. When this method returns false, a warning is emitted with more information. - Instance of the GESEffectClass + Instance of the GESEffectClass - Name of the GstElement that changes the rate + Name of the GstElement that changes the rate - Name of the property that changes the rate + Name of the property that changes the rate @@ -2381,24 +3449,36 @@ method returns false, a warning is emitted with more information. glib:type-name="GESEffectClip" glib:get-type="ges_effect_clip_get_type" glib:type-struct="EffectClipClass"> - The effect will be applied on the sources that have lower priorities + The effect will be applied on the sources that have lower priorities (higher number) between the inpoint and the end of it. + - Creates a new #GESEffectClip from the description of the bin. + Creates a new #GESEffectClip from the description of the bin. + - a newly created #GESEffectClip, or + a newly created #GESEffectClip, or %NULL if something went wrong. - The gst-launch like bin description of the effect + The gst-launch like bin description of the effect - The gst-launch like bin description of the effect + The gst-launch like bin description of the effect @@ -2407,7 +3487,9 @@ method returns false, a warning is emitted with more information. writable="1" construct-only="1" transfer-ownership="none"> - The description of the audio track of the effect bin with a gst-launch-style + The description of the audio track of the effect bin with a gst-launch-style pipeline description. This should be used for test purposes. Example: "audiopanorama panorama=1.0" @@ -2417,7 +3499,9 @@ Example: "audiopanorama panorama=1.0" writable="1" construct-only="1" transfer-ownership="none"> - The description of the video track of the effect bin with a gst-launch-style + The description of the video track of the effect bin with a gst-launch-style pipeline description. This should be used for test purposes. Example: "videobalance saturation=1.5 hue=+0.5" @@ -2430,7 +3514,7 @@ Example: "videobalance saturation=1.5 hue=+0.5" - + @@ -2438,11 +3522,12 @@ Example: "videobalance saturation=1.5 hue=+0.5" + - + @@ -2450,24 +3535,33 @@ Example: "videobalance saturation=1.5 hue=+0.5" + + + - The ID passed is malformed + The ID passed is malformed - An error happened while loading the asset + An error happened while loading the asset - The formatted files was malformed + The formatted files was malformed glib:type-name="GESExtractable" glib:get-type="ges_extractable_get_type" glib:type-struct="ExtractableInterface"> - FIXME: Long description needed + FIXME: Long description needed + + - The #id of the associated #GESAsset, free with #g_free + The #id of the associated #GESAsset, free with #g_free - The #GESExtractable + The #GESExtractable + @@ -2504,6 +3607,7 @@ Example: "videobalance saturation=1.5 hue=+0.5" + @@ -2517,44 +3621,65 @@ Example: "videobalance saturation=1.5 hue=+0.5" - Method for getting an asset from a #GESExtractable + Method for getting an asset from a #GESExtractable + - The #GESAsset or %NULL if none has + The #GESAsset or %NULL if none has been set - The #GESExtractable from which to retrieve a #GESAsset + The #GESExtractable from which to retrieve a #GESAsset + - The #id of the associated #GESAsset, free with #g_free + The #id of the associated #GESAsset, free with #g_free - The #GESExtractable + The #GESExtractable - Method to set the asset which instantiated the specified object + Method to set the asset which instantiated the specified object + - %TRUE if @asset could be set %FALSE otherwize + %TRUE if @asset could be set %FALSE otherwize - Target object + Target object - The #GESAsset to set + The #GESAsset to set @@ -2563,17 +3688,24 @@ been set + - The ID to use for the asset or %NULL if @id is not valid + The ID to use for the asset or %NULL if @id is not valid - The #GType to check @id for: + The #GType to check @id for: - The id to check + The id to check @@ -2581,6 +3713,7 @@ been set + @@ -2595,6 +3728,7 @@ been set + @@ -2610,6 +3744,7 @@ been set + @@ -2625,6 +3760,7 @@ been set + @@ -2640,13 +3776,18 @@ been set + - The #id of the associated #GESAsset, free with #g_free + The #id of the associated #GESAsset, free with #g_free - The #GESExtractable + The #GESExtractable @@ -2654,6 +3795,7 @@ been set + @@ -2669,6 +3811,7 @@ been set + @@ -2687,32 +3830,70 @@ been set - + + + + + + + + + + + + + + + + + + + + + + - A function that will be called when the GNonLin object of a corresponding + A function that will be called when the GNonLin object of a corresponding track element needs to be filled. The implementer of this function shall add the proper #GstElement to @nleobj using gst_bin_add(). + - TRUE if the implementer succesfully filled the @nleobj, else #FALSE. + TRUE if the implementer succesfully filled the @nleobj, else #FALSE. - the #GESClip controlling the track elements + the #GESClip controlling the track elements - the #GESTrackElement + the #GESTrackElement - the GNonLin object that needs to be filled. + the GNonLin object that needs to be filled. @@ -2725,21 +3906,31 @@ using gst_bin_add(). glib:type-name="GESFormatter" glib:get-type="ges_formatter_get_type" glib:type-struct="FormatterClass"> - Base class for timeline data serialization and deserialization. + Base class for timeline data serialization and deserialization. + - Checks if there is a #GESFormatter available which can load a #GESTimeline + Checks if there is a #GESFormatter available which can load a #GESTimeline from the given URI. + - TRUE if there is a #GESFormatter that can support the given uri + TRUE if there is a #GESFormatter that can support the given uri or FALSE if not. - a #gchar * pointing to the URI + a #gchar * pointing to the URI @@ -2747,28 +3938,41 @@ or FALSE if not. - Returns TRUE if there is a #GESFormatter available which can save a + Returns TRUE if there is a #GESFormatter available which can save a #GESTimeline to the given URI. + - TRUE if the given @uri is supported, else FALSE. + TRUE if the given @uri is supported, else FALSE. - a #gchar * pointing to a URI + a #gchar * pointing to a URI - Get the default #GESAsset to use as formatter. It will return + Get the default #GESAsset to use as formatter. It will return the asset for the #GESFormatter that has the highest @rank + - The #GESAsset for the formatter with highest @rank + The #GESAsset for the formatter with highest @rank + @@ -2782,49 +3986,73 @@ the asset for the #GESFormatter that has the highest @rank - Load data from the given URI into timeline. + Load data from the given URI into timeline. + - TRUE if the timeline data was successfully loaded from the URI, + TRUE if the timeline data was successfully loaded from the URI, else FALSE. - a #GESFormatter + a #GESFormatter - a #GESTimeline + a #GESTimeline - a #gchar * pointing to a URI + a #gchar * pointing to a URI - Save data from timeline to the given URI. + Save data from timeline to the given URI. + - TRUE if the timeline data was successfully saved to the URI + TRUE if the timeline data was successfully saved to the URI else FALSE. - a #GESFormatter + a #GESFormatter - a #GESTimeline + a #GESTimeline - a #gchar * pointing to a URI + a #gchar * pointing to a URI - %TRUE to overwrite file if it exists + %TRUE to overwrite file if it exists @@ -2832,23 +4060,34 @@ else FALSE. - Load data from the given URI into timeline. + Load data from the given URI into timeline. + - TRUE if the timeline data was successfully loaded from the URI, + TRUE if the timeline data was successfully loaded from the URI, else FALSE. - a #GESFormatter + a #GESFormatter - a #GESTimeline + a #GESTimeline - a #gchar * pointing to a URI + a #gchar * pointing to a URI @@ -2856,27 +4095,40 @@ else FALSE. - Save data from timeline to the given URI. + Save data from timeline to the given URI. + - TRUE if the timeline data was successfully saved to the URI + TRUE if the timeline data was successfully saved to the URI else FALSE. - a #GESFormatter + a #GESFormatter - a #GESTimeline + a #GESTimeline - a #gchar * pointing to a URI + a #gchar * pointing to a URI - %TRUE to overwrite file if it exists + %TRUE to overwrite file if it exists @@ -2894,7 +4146,7 @@ else FALSE. - + @@ -2902,6 +4154,7 @@ else FALSE. + @@ -2917,24 +4170,35 @@ else FALSE. - GES Formatter class. Override the vmethods to implement the formatter functionnality. + GES Formatter class. Override the vmethods to implement the formatter functionnality. + - the parent class structure + the parent class structure - Whether the URI can be loaded + Whether the URI can be loaded - class method to deserialize data from a URI + class method to deserialize data from a URI - class method to serialize data to a URI + class method to serialize data to a URI @@ -2957,12 +4221,13 @@ else FALSE. - + + @@ -2996,65 +4261,115 @@ else FALSE. deprecated="1" deprecated-version="1.16" throws="1"> - Virtual method for loading a timeline from a given URI. + Virtual method for loading a timeline from a given URI. Every #GESFormatter subclass needs to implement this method. Use @ges_timeline_load_from_uri + - TRUE if the timeline data was successfully loaded from the URI, + TRUE if the timeline data was successfully loaded from the URI, else FALSE. - a #GESFormatter + a #GESFormatter - a #GESTimeline + a #GESTimeline - a #gchar * pointing to a URI + a #gchar * pointing to a URI + - Virtual method for saving a timeline to a uri. + Virtual method for saving a timeline to a uri. Every #GESFormatter subclass needs to implement this method. Use @ges_timeline_save_to_uri + - TRUE if the timeline data was successfully saved to the URI + TRUE if the timeline data was successfully saved to the URI else FALSE. - a #GESFormatter + a #GESFormatter - a #GESTimeline + a #GESTimeline - a #gchar * pointing to a URI + a #gchar * pointing to a URI - %TRUE to overwrite file if it exists + %TRUE to overwrite file if it exists + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESGroup" glib:get-type="ges_group_get_type" glib:type-struct="GroupClass"> - A #GESGroup is an object which controls one or more + A #GESGroup is an object which controls one or more #GESClips in one or more #GESLayer(s). To instanciate a group, you should use the ges_container_group method, this will be responsible for deciding what subclass of #GESContainer should be instaciated to group the various #GESTimelineElement passed in parametter. + - Created a new empty #GESGroup, if you want to group several container + Created a new empty #GESGroup, if you want to group several container together, it is recommanded to use the #ges_container_group method so the proper subclass is selected. + - The new empty group. + The new empty group. - The duration (in nanoseconds) which will be used in the container + The duration (in nanoseconds) which will be used in the container - The in-point at which this #GESGroup will start outputting data + The in-point at which this #GESGroup will start outputting data from its contents (in nanoseconds). Ex : an in-point of 5 seconds means that the first outputted buffer will @@ -3096,14 +4423,18 @@ be the one located 5 seconds in the controlled resource. writable="1" construct="1" transfer-ownership="none"> - The maximum duration (in nanoseconds) of the #GESGroup. + The maximum duration (in nanoseconds) of the #GESGroup. - The position of the object in its container (in nanoseconds). + The position of the object in its container (in nanoseconds). @@ -3113,7 +4444,7 @@ be the one located 5 seconds in the controlled resource. - + @@ -3121,17 +4452,982 @@ be the one located 5 seconds in the controlled resource. + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESImageSource" glib:get-type="ges_image_source_get_type" glib:type-struct="ImageSourceClass"> - Outputs the video stream from a given file as a still frame. The frame + Outputs the video stream from a given file as a still frame. The frame chosen will be determined by the in-point property on the track element. For image files, do not set the in-point property. + - The location of the file/resource to use. + The location of the file/resource to use. @@ -3161,7 +5462,7 @@ image files, do not set the in-point property. - + @@ -3169,11 +5470,12 @@ image files, do not set the in-point property. + - + @@ -3181,7 +5483,33 @@ image files, do not set the in-point property. + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESLayer" glib:get-type="ges_layer_get_type" glib:type-struct="LayerClass"> - Responsible for the ordering of the various contained Clip(s). A + Responsible for the ordering of the various contained Clip(s). A timeline layer has a "priority" property, which is used to manage the priorities of individual Clips. Two layers should not have the same priority within a given timeline. + - Creates a new #GESLayer. + Creates a new #GESLayer. + - A new #GESLayer + A new #GESLayer + @@ -3215,6 +5552,7 @@ same priority within a given timeline. + @@ -3228,6 +5566,7 @@ same priority within a given timeline. + @@ -3241,43 +5580,62 @@ same priority within a given timeline. - Creates Clip from asset, adds it to layer and + Creates Clip from asset, adds it to layer and returns a reference to it. + - Created #GESClip + Created #GESClip - a #GESLayer + a #GESLayer - The asset to add to + The asset to add to - The start value to set on the new #GESClip, + The start value to set on the new #GESClip, if @start == GST_CLOCK_TIME_NONE, it will be set to the current duration of @layer - The inpoint value to set on the new #GESClip + The inpoint value to set on the new #GESClip - The duration value to set on the new #GESClip + The duration value to set on the new #GESClip - The #GESTrackType to set on the the new #GESClip + The #GESTrackType to set on the the new #GESClip - Adds the given clip to the layer. Sets the clip's parent, and thus + Adds the given clip to the layer. Sets the clip's parent, and thus takes ownership of the clip. An clip can only be added to one layer. @@ -3286,41 +5644,60 @@ Calling this method will construct and properly set all the media related elements on @clip. If you need to know when those objects (actually #GESTrackElement) are constructed, you should connect to the container::child-added signal which is emited right after those elements are ready to be used. + - %TRUE if the clip was properly added to the layer, or %FALSE + %TRUE if the clip was properly added to the layer, or %FALSE if the @layer refuses to add the clip. - a #GESLayer + a #GESLayer - the #GESClip to add. + the #GESClip to add. - Gets whether transitions are automatically added when objects + Gets whether transitions are automatically added when objects overlap or not. + - %TRUE if transitions are automatically added, else %FALSE. + %TRUE if transitions are automatically added, else %FALSE. - a #GESLayer + a #GESLayer - Get the clips this layer contains. + Get the clips this layer contains. + - a #GList of + a #GList of clips. The user is responsible for unreffing the contained objects and freeing the list. @@ -3329,126 +5706,183 @@ unreffing the contained objects and freeing the list. - a #GESLayer + a #GESLayer - Gets the clips which appear between @start and @end on @layer. + Gets the clips which appear between @start and @end on @layer. + - a #GList of clips intersecting [@start, @end) interval on @layer. + a #GList of clips intersecting [@start, @end) interval on @layer. - a #GESLayer + a #GESLayer - start of the interval + start of the interval - end of the interval + end of the interval - Lets you retrieve the duration of the layer, which means + Lets you retrieve the duration of the layer, which means the end time of the last clip inside it + - The duration of a layer + The duration of a layer - The #GESLayer to get the duration from + The #GESLayer to get the duration from - Get the priority of @layer within the timeline. + Get the priority of @layer within the timeline. + - The priority of the @layer within the timeline. + The priority of the @layer within the timeline. - a #GESLayer + a #GESLayer - Get the #GESTimeline in which #GESLayer currently is. + Get the #GESTimeline in which #GESLayer currently is. + - the #GESTimeline in which #GESLayer + the #GESTimeline in which #GESLayer currently is or %NULL if not in any timeline yet. - The #GESLayer to get the parent #GESTimeline from + The #GESLayer to get the parent #GESTimeline from - Convenience method to check if @layer is empty (doesn't contain any clip), + Convenience method to check if @layer is empty (doesn't contain any clip), or not. + - %TRUE if @layer is empty, %FALSE if it already contains at least + %TRUE if @layer is empty, %FALSE if it already contains at least one #GESClip - The #GESLayer to check + The #GESLayer to check - Removes the given @clip from the @layer and unparents it. + Removes the given @clip from the @layer and unparents it. Unparenting it means the reference owned by @layer on the @clip will be removed. If you wish to use the @clip after this function, make sure you call gst_object_ref() before removing it from the @layer. + - %TRUE if the clip could be removed, %FALSE if the layer does + %TRUE if the clip could be removed, %FALSE if the layer does not want to remove the clip. - a #GESLayer + a #GESLayer - the #GESClip to remove + the #GESClip to remove - Sets the layer to the given @auto_transition. See the documentation of the + Sets the layer to the given @auto_transition. See the documentation of the property auto_transition for more information. + - a #GESLayer + a #GESLayer - whether the auto_transition is active + whether the auto_transition is active @@ -3457,26 +5891,34 @@ property auto_transition for more information. c:identifier="ges_layer_set_priority" deprecated="1" deprecated-version="1.16.0"> - Sets the layer to the given @priority. See the documentation of the + Sets the layer to the given @priority. See the documentation of the priority property for more information. use #ges_timeline_move_layer instead. This deprecation means that you will not need to handle layer priorities at all yourself, GES will make sure there is never 'gaps' between layer priorities. + - a #GESLayer + a #GESLayer - the priority to set + the priority to set + @@ -3490,7 +5932,9 @@ will make sure there is never 'gaps' between layer priorities. - Sets whether transitions are added automagically when clips overlap. + Sets whether transitions are added automagically when clips overlap. deprecated-version="1.16.0" writable="1" transfer-ownership="none"> - The priority of the layer in the #GESTimeline. 0 is the highest + The priority of the layer in the #GESTimeline. 0 is the highest priority. Conceptually, a #GESTimeline is a stack of GESLayers, and the priority of the layer represents its position in the stack. Two layers should not have the same priority within a given GESTimeline. @@ -3514,7 +5960,9 @@ will make sure there is never 'gaps' between layer priorities. - the #GESTimeline where this layer is being used. + the #GESTimeline where this layer is being used. @@ -3527,30 +5975,38 @@ will make sure there is never 'gaps' between layer priorities. - + - Will be emitted after the clip was added to the layer. + Will be emitted after the clip was added to the layer. - the #GESClip that was added. + the #GESClip that was added. - Will be emitted after the clip was removed from the layer. + Will be emitted after the clip was removed from the layer. - the #GESClip that was removed + the #GESClip that was removed @@ -3559,14 +6015,18 @@ will make sure there is never 'gaps' between layer priorities. - Subclasses can override the @get_objects if they can provide a more + Subclasses can override the @get_objects if they can provide a more efficient way of providing the list of contained #GESClip(s). + + @@ -3581,6 +6041,7 @@ efficient way of providing the list of contained #GESClip(s). + @@ -3596,6 +6057,7 @@ efficient way of providing the list of contained #GESClip(s). + @@ -3610,82 +6072,147 @@ efficient way of providing the list of contained #GESClip(s). - + + + + + + + + + - The description of an object, can be used in various context (string) + The description of an object, can be used in various context (string) The description + - The extension of the files produced by a formatter (string) + The extension of the files produced by a formatter (string) + - Mimetype used for the file produced by a formatter (string) + Mimetype used for the file produced by a formatter (string) The mime type + - Name of a formatter it is used as ID of Formater assets (string) + Name of a formatter it is used as ID of Formater assets (string) The name of the formatter + - The rank of a formatter (GstRank) + The rank of a formatter (GstRank) The rank of a formatter + - The version of a formatter (double) + The version of a formatter (double) The formatter version + - The version of the format in which a project is serialized + The version of the format in which a project is serialized + - The volume, can be used for audio track or layers + The volume, can be used for audio track or layers The volume for a track or a layer, it is register as a float + - The default volume + The default volume The default volume for a track or a layer as a float + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESMetaContainer" glib:get-type="ges_meta_container_get_type" glib:type-struct="MetaContainerInterface"> - Interface that allows reading and writing meta + Interface that allows reading and writing meta + - Deserializes a meta container. + Deserializes a meta container. + - TRUE on success, FALSE if there was an error. + TRUE on success, FALSE if there was an error. - Target container + Target container - a string created with ges_meta_container_metas_to_string() + a string created with ges_meta_container_metas_to_string() + @@ -3734,847 +6274,1224 @@ The default volume for a track or a layer as a float - Calls the given function for each metadata inside the meta container. Note + Calls the given function for each metadata inside the meta container. Note that if there is no metadata, the function won't be called at all. + - container to iterate over + container to iterate over - function to be called for each metadata + function to be called for each metadata - user specified data + user specified data - Gets the value of a given meta item, returns NULL if @meta_item + Gets the value of a given meta item, returns NULL if @meta_item can not be found. + - Target container + Target container - Name of the meta item to get + Name of the meta item to get - Destination to which value of meta item will be copied + Destination to which value of meta item will be copied - Gets the value of a given meta item, returns NULL if @meta_item + Gets the value of a given meta item, returns NULL if @meta_item can not be found. + - Target container + Target container - Name of the meta item to get + Name of the meta item to get - Destination to which value of meta item will be copied + Destination to which value of meta item will be copied - Gets the value of a given meta item, returns NULL if @meta_item + Gets the value of a given meta item, returns NULL if @meta_item can not be found. + - Target container + Target container - Name of the meta item to get + Name of the meta item to get - Destination to which value of meta item will be copied + Destination to which value of meta item will be copied - Gets the value of a given meta item, returns NULL if @meta_item + Gets the value of a given meta item, returns NULL if @meta_item can not be found. + - Target container + Target container - Name of the meta item to get + Name of the meta item to get - Destination to which value of meta item will be copied + Destination to which value of meta item will be copied - Gets the value of a given meta item, returns %FALSE if @meta_item + Gets the value of a given meta item, returns %FALSE if @meta_item can not be found. + - Target container + Target container - Name of the meta item to get + Name of the meta item to get - Destination to which value of meta item will be copied + Destination to which value of meta item will be copied - Gets the value of a given meta item, returns NULL if @meta_item + Gets the value of a given meta item, returns NULL if @meta_item can not be found. + - Target container + Target container - Name of the meta item to get + Name of the meta item to get - Destination to which value of meta item will be copied + Destination to which value of meta item will be copied - Gets the value of a given meta item, returns %FALSE if @meta_item + Gets the value of a given meta item, returns %FALSE if @meta_item can not be found. + - Target container + Target container - Name of the meta item to get + Name of the meta item to get - Destination to which value of meta item will be copied + Destination to which value of meta item will be copied - Gets the value of a given meta item, returns NULL if @key + Gets the value of a given meta item, returns NULL if @key can not be found. + - the #GValue corresponding to the meta with the given @key. + the #GValue corresponding to the meta with the given @key. - Target container + Target container - The key name of the meta to retrieve + The key name of the meta to retrieve - Gets the value of a given meta item, returns NULL if @meta_item + Gets the value of a given meta item, returns NULL if @meta_item can not be found. + - Target container + Target container - Name of the meta item to get + Name of the meta item to get - Gets the value of a given meta item, returns NULL if @meta_item + Gets the value of a given meta item, returns NULL if @meta_item can not be found. + - Target container + Target container - Name of the meta item to get + Name of the meta item to get - Destination to which value of meta item will be copied + Destination to which value of meta item will be copied - Gets the value of a given meta item, returns %FALSE if @meta_item + Gets the value of a given meta item, returns %FALSE if @meta_item can not be found. + - Target container + Target container - Name of the meta item to get + Name of the meta item to get - Destination to which value of meta item will be copied + Destination to which value of meta item will be copied - Serializes a meta container to a string. + Serializes a meta container to a string. + - a newly-allocated string, or NULL in case of an error. + a newly-allocated string, or NULL in case of an error. The string must be freed with g_free() when no longer needed. - a #GESMetaContainer + a #GESMetaContainer - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the static meta could be added, %FALSE otherwise + %TRUE if the static meta could be added, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the meta could be registered, %FALSE otherwise + %TRUE if the meta could be registered, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the meta could be registered, %FALSE otherwise + %TRUE if the meta could be registered, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the meta could be registered, %FALSE otherwise + %TRUE if the meta could be registered, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the meta could be registered, %FALSE otherwise + %TRUE if the meta could be registered, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the meta could be registered, %FALSE otherwise + %TRUE if the meta could be registered, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the meta could be registered, %FALSE otherwise + %TRUE if the meta could be registered, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the meta could be registered, %FALSE otherwise + %TRUE if the meta could be registered, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the meta could be registered, %FALSE otherwise + %TRUE if the meta could be registered, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the meta could be registered, %FALSE otherwise + %TRUE if the meta could be registered, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets a static meta on @container. This method lets you define static + Sets a static meta on @container. This method lets you define static metadatas, which means that the type of the registered will be the only type accepted for this meta on that particular @container. + - %TRUE if the meta could be registered, %FALSE otherwise + %TRUE if the meta could be registered, %FALSE otherwise - Target container + Target container - The #GESMetaFlag to be used + The #GESMetaFlag to be used - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set - Sets the value of a given meta item + Sets the value of a given meta item + - %TRUE if the meta could be added, %FALSE otherwise + %TRUE if the meta could be added, %FALSE otherwise - Target container + Target container - Name of the meta item to set + Name of the meta item to set - Value to set + Value to set @@ -4600,11 +7517,12 @@ type accepted for this meta on that particular @container. + - + @@ -4617,22 +7535,29 @@ type accepted for this meta on that particular @container. value="1" c:identifier="GES_META_READABLE" glib:nick="readable"> - The metadata is readable + The metadata is readable - The metadata is writable + The metadata is writable - The metadata is readable and writable + The metadata is readable and writable + @@ -4662,19 +7587,29 @@ type accepted for this meta on that particular @container. glib:type-name="GESMultiFileSource" glib:get-type="ges_multi_file_source_get_type" glib:type-struct="MultiFileSourceClass"> - Outputs the video stream from a given image sequence. The start frame + Outputs the video stream from a given image sequence. The start frame chosen will be determined by the in-point property on the track element. + - Creates a new #GESMultiFileSource for the provided @uri. + Creates a new #GESMultiFileSource for the provided @uri. + - A new #GESMultiFileSource. + A new #GESMultiFileSource. - the URI the source should control + the URI the source should control @@ -4683,7 +7618,9 @@ chosen will be determined by the in-point property on the track element. writable="1" construct-only="1" transfer-ownership="none"> - The uri of the file/resource to use. You can set a start index, + The uri of the file/resource to use. You can set a start index, a stop index and a sequence pattern. The format is &lt;multifile://start:stop\@location-pattern&gt;. The pattern uses printf string formating. @@ -4706,7 +7643,7 @@ multifile://20:50@/home/you/sequence/\%04d.png c:type="GESMultiFileSourcePrivate*"/> - + @@ -4714,11 +7651,12 @@ multifile://20:50@/home/you/sequence/\%04d.png + - + @@ -4726,7 +7664,116 @@ multifile://20:50@/home/you/sequence/\%04d.png + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESOperation" glib:get-type="ges_operation_get_type" glib:type-struct="OperationClass"> - Base class for overlays, transitions, and effects + Base class for overlays, transitions, and effects + @@ -4745,7 +7795,7 @@ multifile://20:50@/home/you/sequence/\%04d.png - + @@ -4753,11 +7803,12 @@ multifile://20:50@/home/you/sequence/\%04d.png + - + @@ -4770,7 +7821,10 @@ multifile://20:50@/home/you/sequence/\%04d.png glib:type-name="GESOperationClip" glib:get-type="ges_operation_clip_get_type" glib:type-struct="OperationClipClass"> - Operations are any kind of object that both outputs AND consumes data. + Operations are any kind of object that both outputs AND consumes data. + @@ -4780,7 +7834,7 @@ multifile://20:50@/home/you/sequence/\%04d.png - + @@ -4788,11 +7842,12 @@ multifile://20:50@/home/you/sequence/\%04d.png + - + @@ -4800,8 +7855,10 @@ multifile://20:50@/home/you/sequence/\%04d.png + + glib:type-name="GESOverlayClip" glib:get-type="ges_overlay_clip_get_type" glib:type-struct="OverlayClipClass"> - Overlays are objects which modify the underlying layer(s). + Overlays are objects which modify the underlying layer(s). Examples of overlays include text, image watermarks, or audio dubbing. Transitions, which change from one source to another over time, are not considered overlays. + @@ -4826,7 +7886,7 @@ not considered overlays. - + @@ -4834,12 +7894,15 @@ not considered overlays. + - parent class + parent class - + @@ -4847,13 +7910,97 @@ not considered overlays. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESPipeline" glib:get-type="ges_pipeline_get_type" glib:type-struct="PipelineClass"> - #GESPipeline allows developers to view and render #GESTimeline + #GESPipeline allows developers to view and render #GESTimeline in a simple fashion. Its usage is inspired by the 'playbin' element from gst-plugins-base. + - Creates a new conveninence #GESPipeline. + Creates a new conveninence #GESPipeline. + - the new #GESPipeline. + the new #GESPipeline. + - the #GESPipelineFlags currently in use. + the #GESPipelineFlags currently in use. - a #GESPipeline + a #GESPipeline - Returns a #GstSample with the currently playing image in the format specified by + Returns a #GstSample with the currently playing image in the format specified by caps. The caller should free the sample with #gst_sample_unref when finished. If ANY caps are specified, the information will be returned in the whatever format is currently used by the sink. This information can be retrieve from caps associated with the buffer. + - a #GstSample or %NULL + a #GstSample or %NULL - a #GESPipeline in %GST_STATE_PLAYING or %GST_STATE_PAUSED + a #GESPipeline in %GST_STATE_PLAYING or %GST_STATE_PAUSED - caps specifying current format. Use %GST_CAPS_ANY + caps specifying current format. Use %GST_CAPS_ANY for native size. @@ -4909,7 +8078,9 @@ for native size. - A convenience method for @ges_pipeline_get_thumbnail which + A convenience method for @ges_pipeline_get_thumbnail which returns a buffer in 24-bit RGB, optionally scaled to the specified width and height. If -1 is specified for either dimension, it will be left at native size. You can retreive this information from the caps associated @@ -4917,93 +8088,130 @@ with the buffer. The caller is responsible for unreffing the returned sample with #gst_sample_unref. + - a #GstSample or %NULL + a #GstSample or %NULL - a #GESPipeline in %GST_STATE_PLAYING or %GST_STATE_PAUSED + a #GESPipeline in %GST_STATE_PLAYING or %GST_STATE_PAUSED - the requested width or -1 for native size + the requested width or -1 for native size - the requested height or -1 for native size + the requested height or -1 for native size - Obtains a pointer to playsink's audio sink element that is used for + Obtains a pointer to playsink's audio sink element that is used for displaying audio when the #GESPipeline is in %GES_PIPELINE_MODE_PREVIEW The caller is responsible for unreffing the returned element with #gst_object_unref. + - a pointer to the playsink audio sink #GstElement + a pointer to the playsink audio sink #GstElement - a #GESPipeline + a #GESPipeline - Obtains a pointer to playsink's video sink element that is used for + Obtains a pointer to playsink's video sink element that is used for displaying video when the #GESPipeline is in %GES_PIPELINE_MODE_PREVIEW The caller is responsible for unreffing the returned element with #gst_object_unref. + - a pointer to the playsink video sink #GstElement + a pointer to the playsink video sink #GstElement - a #GESPipeline + a #GESPipeline - Sets playsink's audio sink element that is used for displaying audio when + Sets playsink's audio sink element that is used for displaying audio when the #GESPipeline is in %GES_PIPELINE_MODE_PREVIEW + - a #GESPipeline in %GST_STATE_NULL + a #GESPipeline in %GST_STATE_NULL - a audio sink #GstElement + a audio sink #GstElement - Sets playsink's video sink element that is used for displaying video when + Sets playsink's video sink element that is used for displaying video when the #GESPipeline is in %GES_PIPELINE_MODE_PREVIEW + - a #GESPipeline in %GST_STATE_NULL + a #GESPipeline in %GST_STATE_NULL - a video sink #GstElement + a video sink #GstElement @@ -5011,102 +8219,146 @@ the #GESPipeline is in %GES_PIPELINE_MODE_PREVIEW - Saves the current frame to the specified @location. + Saves the current frame to the specified @location. + - %TRUE if the thumbnail was properly save, else %FALSE. + %TRUE if the thumbnail was properly save, else %FALSE. - a #GESPipeline in %GST_STATE_PLAYING or %GST_STATE_PAUSED + a #GESPipeline in %GST_STATE_PLAYING or %GST_STATE_PAUSED - the requested width or -1 for native size + the requested width or -1 for native size - the requested height or -1 for native size + the requested height or -1 for native size - a string specifying the desired mime type (for example, + a string specifying the desired mime type (for example, image/jpeg) - the path to save the thumbnail + the path to save the thumbnail - switches the @pipeline to the specified @mode. The default mode when + switches the @pipeline to the specified @mode. The default mode when creating a #GESPipeline is #GES_PIPELINE_MODE_PREVIEW. Note: The @pipeline will be set to #GST_STATE_NULL during this call due to the internal changes that happen. The caller will therefore have to set the @pipeline to the requested state after calling this method. + - %TRUE if the mode was properly set, else %FALSE. + %TRUE if the mode was properly set, else %FALSE. - a #GESPipeline + a #GESPipeline - the #GESPipelineFlags to use + the #GESPipelineFlags to use - Specify where the pipeline shall be rendered and with what settings. + Specify where the pipeline shall be rendered and with what settings. A copy of @profile and @output_uri will be done internally, the caller can safely free those values afterwards. This method must be called before setting the pipeline mode to #GES_PIPELINE_MODE_RENDER + - %TRUE if the settings were aknowledged properly, else %FALSE + %TRUE if the settings were aknowledged properly, else %FALSE - a #GESPipeline + a #GESPipeline - the URI to which the timeline will be rendered + the URI to which the timeline will be rendered - the #GstEncodingProfile to use to render the timeline. + the #GstEncodingProfile to use to render the timeline. - Sets the timeline to use in this pipeline. + Sets the timeline to use in this pipeline. The reference to the @timeline will be stolen by the @pipeline. + - %TRUE if the @timeline could be successfully set on the @pipeline, + %TRUE if the @timeline could be successfully set on the @pipeline, else %FALSE. - a #GESPipeline + a #GESPipeline - the #GESTimeline to set on the @pipeline. + the #GESTimeline to set on the @pipeline. @@ -5115,16 +8367,22 @@ else %FALSE. - Audio sink for the preview. + Audio sink for the preview. - Pipeline mode. See ges_pipeline_set_mode() for more + Pipeline mode. See ges_pipeline_set_mode() for more info. - Timeline to use in this pipeline. See also + Timeline to use in this pipeline. See also ges_pipeline_set_timeline() for more info. @@ -5132,7 +8390,9 @@ ges_pipeline_set_timeline() for more info. - Video sink for the preview. + Video sink for the preview. @@ -5142,7 +8402,7 @@ ges_pipeline_set_timeline() for more info. - + @@ -5150,12 +8410,15 @@ ges_pipeline_set_timeline() for more info. + - parent class + parent class - + @@ -5164,51 +8427,70 @@ ges_pipeline_set_timeline() for more info. glib:type-name="GESPipelineFlags" glib:get-type="ges_pipeline_flags_get_type" c:type="GESPipelineFlags"> - The various modes the #GESPipeline can be configured to. + The various modes the #GESPipeline can be configured to. - output audio to the soundcard + output audio to the soundcard - output video to the screen + output video to the screen - output audio/video to soundcard/screen (default) + output audio/video to soundcard/screen (default) - render timeline (forces decoding) + render timeline (forces decoding) - render timeline (tries to avoid decoding/reencoding) + render timeline (tries to avoid decoding/reencoding) + - This is a legacy format and you should avoid to use it. The formatter + This is a legacy format and you should avoid to use it. The formatter is really not in good shape and is deprecated. + + @@ -5221,7 +8503,7 @@ is really not in good shape and is deprecated. c:type="GESPitiviFormatterPrivate*"/> - + @@ -5229,11 +8511,12 @@ is really not in good shape and is deprecated. + - + @@ -5241,6 +8524,7 @@ is really not in good shape and is deprecated. + glib:type-name="GESProject" glib:get-type="ges_project_get_type" glib:type-struct="ProjectClass"> - The #GESProject is used to control a set of #GESAsset and is a + The #GESProject is used to control a set of #GESAsset and is a #GESAsset with #GES_TYPE_TIMELINE as @extractable_type itself. That means that you can extract #GESTimeline from a project as followed: @@ -5270,17 +8556,23 @@ The #GESProject class offers a higher level API to handle #GESAsset-s. It lets you request new asset, and it informs you about new assets through a set of signals. Also it handles problem such as missing files/missing #GstElement and lets you try to recover from those. + - Creates a new #GESProject and sets its uri to @uri if provided. Note that + Creates a new #GESProject and sets its uri to @uri if provided. Note that if @uri is not valid or %NULL, the uri of the project will then be set the first time you save the project. If you then save the project to other locations, it will never be updated again and the first valid URI is the URI it will keep refering to. + - A newly created #GESProject + A newly created #GESProject @@ -5288,12 +8580,15 @@ the URI it will keep refering to. transfer-ownership="none" nullable="1" allow-none="1"> - The uri to be set after creating the project. + The uri to be set after creating the project. + @@ -5307,6 +8602,7 @@ the URI it will keep refering to. + @@ -5320,6 +8616,7 @@ the URI it will keep refering to. + @@ -5333,6 +8630,7 @@ the URI it will keep refering to. + @@ -5346,6 +8644,7 @@ the URI it will keep refering to. + @@ -5365,6 +8664,7 @@ the URI it will keep refering to. + @@ -5381,40 +8681,58 @@ the URI it will keep refering to. - Adds a #Asset to @project, the project will keep a reference on + Adds a #Asset to @project, the project will keep a reference on @asset. + - %TRUE if the asset could be added %FALSE it was already + %TRUE if the asset could be added %FALSE it was already in the project - A #GESProject + A #GESProject - A #GESAsset to add to @project + A #GESAsset to add to @project - Adds @profile to the project. It lets you save in what format + Adds @profile to the project. It lets you save in what format the project has been renders and keep a reference to those formats. Also, those formats will be saves to the project file when possible. + - %TRUE if @profile could be added, %FALSE otherwize + %TRUE if @profile could be added, %FALSE otherwize - A #GESProject + A #GESProject - A #GstEncodingProfile to add to the project. If a profile with + A #GstEncodingProfile to add to the project. If a profile with the same name already exists, it will be replaced @@ -5422,28 +8740,39 @@ the same name already exists, it will be replaced - Create and add a #GESAsset to @project. You should connect to the + Create and add a #GESAsset to @project. You should connect to the "asset-added" signal to get the asset when it finally gets added to @project + - %TRUE if the asset started to be added %FALSE it was already + %TRUE if the asset started to be added %FALSE it was already in the project - A #GESProject + A #GESProject - The id of the asset to create and add to @project + The id of the asset to create and add to @project - The #GType of the asset to create + The #GType of the asset to create @@ -5451,48 +8780,68 @@ in the project - Create and add a #GESAsset to @project. You should connect to the + Create and add a #GESAsset to @project. You should connect to the "asset-added" signal to get the asset when it finally gets added to @project + - The newly created #GESAsset or %NULL. + The newly created #GESAsset or %NULL. - A #GESProject + A #GESProject - The id of the asset to create and add to @project + The id of the asset to create and add to @project - The #GType of the asset to create + The #GType of the asset to create + - The #GESAsset with + The #GESAsset with @id or %NULL if no asset with @id as an ID - A #GESProject + A #GESProject - The id of the asset to retrieve + The id of the asset to retrieve - The extractable_type of the asset + The extractable_type of the asset to retrieve from @object @@ -5500,9 +8849,14 @@ to retrieve from @object - Get the assets that are being loaded + Get the assets that are being loaded + - A set of loading asset + A set of loading asset that will be added to @project. Note that those Asset are *not* loaded yet, and thus can not be used @@ -5511,30 +8865,44 @@ and thus can not be used - A #GESProject + A #GESProject - Retrieve the uri that is currently set on @project + Retrieve the uri that is currently set on @project + - a newly allocated string representing uri. + a newly allocated string representing uri. - A #GESProject + A #GESProject - List all @asset contained in @project filtering per extractable_type + List all @asset contained in @project filtering per extractable_type as defined by @filter. It copies the asset and thus will not be updated in time. + - The list of + The list of #GESAsset the object contains @@ -5542,11 +8910,15 @@ in time. - A #GESProject + A #GESProject - Type of assets to list, #GES_TYPE_EXTRACTABLE will list + Type of assets to list, #GES_TYPE_EXTRACTABLE will list all assets @@ -5554,10 +8926,15 @@ all assets - Lists the encoding profile that have been set to @project. The first one + Lists the encoding profile that have been set to @project. The first one is the latest added. + - The + The list of #GstEncodingProfile used in @project @@ -5565,77 +8942,112 @@ list of #GstEncodingProfile used in @project - A #GESProject + A #GESProject - Loads @project into @timeline + Loads @project into @timeline + - %TRUE if the project could be loaded %FALSE otherwize. + %TRUE if the project could be loaded %FALSE otherwize. - A #GESProject that has an @uri set already + A #GESProject that has an @uri set already - A blank timeline to load @project into + A blank timeline to load @project into - remove a @asset to from @project. + remove a @asset to from @project. + - %TRUE if the asset could be removed %FALSE otherwise + %TRUE if the asset could be removed %FALSE otherwise - A #GESProject + A #GESProject - A #GESAsset to remove from @project + A #GESAsset to remove from @project - Save the timeline of @project to @uri. You should make sure that @timeline + Save the timeline of @project to @uri. You should make sure that @timeline is one of the timelines that have been extracted from @project (using ges_asset_extract (@project);) + - %TRUE if the project could be save, %FALSE otherwize + %TRUE if the project could be save, %FALSE otherwize - A #GESProject to save + A #GESProject to save - The #GESTimeline to save, it must have been extracted from @project + The #GESTimeline to save, it must have been extracted from @project - The uri where to save @project and @timeline + The uri where to save @project and @timeline - The formatter asset to use or %NULL. If %NULL, + The formatter asset to use or %NULL. If %NULL, will try to save in the same format as the one from which the timeline as been loaded or default to the formatter with highest rank - %TRUE to overwrite file if it exists + %TRUE to overwrite file if it exists @@ -5653,7 +9065,7 @@ or default to the formatter with highest rank - + @@ -5663,7 +9075,9 @@ or default to the formatter with highest rank - The #GESAsset that has been added to @project + The #GESAsset that has been added to @project @@ -5674,7 +9088,9 @@ or default to the formatter with highest rank - The #GESAsset that started loading + The #GESAsset that started loading @@ -5685,13 +9101,17 @@ or default to the formatter with highest rank - The #GESAsset that has been removed from @project + The #GESAsset that has been removed from @project - Informs you that a #GESAsset could not be created. In case of + Informs you that a #GESAsset could not be created. In case of missing GStreamer plugins, the error will be set to #GST_CORE_ERROR #GST_CORE_ERROR_MISSING_PLUGIN @@ -5699,15 +9119,21 @@ missing GStreamer plugins, the error will be set to #GST_CORE_ERROR - The #GError defining the error that occured, might be %NULL + The #GError defining the error that occured, might be %NULL - The @id of the asset that failed loading + The @id of the asset that failed loading - The @extractable_type of the asset that + The @extractable_type of the asset that failed loading @@ -5719,13 +9145,17 @@ failed loading - The #GESTimeline that complete loading + The #GESTimeline that complete loading - |[ + |[ static gchar source_moved_cb (GESProject *project, GError *error, GESAsset *asset_with_error) { @@ -5743,16 +9173,22 @@ main (int argc, gchar ** argv) } ]| - The new URI of @wrong_asset + The new URI of @wrong_asset - The error that happened + The error that happened - The asset with the wrong ID, you should us it and its content + The asset with the wrong ID, you should us it and its content only to find out what the new location is. @@ -5762,11 +9198,13 @@ only to find out what the new location is. + + @@ -5782,6 +9220,7 @@ only to find out what the new location is. + @@ -5797,6 +9236,7 @@ only to find out what the new location is. + @@ -5812,6 +9252,7 @@ only to find out what the new location is. + @@ -5830,6 +9271,7 @@ only to find out what the new location is. + @@ -5851,6 +9293,7 @@ only to find out what the new location is. + @@ -5865,13 +9308,66 @@ only to find out what the new location is. - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESSource" glib:get-type="ges_source_get_type" glib:type-struct="SourceClass"> - Base class for single-media sources + Base class for single-media sources + @@ -5889,7 +9388,7 @@ only to find out what the new location is. - + @@ -5897,11 +9396,12 @@ only to find out what the new location is. + - + @@ -5913,7 +9413,10 @@ only to find out what the new location is. glib:type-name="GESSourceClip" glib:get-type="ges_source_clip_get_type" glib:type-struct="SourceClipClass"> - Base class for sources of a #GESLayer + Base class for sources of a #GESLayer + @@ -5923,7 +9426,7 @@ only to find out what the new location is. - + @@ -5931,11 +9434,12 @@ only to find out what the new location is. + - + @@ -5943,15 +9447,483 @@ only to find out what the new location is. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The duration of the object (in nanoseconds). + + + + a #GESTimelineElement + + + + + The end position of the object (in nanoseconds). + + + + a #GESTimelineElement + + + + + + + + + + + + The in-point of the object (in nanoseconds). + + + + a #GESTimelineElement + + + + + See #ges_timeline_element_get_layer_priority + + + + The object to retrieve the layer priority from + + + + + The maximun duration of the object (in nanoseconds). + + + + a #GESTimelineElement + + + + + The name of the object. + + + + a #GESTimelineElement + + + - Layer priority when the element is not in a layer + Layer priority when the element is not in a layer + + + The parent of the object. + + + + a #GESTimelineElement + + + + + The priority of the object. + + + + a #GESTimelineElement + + + + + The start position of the object (in nanoseconds). + + + + a #GESTimelineElement + + + + + The timeline in which the object is. + + + + a #GESTimelineElement + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESTestClip" glib:get-type="ges_test_clip_get_type" glib:type-struct="TestClipClass"> - Useful for testing purposes. + Useful for testing purposes. You can use the ges_asset_request_simple API to create an Asset capable of extracting GESTestClip-s + - Creates a new #GESTestClip. + Creates a new #GESTestClip. + - The newly created #GESTestClip, + The newly created #GESTestClip, or %NULL if there was an error. - Creates a new #GESTestClip for the provided @nick. + Creates a new #GESTestClip for the provided @nick. + - The newly created #GESTestClip, + The newly created #GESTestClip, or %NULL if there was an error. - the nickname for which to create the #GESTestClip + the nickname for which to create the #GESTestClip - Get the frequency @self generates. + Get the frequency @self generates. + - The frequency @self generates. See audiotestsrc element. + The frequency @self generates. See audiotestsrc element. - a #GESTestClip + a #GESTestClip - Get the volume of the test audio signal applied on @self. + Get the volume of the test audio signal applied on @self. + - The volume of the test audio signal applied on @self. + The volume of the test audio signal applied on @self. - a #GESTestClip + a #GESTestClip - Get the #GESVideoTestPattern which is applied on @self. + Get the #GESVideoTestPattern which is applied on @self. + - The #GESVideoTestPattern which is applied on @self. + The #GESVideoTestPattern which is applied on @self. - a #GESTestClip + a #GESTestClip - Let you know if the audio track of @self is muted or not. + Let you know if the audio track of @self is muted or not. + - Whether the audio track of @self is muted or not. + Whether the audio track of @self is muted or not. - a #GESTestClip + a #GESTestClip - Sets the frequency to generate. See audiotestsrc element. + Sets the frequency to generate. See audiotestsrc element. + - the #GESTestClip to set the frequency on + the #GESTestClip to set the frequency on - the frequency you want to use on @self + the frequency you want to use on @self - Sets whether the audio track of this clip is muted or not. + Sets whether the audio track of this clip is muted or not. + - the #GESTestClip on which to mute or unmute the audio track + the #GESTestClip on which to mute or unmute the audio track - %TRUE to mute the audio track, %FALSE to unmute it + %TRUE to mute the audio track, %FALSE to unmute it - Sets the volume of the test audio signal. + Sets the volume of the test audio signal. + - the #GESTestClip to set the volume on + the #GESTestClip to set the volume on - the volume of the audio signal you want to use on @self + the volume of the audio signal you want to use on @self - Sets which video pattern to display on @self. + Sets which video pattern to display on @self. + - the #GESTestClip to set the pattern on + the #GESTestClip to set the pattern on - the #GESVideoTestPattern to use on @self + the #GESVideoTestPattern to use on @self @@ -6108,28 +10151,36 @@ or %NULL if there was an error. writable="1" construct="1" transfer-ownership="none"> - The frequency to generate for audio track elements. + The frequency to generate for audio track elements. - Whether the sound will be played or not. + Whether the sound will be played or not. - The volume for the audio track elements. + The volume for the audio track elements. - Video pattern to display in video track elements. + Video pattern to display in video track elements. @@ -6139,7 +10190,7 @@ or %NULL if there was an error. - + @@ -6147,45 +10198,57 @@ or %NULL if there was an error. + - + + - Horizontal alignment of the text. + Horizontal alignment of the text. - align text left + align text left - align text center + align text center - align text right + align text right - align text on xpos position + align text on xpos position glib:type-name="GESTextOverlay" glib:get-type="ges_text_overlay_get_type" glib:type-struct="TextOverlayClass"> + - Creates a new #GESTextOverlay. + Creates a new #GESTextOverlay. + - The newly created #GESTextOverlay or + The newly created #GESTextOverlay or %NULL if something went wrong. - Get the color used by @source. + Get the color used by @source. + - The color used by @source. + The color used by @source. - a GESTextOverlay + a GESTextOverlay - Get the pango font description currently set on @source. + Get the pango font description currently set on @source. + - The pango font description currently set on @source. + The pango font description currently set on @source. - a GESTextOverlay + a GESTextOverlay - Get the horizontal aligment used by @source. + Get the horizontal aligment used by @source. + - The horizontal aligment used by @source. + The horizontal aligment used by @source. - a GESTextOverlay + a GESTextOverlay - Get the text currently set on @source. + Get the text currently set on @source. + - The text currently set on @source. + The text currently set on @source. - a GESTextOverlay + a GESTextOverlay - Get the vertical aligment used by @source. + Get the vertical aligment used by @source. + - The vertical aligment used by @source. + The vertical aligment used by @source. - a GESTextOverlay + a GESTextOverlay - Get the horizontal position used by @source. + Get the horizontal position used by @source. + - The horizontal position used by @source. + The horizontal position used by @source. - a GESTextOverlay + a GESTextOverlay - Get the vertical position used by @source. + Get the vertical position used by @source. + - The vertical position used by @source. + The vertical position used by @source. - a GESTextOverlay + a GESTextOverlay - Sets the color of the text. + Sets the color of the text. + - the #GESTextOverlay* to set + the #GESTextOverlay* to set - The color @self is being set to + The color @self is being set to - Sets the pango font description of the text this track element + Sets the pango font description of the text this track element will render. + - the #GESTextOverlay + the #GESTextOverlay - the pango font description + the pango font description - Sets the horizontal aligment of the text. + Sets the horizontal aligment of the text. + - the #GESTextOverlay* to set text on + the #GESTextOverlay* to set text on - The #GESTextHAlign defining the horizontal alignment + The #GESTextHAlign defining the horizontal alignment of the text render by @self. - Sets the text this track element will render. + Sets the text this track element will render. + - the #GESTextOverlay* to set text on + the #GESTextOverlay* to set text on - the text to render. an internal copy of this text will be + the text to render. an internal copy of this text will be made. @@ -6375,50 +10521,71 @@ made. - Sets the vertical aligment of the text. + Sets the vertical aligment of the text. + - the #GESTextOverlay* to set text on + the #GESTextOverlay* to set text on - The #GESTextVAlign defining the vertical alignment + The #GESTextVAlign defining the vertical alignment of the text render by @self. - Sets the horizontal position of the text. + Sets the horizontal position of the text. + - the #GESTextOverlay* to set + the #GESTextOverlay* to set - The horizontal position @self is being set to + The horizontal position @self is being set to - Sets the vertical position of the text. + Sets the vertical position of the text. + - the #GESTextOverlay* to set + the #GESTextOverlay* to set - The vertical position @self is being set to + The vertical position @self is being set to @@ -6430,7 +10597,7 @@ of the text render by @self. - + @@ -6438,11 +10605,12 @@ of the text render by @self. + - + @@ -6454,173 +10622,258 @@ of the text render by @self. glib:type-name="GESTextOverlayClip" glib:get-type="ges_text_overlay_clip_get_type" glib:type-struct="TextOverlayClipClass"> - Renders text onto the next lower priority stream using textrender. + Renders text onto the next lower priority stream using textrender. + - Creates a new #GESTextOverlayClip + Creates a new #GESTextOverlayClip + - The newly created + The newly created #GESTextOverlayClip, or %NULL if there was an error. - Get the color used by @source. + Get the color used by @source. + - The color used by @source. + The color used by @source. - a #GESTextOverlayClip + a #GESTextOverlayClip - Get the pango font description used by @self. + Get the pango font description used by @self. + - The pango font description used by @self. + The pango font description used by @self. - a #GESTextOverlayClip + a #GESTextOverlayClip - Get the horizontal aligment used by @self. + Get the horizontal aligment used by @self. + - The horizontal aligment used by @self. + The horizontal aligment used by @self. - a #GESTextOverlayClip + a #GESTextOverlayClip - Get the text currently set on @self. + Get the text currently set on @self. + - The text currently set on @self. + The text currently set on @self. - a #GESTextOverlayClip + a #GESTextOverlayClip - Get the vertical aligment used by @self. + Get the vertical aligment used by @self. + - The vertical aligment used by @self. + The vertical aligment used by @self. - a #GESTextOverlayClip + a #GESTextOverlayClip - Get the horizontal position used by @source. + Get the horizontal position used by @source. + - The horizontal position used by @source. + The horizontal position used by @source. - a #GESTextOverlayClip + a #GESTextOverlayClip - Get the vertical position used by @source. + Get the vertical position used by @source. + - The vertical position used by @source. + The vertical position used by @source. - a #GESTextOverlayClip + a #GESTextOverlayClip - Sets the color of the text. + Sets the color of the text. + - the #GESTextOverlayClip* to set + the #GESTextOverlayClip* to set - The color @self is being set to + The color @self is being set to - Sets the pango font description of the text + Sets the pango font description of the text + - the #GESTextOverlayClip* + the #GESTextOverlayClip* - the pango font description + the pango font description - Sets the horizontal aligment of the text. + Sets the horizontal aligment of the text. + - the #GESTextOverlayClip* to set horizontal alignement of text on + the #GESTextOverlayClip* to set horizontal alignement of text on - #GESTextHAlign + #GESTextHAlign - Sets the text this clip will render. + Sets the text this clip will render. + - the #GESTextOverlayClip* to set text on + the #GESTextOverlayClip* to set text on - the text to render. an internal copy of this text will be + the text to render. an internal copy of this text will be made. @@ -6628,49 +10881,70 @@ made. - Sets the vertical aligment of the text. + Sets the vertical aligment of the text. + - the #GESTextOverlayClip* to set vertical alignement of text on + the #GESTextOverlayClip* to set vertical alignement of text on - #GESTextVAlign + #GESTextVAlign - Sets the horizontal position of the text. + Sets the horizontal position of the text. + - the #GESTextOverlayClip* to set + the #GESTextOverlayClip* to set - The horizontal position @self is being set to + The horizontal position @self is being set to - Sets the vertical position of the text. + Sets the vertical position of the text. + - the #GESTextOverlayClip* to set + the #GESTextOverlayClip* to set - The vertical position @self is being set to + The vertical position @self is being set to @@ -6679,49 +10953,63 @@ made. writable="1" construct="1" transfer-ownership="none"> - The color of the text + The color of the text - Pango font description string + Pango font description string - Horizontal alignment of the text + Horizontal alignment of the text - The text to diplay + The text to diplay - Vertical alignent of the text + Vertical alignent of the text - The horizontal position of the text + The horizontal position of the text - The vertical position of the text + The vertical position of the text @@ -6732,7 +11020,7 @@ made. c:type="GESTextOverlayClipPrivate*"/> - + @@ -6740,11 +11028,12 @@ made. + - + @@ -6752,45 +11041,59 @@ made. + + - Vertical alignment of the text. + Vertical alignment of the text. - draw text on the baseline + draw text on the baseline - draw text on the bottom + draw text on the bottom - draw text on top + draw text on top - draw text on ypos position + draw text on ypos position - draw text on the center + draw text on the center glib:type-name="GESTimeline" glib:get-type="ges_timeline_get_type" glib:type-struct="TimelineClass"> - #GESTimeline is the central object for any multimedia timeline. + #GESTimeline is the central object for any multimedia timeline. Contains a list of #GESLayer which users should use to arrange the various clips through time. @@ -6818,42 +11123,61 @@ ges_timeline_save_to_uri() methods to use the default format. If you wish Note that any change you make in the timeline will not actually be taken into account until you call the #ges_timeline_commit method. + - Creates a new empty #GESTimeline. + Creates a new empty #GESTimeline. + - The new timeline. + The new timeline. - Creates a new #GESTimeline containing a raw audio and a + Creates a new #GESTimeline containing a raw audio and a raw video track. + - The newly created #GESTimeline. + The newly created #GESTimeline. - Creates a timeline from the given URI. + Creates a timeline from the given URI. + - A new timeline if the uri was loaded + A new timeline if the uri was loaded successfully, or %NULL if the uri could not be loaded. - the URI to load from + the URI to load from + @@ -6867,6 +11191,7 @@ successfully, or %NULL if the uri could not be loaded. + @@ -6885,6 +11210,7 @@ successfully, or %NULL if the uri could not be loaded. + @@ -6898,6 +11224,7 @@ successfully, or %NULL if the uri could not be loaded. + @@ -6911,6 +11238,7 @@ successfully, or %NULL if the uri could not be loaded. + @@ -6924,6 +11252,7 @@ successfully, or %NULL if the uri could not be loaded. + @@ -6937,58 +11266,85 @@ successfully, or %NULL if the uri could not be loaded. - Add the layer to the timeline. The reference to the @layer will be stolen + Add the layer to the timeline. The reference to the @layer will be stolen by the @timeline. + - %TRUE if the layer was properly added, else %FALSE. + %TRUE if the layer was properly added, else %FALSE. - a #GESTimeline + a #GESTimeline - the #GESLayer to add + the #GESLayer to add - Add a track to the timeline. The reference to the track will be stolen by the + Add a track to the timeline. The reference to the track will be stolen by the pipeline. + - %TRUE if the track was properly added, else %FALSE. + %TRUE if the track was properly added, else %FALSE. - a #GESTimeline + a #GESTimeline - the #GESTrack to add + the #GESTrack to add - Append a newly created #GESLayer to @timeline + Append a newly created #GESLayer to @timeline Note that you do not own any reference to the returned layer. + - The newly created #GESLayer, or the last (empty) + The newly created #GESLayer, or the last (empty) #GESLayer of @timeline. - a #GESTimeline + a #GESTimeline - Commit all the pending changes of the clips contained in the + Commit all the pending changes of the clips contained in the @timeline. When changes happen in a timeline, they are not @@ -7009,20 +11365,27 @@ function and after receiving the #GESTimeline::commited signal. See #ges_timeline_commit_sync if you don't want to bother with waiting for the signal. + - %TRUE if pending changes were commited or %FALSE if nothing needed + %TRUE if pending changes were commited or %FALSE if nothing needed to be commited - a #GESTimeline + a #GESTimeline - Commit all the pending changes of the #GESClips contained in the + Commit all the pending changes of the #GESClips contained in the @timeline. Will return once the update is complete, that is when the @@ -7035,56 +11398,82 @@ should not try to change the state from another thread before this function has returned. See #ges_timeline_commit for more information. + - %TRUE if pending changes were commited or %FALSE if nothing needed + %TRUE if pending changes were commited or %FALSE if nothing needed to be commited - a #GESTimeline + a #GESTimeline - Gets whether transitions are automatically added when objects + Gets whether transitions are automatically added when objects overlap or not. + - %TRUE if transitions are automatically added, else %FALSE. + %TRUE if transitions are automatically added, else %FALSE. - a #GESTimeline + a #GESTimeline - Get the current duration of @timeline + Get the current duration of @timeline + - The current duration of @timeline + The current duration of @timeline - a #GESTimeline + a #GESTimeline - Gets a #GESTimelineElement contained in the timeline + Gets a #GESTimelineElement contained in the timeline + - The #GESTimelineElement or %NULL if + The #GESTimelineElement or %NULL if not found. - a #GESTimeline + a #GESTimeline @@ -7093,9 +11482,14 @@ not found. - Get the list of #GESGroup present in the Timeline. + Get the list of #GESGroup present in the Timeline. + - the list of + the list of #GESGroup that contain clips present in the timeline's layers. Must not be changed. @@ -7104,15 +11498,22 @@ Must not be changed. - a #GESTimeline + a #GESTimeline - Retrieve the layer with @priority as a priority + Retrieve the layer with @priority as a priority + - A #GESLayer or %NULL if no layer with + A #GESLayer or %NULL if no layer with @priority was found Since 1.6 @@ -7120,19 +11521,28 @@ Since 1.6 - The #GESTimeline to retrive a layer from + The #GESTimeline to retrive a layer from - The priority of the layer to find + The priority of the layer to find - Get the list of #GESLayer present in the Timeline. + Get the list of #GESLayer present in the Timeline. + - the list of + the list of #GESLayer present in the Timeline sorted by priority. The caller should unref each Layer once he is done with them. @@ -7141,69 +11551,101 @@ The caller should unref each Layer once he is done with them. - a #GESTimeline + a #GESTimeline - Search the #GstPad corresponding to the given @timeline's @track. + Search the #GstPad corresponding to the given @timeline's @track. + - The corresponding #GstPad if it is + The corresponding #GstPad if it is found, or %NULL if there is an error. - The #GESTimeline + The #GESTimeline - The #GESTrack + The #GESTrack - Gets the configured snapping distance of the timeline. See + Gets the configured snapping distance of the timeline. See the documentation of the property snapping_distance for more information. + - The @snapping_distance property of the timeline + The @snapping_distance property of the timeline - a #GESTimeline + a #GESTimeline - Search the #GESTrack corresponding to the given @timeline's @pad. + Search the #GESTrack corresponding to the given @timeline's @pad. + - The corresponding #GESTrack if it is + The corresponding #GESTrack if it is found, or %NULL if there is an error. - The #GESTimeline + The #GESTimeline - The #GstPad + The #GstPad - Returns the list of #GESTrack used by the Timeline. + Returns the list of #GESTrack used by the Timeline. + - A list of #GESTrack. + A list of #GESTrack. The caller should unref each track once he is done with them. @@ -7211,20 +11653,29 @@ The caller should unref each track once he is done with them. - a #GESTimeline + a #GESTimeline - Check whether a #GESTimeline is empty or not + Check whether a #GESTimeline is empty or not + - %TRUE if the timeline is empty %FALSE otherwize + %TRUE if the timeline is empty %FALSE otherwize - a #GESTimeline + a #GESTimeline @@ -7232,19 +11683,28 @@ The caller should unref each track once he is done with them. - Loads the contents of URI into the given timeline. + Loads the contents of URI into the given timeline. + - %TRUE if the timeline was loaded successfully, or %FALSE if the uri + %TRUE if the timeline was loaded successfully, or %FALSE if the uri could not be loaded. - an empty #GESTimeline into which to load the formatter + an empty #GESTimeline into which to load the formatter - The URI to load from + The URI to load from @@ -7252,92 +11712,132 @@ could not be loaded. - Moves @layer at @new_layer_priority meaning that @layer + Moves @layer at @new_layer_priority meaning that @layer we land at that position in the stack of layers inside the timeline. If @new_layer_priority is superior than the number of layers present in the time, it will move to the end of the stack of layers. + - The timeline in which @layer must be + The timeline in which @layer must be - The layer to move at @new_layer_priority + The layer to move at @new_layer_priority - The index at which @layer should land + The index at which @layer should land - Paste @element inside the timeline. @element must have been + Paste @element inside the timeline. @element must have been created using ges_timeline_element_copy with deep=TRUE set, i.e. it must be a deep copy, otherwise it will fail. + - Shallow copy of the @element pasted + Shallow copy of the @element pasted - The #GESTimeline onto which the #GESTimelineElement should be pasted + The #GESTimeline onto which the #GESTimelineElement should be pasted - The #GESTimelineElement to paste + The #GESTimelineElement to paste - The position in the timeline the element should + The position in the timeline the element should be pasted to, meaning it will become the start of @element - The #GESLayer to which the element should be pasted to. + The #GESLayer to which the element should be pasted to. -1 means paste to the same layer from which the @element has been copied from. - Removes the layer from the timeline. The reference that the @timeline holds on + Removes the layer from the timeline. The reference that the @timeline holds on the layer will be dropped. If you wish to use the @layer after calling this method, you need to take a reference before calling. + - %TRUE if the layer was properly removed, else %FALSE. + %TRUE if the layer was properly removed, else %FALSE. - a #GESTimeline + a #GESTimeline - the #GESLayer to remove + the #GESLayer to remove - Remove the @track from the @timeline. The reference stolen when adding the + Remove the @track from the @timeline. The reference stolen when adding the @track will be removed. If you wish to use the @track after calling this function you must ensure that you have a reference to it. + - %TRUE if the @track was properly removed, else %FALSE. + %TRUE if the @track was properly removed, else %FALSE. - a #GESTimeline + a #GESTimeline - the #GESTrack to remove + the #GESTrack to remove @@ -7345,84 +11845,117 @@ function you must ensure that you have a reference to it. - Saves the timeline to the given location + Saves the timeline to the given location + - %TRUE if the timeline was successfully saved to the given location, + %TRUE if the timeline was successfully saved to the given location, else %FALSE. - a #GESTimeline + a #GESTimeline - The location to save to + The location to save to - The formatter asset to use or %NULL. If %NULL, + The formatter asset to use or %NULL. If %NULL, will try to save in the same format as the one from which the timeline as been loaded or default to the formatter with highest rank - %TRUE to overwrite file if it exists + %TRUE to overwrite file if it exists - Sets the layer to the given @auto_transition. See the documentation of the + Sets the layer to the given @auto_transition. See the documentation of the property auto_transition for more information. + - a #GESLayer + a #GESLayer - whether the auto_transition is active + whether the auto_transition is active - Sets the @snapping_distance of the timeline. See the documentation of the + Sets the @snapping_distance of the timeline. See the documentation of the property snapping_distance for more information. + - a #GESLayer + a #GESLayer - whether the snapping_distance is active + whether the snapping_distance is active - Sets whether transitions are added automagically when clips overlap. + Sets whether transitions are added automagically when clips overlap. - Current duration (in nanoseconds) of the #GESTimeline + Current duration (in nanoseconds) of the #GESTimeline - Distance (in nanoseconds) from which a moving object will snap + Distance (in nanoseconds) from which a moving object will snap with it neighboors. 0 means no snapping. @@ -7430,13 +11963,17 @@ with it neighboors. 0 means no snapping. - A list of #GESLayer sorted by priority NOTE: Do not modify. + A list of #GESLayer sorted by priority NOTE: Do not modify. - A list of #GESTrack sorted by priority NOTE: Do not modify. + A list of #GESTrack sorted by priority NOTE: Do not modify. @@ -7445,12 +11982,14 @@ with it neighboors. 0 means no snapping. - + - This signal will be emitted once the changes initiated by #ges_timeline_commit + This signal will be emitted once the changes initiated by #ges_timeline_commit have been executed in the backend. Use #ges_timeline_commit_sync if you don't need to do anything in the meantime. @@ -7458,29 +11997,39 @@ don't need to do anything in the meantime. - Will be emitted after a new group is added to to the timeline. + Will be emitted after a new group is added to to the timeline. - the #GESGroup + the #GESGroup - Will be emitted after a group has been removed from the timeline. + Will be emitted after a group has been removed from the timeline. - the #GESGroup + the #GESGroup - a list of #GESContainer + a list of #GESContainer @@ -7488,107 +12037,145 @@ don't need to do anything in the meantime. - Will be emitted after a new layer is added to the timeline. + Will be emitted after a new layer is added to the timeline. - the #GESLayer that was added to the timeline + the #GESLayer that was added to the timeline - Will be emitted after the layer was removed from the timeline. + Will be emitted after the layer was removed from the timeline. - the #GESLayer that was removed from the timeline + the #GESLayer that was removed from the timeline - a #GPtrArray of #GESTrack-s where that object should be added + a #GPtrArray of #GESTrack-s where that object should be added - The #GESClip on which @track_element will land + The #GESClip on which @track_element will land - The #GESTrackElement for which to choose the tracks it should land into + The #GESTrackElement for which to choose the tracks it should land into - Will be emitted when the 2 #GESTrackElement ended to snap + Will be emitted when the 2 #GESTrackElement ended to snap - the first #GESTrackElement that was snapping. + the first #GESTrackElement that was snapping. - the second #GESTrackElement that was snapping. + the second #GESTrackElement that was snapping. - the position where the two objects finally snapping. + the position where the two objects finally snapping. - Will be emitted when the 2 #GESTrackElement first snapped + Will be emitted when the 2 #GESTrackElement first snapped - the first #GESTrackElement that was snapping. + the first #GESTrackElement that was snapping. - the second #GESTrackElement that was snapping. + the second #GESTrackElement that was snapping. - the position where the two objects finally snapping. + the position where the two objects finally snapping. - Will be emitted after the track was added to the timeline. + Will be emitted after the track was added to the timeline. - the #GESTrack that was added to the timeline + the #GESTrack that was added to the timeline - Will be emitted after the track was removed from the timeline. + Will be emitted after the track was removed from the timeline. - the #GESTrack that was removed from the timeline + the #GESTrack that was removed from the timeline @@ -7597,12 +12184,16 @@ don't need to do anything in the meantime. + - parent class + parent class + @@ -7618,6 +12209,7 @@ don't need to do anything in the meantime. + @@ -7633,6 +12225,7 @@ don't need to do anything in the meantime. + @@ -7648,6 +12241,7 @@ don't need to do anything in the meantime. + @@ -7663,6 +12257,7 @@ don't need to do anything in the meantime. + @@ -7678,6 +12273,7 @@ don't need to do anything in the meantime. + @@ -7697,7 +12293,7 @@ don't need to do anything in the meantime. - + @@ -7710,12 +12306,16 @@ don't need to do anything in the meantime. glib:type-name="GESTimelineElement" glib:get-type="ges_timeline_element_get_type" glib:type-struct="TimelineElementClass"> - The GESTimelineElement base class implements the notion of timing as well + The GESTimelineElement base class implements the notion of timing as well as priority. A GESTimelineElement can have a parent object which will be responsible for controlling its timing properties. + + @@ -7731,15 +12331,20 @@ responsible for controlling its timing properties. + - The priority of the first layer the element is in (note that only + The priority of the first layer the element is in (note that only groups can span over several layers). %GES_TIMELINE_ELEMENT_NO_LAYER_PRIORITY means that the element is not in a layer. - A #GESTimelineElement + A #GESTimelineElement @@ -7747,18 +12352,24 @@ means that the element is not in a layer. - Gets all the TrackTypes @self will interact with + Gets all the TrackTypes @self will interact with + - A #GESTimelineElement + A #GESTimelineElement + @@ -7772,22 +12383,31 @@ means that the element is not in a layer. - Looks up which @element and @pspec would be effected by the given @name. If various + Looks up which @element and @pspec would be effected by the given @name. If various contained elements have this property name you will get the first one, unless you specify the class name in @name. + - TRUE if @element and @pspec could be found. FALSE otherwise. In that + TRUE if @element and @pspec could be found. FALSE otherwise. In that case the values for @pspec and @element are not modified. Unref @element after usage. - object to lookup the property in + object to lookup the property in - name of the property to look up. You can specify the name of the + name of the property to look up. You can specify the name of the class as such: "ClassName::property-name", to guarantee that you get the proper GParamSpec in case various GstElement-s contain the same property name. If you don't do so, you will get the first element found, having @@ -7800,7 +12420,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to a #GstElement that + pointer to a #GstElement that takes the real object to set property on @@ -7810,13 +12432,16 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to take the #GParamSpec + pointer to take the #GParamSpec describing the property + @@ -7833,90 +12458,127 @@ usage. - Edits @self in ripple mode. It allows you to modify the + Edits @self in ripple mode. It allows you to modify the start of @self and move the following neighbours accordingly. This will change the overall timeline duration. + - %TRUE if the self as been rippled properly, %FALSE if an error + %TRUE if the self as been rippled properly, %FALSE if an error occured - The #GESTimelineElement to ripple. + The #GESTimelineElement to ripple. - The new start of @self in ripple mode. + The new start of @self in ripple mode. - Edits @self in ripple mode. It allows you to modify the + Edits @self in ripple mode. It allows you to modify the duration of a @self and move the following neighbours accordingly. This will change the overall timeline duration. + - %TRUE if the self as been rippled properly, %FALSE if an error + %TRUE if the self as been rippled properly, %FALSE if an error occured - The #GESTimelineElement to ripple. + The #GESTimelineElement to ripple. - The new end (start + duration) of @self in ripple mode. It will + The new end (start + duration) of @self in ripple mode. It will basically only change the duration of @self. - Edits @self in roll mode. It allows you to modify the + Edits @self in roll mode. It allows you to modify the duration of a @self and trim (basicly change the start + inpoint in this case) the following neighbours accordingly. This will not change the overall timeline duration. + - %TRUE if the self as been rolled properly, %FALSE if an error + %TRUE if the self as been rolled properly, %FALSE if an error occured - The #GESTimelineElement to roll. + The #GESTimelineElement to roll. - The new end (start + duration) of @self in roll mode + The new end (start + duration) of @self in roll mode - Edits @self in roll mode. It allows you to modify the + Edits @self in roll mode. It allows you to modify the start and inpoint of a @self and "resize" (basicly change the duration in this case) of the previous neighbours accordingly. This will not change the overall timeline duration. + - %TRUE if the self as been roll properly, %FALSE if an error + %TRUE if the self as been roll properly, %FALSE if an error occured - The #GESTimelineElement to roll + The #GESTimelineElement to roll - The new start of @self in roll mode, it will also adapat + The new start of @self in roll mode, it will also adapat the in-point of @self according + @@ -7936,75 +12598,111 @@ the in-point of @self according - Set the duration of the object + Set the duration of the object Note that if the timeline snap-distance property of the timeline containing @self is set, @self will properly snap to its neighboors. + - %TRUE if @duration could be set. + %TRUE if @duration could be set. - a #GESTimelineElement + a #GESTimelineElement - the duration in #GstClockTime + the duration in #GstClockTime - Set the in-point, that is the moment at which the @self will start + Set the in-point, that is the moment at which the @self will start outputting data from its contents. + - %TRUE if @inpoint could be set. + %TRUE if @inpoint could be set. - a #GESTimelineElement + a #GESTimelineElement - the in-point in #GstClockTime + the in-point in #GstClockTime - Set the maximun duration of the object + Set the maximun duration of the object + - %TRUE if @maxduration could be set. + %TRUE if @maxduration could be set. - a #GESTimelineElement + a #GESTimelineElement - the maximum duration in #GstClockTime + the maximum duration in #GstClockTime - Sets the parent of @self to @parent. The parents needs to already + Sets the parent of @self to @parent. The parents needs to already own a hard reference on @self. + - %TRUE if @parent could be set or %FALSE when @self + %TRUE if @parent could be set or %FALSE when @self already had a parent or @self and @parent are the same. - a #GESTimelineElement + a #GESTimelineElement - new parent of self + new parent of self @@ -8012,65 +12710,92 @@ already had a parent or @self and @parent are the same. - Sets the priority of the object within the containing layer + Sets the priority of the object within the containing layer All priority management is done by GES itself now. To set #GESEffect priorities #ges_clip_set_top_effect_index should be used. + - %TRUE if @priority could be set. + %TRUE if @priority could be set. - a #GESTimelineElement + a #GESTimelineElement - the priority + the priority - Set the position of the object in its containing layer. + Set the position of the object in its containing layer. Note that if the snapping-distance property of the timeline containing @self is set, @self will properly snap to the edges around @start. + - %TRUE if @start could be set. + %TRUE if @start could be set. - a #GESTimelineElement + a #GESTimelineElement - the position in #GstClockTime + the position in #GstClockTime - Edits @self in trim mode. It allows you to modify the + Edits @self in trim mode. It allows you to modify the inpoint and start of @self. This will not change the overall timeline duration. Note that to trim the end of an self you can just set its duration. The same way as this method, it will take into account the snapping-distance property of the timeline in which @self is. + - %TRUE if the self as been trimmed properly, %FALSE if an error + %TRUE if the self as been trimmed properly, %FALSE if an error occured - The #GESTimelineElement to trim. + The #GESTimelineElement to trim. - The new start of @self in trim mode, will adapt the inpoint + The new start of @self in trim mode, will adapt the inpoint of @self accordingly @@ -8078,6 +12803,7 @@ of @self accordingly + @@ -8094,18 +12820,27 @@ of @self accordingly - Copies @self + Copies @self + - The newly create #GESTimelineElement, copied from @self + The newly create #GESTimelineElement, copied from @self - The #GESTimelineElement to copy + The #GESTimelineElement to copy - whether we want to create the elements @self contains or not + whether we want to create the elements @self contains or not @@ -8113,21 +12848,30 @@ of @self accordingly - Gets properties of a child of @self. + Gets properties of a child of @self. + - The origin #GESTimelineElement + The origin #GESTimelineElement - The name of the first property to get + The name of the first property to get - return location for the first property, followed optionally by more + return location for the first property, followed optionally by more name/return location pairs, followed by NULL @@ -8135,7 +12879,9 @@ name/return location pairs, followed by NULL - In general, a copy is made of the property contents and + In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling g_value_unset(). @@ -8144,24 +12890,33 @@ Gets a property of a GstElement contained in @object. Note that #ges_timeline_element_get_child_property is really intended for language bindings, #ges_timeline_element_get_child_properties is much more convenient for C programming. + - %TRUE if the property was found, %FALSE otherwize + %TRUE if the property was found, %FALSE otherwize - The origin #GESTimelineElement + The origin #GESTimelineElement - The name of the property + The name of the property - return location for the property value, it will + return location for the property value, it will be initialized if it is initialized with 0 @@ -8169,24 +12924,33 @@ be initialized if it is initialized with 0 - Gets a property of a child of @self. + Gets a property of a child of @self. + - a #GESTrackElement + a #GESTrackElement - The #GParamSpec that specifies the property you want to get + The #GParamSpec that specifies the property you want to get - return location for the value + return location for the value @@ -8194,24 +12958,33 @@ be initialized if it is initialized with 0 - Gets a property of a child of @self. If there are various child elements + Gets a property of a child of @self. If there are various child elements that have the same property name, you can distinguish them using the following syntax: 'ClasseName::property_name' as property name. If you don't, the corresponding property of the first element found will be set. + - The #GESTimelineElement parent object + The #GESTimelineElement parent object - The name of the first property to get + The name of the first property to get - value for the first property, followed optionally by more + value for the first property, followed optionally by more name/return location pairs, followed by NULL @@ -8219,26 +12992,36 @@ name/return location pairs, followed by NULL + - The @duration of @self + The @duration of @self - a #GESTimelineElement + a #GESTimelineElement + - The @inpoint of @self + The @inpoint of @self - a #GESTimelineElement + a #GESTimelineElement @@ -8246,112 +13029,160 @@ name/return location pairs, followed by NULL + - The priority of the first layer the element is in (note that only + The priority of the first layer the element is in (note that only groups can span over several layers). %GES_TIMELINE_ELEMENT_NO_LAYER_PRIORITY means that the element is not in a layer. - A #GESTimelineElement + A #GESTimelineElement + - The @maxduration of @self + The @maxduration of @self - a #GESTimelineElement + a #GESTimelineElement - Returns a copy of the name of @self. + Returns a copy of the name of @self. Caller should g_free() the return value after usage. + - The name of @self + The name of @self - a #GESTimelineElement + a #GESTimelineElement - Returns the parent of @self. This function increases the refcount + Returns the parent of @self. This function increases the refcount of the parent object so you should gst_object_unref() it after usage. + - parent of @self, this can be %NULL if + parent of @self, this can be %NULL if @self has no parent. unref after usage. - a #GESTimelineElement + a #GESTimelineElement + - The @priority of @self + The @priority of @self - a #GESTimelineElement + a #GESTimelineElement + - The @start of @self + The @start of @self - a #GESTimelineElement + a #GESTimelineElement - Returns the timeline of @self. This function increases the refcount + Returns the timeline of @self. This function increases the refcount of the timeline so you should gst_object_unref() it after usage. + - timeline of @self, this can be %NULL if + timeline of @self, this can be %NULL if @self has no timeline. unref after usage. - a #GESTimelineElement + a #GESTimelineElement - Gets the toplevel #GESTimelineElement controlling @self + Gets the toplevel #GESTimelineElement controlling @self + - The toplevel controlling parent of @self + The toplevel controlling parent of @self - The #GESTimelineElement to get the toplevel parent from + The #GESTimelineElement to get the toplevel parent from @@ -8359,23 +13190,33 @@ of the timeline so you should gst_object_unref() it after usage. - Gets all the TrackTypes @self will interact with + Gets all the TrackTypes @self will interact with + - A #GESTimelineElement + A #GESTimelineElement - Gets an array of #GParamSpec* for all configurable properties of the + Gets an array of #GParamSpec* for all configurable properties of the children of @self. + - an array of #GParamSpec* which should be freed after use or + an array of #GParamSpec* which should be freed after use or %NULL if something went wrong @@ -8383,36 +13224,49 @@ children of @self. - The #GESTimelineElement to get the list of children properties from + The #GESTimelineElement to get the list of children properties from - return location for the length of the returned array + return location for the length of the returned array - Looks up which @element and @pspec would be effected by the given @name. If various + Looks up which @element and @pspec would be effected by the given @name. If various contained elements have this property name you will get the first one, unless you specify the class name in @name. + - TRUE if @element and @pspec could be found. FALSE otherwise. In that + TRUE if @element and @pspec could be found. FALSE otherwise. In that case the values for @pspec and @element are not modified. Unref @element after usage. - object to lookup the property in + object to lookup the property in - name of the property to look up. You can specify the name of the + name of the property to look up. You can specify the name of the class as such: "ClassName::property-name", to guarantee that you get the proper GParamSpec in case various GstElement-s contain the same property name. If you don't do so, you will get the first element found, having @@ -8425,7 +13279,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to a #GstElement that + pointer to a #GstElement that takes the real object to set property on @@ -8435,7 +13291,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to take the #GParamSpec + pointer to take the #GParamSpec describing the property @@ -8444,21 +13302,30 @@ usage. - Paste @self inside the timeline. @self must have been created + Paste @self inside the timeline. @self must have been created using ges_timeline_element_copy with recurse=TRUE set, otherwise it will fail. + - New element resulting of pasting @self + New element resulting of pasting @self or %NULL - The #GESTimelineElement to paste + The #GESTimelineElement to paste - The position in the timeline the element should + The position in the timeline the element should be copied to, meaning it will become the start of @self @@ -8466,6 +13333,7 @@ be copied to, meaning it will become the start of @self + @@ -8479,84 +13347,120 @@ be copied to, meaning it will become the start of @self - Edits @self in ripple mode. It allows you to modify the + Edits @self in ripple mode. It allows you to modify the start of @self and move the following neighbours accordingly. This will change the overall timeline duration. + - %TRUE if the self as been rippled properly, %FALSE if an error + %TRUE if the self as been rippled properly, %FALSE if an error occured - The #GESTimelineElement to ripple. + The #GESTimelineElement to ripple. - The new start of @self in ripple mode. + The new start of @self in ripple mode. - Edits @self in ripple mode. It allows you to modify the + Edits @self in ripple mode. It allows you to modify the duration of a @self and move the following neighbours accordingly. This will change the overall timeline duration. + - %TRUE if the self as been rippled properly, %FALSE if an error + %TRUE if the self as been rippled properly, %FALSE if an error occured - The #GESTimelineElement to ripple. + The #GESTimelineElement to ripple. - The new end (start + duration) of @self in ripple mode. It will + The new end (start + duration) of @self in ripple mode. It will basically only change the duration of @self. - Edits @self in roll mode. It allows you to modify the + Edits @self in roll mode. It allows you to modify the duration of a @self and trim (basicly change the start + inpoint in this case) the following neighbours accordingly. This will not change the overall timeline duration. + - %TRUE if the self as been rolled properly, %FALSE if an error + %TRUE if the self as been rolled properly, %FALSE if an error occured - The #GESTimelineElement to roll. + The #GESTimelineElement to roll. - The new end (start + duration) of @self in roll mode + The new end (start + duration) of @self in roll mode - Edits @self in roll mode. It allows you to modify the + Edits @self in roll mode. It allows you to modify the start and inpoint of a @self and "resize" (basicly change the duration in this case) of the previous neighbours accordingly. This will not change the overall timeline duration. + - %TRUE if the self as been roll properly, %FALSE if an error + %TRUE if the self as been roll properly, %FALSE if an error occured - The #GESTimelineElement to roll + The #GESTimelineElement to roll - The new start of @self in roll mode, it will also adapat + The new start of @self in roll mode, it will also adapat the in-point of @self according @@ -8565,24 +13469,33 @@ the in-point of @self according - Sets a property of a child of @self. If there are various child elements + Sets a property of a child of @self. If there are various child elements that have the same property name, you can distinguish them using the following syntax: 'ClasseName::property_name' as property name. If you don't, the corresponding property of the first element found will be set. + - The #GESTimelineElement parent object + The #GESTimelineElement parent object - The name of the first property to set + The name of the first property to set - value for the first property, followed optionally by more + value for the first property, followed optionally by more name/return location pairs, followed by NULL @@ -8590,47 +13503,67 @@ name/return location pairs, followed by NULL - Sets a property of a child of @self + Sets a property of a child of @self Note that #ges_timeline_element_set_child_property is really intended for language bindings, #ges_timeline_element_set_child_properties is much more convenient for C programming. + - %TRUE if the property was set, %FALSE otherwize + %TRUE if the property was set, %FALSE otherwize - The origin #GESTimelineElement + The origin #GESTimelineElement - The name of the property + The name of the property - the value + the value - Sets a property of a child of @self. + Sets a property of a child of @self. + - a #GESTimelineElement + a #GESTimelineElement - The #GParamSpec that specifies the property you want to set + The #GParamSpec that specifies the property you want to set - the value + the value @@ -8638,24 +13571,33 @@ is much more convenient for C programming. - Sets a property of a child of @self. If there are various child elements + Sets a property of a child of @self. If there are various child elements that have the same property name, you can distinguish them using the following syntax: 'ClasseName::property_name' as property name. If you don't, the corresponding property of the first element found will be set. + - The #GESTimelineElement parent object + The #GESTimelineElement parent object - The name of the first property to set + The name of the first property to set - value for the first property, followed optionally by more + value for the first property, followed optionally by more name/return location pairs, followed by NULL @@ -8663,98 +13605,141 @@ name/return location pairs, followed by NULL - Set the duration of the object + Set the duration of the object Note that if the timeline snap-distance property of the timeline containing @self is set, @self will properly snap to its neighboors. + - %TRUE if @duration could be set. + %TRUE if @duration could be set. - a #GESTimelineElement + a #GESTimelineElement - the duration in #GstClockTime + the duration in #GstClockTime - Set the in-point, that is the moment at which the @self will start + Set the in-point, that is the moment at which the @self will start outputting data from its contents. + - %TRUE if @inpoint could be set. + %TRUE if @inpoint could be set. - a #GESTimelineElement + a #GESTimelineElement - the in-point in #GstClockTime + the in-point in #GstClockTime - Set the maximun duration of the object + Set the maximun duration of the object + - %TRUE if @maxduration could be set. + %TRUE if @maxduration could be set. - a #GESTimelineElement + a #GESTimelineElement - the maximum duration in #GstClockTime + the maximum duration in #GstClockTime - Sets the name of object, or gives @self a guaranteed unique name (if name is NULL). + Sets the name of object, or gives @self a guaranteed unique name (if name is NULL). This function makes a copy of the provided name, so the caller retains ownership of the name it sent. + - a #GESTimelineElement + a #GESTimelineElement - The name @self should take (if avalaible<) + The name @self should take (if avalaible<) - Sets the parent of @self to @parent. The parents needs to already + Sets the parent of @self to @parent. The parents needs to already own a hard reference on @self. + - %TRUE if @parent could be set or %FALSE when @self + %TRUE if @parent could be set or %FALSE when @self already had a parent or @self and @parent are the same. - a #GESTimelineElement + a #GESTimelineElement - new parent of self + new parent of self @@ -8762,95 +13747,135 @@ already had a parent or @self and @parent are the same. - Sets the priority of the object within the containing layer + Sets the priority of the object within the containing layer All priority management is done by GES itself now. To set #GESEffect priorities #ges_clip_set_top_effect_index should be used. + - %TRUE if @priority could be set. + %TRUE if @priority could be set. - a #GESTimelineElement + a #GESTimelineElement - the priority + the priority - Set the position of the object in its containing layer. + Set the position of the object in its containing layer. Note that if the snapping-distance property of the timeline containing @self is set, @self will properly snap to the edges around @start. + - %TRUE if @start could be set. + %TRUE if @start could be set. - a #GESTimelineElement + a #GESTimelineElement - the position in #GstClockTime + the position in #GstClockTime - Sets the timeline of @self to @timeline. + Sets the timeline of @self to @timeline. + - %TRUE if @timeline could be set or %FALSE when @timeline + %TRUE if @timeline could be set or %FALSE when @timeline already had a timeline. - a #GESTimelineElement + a #GESTimelineElement - The #GESTimeline @self is in + The #GESTimeline @self is in - Edits @self in trim mode. It allows you to modify the + Edits @self in trim mode. It allows you to modify the inpoint and start of @self. This will not change the overall timeline duration. Note that to trim the end of an self you can just set its duration. The same way as this method, it will take into account the snapping-distance property of the timeline in which @self is. + - %TRUE if the self as been trimmed properly, %FALSE if an error + %TRUE if the self as been trimmed properly, %FALSE if an error occured - The #GESTimelineElement to trim. + The #GESTimelineElement to trim. - The new start of @self in trim mode, will adapt the inpoint + The new start of @self in trim mode, will adapt the inpoint of @self accordingly - The duration (in nanoseconds) which will be used in the container + The duration (in nanoseconds) which will be used in the container - The in-point at which this #GESTimelineElement will start outputting data + The in-point at which this #GESTimelineElement will start outputting data from its contents (in nanoseconds). Ex : an in-point of 5 seconds means that the first outputted buffer will @@ -8861,68 +13886,96 @@ be the one located 5 seconds in the controlled resource. writable="1" construct="1" transfer-ownership="none"> - The maximum duration (in nanoseconds) of the #GESTimelineElement. + The maximum duration (in nanoseconds) of the #GESTimelineElement. - The name of the object + The name of the object - The parent container of the object + The parent container of the object - The priority of the object. + The priority of the object. Setting GESTimelineElement priorities is deprecated as all priority management is done by GES itself now. - Whether the element should be serialized. + Whether the element should be serialized. - The position of the object in its container (in nanoseconds). + The position of the object in its container (in nanoseconds). - The timeline in which @element is + The timeline in which @element is - The #GESTimelineElement that controls the object + The #GESTimelineElement that controls the object - The #GESAsset from which the object has been extracted + The #GESAsset from which the object has been extracted - position (in time) of the object + position (in time) of the object - Position in the media from which the object should be used + Position in the media from which the object should be used - duration of the object to be used + duration of the object to be used - The maximum duration the object can have + The maximum duration the object can have - priority of the object in the layer (0:top priority) + priority of the object in the layer (0:top priority) @@ -8936,7 +13989,7 @@ as all priority management is done by GES itself now. c:type="GESTimelineElementPrivate*"/> - + @@ -8945,18 +13998,24 @@ as all priority management is done by GES itself now. no-recurse="1" detailed="1" no-hooks="1"> - The deep notify signal is used to be notified of property changes of all + The deep notify signal is used to be notified of property changes of all the childs of @timeline_element - the object that originated the signal + the object that originated the signal - the property that changed + the property that changed @@ -8965,31 +14024,41 @@ the childs of @timeline_element - The GESTimelineElement base class. Subclasses should override at least + The GESTimelineElement base class. Subclasses should override at least @set_start @set_inpoint @set_duration @ripple @ripple_end @roll_start @roll_end and @trim. Vmethods in subclasses should apply all the operation they need to but the real method implementation is in charge of setting the proper field, and emit the notify signal. + + - %TRUE if @parent could be set or %FALSE when @self + %TRUE if @parent could be set or %FALSE when @self already had a parent or @self and @parent are the same. - a #GESTimelineElement + a #GESTimelineElement - new parent of self + new parent of self @@ -8997,17 +14066,24 @@ already had a parent or @self and @parent are the same. + - %TRUE if @start could be set. + %TRUE if @start could be set. - a #GESTimelineElement + a #GESTimelineElement - the position in #GstClockTime + the position in #GstClockTime @@ -9015,17 +14091,24 @@ already had a parent or @self and @parent are the same. + - %TRUE if @inpoint could be set. + %TRUE if @inpoint could be set. - a #GESTimelineElement + a #GESTimelineElement - the in-point in #GstClockTime + the in-point in #GstClockTime @@ -9033,17 +14116,24 @@ already had a parent or @self and @parent are the same. + - %TRUE if @duration could be set. + %TRUE if @duration could be set. - a #GESTimelineElement + a #GESTimelineElement - the duration in #GstClockTime + the duration in #GstClockTime @@ -9051,17 +14141,24 @@ already had a parent or @self and @parent are the same. + - %TRUE if @maxduration could be set. + %TRUE if @maxduration could be set. - a #GESTimelineElement + a #GESTimelineElement - the maximum duration in #GstClockTime + the maximum duration in #GstClockTime @@ -9069,17 +14166,24 @@ already had a parent or @self and @parent are the same. + - %TRUE if @priority could be set. + %TRUE if @priority could be set. - a #GESTimelineElement + a #GESTimelineElement - the priority + the priority @@ -9087,18 +14191,25 @@ already had a parent or @self and @parent are the same. + - %TRUE if the self as been rippled properly, %FALSE if an error + %TRUE if the self as been rippled properly, %FALSE if an error occured - The #GESTimelineElement to ripple. + The #GESTimelineElement to ripple. - The new start of @self in ripple mode. + The new start of @self in ripple mode. @@ -9106,18 +14217,25 @@ occured + - %TRUE if the self as been rippled properly, %FALSE if an error + %TRUE if the self as been rippled properly, %FALSE if an error occured - The #GESTimelineElement to ripple. + The #GESTimelineElement to ripple. - The new end (start + duration) of @self in ripple mode. It will + The new end (start + duration) of @self in ripple mode. It will basically only change the duration of @self. @@ -9126,18 +14244,25 @@ occured + - %TRUE if the self as been roll properly, %FALSE if an error + %TRUE if the self as been roll properly, %FALSE if an error occured - The #GESTimelineElement to roll + The #GESTimelineElement to roll - The new start of @self in roll mode, it will also adapat + The new start of @self in roll mode, it will also adapat the in-point of @self according @@ -9146,18 +14271,25 @@ the in-point of @self according + - %TRUE if the self as been rolled properly, %FALSE if an error + %TRUE if the self as been rolled properly, %FALSE if an error occured - The #GESTimelineElement to roll. + The #GESTimelineElement to roll. - The new end (start + duration) of @self in roll mode + The new end (start + duration) of @self in roll mode @@ -9165,18 +14297,25 @@ occured + - %TRUE if the self as been trimmed properly, %FALSE if an error + %TRUE if the self as been trimmed properly, %FALSE if an error occured - The #GESTimelineElement to trim. + The #GESTimelineElement to trim. - The new start of @self in trim mode, will adapt the inpoint + The new start of @self in trim mode, will adapt the inpoint of @self accordingly @@ -9185,6 +14324,7 @@ of @self accordingly + @@ -9200,6 +14340,7 @@ of @self accordingly + @@ -9218,6 +14359,7 @@ of @self accordingly + @@ -9233,19 +14375,26 @@ of @self accordingly + - TRUE if @element and @pspec could be found. FALSE otherwise. In that + TRUE if @element and @pspec could be found. FALSE otherwise. In that case the values for @pspec and @element are not modified. Unref @element after usage. - object to lookup the property in + object to lookup the property in - name of the property to look up. You can specify the name of the + name of the property to look up. You can specify the name of the class as such: "ClassName::property-name", to guarantee that you get the proper GParamSpec in case various GstElement-s contain the same property name. If you don't do so, you will get the first element found, having @@ -9258,7 +14407,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to a #GstElement that + pointer to a #GstElement that takes the real object to set property on @@ -9268,7 +14419,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to take the #GParamSpec + pointer to take the #GParamSpec describing the property @@ -9277,12 +14430,15 @@ usage. + - A #GESTimelineElement + A #GESTimelineElement @@ -9290,6 +14446,7 @@ usage. + @@ -9311,22 +14468,27 @@ usage. + - The priority of the first layer the element is in (note that only + The priority of the first layer the element is in (note that only groups can span over several layers). %GES_TIMELINE_ELEMENT_NO_LAYER_PRIORITY means that the element is not in a layer. - A #GESTimelineElement + A #GESTimelineElement - + @@ -9334,8 +14496,10 @@ means that the element is not in a layer. + + glib:type-name="GESTitleClip" glib:get-type="ges_title_clip_get_type" glib:type-struct="TitleClipClass"> - Renders the given text in the specified font, at specified position, and + Renders the given text in the specified font, at specified position, and with the specified background pattern. + - Creates a new #GESTitleClip + Creates a new #GESTitleClip + - The newly created #GESTitleClip, + The newly created #GESTitleClip, or %NULL if there was an error. @@ -9359,16 +14531,23 @@ or %NULL if there was an error. - Get the background used by @self. + Get the background used by @self. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - The color used by @self. + The color used by @self. - a #GESTitleClip + a #GESTitleClip @@ -9376,16 +14555,23 @@ underlying GESTrackElement instead - Get the pango font description used by @self. + Get the pango font description used by @self. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - The pango font description used by @self. + The pango font description used by @self. - a #GESTitleClip + a #GESTitleClip @@ -9393,16 +14579,23 @@ underlying GESTrackElement instead - Get the horizontal aligment used by @self. + Get the horizontal aligment used by @self. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - The horizontal aligment used by @self. + The horizontal aligment used by @self. - a #GESTitleClip + a #GESTitleClip @@ -9410,16 +14603,23 @@ underlying GESTrackElement instead - Get the text currently set on @self. + Get the text currently set on @self. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - The text currently set on @self. + The text currently set on @self. - a #GESTitleClip + a #GESTitleClip @@ -9427,16 +14627,23 @@ underlying GESTrackElement instead - Get the color used by @self. + Get the color used by @self. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - The color used by @self. + The color used by @self. - a #GESTitleClip + a #GESTitleClip @@ -9444,16 +14651,23 @@ underlying GESTrackElement instead - Get the vertical aligment used by @self. + Get the vertical aligment used by @self. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - The vertical aligment used by @self. + The vertical aligment used by @self. - a #GESTitleClip + a #GESTitleClip @@ -9461,16 +14675,23 @@ underlying GESTrackElement instead - Get the horizontal position used by @self. + Get the horizontal position used by @self. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - The horizontal position used by @self. + The horizontal position used by @self. - a #GESTitleClip + a #GESTitleClip @@ -9478,16 +14699,23 @@ underlying GESTrackElement instead - Get the vertical position used by @self. + Get the vertical position used by @self. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - The vertical position used by @self. + The vertical position used by @self. - a #GESTitleClip + a #GESTitleClip @@ -9495,19 +14723,26 @@ underlying GESTrackElement instead - Sets the background of the text. + Sets the background of the text. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - the #GESTitleClip* to set + the #GESTitleClip* to set - The color @self is being set to + The color @self is being set to @@ -9515,19 +14750,26 @@ underlying GESTrackElement instead - Sets the color of the text. + Sets the color of the text. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - the #GESTitleClip* to set + the #GESTitleClip* to set - The color @self is being set to + The color @self is being set to @@ -9535,19 +14777,26 @@ underlying GESTrackElement instead - Sets the pango font description of the text. + Sets the pango font description of the text. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - the #GESTitleClip* + the #GESTitleClip* - the pango font description + the pango font description @@ -9555,19 +14804,26 @@ underlying GESTrackElement instead - Sets the horizontal aligment of the text. + Sets the horizontal aligment of the text. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - the #GESTitleClip* to set horizontal alignement of text on + the #GESTitleClip* to set horizontal alignement of text on - #GESTextHAlign + #GESTextHAlign @@ -9575,19 +14831,26 @@ underlying GESTrackElement instead - Sets the text this clip will render. + Sets the text this clip will render. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - the #GESTitleClip* to set text on + the #GESTitleClip* to set text on - the text to render. an internal copy of this text will be + the text to render. an internal copy of this text will be made. @@ -9596,19 +14859,26 @@ made. - Sets the vertical aligment of the text. + Sets the vertical aligment of the text. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - the #GESTitleClip* to set vertical alignement of text on + the #GESTitleClip* to set vertical alignement of text on - #GESTextVAlign + #GESTextVAlign @@ -9616,19 +14886,26 @@ underlying GESTrackElement instead - Sets the horizontal position of the text. + Sets the horizontal position of the text. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - the #GESTitleClip* to set + the #GESTitleClip* to set - The horizontal position @self is being set to + The horizontal position @self is being set to @@ -9636,19 +14913,26 @@ underlying GESTrackElement instead - Sets the vertical position of the text. + Sets the vertical position of the text. use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead + - the #GESTitleClip* to set + the #GESTitleClip* to set - The vertical position @self is being set to + The vertical position @self is being set to @@ -9658,7 +14942,9 @@ underlying GESTrackElement instead writable="1" construct="1" transfer-ownership="none"> - The background of the text + The background of the text use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead @@ -9668,7 +14954,9 @@ underlying GESTrackElement instead writable="1" construct="1" transfer-ownership="none"> - The color of the text + The color of the text use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead @@ -9678,7 +14966,9 @@ underlying GESTrackElement instead writable="1" construct="1" transfer-ownership="none"> - Pango font description string + Pango font description string use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead @@ -9688,7 +14978,9 @@ underlying GESTrackElement instead writable="1" construct="1" transfer-ownership="none"> - Horizontal alignment of the text + Horizontal alignment of the text use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead @@ -9698,7 +14990,9 @@ underlying GESTrackElement instead writable="1" construct="1" transfer-ownership="none"> - The text to diplay + The text to diplay use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead @@ -9708,7 +15002,9 @@ underlying GESTrackElement instead writable="1" construct="1" transfer-ownership="none"> - Vertical alignent of the text + Vertical alignent of the text use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead @@ -9718,7 +15014,9 @@ underlying GESTrackElement instead writable="1" construct="1" transfer-ownership="none"> - The horizontal position of the text + The horizontal position of the text use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead @@ -9728,7 +15026,9 @@ underlying GESTrackElement instead writable="1" construct="1" transfer-ownership="none"> - The vertical position of the text + The vertical position of the text use ges_track_element_get/set_children_properties on the underlying GESTrackElement instead @@ -9740,7 +15040,7 @@ underlying GESTrackElement instead - + @@ -9748,16 +15048,18 @@ underlying GESTrackElement instead + - + + glib:type-name="GESTitleSource" glib:get-type="ges_title_source_get_type" glib:type-struct="TitleSourceClass"> - #GESTitleSource is a GESTimelineElement that implements the notion + #GESTitleSource is a GESTimelineElement that implements the notion of titles in GES. ## Children Properties @@ -9829,18 +15133,26 @@ You can use the following children properties through the </tbody> </tgroup> </informaltable> + - Get the background used by @source. + Get the background used by @source. + - The background used by @source. + The background used by @source. - a #GESTitleSource + a #GESTitleSource @@ -9849,31 +15161,45 @@ You can use the following children properties through the c:identifier="ges_title_source_get_font_desc" deprecated="1" deprecated-version="1.16"> - Get the pango font description used by @source. + Get the pango font description used by @source. Use ges_timeline_element_get_child_property instead (this actually returns a newly allocated string) + - The pango font description used by this + The pango font description used by this @source. - a #GESTitleSource + a #GESTitleSource - Get the horizontal aligment used by @source. + Get the horizontal aligment used by @source. + - The horizontal aligment used by @source. + The horizontal aligment used by @source. - a #GESTitleSource + a #GESTitleSource @@ -9882,122 +15208,178 @@ You can use the following children properties through the c:identifier="ges_title_source_get_text" deprecated="1" deprecated-version="1.16"> - Get the text currently set on the @source. + Get the text currently set on the @source. Use ges_timeline_element_get_child_property instead (this actually returns a newly allocated string) + - The text currently set on the @source. + The text currently set on the @source. - a #GESTitleSource + a #GESTitleSource - Get the color used by @source. + Get the color used by @source. + - The color used by @source. + The color used by @source. - a #GESTitleSource + a #GESTitleSource - Get the vertical aligment used by @source. + Get the vertical aligment used by @source. + - The vertical aligment used by @source. + The vertical aligment used by @source. - a #GESTitleSource + a #GESTitleSource - Get the horizontal position used by @source. + Get the horizontal position used by @source. + - The horizontal position used by @source. + The horizontal position used by @source. - a #GESTitleSource + a #GESTitleSource - Get the vertical position used by @source. + Get the vertical position used by @source. + - The vertical position used by @source. + The vertical position used by @source. - a #GESTitleSource + a #GESTitleSource - Sets the color of the background + Sets the color of the background + - the #GESTitleSource* to set + the #GESTitleSource* to set - the color @self is being set to + the color @self is being set to - Set the pango font description this source will use to render + Set the pango font description this source will use to render the text. + - the #GESTitleSource + the #GESTitleSource - the pango font description + the pango font description - Sets the vertical aligment of the text. + Sets the vertical aligment of the text. + - the #GESTitleSource* to set text on + the #GESTitleSource* to set text on - #GESTextHAlign + #GESTextHAlign @@ -10005,19 +15387,26 @@ the text. - Sets the text this track element will render. + Sets the text this track element will render. use ges_track_element_get/set_children_properties on the GESTrackElement instead + - the #GESTitleSource* to set text on + the #GESTitleSource* to set text on - the text to render. an internal copy of this text will be + the text to render. an internal copy of this text will be made. @@ -10025,66 +15414,94 @@ made. - Sets the color of the text. + Sets the color of the text. + - the #GESTitleSource* to set + the #GESTitleSource* to set - the color @self is being set to + the color @self is being set to - Sets the vertical aligment of the text. + Sets the vertical aligment of the text. + - the #GESTitleSource* to set text on + the #GESTitleSource* to set text on - #GESTextVAlign + #GESTextVAlign - Sets the horizontal position of the text. + Sets the horizontal position of the text. + - the #GESTitleSource* to set + the #GESTitleSource* to set - the horizontal position @self is being set to + the horizontal position @self is being set to - Sets the vertical position of the text. + Sets the vertical position of the text. + - the #GESTitleSource* to set + the #GESTitleSource* to set - the color @self is being set to + the color @self is being set to @@ -10096,7 +15513,7 @@ made. - + @@ -10104,12 +15521,15 @@ made. + - parent class + parent class - + @@ -10117,6 +15537,7 @@ made. + glib:type-name="GESTrack" glib:get-type="ges_track_get_type" glib:type-struct="TrackClass"> - Corresponds to one output format (i.e. audio OR video). + Corresponds to one output format (i.e. audio OR video). Contains the compatible TrackElement(s). + - Creates a new #GESTrack with the given @type and @caps. + Creates a new #GESTrack with the given @type and @caps. The newly created track will steal a reference to the caps. If you wish to use those caps elsewhere, you will have to take an extra reference. + - A new #GESTrack. + A new #GESTrack. - The type of track + The type of track - The caps to restrict the output of the track to. + The caps to restrict the output of the track to. + @@ -10161,63 +15595,91 @@ use those caps elsewhere, you will have to take an extra reference. - Adds the given object to the track. Sets the object's controlling track, + Adds the given object to the track. Sets the object's controlling track, and thus takes ownership of the @object. An object can only be added to one track. + - #TRUE if the object was properly added. #FALSE if the track does not + #TRUE if the object was properly added. #FALSE if the track does not want to accept the object. - a #GESTrack + a #GESTrack - the #GESTrackElement to add + the #GESTrackElement to add - Commits all the pending changes of the TrackElement contained in the + Commits all the pending changes of the TrackElement contained in the track. When timing changes happen in a timeline, the changes are not directly done inside NLE. This method needs to be called so any changes on a clip contained in the timeline actually happen at the media processing level. + - %TRUE if something as been commited %FALSE if nothing needed + %TRUE if something as been commited %FALSE if nothing needed to be commited - a #GESTrack + a #GESTrack - Get the #GstCaps this track is configured to output. + Get the #GstCaps this track is configured to output. + - The #GstCaps this track is configured to output. + The #GstCaps this track is configured to output. - a #GESTrack + a #GESTrack - Gets the #GESTrackElement contained in @track + Gets the #GESTrackElement contained in @track + - the list of + the list of #GESTrackElement present in the Track sorted by priority and start. @@ -10225,54 +15687,79 @@ to be commited - a #GESTrack + a #GESTrack - Gets if the underlying #NleComposition contains an expandable mixer. + Gets if the underlying #NleComposition contains an expandable mixer. + - #True if there is a mixer, #False otherwise. + #True if there is a mixer, #False otherwise. - a #GESTrack + a #GESTrack - Get the #GESTimeline this track belongs to. Can be %NULL. + Get the #GESTimeline this track belongs to. Can be %NULL. + - The #GESTimeline this track belongs to. Can be %NULL. + The #GESTimeline this track belongs to. Can be %NULL. - a #GESTrack + a #GESTrack - Removes the object from the track and unparents it. + Removes the object from the track and unparents it. Unparenting it means the reference owned by @track on the @object will be removed. If you wish to use the @object after this function, make sure you call gst_object_ref() before removing it from the @track. + - #TRUE if the object was removed, else #FALSE if the track + #TRUE if the object was removed, else #FALSE if the track could not remove the object (like if it didn't belong to the track). - a #GESTrack + a #GESTrack - the #GESTrackElement to remove + the #GESTrackElement to remove @@ -10280,19 +15767,26 @@ could not remove the object (like if it didn't belong to the track). - Sets the function that should be used to create the GstElement used to fill gaps. + Sets the function that should be used to create the GstElement used to fill gaps. To avoid to provide such a function we advice you to use the #ges_audio_track_new and #ges_video_track_new constructor when possible. + - a #GESTrack + a #GESTrack - The #GESCreateElementForGapFunc that will be used + The #GESCreateElementForGapFunc that will be used to create #GstElement to fill gaps @@ -10300,73 +15794,101 @@ to create #GstElement to fill gaps - Sets if the #GESTrack should be mixing. + Sets if the #GESTrack should be mixing. + - a #GESTrack + a #GESTrack - TRUE if the track should be mixing, FALSE otherwise. + TRUE if the track should be mixing, FALSE otherwise. - Sets the given @caps as the caps the track has to output. + Sets the given @caps as the caps the track has to output. + - a #GESTrack + a #GESTrack - the #GstCaps to set + the #GstCaps to set - Sets @timeline as the timeline controlling @track. + Sets @timeline as the timeline controlling @track. + - a #GESTrack + a #GESTrack - a #GESTimeline + a #GESTimeline - Updates the restriction caps by modifying all the fields present in @caps + Updates the restriction caps by modifying all the fields present in @caps in the original restriction caps. If for example the current restriction caps are video/x-raw, format=I420, width=360 and @caps is video/x-raw, format=RGB, the restriction caps will be updated to video/x-raw, format=RGB, width=360. Modification happens for each structure in the new caps, and one can add new fields or structures through that function. + - a #GESTrack + a #GESTrack - the #GstCaps to update with + the #GstCaps to update with @@ -10375,14 +15897,18 @@ one can add new fields or structures through that function. writable="1" construct-only="1" transfer-ownership="none"> - Caps used to filter/choose the output stream. This is generally set to + Caps used to filter/choose the output stream. This is generally set to a generic set of caps like 'video/x-raw' for raw video. Default value: #GST_CAPS_ANY. - Current duration of the track + Current duration of the track Default value: O @@ -10391,11 +15917,15 @@ Default value: O writable="1" construct="1" transfer-ownership="none"> - Whether layer mixing is activated or not on the track. + Whether layer mixing is activated or not on the track. - Caps used to filter/choose the output stream. + Caps used to filter/choose the output stream. Default value: #GST_CAPS_ANY. @@ -10404,7 +15934,9 @@ Default value: #GST_CAPS_ANY. writable="1" construct-only="1" transfer-ownership="none"> - Type of stream the track outputs. This is used when creating the #GESTrack + Type of stream the track outputs. This is used when creating the #GESTrack to specify in generic terms what type of content will be outputted. It also serves as a 'fast' way to check what type of data will be outputted @@ -10416,14 +15948,16 @@ property. - a #GESTrackType indicting the basic type of the track. + a #GESTrackType indicting the basic type of the track. - + @@ -10433,25 +15967,33 @@ property. - Will be emitted after a track element was added to the track. + Will be emitted after a track element was added to the track. - the #GESTrackElement that was added. + the #GESTrackElement that was added. - Will be emitted after a track element was removed from the track. + Will be emitted after a track element was removed from the track. - the #GESTrackElement that was removed. + the #GESTrackElement that was removed. @@ -10460,11 +16002,13 @@ property. + + @@ -10476,7 +16020,7 @@ property. - + @@ -10489,15 +16033,19 @@ property. glib:type-name="GESTrackElement" glib:get-type="ges_track_element_get_type" glib:type-struct="TrackElementClass"> - #GESTrackElement is the Base Class for any object that can be contained in a + #GESTrackElement is the Base Class for any object that can be contained in a #GESTrack. It contains the basic information as to the location of the object within its container, like the start position, the inpoint, the duration and the priority. + + @@ -10511,6 +16059,7 @@ priority. + @@ -10521,6 +16070,7 @@ priority. + @@ -10531,6 +16081,7 @@ priority. + @@ -10541,6 +16092,7 @@ priority. + @@ -10556,23 +16108,32 @@ priority. - Looks up which @element and @pspec would be effected by the given @name. If various + Looks up which @element and @pspec would be effected by the given @name. If various contained elements have this property name you will get the first one, unless you specify the class name in @name. Use #ges_timeline_element_lookup_child + - TRUE if @element and @pspec could be found. FALSE otherwise. In that + TRUE if @element and @pspec could be found. FALSE otherwise. In that case the values for @pspec and @element are not modified. Unref @element after usage. - object to lookup the property in + object to lookup the property in - name of the property to look up. You can specify the name of the + name of the property to look up. You can specify the name of the class as such: "ClassName::property-name", to guarantee that you get the proper GParamSpec in case various GstElement-s contain the same property name. If you don't do so, you will get the first element found, having @@ -10585,7 +16146,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to a #GstElement that + pointer to a #GstElement that takes the real object to set property on @@ -10595,7 +16158,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to take the #GParamSpec + pointer to take the #GParamSpec describing the property @@ -10603,27 +16168,36 @@ usage. - Looks for the properties defines with the various parametters and add + Looks for the properties defines with the various parametters and add them to the hashtable of children properties. To be used by subclasses only + - The #GESTrackElement to set chidlren props on + The #GESTrackElement to set chidlren props on - The GstElement to retrieve properties from + The GstElement to retrieve properties from - + An array of categories of GstElement to take into account (as defined in the factory meta "klass" field) @@ -10634,7 +16208,9 @@ take into account (as defined in the factory meta "klass" field) transfer-ownership="none" nullable="1" allow-none="1"> - A + A blacklist of elements factory names to not take into account @@ -10644,7 +16220,9 @@ blacklist of elements factory names to not take into account transfer-ownership="none" nullable="1" allow-none="1"> - A list + A list of propery names to add as children properties @@ -10653,20 +16231,29 @@ of propery names to add as children properties - Edit @object in the different exisiting #GESEditMode modes. In the case of + Edit @object in the different exisiting #GESEditMode modes. In the case of slide, and roll, you need to specify a #GESEdge + - %TRUE if the object as been edited properly, %FALSE if an error + %TRUE if the object as been edited properly, %FALSE if an error occured - the #GESTrackElement to edit + the #GESTrackElement to edit - The layers you want the edit to + The layers you want the edit to happen in, %NULL means that the edition is done in all the #GESLayers contained in the current timeline. FIXME: This is not implemented yet. @@ -10675,23 +16262,32 @@ occured - The #GESEditMode in which the edition will happen. + The #GESEditMode in which the edition will happen. - The #GESEdge the edit should happen on. + The #GESEdge the edit should happen on. - The position at which to edit @object (in nanosecond) + The position at which to edit @object (in nanosecond) + - A + A #GHashTable containing all property_name: GstControlBinding @@ -10700,7 +16296,9 @@ occured - The #TrackElement from which to get all set bindings + The #TrackElement from which to get all set bindings @@ -10709,22 +16307,31 @@ occured c:identifier="ges_track_element_get_child_properties" introspectable="0" deprecated="1"> - Gets properties of a child of @object. + Gets properties of a child of @object. Use #ges_timeline_element_get_child_properties + - The origin #GESTrackElement + The origin #GESTrackElement - The name of the first property to get + The name of the first property to get - return location for the first property, followed optionally by more + return location for the first property, followed optionally by more name/return location pairs, followed by NULL @@ -10734,7 +16341,9 @@ name/return location pairs, followed by NULL c:identifier="ges_track_element_get_child_property" introspectable="0" deprecated="1"> - In general, a copy is made of the property contents and + In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling g_value_unset(). @@ -10744,24 +16353,33 @@ Note that #ges_track_element_get_child_property is really intended for language bindings, #ges_track_element_get_child_properties is much more convenient for C programming. Use #ges_timeline_element_get_child_property + - %TRUE if the property was found, %FALSE otherwize + %TRUE if the property was found, %FALSE otherwize - The origin #GESTrackElement + The origin #GESTrackElement - The name of the property + The name of the property - return location for the property value, it will + return location for the property value, it will be initialized if it is initialized with 0 @@ -10771,25 +16389,34 @@ be initialized if it is initialized with 0 c:identifier="ges_track_element_get_child_property_by_pspec" introspectable="0" deprecated="1"> - Gets a property of a child of @object. + Gets a property of a child of @object. Use #ges_timeline_element_get_child_property_by_pspec + - a #GESTrackElement + a #GESTrackElement - The #GParamSpec that specifies the property you want to get + The #GParamSpec that specifies the property you want to get - return location for the value + return location for the value @@ -10798,25 +16425,34 @@ be initialized if it is initialized with 0 c:identifier="ges_track_element_get_child_property_valist" introspectable="0" deprecated="1"> - Gets a property of a child of @object. If there are various child elements + Gets a property of a child of @object. If there are various child elements that have the same property name, you can distinguish them using the following syntax: 'ClasseName::property_name' as property name. If you don't, the corresponding property of the first element found will be set. Use #ges_timeline_element_get_child_property_valist + - The #GESTrackElement parent object + The #GESTrackElement parent object - The name of the first property to get + The name of the first property to get - value for the first property, followed optionally by more + value for the first property, followed optionally by more name/return location pairs, followed by NULL @@ -10824,34 +16460,50 @@ name/return location pairs, followed by NULL - Looks up the various controlled properties for that #GESTrackElement, + Looks up the various controlled properties for that #GESTrackElement, and returns the #GstControlBinding which controls @property_name. + - the #GstControlBinding associated with + the #GstControlBinding associated with @property_name, or %NULL if that property is not controlled. - the #GESTrackElement in which to lookup the bindings. + the #GESTrackElement in which to lookup the bindings. - The property_name to which the binding is associated. + The property_name to which the binding is associated. - Get the #GstElement this track element is controlling within GNonLin. + Get the #GstElement this track element is controlling within GNonLin. + - the #GstElement this track element is controlling + the #GstElement this track element is controlling within GNonLin. - a #GESTrackElement + a #GESTrackElement @@ -10859,15 +16511,22 @@ within GNonLin. - Get the NleObject object this object is controlling. + Get the NleObject object this object is controlling. use #ges_track_element_get_nleobject instead. + - the NleObject object this object is controlling. + the NleObject object this object is controlling. - a #GESTrackElement + a #GESTrackElement @@ -10875,34 +16534,49 @@ within GNonLin. - Get the GNonLin object this object is controlling. + Get the GNonLin object this object is controlling. + - the GNonLin object this object is controlling. + the GNonLin object this object is controlling. - a #GESTrackElement + a #GESTrackElement - Get the #GESTrack to which this object belongs. + Get the #GESTrack to which this object belongs. + - The #GESTrack to which this object + The #GESTrack to which this object belongs. Can be %NULL if it is not in any track - a #GESTrackElement + a #GESTrackElement + @@ -10913,15 +16587,22 @@ belongs. Can be %NULL if it is not in any track - Lets you know if @object will be used for playback and rendering, + Lets you know if @object will be used for playback and rendering, or not. + - %TRUE if @object is active, %FALSE otherwize + %TRUE if @object is active, %FALSE otherwize - a #GESTrackElement + a #GESTrackElement @@ -10929,11 +16610,16 @@ or not. - Gets an array of #GParamSpec* for all configurable properties of the + Gets an array of #GParamSpec* for all configurable properties of the children of @object. Use #ges_timeline_element_list_children_properties + - an array of #GParamSpec* which should be freed after use or + an array of #GParamSpec* which should be freed after use or %NULL if something went wrong @@ -10941,14 +16627,18 @@ children of @object. - The #GESTrackElement to get the list of children properties from + The #GESTrackElement to get the list of children properties from - return location for the length of the returned array + return location for the length of the returned array @@ -10956,23 +16646,32 @@ children of @object. - Looks up which @element and @pspec would be effected by the given @name. If various + Looks up which @element and @pspec would be effected by the given @name. If various contained elements have this property name you will get the first one, unless you specify the class name in @name. Use #ges_timeline_element_lookup_child + - TRUE if @element and @pspec could be found. FALSE otherwise. In that + TRUE if @element and @pspec could be found. FALSE otherwise. In that case the values for @pspec and @element are not modified. Unref @element after usage. - object to lookup the property in + object to lookup the property in - name of the property to look up. You can specify the name of the + name of the property to look up. You can specify the name of the class as such: "ClassName::property-name", to guarantee that you get the proper GParamSpec in case various GstElement-s contain the same property name. If you don't do so, you will get the first element found, having @@ -10985,7 +16684,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to a #GstElement that + pointer to a #GstElement that takes the real object to set property on @@ -10995,7 +16696,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to take the #GParamSpec + pointer to take the #GParamSpec describing the property @@ -11003,37 +16706,55 @@ usage. - Removes a #GstControlBinding from @object. + Removes a #GstControlBinding from @object. + - %TRUE if the binding could be removed, %FALSE if an error + %TRUE if the binding could be removed, %FALSE if an error occured - the #GESTrackElement on which to set a control binding + the #GESTrackElement on which to set a control binding - The name of the property to control. + The name of the property to control. - Sets the usage of the @object. If @active is %TRUE, the object will be used for + Sets the usage of the @object. If @active is %TRUE, the object will be used for playback and rendering, else it will be ignored. + - %TRUE if the property was toggled, else %FALSE + %TRUE if the property was toggled, else %FALSE - a #GESTrackElement + a #GESTrackElement - visibility + visibility @@ -11042,25 +16763,34 @@ playback and rendering, else it will be ignored. c:identifier="ges_track_element_set_child_properties" introspectable="0" deprecated="1"> - Sets a property of a child of @object. If there are various child elements + Sets a property of a child of @object. If there are various child elements that have the same property name, you can distinguish them using the following syntax: 'ClasseName::property_name' as property name. If you don't, the corresponding property of the first element found will be set. Use #ges_timeline_element_set_child_properties + - The #GESTrackElement parent object + The #GESTrackElement parent object - The name of the first property to set + The name of the first property to set - value for the first property, followed optionally by more + value for the first property, followed optionally by more name/return location pairs, followed by NULL @@ -11070,27 +16800,38 @@ name/return location pairs, followed by NULL c:identifier="ges_track_element_set_child_property" introspectable="0" deprecated="1"> - Sets a property of a GstElement contained in @object. + Sets a property of a GstElement contained in @object. Note that #ges_track_element_set_child_property is really intended for language bindings, #ges_track_element_set_child_properties is much more convenient for C programming. use #ges_timeline_element_set_child_property instead + - %TRUE if the property was set, %FALSE otherwize + %TRUE if the property was set, %FALSE otherwize - The origin #GESTrackElement + The origin #GESTrackElement - The name of the property + The name of the property - the value + the value @@ -11099,22 +16840,31 @@ is much more convenient for C programming. c:identifier="ges_track_element_set_child_property_by_pspec" introspectable="0" deprecated="1"> - Sets a property of a child of @object. + Sets a property of a child of @object. Use #ges_timeline_element_set_child_property_by_spec + - a #GESTrackElement + a #GESTrackElement - The #GParamSpec that specifies the property you want to set + The #GParamSpec that specifies the property you want to set - the value + the value @@ -11123,25 +16873,34 @@ is much more convenient for C programming. c:identifier="ges_track_element_set_child_property_valist" introspectable="0" deprecated="1"> - Sets a property of a child of @object. If there are various child elements + Sets a property of a child of @object. If there are various child elements that have the same property name, you can distinguish them using the following syntax: 'ClasseName::property_name' as property name. If you don't, the corresponding property of the first element found will be set. Use #ges_timeline_element_set_child_property_valist + - The #GESTrackElement parent object + The #GESTrackElement parent object - The name of the first property to set + The name of the first property to set - value for the first property, followed optionally by more + value for the first property, followed optionally by more name/return location pairs, followed by NULL @@ -11149,29 +16908,42 @@ name/return location pairs, followed by NULL - Creates a #GstControlBinding and adds it to the #GstElement concerned by the + Creates a #GstControlBinding and adds it to the #GstElement concerned by the property. Use the same syntax as #ges_track_element_lookup_child for the property name. + - %TRUE if the binding could be created and added, %FALSE if an error + %TRUE if the binding could be created and added, %FALSE if an error occured - the #GESTrackElement on which to set a control binding + the #GESTrackElement on which to set a control binding - the #GstControlSource to set on the binding. + the #GstControlSource to set on the binding. - The name of the property to control. + The name of the property to control. - The type of binding to create. Currently the following values are valid: + The type of binding to create. Currently the following values are valid: - "direct": See #gst_direct_control_binding_new - "direct-absolute": See #gst_direct_control_binding_new_absolute @@ -11180,6 +16952,7 @@ occured + @@ -11193,7 +16966,9 @@ occured - Whether the object should be taken into account in the #GESTrack output. + Whether the object should be taken into account in the #GESTrack output. If #FALSE, then its contents will not be used in the resulting track. @@ -11219,32 +16994,40 @@ If #FALSE, then its contents will not be used in the resulting track. - + - The control-binding-added signal is emitted each time a control binding + The control-binding-added signal is emitted each time a control binding is added for a child property of @track_element - the #GstControlBinding that has been added + the #GstControlBinding that has been added - The control-binding-removed signal is emitted each time a control binding + The control-binding-removed signal is emitted each time a control binding is removed for a child property of @track_element - the #GstControlBinding that has been removed + the #GstControlBinding that has been removed @@ -11257,38 +17040,53 @@ is removed for a child property of @track_element glib:type-name="GESTrackElementAsset" glib:get-type="ges_track_element_asset_get_type" glib:type-struct="TrackElementAssetClass"> + - Get the GESAssetTrackType the #GESTrackElement extracted from @self + Get the GESAssetTrackType the #GESTrackElement extracted from @self should get into + - a #GESTrackType + a #GESTrackType - A #GESAssetObject + A #GESAssetObject - Set the #GESAssetTrackType the #GESTrackElement extracted from @self + Set the #GESAssetTrackType the #GESTrackElement extracted from @self should get into + - A #GESAssetObject + A #GESAssetObject - A #GESTrackType + A #GESTrackType @@ -11307,7 +17105,7 @@ should get into c:type="GESTrackElementAssetPrivate*"/> - + @@ -11315,11 +17113,12 @@ should get into + - + @@ -11327,21 +17126,28 @@ should get into + - Subclasses can override the @create_gnl_object method to override what type + Subclasses can override the @create_gnl_object method to override what type of GNonLin object will be created. + - name of the GNonLin GStElementFactory type to use. + name of the GNonLin GStElementFactory type to use. + @@ -11354,6 +17160,7 @@ of GNonLin object will be created. + @@ -11366,6 +17173,7 @@ of GNonLin object will be created. + @@ -11381,6 +17189,7 @@ of GNonLin object will be created. + @@ -11393,6 +17202,7 @@ of GNonLin object will be created. + @@ -11408,19 +17218,26 @@ of GNonLin object will be created. + - TRUE if @element and @pspec could be found. FALSE otherwise. In that + TRUE if @element and @pspec could be found. FALSE otherwise. In that case the values for @pspec and @element are not modified. Unref @element after usage. - object to lookup the property in + object to lookup the property in - name of the property to look up. You can specify the name of the + name of the property to look up. You can specify the name of the class as such: "ClassName::property-name", to guarantee that you get the proper GParamSpec in case various GstElement-s contain the same property name. If you don't do so, you will get the first element found, having @@ -11433,7 +17250,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to a #GstElement that + pointer to a #GstElement that takes the real object to set property on @@ -11443,7 +17262,9 @@ usage. transfer-ownership="full" optional="1" allow-none="1"> - pointer to take the #GParamSpec + pointer to take the #GParamSpec describing the property @@ -11451,7 +17272,7 @@ usage. - + @@ -11459,14 +17280,18 @@ usage. + + - Types of content handled by a track. If the content is not one of + Types of content handled by a track. If the content is not one of @GES_TRACK_TYPE_AUDIO, @GES_TRACK_TYPE_VIDEO or @GES_TRACK_TYPE_TEXT, the user of the #GESTrack must set the type to @GES_TRACK_TYPE_CUSTOM. @@ -11476,33 +17301,44 @@ by users value="1" c:identifier="GES_TRACK_TYPE_UNKNOWN" glib:nick="unknown"> - A track of unknown type (i.e. invalid) + A track of unknown type (i.e. invalid) - An audio track + An audio track - A video track + A video track - A text (subtitle) track + A text (subtitle) track - A custom-content track + A custom-content track + @@ -11521,7 +17357,10 @@ by users glib:type-name="GESTransition" glib:get-type="ges_transition_get_type" glib:type-struct="TransitionClass"> - Base class for media transitions. + Base class for media transitions. + @@ -11531,7 +17370,7 @@ by users - + @@ -11539,11 +17378,12 @@ by users + - + @@ -11555,7 +17395,9 @@ by users glib:type-name="GESTransitionClip" glib:get-type="ges_transition_clip_get_type" glib:type-struct="TransitionClipClass"> - Creates an object that mixes together the two underlying objects, A and B. + Creates an object that mixes together the two underlying objects, A and B. The A object is assumed to have a higher prioirity (lower number) than the B object. At the transition in point, only A will be visible, and by the end only B will be visible. @@ -11567,18 +17409,26 @@ supported. The ID of the ExtractableType is the nickname of the vtype property value. Note that this value can be changed after creation and the GESExtractable.asset value will be updated when needed. + - Creates a new #GESTransitionClip. + Creates a new #GESTransitionClip. + - a newly created #GESTransitionClip, + a newly created #GESTransitionClip, or %NULL if something went wrong. - the type of transition to create + the type of transition to create @@ -11586,15 +17436,22 @@ or %NULL if something went wrong. - Creates a new #GESTransitionClip for the provided @nick. + Creates a new #GESTransitionClip for the provided @nick. + - The newly created #GESTransitionClip, + The newly created #GESTransitionClip, or %NULL if something went wrong - a string representing the type of transition to create + a string representing the type of transition to create @@ -11603,14 +17460,18 @@ or %NULL if something went wrong writable="1" construct="1" transfer-ownership="none"> - a #GESVideoStandardTransitionType representing the wipe to use + a #GESVideoStandardTransitionType representing the wipe to use - a #GESVideoStandardTransitionType indicating the type of video transition + a #GESVideoStandardTransitionType indicating the type of video transition to apply. @@ -11619,7 +17480,7 @@ to apply. - + @@ -11627,12 +17488,13 @@ to apply. + - + @@ -11640,11 +17502,94 @@ to apply. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESUriClip" glib:get-type="ges_uri_clip_get_type" glib:type-struct="UriClipClass"> - Represents all the output streams from a particular uri. It is assumed that + Represents all the output streams from a particular uri. It is assumed that the URI points to a file of some type. + - Creates a new #GESUriClip for the provided @uri. + Creates a new #GESUriClip for the provided @uri. + - The newly created #GESUriClip, or + The newly created #GESUriClip, or %NULL if there was an error. - the URI the source should control + the URI the source should control - Get the location of the resource. + Get the location of the resource. + - The location of the resource. + The location of the resource. - the #GESUriClip + the #GESUriClip - Lets you know if @self is an image or not. + Lets you know if @self is an image or not. + - %TRUE if @self is a still image %FALSE otherwise. + %TRUE if @self is a still image %FALSE otherwise. - the #GESUriClip + the #GESUriClip - Lets you know if the audio track of @self is muted or not. + Lets you know if the audio track of @self is muted or not. + - %TRUE if the audio track of @self is muted, %FALSE otherwise. + %TRUE if the audio track of @self is muted, %FALSE otherwise. - the #GESUriClip + the #GESUriClip - Sets whether the clip is a still image or not. + Sets whether the clip is a still image or not. + - the #GESUriClip + the #GESUriClip - %TRUE if @self is a still image, %FALSE otherwise + %TRUE if @self is a still image, %FALSE otherwise - Sets whether the audio track of this clip is muted or not. + Sets whether the audio track of this clip is muted or not. + - the #GESUriClip on which to mute or unmute the audio track + the #GESUriClip on which to mute or unmute the audio track - %TRUE to mute @self audio track, %FALSE to unmute it + %TRUE to mute @self audio track, %FALSE to unmute it @@ -11745,7 +17735,9 @@ the URI points to a file of some type. writable="1" construct="1" transfer-ownership="none"> - Whether this uri clip represents a still image or not. This must be set + Whether this uri clip represents a still image or not. This must be set before create_track_elements is called. @@ -11753,7 +17745,9 @@ before create_track_elements is called. writable="1" construct="1" transfer-ownership="none"> - Whether the sound will be played or not. + Whether the sound will be played or not. writable="1" construct-only="1" transfer-ownership="none"> - The location of the file/resource to use. + The location of the file/resource to use. @@ -11776,7 +17772,7 @@ before create_track_elements is called. - + @@ -11788,10 +17784,13 @@ before create_track_elements is called. glib:type-name="GESUriClipAsset" glib:get-type="ges_uri_clip_asset_get_type" glib:type-struct="UriClipAssetClass"> - The #GESUriClipAsset is a special #GESAsset that lets you handle + The #GESUriClipAsset is a special #GESAsset that lets you handle the media file to use inside the GStreamer Editing Services. It has APIs that let you get information about the medias. Also, the tags found in the media file are set as Metadata of the Asset. + @@ -11799,20 +17798,29 @@ set as Metadata of the Asset. c:identifier="ges_uri_clip_asset_finish" version="1.16" throws="1"> - Finalize the request of an async #GESUriClipAsset + Finalize the request of an async #GESUriClipAsset + - The #GESUriClipAsset previously requested + The #GESUriClipAsset previously requested - The #GAsyncResult from which to get the newly created #GESUriClipAsset + The #GAsyncResult from which to get the newly created #GESUriClipAsset - Creates a #GESUriClipAsset for @uri + Creates a #GESUriClipAsset for @uri Example of request of a GESUriClipAsset: |[ @@ -11840,19 +17848,24 @@ filesource_asset_loaded_cb (GESAsset * source, GAsyncResult * res, gpointer user // The request: ges_uri_clip_asset_new (uri, (GAsyncReadyCallback) filesource_asset_loaded_cb, user_data); ]| + - The URI of the file for which to create a #GESUriClipAsset + The URI of the file for which to create a #GESUriClipAsset - optional %GCancellable object, %NULL to ignore. + optional %GCancellable object, %NULL to ignore. - a #GAsyncReadyCallback to call when the initialization is finished + a #GAsyncReadyCallback to call when the initialization is finished - The user data to pass when @callback is called + The user data to pass when @callback is called @@ -11876,16 +17893,23 @@ ges_uri_clip_asset_new (uri, (GAsyncReadyCallback) filesource_asset_loaded_cb, u - Creates a #GESUriClipAsset for @uri syncronously. You should avoid + Creates a #GESUriClipAsset for @uri syncronously. You should avoid to use it in application, and rather create #GESUriClipAsset asynchronously + - A reference to the requested asset or %NULL if + A reference to the requested asset or %NULL if an error happened - The URI of the file for which to create a #GESUriClipAsset. + The URI of the file for which to create a #GESUriClipAsset. You can also use multi file uris for #GESMultiFileSource. @@ -11893,36 +17917,55 @@ You can also use multi file uris for #GESMultiFileSource. - Gets duration of the file represented by @self + Gets duration of the file represented by @self + - The duration of @self + The duration of @self - a #GESUriClipAsset + a #GESUriClipAsset - Gets #GstDiscovererInfo about the file + Gets #GstDiscovererInfo about the file + - #GstDiscovererInfo of specified asset + #GstDiscovererInfo of specified asset - Target asset + Target asset - Get the GESUriSourceAsset @self containes + Get the GESUriSourceAsset @self containes + - a + a #GList of #GESUriSourceAsset @@ -11930,27 +17973,38 @@ You can also use multi file uris for #GESMultiFileSource. - A #GESUriClipAsset + A #GESUriClipAsset - Gets Whether the file represented by @self is an image or not + Gets Whether the file represented by @self is an image or not + - Whether the file represented by @self is an image or not + Whether the file represented by @self is an image or not - a #indent: Standard input:311: Error:Unexpected end of file + a #indent: Standard input:311: Error:Unexpected end of file GESUriClipAsset - The duration (in nanoseconds) of the media file + The duration (in nanoseconds) of the media file @@ -11960,7 +18014,7 @@ GESUriClipAsset - + @@ -11968,6 +18022,7 @@ GESUriClipAsset + @@ -11979,6 +18034,7 @@ GESUriClipAsset + @@ -12004,23 +18060,30 @@ GESUriClipAsset - + - Sets the timeout of #GESUriClipAsset loading + Sets the timeout of #GESUriClipAsset loading + - The #GESUriClipAssetClass on which to set the discoverer timeout + The #GESUriClipAssetClass on which to set the discoverer timeout - The timeout to set + The timeout to set @@ -12029,20 +18092,23 @@ GESUriClipAsset + + - + + glib:type-name="GESUriSourceAsset" glib:get-type="ges_uri_source_asset_get_type" glib:type-struct="UriSourceAssetClass"> - NOTE: You should never request such a #GESAsset as they will be created automatically + NOTE: You should never request such a #GESAsset as they will be created automatically by #GESUriClipAsset-s. + - Get the #GESUriClipAsset @self is contained in + Get the #GESUriClipAsset @self is contained in + - a #GESUriClipAsset + a #GESUriClipAsset - A #GESUriClipAsset + A #GESUriClipAsset - Get the #GstDiscovererStreamInfo user by @asset + Get the #GstDiscovererStreamInfo user by @asset + - a #GESUriClipAsset + a #GESUriClipAsset - A #GESUriClipAsset + A #GESUriClipAsset + @@ -12103,7 +18187,7 @@ by #GESUriClipAsset-s. - + @@ -12111,12 +18195,13 @@ by #GESUriClipAsset-s. + - + @@ -12124,19 +18209,159 @@ by #GESUriClipAsset-s. + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESVideoSource" glib:get-type="ges_video_source_get_type" glib:type-struct="VideoSourceClass"> - # Children Properties: + # Children Properties: You can use the following children properties through the #ges_track_element_set_child_property and alike set of methods: @@ -12203,6 +18430,7 @@ You can use the following children properties through the </tbody> </tgroup> </informaltable> + @@ -12212,7 +18440,7 @@ You can use the following children properties through the - + @@ -12220,11 +18448,13 @@ You can use the following children properties through the + + @@ -12236,12 +18466,14 @@ You can use the following children properties through the + - + + @@ -12251,6 +18483,7 @@ You can use the following children properties through the + - Transition type has not been set, + Transition type has not been set, - A bar moves from left to right, + A bar moves from left to right, - A bar moves from top to bottom, + A bar moves from top to bottom, - A box expands from the upper-left corner to the lower-right corner, + A box expands from the upper-left corner to the lower-right corner, - A box expands from the upper-right corner to the lower-left corner, + A box expands from the upper-right corner to the lower-left corner, - A box expands from the lower-right corner to the upper-left corner, + A box expands from the lower-right corner to the upper-left corner, - A box expands from the lower-left corner to the upper-right corner, + A box expands from the lower-left corner to the upper-right corner, - A box shape expands from each of the four corners toward the center, + A box shape expands from each of the four corners toward the center, - A box shape expands from the center of each quadrant toward the corners of each quadrant, + A box shape expands from the center of each quadrant toward the corners of each quadrant, - A central, vertical line splits and expands toward the left and right edges, + A central, vertical line splits and expands toward the left and right edges, - A central, horizontal line splits and expands toward the top and bottom edges, + A central, horizontal line splits and expands toward the top and bottom edges, - A box expands from the top edge's midpoint to the bottom corners, + A box expands from the top edge's midpoint to the bottom corners, - A box expands from the right edge's midpoint to the left corners, + A box expands from the right edge's midpoint to the left corners, - A box expands from the bottom edge's midpoint to the top corners, + A box expands from the bottom edge's midpoint to the top corners, - A box expands from the left edge's midpoint to the right corners, + A box expands from the left edge's midpoint to the right corners, - A diagonal line moves from the upper-left corner to the lower-right corner, + A diagonal line moves from the upper-left corner to the lower-right corner, - A diagonal line moves from the upper right corner to the lower-left corner, + A diagonal line moves from the upper right corner to the lower-left corner, - Two wedge shapes slide in from the top and bottom edges toward the center, + Two wedge shapes slide in from the top and bottom edges toward the center, - Two wedge shapes slide in from the left and right edges toward the center, + Two wedge shapes slide in from the left and right edges toward the center, - A diagonal line from the lower-left to upper-right corners splits and expands toward the opposite corners, + A diagonal line from the lower-left to upper-right corners splits and expands toward the opposite corners, - A diagonal line from upper-left to lower-right corners splits and expands toward the opposite corners, + A diagonal line from upper-left to lower-right corners splits and expands toward the opposite corners, - Four wedge shapes split from the center and retract toward the four edges, + Four wedge shapes split from the center and retract toward the four edges, - A diamond connecting the four edge midpoints simultaneously contracts toward the center and expands toward the edges, + A diamond connecting the four edge midpoints simultaneously contracts toward the center and expands toward the edges, - A wedge shape moves from top to bottom, + A wedge shape moves from top to bottom, - A wedge shape moves from right to left, + A wedge shape moves from right to left, - A wedge shape moves from bottom to top, + A wedge shape moves from bottom to top, - A wedge shape moves from left to right, + A wedge shape moves from left to right, - A 'V' shape extending from the bottom edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, + A 'V' shape extending from the bottom edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, - A 'V' shape extending from the left edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, + A 'V' shape extending from the left edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, - A 'V' shape extending from the top edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, + A 'V' shape extending from the top edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, - A 'V' shape extending from the right edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, + A 'V' shape extending from the right edge's midpoint to the opposite corners contracts toward the center and expands toward the edges, - A rectangle expands from the center., + A rectangle expands from the center., - A radial hand sweeps clockwise from the twelve o'clock position, + A radial hand sweeps clockwise from the twelve o'clock position, - A radial hand sweeps clockwise from the three o'clock position, + A radial hand sweeps clockwise from the three o'clock position, - A radial hand sweeps clockwise from the six o'clock position, + A radial hand sweeps clockwise from the six o'clock position, - A radial hand sweeps clockwise from the nine o'clock position, + A radial hand sweeps clockwise from the nine o'clock position, - Two radial hands sweep clockwise from the twelve and six o'clock positions, + Two radial hands sweep clockwise from the twelve and six o'clock positions, - Two radial hands sweep clockwise from the nine and three o'clock positions, + Two radial hands sweep clockwise from the nine and three o'clock positions, - Four radial hands sweep clockwise, + Four radial hands sweep clockwise, - A fan unfolds from the top edge, the fan axis at the center, + A fan unfolds from the top edge, the fan axis at the center, - A fan unfolds from the right edge, the fan axis at the center, + A fan unfolds from the right edge, the fan axis at the center, - Two fans, their axes at the center, unfold from the top and bottom, + Two fans, their axes at the center, unfold from the top and bottom, - Two fans, their axes at the center, unfold from the left and right, + Two fans, their axes at the center, unfold from the left and right, - A radial hand sweeps clockwise from the top edge's midpoint, + A radial hand sweeps clockwise from the top edge's midpoint, - A radial hand sweeps clockwise from the right edge's midpoint, + A radial hand sweeps clockwise from the right edge's midpoint, - A radial hand sweeps clockwise from the bottom edge's midpoint, + A radial hand sweeps clockwise from the bottom edge's midpoint, - A radial hand sweeps clockwise from the left edge's midpoint, + A radial hand sweeps clockwise from the left edge's midpoint, - Two radial hands sweep clockwise and counter-clockwise from the top and bottom edges' midpoints, + Two radial hands sweep clockwise and counter-clockwise from the top and bottom edges' midpoints, - Two radial hands sweep clockwise and counter-clockwise from the left and right edges' midpoints, + Two radial hands sweep clockwise and counter-clockwise from the left and right edges' midpoints, - Two radial hands attached at the top and bottom edges' midpoints sweep from right to left, + Two radial hands attached at the top and bottom edges' midpoints sweep from right to left, - Two radial hands attached at the left and right edges' midpoints sweep from top to bottom, + Two radial hands attached at the left and right edges' midpoints sweep from top to bottom, - A fan unfolds from the bottom, the fan axis at the top edge's midpoint, + A fan unfolds from the bottom, the fan axis at the top edge's midpoint, - A fan unfolds from the left, the fan axis at the right edge's midpoint, + A fan unfolds from the left, the fan axis at the right edge's midpoint, - A fan unfolds from the top, the fan axis at the bottom edge's midpoint, + A fan unfolds from the top, the fan axis at the bottom edge's midpoint, - A fan unfolds from the right, the fan axis at the left edge's midpoint, + A fan unfolds from the right, the fan axis at the left edge's midpoint, - Two fans, their axes at the top and bottom, unfold from the center, + Two fans, their axes at the top and bottom, unfold from the center, - Two fans, their axes at the left and right, unfold from the center, + Two fans, their axes at the left and right, unfold from the center, - A radial hand sweeps clockwise from the upper-left corner, + A radial hand sweeps clockwise from the upper-left corner, - A radial hand sweeps counter-clockwise from the lower-left corner., + A radial hand sweeps counter-clockwise from the lower-left corner., - A radial hand sweeps clockwise from the lower-right corner, + A radial hand sweeps clockwise from the lower-right corner, - A radial hand sweeps counter-clockwise from the upper-right corner, + A radial hand sweeps counter-clockwise from the upper-right corner, - Two radial hands attached at the upper-left and lower-right corners sweep down and up, + Two radial hands attached at the upper-left and lower-right corners sweep down and up, - Two radial hands attached at the lower-left and upper-right corners sweep down and up, + Two radial hands attached at the lower-left and upper-right corners sweep down and up, - Two radial hands attached at the upper-left and upper-right corners sweep down, + Two radial hands attached at the upper-left and upper-right corners sweep down, - Two radial hands attached at the upper-left and lower-left corners sweep to the right, + Two radial hands attached at the upper-left and lower-left corners sweep to the right, - Two radial hands attached at the lower-left and lower-right corners sweep up, + Two radial hands attached at the lower-left and lower-right corners sweep up, - Two radial hands attached at the upper-right and lower-right corners sweep to the left, + Two radial hands attached at the upper-right and lower-right corners sweep to the left, - Two radial hands attached at the midpoints of the top and bottom halves sweep from right to left, + Two radial hands attached at the midpoints of the top and bottom halves sweep from right to left, - Two radial hands attached at the midpoints of the left and right halves sweep from top to bottom, + Two radial hands attached at the midpoints of the left and right halves sweep from top to bottom, - Two sets of radial hands attached at the midpoints of the top and bottom halves sweep from top to bottom and bottom to top, + Two sets of radial hands attached at the midpoints of the top and bottom halves sweep from top to bottom and bottom to top, - Two sets of radial hands attached at the midpoints of the left and right halves sweep from left to right and right to left, + Two sets of radial hands attached at the midpoints of the left and right halves sweep from left to right and right to left, - Crossfade + Crossfade - The test pattern to produce + The test pattern to produce - A standard SMPTE test pattern + A standard SMPTE test pattern - Random noise + Random noise - A black image + A black image - A white image + A white image - A red image + A red image - A green image + A green image - A blue image + A blue image - Checkers pattern (1px) + Checkers pattern (1px) - Checkers pattern (2px) + Checkers pattern (2px) - Checkers pattern (4px) + Checkers pattern (4px) - Checkers pattern (8px) + Checkers pattern (8px) - Circular pattern + Circular pattern - Alternate between black and white + Alternate between black and white - SMPTE test pattern (75% color bars) + SMPTE test pattern (75% color bars) - Zone plate + Zone plate - Gamut checkers + Gamut checkers - Chroma zone plate + Chroma zone plate - Solid color + Solid color + - Get the video pattern used by the @source. + Get the video pattern used by the @source. + - The video pattern used by the @source. + The video pattern used by the @source. - a #GESVideoTestPattern + a #GESVideoTestPattern - Sets the source to use the given @pattern. + Sets the source to use the given @pattern. + - a #GESVideoTestSource + a #GESVideoTestSource - a #GESVideoTestPattern + a #GESVideoTestPattern @@ -12851,7 +19281,7 @@ You can use the following children properties through the c:type="GESVideoTestSourcePrivate*"/> - + @@ -12859,11 +19289,12 @@ You can use the following children properties through the + - + @@ -12871,6 +19302,7 @@ You can use the following children properties through the + + - Creates a new #GESVideoTrack of type #GES_TRACK_TYPE_VIDEO and with generic + Creates a new #GESVideoTrack of type #GES_TRACK_TYPE_VIDEO and with generic raw video caps ("video/x-raw"); + - A new #GESTrack. + A new #GESTrack. @@ -12896,7 +19334,7 @@ raw video caps ("video/x-raw"); - + @@ -12904,11 +19342,12 @@ raw video caps ("video/x-raw"); + - + @@ -12916,6 +19355,7 @@ raw video caps ("video/x-raw"); + glib:type-name="GESVideoTransition" glib:get-type="ges_video_transition_get_type" glib:type-struct="VideoTransitionClass"> + - Creates a new #GESVideoTransition. + Creates a new #GESVideoTransition. + - The newly created + The newly created #GESVideoTransition, or %NULL if there was an error. - Get the border property of @self, this value represents + Get the border property of @self, this value represents the border width of the transition. + - The border values of @self or -1 if not meaningful + The border values of @self or -1 if not meaningful (this will happen when not using a smpte transition). - The #GESVideoTransition to get the border from + The #GESVideoTransition to get the border from - Get the transition type used by @trans. + Get the transition type used by @trans. + - The transition type used by @trans. + The transition type used by @trans. - a #GESVideoTransition + a #GESVideoTransition - Get the invert property of @self, this value represents + Get the invert property of @self, this value represents the direction of the transition. + - The invert value of @self + The invert value of @self - The #GESVideoTransition to get the inversion from + The #GESVideoTransition to get the inversion from - Set the border property of @self, this value represents + Set the border property of @self, this value represents the border width of the transition. In case this value does not make sense for the current transition type, it is cached for later use. + - The #GESVideoTransition to set the border to + The #GESVideoTransition to set the border to - The value of the border to set on @object + The value of the border to set on @object - Set the invert property of @self, this value represents + Set the invert property of @self, this value represents the direction of the transition. In case this value does not make sense for the current transition type, it is cached for later use. + - The #GESVideoTransition to set invert on + The #GESVideoTransition to set invert on - %TRUE if the transition should be inverted %FALSE otherwise + %TRUE if the transition should be inverted %FALSE otherwise - Sets the transition being used to @type. + Sets the transition being used to @type. + - %TRUE if the transition type was properly changed, else %FALSE. + %TRUE if the transition type was properly changed, else %FALSE. - a #GESVideoTransition + a #GESVideoTransition - a #GESVideoStandardTransitionType + a #GESVideoStandardTransitionType - This value represents the border width of the transition. + This value represents the border width of the transition. - This value represents the direction of the transition. + This value represents the direction of the transition. @@ -13056,7 +19550,7 @@ for later use. c:type="GESVideoTransitionPrivate*"/> - + @@ -13064,12 +19558,15 @@ for later use. + - parent class + parent class - + @@ -13077,6 +19574,7 @@ for later use. + glib:type-name="GESVideoUriSource" glib:get-type="ges_video_uri_source_get_type" glib:type-struct="VideoUriSourceClass"> + - The location of the file/resource to use. + The location of the file/resource to use. @@ -13104,7 +19605,7 @@ for later use. - + @@ -13112,11 +19613,12 @@ for later use. + - + @@ -13124,7 +19626,35 @@ for later use. + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GESXmlFormatter" glib:get-type="ges_xml_formatter_get_type" glib:type-struct="XmlFormatterClass"> + @@ -13140,7 +19671,7 @@ for later use. - + @@ -13148,11 +19679,12 @@ for later use. + - + @@ -13160,9 +19692,11 @@ for later use. + + @@ -13176,7 +19710,9 @@ for later use. - Clean up any resources created by GES in ges_init(). + Clean up any resources created by GES in ges_init(). It is normally not needed to call this function in a normal application as the resources will automatically be freed when the program terminates. @@ -13184,6 +19720,7 @@ This function is therefore mostly used by testsuites and other memory profiling This function should be called from the thread where ges_init() was called. After this call GES should not be used until another ges_init() call. + @@ -13191,6 +19728,7 @@ After this call GES should not be used until another ges_init() call. + @@ -13201,7 +19739,9 @@ After this call GES should not be used until another ges_init() call. - Initialize the GStreamer Editing Service. Call this before any usage of + Initialize the GStreamer Editing Service. Call this before any usage of GES. You should take care of initilizing GStreamer before calling this function. @@ -13209,18 +19749,24 @@ MT safety. GStreamer Editing Services do not guarantee MT safety. An application is required to use GES APIs (including ges_deinit()) in the thread where ges_init() was called. + - Initializes the GStreamer Editing Services library, setting up internal path lists, + Initializes the GStreamer Editing Services library, setting up internal path lists, and loading evrything needed. This function will return %FALSE if GES could not be initialized for some reason. + - %TRUE if GES could be initialized. + %TRUE if GES could be initialized. @@ -13230,7 +19776,9 @@ for some reason. transfer-ownership="full" nullable="1" allow-none="1"> - pointer to application's argc + pointer to application's argc transfer-ownership="full" nullable="1" allow-none="1"> - pointer to application's argv + pointer to application's argv @@ -13249,7 +19799,9 @@ for some reason. - Returns a #GOptionGroup with GES's argument specifications. The + Returns a #GOptionGroup with GES's argument specifications. The group is set up to use standard GOption callbacks, so when using this group in combination with GOption parsing methods, all argument parsing and initialization is automated. @@ -13261,26 +19813,39 @@ If you use this function, you should make sure you initialise the GStreamer as one of the very first things in your program. That means you need to use gst_init_get_option_group() and add it to the option context before using the ges_init_get_option_group() result. + - a pointer to GES's option group. + a pointer to GES's option group. - Use this function to check if GES has been initialized with ges_init() + Use this function to check if GES has been initialized with ges_init() or ges_init_check(). + - %TRUE if initialization has been done, %FALSE otherwise. + %TRUE if initialization has been done, %FALSE otherwise. - List all @asset filtering per filter as defined by @filter. + List all @asset filtering per filter as defined by @filter. It copies the asset and thus will not be updated in time. + - The list of + The list of #GESAsset the object contains @@ -13288,7 +19853,9 @@ It copies the asset and thus will not be updated in time. - Type of assets to list, #GES_TYPE_EXTRACTABLE will list + Type of assets to list, #GES_TYPE_EXTRACTABLE will list all assets @@ -13296,24 +19863,34 @@ all assets - Get the last buffer @playsink showed + Get the last buffer @playsink showed + - A #GstSample containing the last frame from + A #GstSample containing the last frame from @playsink in the format defined by the @caps - The playsink to get last frame from + The playsink to get last frame from - The caps defining the format the return value will have + The caps defining the format the return value will have + @@ -13333,6 +19910,7 @@ all assets + @@ -13345,9 +19923,25 @@ all assets + + Helper macro to retrieve the project from which a #GESTimeline as been extracted + + + + The #GESTimeline from which to retrieve the project + + + + @@ -13359,12 +19953,16 @@ all assets + - Gets the version number of the GStreamer Editing Services library. + Gets the version number of the GStreamer Editing Services library. + @@ -13373,28 +19971,36 @@ all assets direction="out" caller-allocates="0" transfer-ownership="full"> - pointer to a guint to store the major version number + pointer to a guint to store the major version number - pointer to a guint to store the minor version number + pointer to a guint to store the minor version number - pointer to a guint to store the micro version number + pointer to a guint to store the micro version number - pointer to a guint to store the nano version number + pointer to a guint to store the nano version number diff --git a/gir-files/Gst-1.0.gir b/gir-files/Gst-1.0.gir index 4cfdeea3f..65ef88cd4 100644 --- a/gir-files/Gst-1.0.gir +++ b/gir-files/Gst-1.0.gir @@ -17,24 +17,73 @@ and/or use gtk-doc annotations. --> c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> - A datatype to hold the handle to an outstanding sync or async clock callback. + A datatype to hold the handle to an outstanding sync or async clock callback. + - A datatype to hold a time, measured in nanoseconds. + A datatype to hold a time, measured in nanoseconds. + - A datatype to hold a time difference, measured in nanoseconds. + A datatype to hold a time difference, measured in nanoseconds. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The allocator name for the default system memory allocator + The allocator name for the default system memory allocator + glib:type-name="GstAllocationParams" glib:get-type="gst_allocation_params_get_type" c:symbol-prefix="allocation_params"> - Parameters to control the allocation of memory + Parameters to control the allocation of memory + - flags to control allocation + flags to control allocation - the desired alignment of the memory + the desired alignment of the memory - the desired prefix + the desired prefix - the desired padding + the desired padding - + - Create a copy of @params. + Create a copy of @params. Free-function: gst_allocation_params_free + - a new ##GstAllocationParams, free with + a new ##GstAllocationParams, free with gst_allocation_params_free(). @@ -78,31 +143,43 @@ gst_allocation_params_free(). transfer-ownership="none" nullable="1" allow-none="1"> - a #GstAllocationParams + a #GstAllocationParams - Free @params + Free @params + - a #GstAllocationParams + a #GstAllocationParams - Initialize @params to its default values + Initialize @params to its default values + - a #GstAllocationParams + a #GstAllocationParams @@ -116,7 +193,9 @@ gst_allocation_params_free(). glib:type-name="GstAllocator" glib:get-type="gst_allocator_get_type" glib:type-struct="AllocatorClass"> - Memory is usually created by allocators with a gst_allocator_alloc() + Memory is usually created by allocators with a gst_allocator_alloc() method call. When %NULL is used as the allocator, the default allocator will be used. @@ -127,11 +206,17 @@ default allocator. New memory can be created with gst_memory_new_wrapped() that wraps the memory allocated elsewhere. + - Find a previously registered allocator with @name. When @name is %NULL, the + Find a previously registered allocator with @name. When @name is %NULL, the default allocator will be returned. + - a #GstAllocator or %NULL when + a #GstAllocator or %NULL when the allocator with @name was not registered. Use gst_object_unref() to release the allocator after usage. @@ -141,30 +226,41 @@ to release the allocator after usage. transfer-ownership="none" nullable="1" allow-none="1"> - the name of the allocator + the name of the allocator - Registers the memory @allocator with @name. This function takes ownership of + Registers the memory @allocator with @name. This function takes ownership of @allocator. + - the name of the allocator + the name of the allocator - #GstAllocator + #GstAllocator - Use @allocator to allocate a new memory block with memory that is at least + Use @allocator to allocate a new memory block with memory that is at least @size big. The optional @params can specify the prefix and padding for the memory. If @@ -179,8 +275,11 @@ When @allocator is %NULL, the default allocator will be used. The alignment in @params is given as a bitmask so that @align + 1 equals the amount of bytes to align to. For example, to align to 8 bytes, use an alignment of 7. + - a new #GstMemory. + a new #GstMemory. @@ -188,40 +287,55 @@ use an alignment of 7. transfer-ownership="none" nullable="1" allow-none="1"> - a #GstAllocator to use + a #GstAllocator to use - size of the visible memory area + size of the visible memory area - optional parameters + optional parameters - Free @memory that was previously allocated with gst_allocator_alloc(). + Free @memory that was previously allocated with gst_allocator_alloc(). + - a #GstAllocator to use + a #GstAllocator to use - the memory to free + the memory to free - Use @allocator to allocate a new memory block with memory that is at least + Use @allocator to allocate a new memory block with memory that is at least @size big. The optional @params can specify the prefix and padding for the memory. If @@ -236,8 +350,11 @@ When @allocator is %NULL, the default allocator will be used. The alignment in @params is given as a bitmask so that @align + 1 equals the amount of bytes to align to. For example, to align to 8 bytes, use an alignment of 7. + - a new #GstMemory. + a new #GstMemory. @@ -245,46 +362,64 @@ use an alignment of 7. transfer-ownership="none" nullable="1" allow-none="1"> - a #GstAllocator to use + a #GstAllocator to use - size of the visible memory area + size of the visible memory area - optional parameters + optional parameters - Free @memory that was previously allocated with gst_allocator_alloc(). + Free @memory that was previously allocated with gst_allocator_alloc(). + - a #GstAllocator to use + a #GstAllocator to use - the memory to free + the memory to free - Set the default allocator. This function takes ownership of @allocator. + Set the default allocator. This function takes ownership of @allocator. + - a #GstAllocator + a #GstAllocator @@ -296,38 +431,52 @@ use an alignment of 7. - the implementation of the GstMemoryMapFunction + the implementation of the GstMemoryMapFunction - the implementation of the GstMemoryUnmapFunction + the implementation of the GstMemoryUnmapFunction - the implementation of the GstMemoryCopyFunction + the implementation of the GstMemoryCopyFunction - the implementation of the GstMemoryShareFunction + the implementation of the GstMemoryShareFunction - the implementation of the GstMemoryIsSpanFunction + the implementation of the GstMemoryIsSpanFunction - the implementation of the GstMemoryMapFullFunction. + the implementation of the GstMemoryMapFullFunction. Will be used instead of @mem_map if present. (Since: 1.6) - the implementation of the GstMemoryUnmapFullFunction. + the implementation of the GstMemoryUnmapFullFunction. Will be used instead of @mem_unmap if present. (Since: 1.6) - + @@ -338,15 +487,23 @@ use an alignment of 7. - The #GstAllocator is used to create new memory. + The #GstAllocator is used to create new memory. + - Object parent class + Object parent class + - a new #GstMemory. + a new #GstMemory. @@ -354,18 +511,24 @@ use an alignment of 7. transfer-ownership="none" nullable="1" allow-none="1"> - a #GstAllocator to use + a #GstAllocator to use - size of the visible memory area + size of the visible memory area - optional parameters + optional parameters @@ -373,23 +536,28 @@ use an alignment of 7. + - a #GstAllocator to use + a #GstAllocator to use - the memory to free + the memory to free - + @@ -398,146 +566,690 @@ use an alignment of 7. glib:type-name="GstAllocatorFlags" glib:get-type="gst_allocator_flags_get_type" c:type="GstAllocatorFlags"> - Flags for allocators. + Flags for allocators. - The allocator has a custom alloc function. + The allocator has a custom alloc function. - first flag that can be used for custom purposes + first flag that can be used for custom purposes + - The #GstAtomicQueue object implements a queue that can be used from multiple + The #GstAtomicQueue object implements a queue that can be used from multiple threads without performing any blocking operations. + - Create a new atomic queue instance. @initial_size will be rounded up to the + Create a new atomic queue instance. @initial_size will be rounded up to the nearest power of 2 and used as the initial size of the queue. + - a new #GstAtomicQueue + a new #GstAtomicQueue - initial queue size + initial queue size - Get the amount of items in the queue. + Get the amount of items in the queue. + - the number of elements in the queue. + the number of elements in the queue. - a #GstAtomicQueue + a #GstAtomicQueue - Peek the head element of the queue without removing it from the queue. + Peek the head element of the queue without removing it from the queue. + - the head element of @queue or + the head element of @queue or %NULL when the queue is empty. - a #GstAtomicQueue + a #GstAtomicQueue - Get the head element of the queue. + Get the head element of the queue. + - the head element of @queue or %NULL when + the head element of @queue or %NULL when the queue is empty. - a #GstAtomicQueue + a #GstAtomicQueue - Append @data to the tail of the queue. + Append @data to the tail of the queue. + - a #GstAtomicQueue + a #GstAtomicQueue - the data + the data - Increase the refcount of @queue. + Increase the refcount of @queue. + - a #GstAtomicQueue + a #GstAtomicQueue - Unref @queue and free the memory when the refcount reaches 0. + Unref @queue and free the memory when the refcount reaches 0. + - a #GstAtomicQueue + a #GstAtomicQueue + + + + + + + + + + + + + + + + Gets the list with children in a bin. + + + + a #GstBin + + + + + Gets the children cookie that watches the children list. + + + + a #GstBin + + + + + + + + + + + + + + + + + + + Check if @bin will resync its state change when elements are added and +removed. + + + + A #GstBin + + + + + Gets the number of children in a bin. + + + + a #GstBin + + + + + + + + + + + + + + + + + - Combination of all possible fields that can be copied with + Combination of all possible fields that can be copied with gst_buffer_copy_into(). + - Combination of all possible metadata fields that can be copied with + Combination of all possible metadata fields that can be copied with gst_buffer_copy_into(). + + + The decoding timestamp (dts) in nanoseconds (as a #GstClockTime) +of the data in the buffer. This is the timestamp when the media should be +decoded or processed otherwise. +Value will be %GST_CLOCK_TIME_NONE if the dts is unknown. + + + + a #GstBuffer.: + + + + + Tests if the dts is known. + + + + a #GstBuffer + + + + + Returns the buffer decoding timestamp (dts) if valid, else the buffer +presentation time (pts) + + + + a #GstBuffer.: + + + + + The duration in nanoseconds (as a #GstClockTime) of the data in the buffer. +Value will be %GST_CLOCK_TIME_NONE if the duration is unknown. + + + + a #GstBuffer. + + + + + Tests if the duration is known. + + + + a #GstBuffer + + + + + A flags word containing #GstBufferFlags flags set on this buffer. + + + + a #GstBuffer. + + + + + Gives the status of a specific flag on a buffer. + + + + a #GstBuffer. + + + the #GstBufferFlags flag to check. + + + + + Sets a buffer flag on a buffer. + + + + a #GstBuffer. + + + the #GstBufferFlags flag to set. + + + + + Clears a buffer flag. + + + + a #GstBuffer. + + + the #GstBufferFlags flag to clear. + + + + + Tests if the buffer marks a discontinuity in the stream. + + + + a #GstBuffer + + + + + + + + + + + + + + + + + + + The offset in the source file of the beginning of this buffer. + + + + a #GstBuffer. + + + + + The offset in the source file of the end of this buffer. + + + + a #GstBuffer. + + + + + Tests if the end offset is known. + + + + a #GstBuffer + + + + + Tests if the start offset is known. + + + + a #GstBuffer + + + - Constant for no-offset return results. + Constant for no-offset return results. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Check if the bufferpool is flushing. Subclasses might want to check the +state of the pool in the acquire function. + + + + a GstBufferPool + + + + + The presentation timestamp (pts) in nanoseconds (as a #GstClockTime) +of the data in the buffer. This is the timestamp when the media should be +presented to the user. +Value will be %GST_CLOCK_TIME_NONE if the pts is unknown. + + + + a #GstBuffer.: + + + + + Tests if the pts is known. + + + + a #GstBuffer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GstBin" glib:get-type="gst_bin_get_type" glib:type-struct="BinClass"> - #GstBin is an element that can contain other #GstElement, allowing them to be + #GstBin is an element that can contain other #GstElement, allowing them to be managed as a group. Pads from the child elements can be ghosted to the bin, see #GstGhostPad. This makes the bin look like any other elements and enables creation of @@ -641,11 +1355,17 @@ depending on the event type. If all the elements return %TRUE, the bin will also return %TRUE, else %FALSE is returned. If no elements of the required type are in the bin, the event handler will return %TRUE. + - Creates a new bin with the given name. + Creates a new bin with the given name. + - a new #GstBin + a new #GstBin @@ -653,12 +1373,15 @@ handler will return %TRUE. transfer-ownership="none" nullable="1" allow-none="1"> - the name of the new bin + the name of the new bin + @@ -672,6 +1395,7 @@ handler will return %TRUE. + @@ -688,6 +1412,7 @@ handler will return %TRUE. + @@ -704,6 +1429,7 @@ handler will return %TRUE. + @@ -714,6 +1440,7 @@ handler will return %TRUE. + @@ -727,6 +1454,7 @@ handler will return %TRUE. + @@ -740,6 +1468,7 @@ handler will return %TRUE. + @@ -753,6 +1482,7 @@ handler will return %TRUE. + @@ -766,7 +1496,9 @@ handler will return %TRUE. - Adds the given element to the bin. Sets the element's parent, and thus + Adds the given element to the bin. Sets the element's parent, and thus takes ownership of the element. An element can only be added to one bin. If the element's pads are linked to other pads, the pads will be unlinked @@ -779,18 +1511,25 @@ before the element is added to the bin. > The bin or pipeline will not take care of this for you. MT safe. + - %TRUE if the element could be added, %FALSE if + %TRUE if the element could be added, %FALSE if the bin does not want to accept the element. - a #GstBin + a #GstBin - the #GstElement to add + the #GstElement to add @@ -798,118 +1537,163 @@ the bin does not want to accept the element. - Adds a %NULL-terminated list of elements to a bin. This function is + Adds a %NULL-terminated list of elements to a bin. This function is equivalent to calling gst_bin_add() for each member of the list. The return value of each gst_bin_add() is ignored. + - a #GstBin + a #GstBin - the #GstElement element to add to the bin + the #GstElement element to add to the bin - additional elements to add to the bin + additional elements to add to the bin - Recursively looks for elements with an unlinked pad of the given + Recursively looks for elements with an unlinked pad of the given direction within the specified bin and returns an unlinked pad if one is found, or %NULL otherwise. If a pad is found, the caller owns a reference to it and should use gst_object_unref() on the pad when it is not needed any longer. + - unlinked pad of the given + unlinked pad of the given direction, %NULL. - bin in which to look for elements with unlinked pads + bin in which to look for elements with unlinked pads - whether to look for an unlinked source or sink pad + whether to look for an unlinked source or sink pad - Looks for an element inside the bin that implements the given + Looks for an element inside the bin that implements the given interface. If such an element is found, it returns the element. You can cast this element to the given interface afterwards. If you want all elements that implement the interface, use gst_bin_iterate_all_by_interface(). This function recurses into child bins. MT safe. Caller owns returned reference. + - A #GstElement inside the bin + A #GstElement inside the bin implementing the interface - a #GstBin + a #GstBin - the #GType of an interface + the #GType of an interface - Gets the element with the given name from a bin. This + Gets the element with the given name from a bin. This function recurses into child bins. Returns %NULL if no element with the given name is found in the bin. MT safe. Caller owns returned reference. + - the #GstElement with the given + the #GstElement with the given name, or %NULL - a #GstBin + a #GstBin - the element name to search for + the element name to search for - Gets the element with the given name from this bin. If the + Gets the element with the given name from this bin. If the element is not found, a recursion is performed on the parent bin. Returns %NULL if: - no element with the given name is found in the bin MT safe. Caller owns returned reference. + - the #GstElement with the given + the #GstElement with the given name, or %NULL - a #GstBin + a #GstBin - the element name to search for + the element name to search for @@ -917,97 +1701,136 @@ name, or %NULL - Return the suppressed flags of the bin. + Return the suppressed flags of the bin. MT safe. + - the bin's suppressed #GstElementFlags. + the bin's suppressed #GstElementFlags. - a #GstBin + a #GstBin - Looks for all elements inside the bin that implements the given + Looks for all elements inside the bin that implements the given interface. You can safely cast all returned elements to the given interface. The function recurses inside child bins. The iterator will yield a series of #GstElement that should be unreffed after use. MT safe. Caller owns returned value. + - a #GstIterator of #GstElement + a #GstIterator of #GstElement for all elements in the bin implementing the given interface, or %NULL - a #GstBin + a #GstBin - the #GType of an interface + the #GType of an interface - Gets an iterator for the elements in this bin. + Gets an iterator for the elements in this bin. MT safe. Caller owns returned value. + - a #GstIterator of #GstElement, + a #GstIterator of #GstElement, or %NULL - a #GstBin + a #GstBin - Gets an iterator for the elements in this bin. + Gets an iterator for the elements in this bin. This iterator recurses into GstBin children. MT safe. Caller owns returned value. + - a #GstIterator of #GstElement, + a #GstIterator of #GstElement, or %NULL - a #GstBin + a #GstBin - Gets an iterator for all elements in the bin that have the + Gets an iterator for all elements in the bin that have the #GST_ELEMENT_FLAG_SINK flag set. MT safe. Caller owns returned value. + - a #GstIterator of #GstElement, + a #GstIterator of #GstElement, or %NULL - a #GstBin + a #GstBin - Gets an iterator for the elements in this bin in topologically + Gets an iterator for the elements in this bin in topologically sorted order. This means that the elements are returned from the most downstream elements (sinks) to the sources. @@ -1015,38 +1838,52 @@ This function is used internally to perform the state changes of the bin elements and for clock selection. MT safe. Caller owns returned value. + - a #GstIterator of #GstElement, + a #GstIterator of #GstElement, or %NULL - a #GstBin + a #GstBin - Gets an iterator for all elements in the bin that have the + Gets an iterator for all elements in the bin that have the #GST_ELEMENT_FLAG_SOURCE flag set. MT safe. Caller owns returned value. + - a #GstIterator of #GstElement, + a #GstIterator of #GstElement, or %NULL - a #GstBin + a #GstBin - Query @bin for the current latency using and reconfigures this latency to all the + Query @bin for the current latency using and reconfigures this latency to all the elements with a LATENCY event. This method is typically called on the pipeline when a #GST_MESSAGE_LATENCY @@ -1054,19 +1891,26 @@ is posted on the bus. This function simply emits the 'do-latency' signal so any custom latency calculations will be performed. + - %TRUE if the latency could be queried and reconfigured. + %TRUE if the latency could be queried and reconfigured. - a #GstBin + a #GstBin - Removes the element from the bin, unparenting it as well. + Removes the element from the bin, unparenting it as well. Unparenting the element means that the element will be dereferenced, so if the bin holds the only reference to the element, the element will be freed in the process of removing it from the bin. If you @@ -1077,18 +1921,25 @@ If the element's pads are linked to other pads, the pads will be unlinked before the element is removed from the bin. MT safe. + - %TRUE if the element could be removed, %FALSE if + %TRUE if the element could be removed, %FALSE if the bin does not want to remove the element. - a #GstBin + a #GstBin - the #GstElement to remove + the #GstElement to remove @@ -1096,22 +1947,31 @@ the bin does not want to remove the element. - Remove a list of elements from a bin. This function is equivalent + Remove a list of elements from a bin. This function is equivalent to calling gst_bin_remove() with each member of the list. + - a #GstBin + a #GstBin - the first #GstElement to remove from the bin + the first #GstElement to remove from the bin - %NULL-terminated list of elements to remove from the bin + %NULL-terminated list of elements to remove from the bin @@ -1119,22 +1979,29 @@ to calling gst_bin_remove() with each member of the list. - Suppress the given flags on the bin. #GstElementFlags of a + Suppress the given flags on the bin. #GstElementFlags of a child element are propagated when it is added to the bin. When suppressed flags are set, those specified flags will not be propagated to the bin. MT safe. + - a #GstBin + a #GstBin - the #GstElementFlags to suppress + the #GstElementFlags to suppress @@ -1142,28 +2009,39 @@ MT safe. - Synchronizes the state of every child of @bin with the state + Synchronizes the state of every child of @bin with the state of @bin. See also gst_element_sync_state_with_parent(). + - %TRUE if syncing the state was successful for all children, + %TRUE if syncing the state was successful for all children, otherwise %FALSE. - a #GstBin + a #GstBin - If set to %TRUE, the bin will handle asynchronous state changes. + If set to %TRUE, the bin will handle asynchronous state changes. This should be used only if the bin subclass is modifying the state of its children on its own. - Forward all children messages, even those that would normally be filtered by + Forward all children messages, even those that would normally be filtered by the bin. This can be interesting when one wants to be notified of the EOS state of individual elements, for example. @@ -1177,91 +2055,125 @@ forwarded message. - the number of children in this bin + the number of children in this bin - the list of children in this bin + the list of children in this bin - updated whenever @children changes + updated whenever @children changes - internal bus for handling child messages + internal bus for handling child messages - queued and cached messages + queued and cached messages - the bin is currently calculating its state + the bin is currently calculating its state - the bin needs to recalculate its state (deprecated) + the bin needs to recalculate its state (deprecated) - the bin needs to select a new clock + the bin needs to select a new clock - the last clock selected + the last clock selected - the element that provided @provided_clock + the element that provided @provided_clock - + - Will be emitted after the element was added to sub_bin. + Will be emitted after the element was added to sub_bin. - the #GstBin the element was added to + the #GstBin the element was added to - the #GstElement that was added to @sub_bin + the #GstElement that was added to @sub_bin - Will be emitted after the element was removed from sub_bin. + Will be emitted after the element was removed from sub_bin. - the #GstBin the element was removed from + the #GstBin the element was removed from - the #GstElement that was removed from @sub_bin + the #GstElement that was removed from @sub_bin - Will be emitted when the bin needs to perform latency calculations. This + Will be emitted when the bin needs to perform latency calculations. This signal is only emitted for toplevel bins or when async-handling is enabled. @@ -1277,25 +2189,33 @@ the same pipeline. - Will be emitted after the element was added to the bin. + Will be emitted after the element was added to the bin. - the #GstElement that was added to the bin + the #GstElement that was added to the bin - Will be emitted after the element was removed from the bin. + Will be emitted after the element was removed from the bin. - the #GstElement that was removed from the bin + the #GstElement that was removed from the bin @@ -1304,7 +2224,9 @@ the same pipeline. - Subclasses can override the @add_element and @remove_element to + Subclasses can override the @add_element and @remove_element to update the list of children in the bin. The @handle_message method can be overridden to implement custom @@ -1316,8 +2238,11 @@ added to any bin inside this bin, so it will also be called if a new child was added to a sub-bin of this bin. #GstBin implementations that override this message should chain up to the parent class implementation so the element-added-deep signal is emitted on all parents. + - bin parent class + bin parent class @@ -1325,6 +2250,7 @@ element-added-deep signal is emitted on all parents. + @@ -1340,6 +2266,7 @@ element-added-deep signal is emitted on all parents. + @@ -1355,6 +2282,7 @@ element-added-deep signal is emitted on all parents. + @@ -1370,6 +2298,7 @@ element-added-deep signal is emitted on all parents. + @@ -1385,6 +2314,7 @@ element-added-deep signal is emitted on all parents. + @@ -1400,6 +2330,7 @@ element-added-deep signal is emitted on all parents. + @@ -1412,6 +2343,7 @@ element-added-deep signal is emitted on all parents. + @@ -1430,6 +2362,7 @@ element-added-deep signal is emitted on all parents. + @@ -1447,7 +2380,7 @@ element-added-deep signal is emitted on all parents. - + @@ -1456,21 +2389,27 @@ element-added-deep signal is emitted on all parents. glib:type-name="GstBinFlags" glib:get-type="gst_bin_flags_get_type" c:type="GstBinFlags"> - GstBinFlags are a set of flags specific to bins. Most are set/used + GstBinFlags are a set of flags specific to bins. Most are set/used internally. They can be checked using the GST_OBJECT_FLAG_IS_SET () macro, and (un)set using GST_OBJECT_FLAG_SET () and GST_OBJECT_FLAG_UNSET (). - don't resync a state change when elements are + don't resync a state change when elements are added or linked in the bin (Since: 1.0.5) - Indicates whether the bin can handle elements + Indicates whether the bin can handle elements that add/remove source pads at any point in time without first posting a no-more-pads signal (Since: 1.10) @@ -1478,11 +2417,14 @@ and (un)set using GST_OBJECT_FLAG_SET () and GST_OBJECT_FLAG_UNSET (). value="524288" c:identifier="GST_BIN_FLAG_LAST" glib:nick="last"> - the last enum in the series of flags for bins. + the last enum in the series of flags for bins. Derived classes can use this as first value in a list of flags. + glib:type-name="GstBuffer" glib:get-type="gst_buffer_get_type" c:symbol-prefix="buffer"> - Buffers are the basic unit of data transfer in GStreamer. They contain the + Buffers are the basic unit of data transfer in GStreamer. They contain the timing and offset along with other arbitrary metadata that is associated with the #GstMemory blocks that the buffer contains. @@ -1583,33 +2527,46 @@ Typically, #GstParentBufferMeta is used when the child buffer is directly using the #GstMemory of the parent buffer, and wants to prevent the parent buffer from being returned to a buffer pool until the #GstMemory is available for re-use. (Since: 1.6) + - the parent structure + the parent structure - pointer to the pool owner of the buffer + pointer to the pool owner of the buffer - presentation timestamp of the buffer, can be #GST_CLOCK_TIME_NONE when the + presentation timestamp of the buffer, can be #GST_CLOCK_TIME_NONE when the pts is not known or relevant. The pts contains the timestamp when the media should be presented to the user. - decoding timestamp of the buffer, can be #GST_CLOCK_TIME_NONE when the + decoding timestamp of the buffer, can be #GST_CLOCK_TIME_NONE when the dts is not known or relevant. The dts contains the timestamp when the media should be processed. - duration in time of the buffer data, can be #GST_CLOCK_TIME_NONE + duration in time of the buffer data, can be #GST_CLOCK_TIME_NONE when the duration is not known or relevant. - a media specific offset for the buffer data. + a media specific offset for the buffer data. For video frames, this is the frame number of this buffer. For audio samples, this is the offset of the first sample in this buffer. For file data or compressed data this is the byte offset of the first @@ -1617,21 +2574,30 @@ for re-use. (Since: 1.6) - the last offset contained in this buffer. It has the same + the last offset contained in this buffer. It has the same format as @offset. - Creates a newly allocated buffer without any data. + Creates a newly allocated buffer without any data. MT safe. + - the new #GstBuffer. + the new #GstBuffer. - Tries to create a newly allocated buffer with data of the given size and + Tries to create a newly allocated buffer with data of the given size and extra parameters from @allocator. If the requested amount of memory can't be allocated, %NULL will be returned. The allocated buffer memory is not cleared. @@ -1640,8 +2606,11 @@ When @allocator is %NULL, the default memory allocator will be used. Note that when @size == 0, the buffer will not have memory associated with it. MT safe. + - a new #GstBuffer, or %NULL if + a new #GstBuffer, or %NULL if the memory couldn't be allocated. @@ -1650,41 +2619,56 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - the #GstAllocator to use, or %NULL to use the + the #GstAllocator to use, or %NULL to use the default allocator - the size in bytes of the new buffer's data. + the size in bytes of the new buffer's data. - optional parameters + optional parameters - Creates a new buffer that wraps the given @data. The memory will be freed + Creates a new buffer that wraps the given @data. The memory will be freed with g_free and will be marked writable. MT safe. + - a new #GstBuffer + a new #GstBuffer - data to wrap + data to wrap - allocated size of @data + allocated size of @data @@ -1692,24 +2676,33 @@ MT safe. - Creates a new #GstBuffer that wraps the given @bytes. The data inside + Creates a new #GstBuffer that wraps the given @bytes. The data inside @bytes cannot be %NULL and the resulting buffer will be marked as read only. MT safe. + - a new #GstBuffer wrapping @bytes + a new #GstBuffer wrapping @bytes - a #GBytes to wrap + a #GBytes to wrap - Allocate a new buffer that wraps the given memory. @data must point to + Allocate a new buffer that wraps the given memory. @data must point to @maxsize of memory, the wrapped buffer will have the region from @offset and @size visible. @@ -1717,38 +2710,53 @@ When the buffer is destroyed, @notify will be called with @user_data. The prefix/padding must be filled with 0 if @flags contains #GST_MEMORY_FLAG_ZERO_PREFIXED and #GST_MEMORY_FLAG_ZERO_PADDED respectively. + - a new #GstBuffer + a new #GstBuffer - #GstMemoryFlags + #GstMemoryFlags - data to wrap + data to wrap - allocated size of @data + allocated size of @data - offset in @data + offset in @data - size of valid data + size of valid data - user_data + user_data - called with @user_data when the memory is freed + called with @user_data when the memory is freed - Add metadata for @info to @buffer using the parameters in @params. + Add metadata for @info to @buffer using the parameters in @params. + - the metadata for the api in @info on @buffer. + the metadata for the api in @info on @buffer. - a #GstBuffer + a #GstBuffer - a #GstMetaInfo + a #GstMetaInfo - params for @info + params for @info @@ -1789,19 +2810,28 @@ The prefix/padding must be filled with 0 if @flags contains - Add a #GstParentBufferMeta to @buffer that holds a reference on + Add a #GstParentBufferMeta to @buffer that holds a reference on @ref until the buffer is freed. + - The #GstParentBufferMeta that was added to the buffer + The #GstParentBufferMeta that was added to the buffer - a #GstBuffer + a #GstBuffer - a #GstBuffer to ref + a #GstBuffer to ref @@ -1809,20 +2839,29 @@ The prefix/padding must be filled with 0 if @flags contains - Attaches protection metadata to a #GstBuffer. + Attaches protection metadata to a #GstBuffer. + - a pointer to the added #GstProtectionMeta if successful; %NULL if + a pointer to the added #GstProtectionMeta if successful; %NULL if unsuccessful. - #GstBuffer holding an encrypted sample, to which protection + #GstBuffer holding an encrypted sample, to which protection metadata should be added. - a #GstStructure holding cryptographic + a #GstStructure holding cryptographic information relating to the sample contained in @buffer. This function takes ownership of @info. @@ -1832,96 +2871,138 @@ unsuccessful. - Add a #GstReferenceTimestampMeta to @buffer that holds a @timestamp and + Add a #GstReferenceTimestampMeta to @buffer that holds a @timestamp and optionally @duration based on a specific timestamp @reference. See the documentation of #GstReferenceTimestampMeta for details. + - The #GstReferenceTimestampMeta that was added to the buffer + The #GstReferenceTimestampMeta that was added to the buffer - a #GstBuffer + a #GstBuffer - identifier for the timestamp reference. + identifier for the timestamp reference. - timestamp + timestamp - duration, or %GST_CLOCK_TIME_NONE + duration, or %GST_CLOCK_TIME_NONE - Append all the memory from @buf2 to @buf1. The result buffer will contain a + Append all the memory from @buf2 to @buf1. The result buffer will contain a concatenation of the memory of @buf1 and @buf2. + - the new #GstBuffer that contains the memory + the new #GstBuffer that contains the memory of the two source buffers. - the first source #GstBuffer to append. + the first source #GstBuffer to append. - the second source #GstBuffer to append. + the second source #GstBuffer to append. - Append the memory block @mem to @buffer. This function takes + Append the memory block @mem to @buffer. This function takes ownership of @mem and thus doesn't increase its refcount. This function is identical to gst_buffer_insert_memory() with an index of -1. See gst_buffer_insert_memory() for more details. + - a #GstBuffer. + a #GstBuffer. - a #GstMemory. + a #GstMemory. - Append @size bytes at @offset from @buf2 to @buf1. The result buffer will + Append @size bytes at @offset from @buf2 to @buf1. The result buffer will contain a concatenation of the memory of @buf1 and the requested region of @buf2. + - the new #GstBuffer that contains the memory + the new #GstBuffer that contains the memory of the two source buffers. - the first source #GstBuffer to append. + the first source #GstBuffer to append. - the second source #GstBuffer to append. + the second source #GstBuffer to append. - the offset in @buf2 + the offset in @buf2 - the size or -1 of @buf2 + the size or -1 of @buf2 @@ -1929,55 +3010,79 @@ contain a concatenation of the memory of @buf1 and the requested region of - Create a copy of the given buffer. This will make a newly allocated + Create a copy of the given buffer. This will make a newly allocated copy of the data the source buffer contains. + - a new copy of @buf. + a new copy of @buf. - a #GstBuffer. + a #GstBuffer. - Copies the information from @src into @dest. + Copies the information from @src into @dest. If @dest already contains memory and @flags contains GST_BUFFER_COPY_MEMORY, the memory from @src will be appended to @dest. @flags indicate which fields will be copied. + - %TRUE if the copying succeeded, %FALSE otherwise. + %TRUE if the copying succeeded, %FALSE otherwise. - a destination #GstBuffer + a destination #GstBuffer - a source #GstBuffer + a source #GstBuffer - flags indicating what metadata fields should be copied. + flags indicating what metadata fields should be copied. - offset to copy from + offset to copy from - total size to copy. If -1, all data is copied. + total size to copy. If -1, all data is copied. - Creates a sub-buffer from @parent at @offset and @size. + Creates a sub-buffer from @parent at @offset and @size. This sub-buffer uses the actual memory space of the parent buffer. This function will copy the offset and timestamp fields when the offset is 0. If not, they will be set to #GST_CLOCK_TIME_NONE and @@ -1987,53 +3092,75 @@ duration and offset end fields are also copied. If not they will be set to #GST_CLOCK_TIME_NONE and #GST_BUFFER_OFFSET_NONE. MT safe. + - the new #GstBuffer or %NULL if the arguments were + the new #GstBuffer or %NULL if the arguments were invalid. - a #GstBuffer. + a #GstBuffer. - the #GstBufferCopyFlags + the #GstBufferCopyFlags - the offset into parent #GstBuffer at which the new sub-buffer + the offset into parent #GstBuffer at which the new sub-buffer begins. - the size of the new #GstBuffer sub-buffer, in bytes. If -1, all + the size of the new #GstBuffer sub-buffer, in bytes. If -1, all data is copied. - Copy @size bytes starting from @offset in @buffer to @dest. + Copy @size bytes starting from @offset in @buffer to @dest. + - The amount of bytes extracted. This value can be lower than @size + The amount of bytes extracted. This value can be lower than @size when @buffer did not contain enough data. - a #GstBuffer. + a #GstBuffer. - the offset to extract + the offset to extract - + the destination address @@ -2043,7 +3170,9 @@ MT safe. direction="out" caller-allocates="0" transfer-ownership="full"> - the size to extract + the size to extract @@ -2051,29 +3180,40 @@ MT safe. - Extracts a copy of at most @size bytes the data at @offset into + Extracts a copy of at most @size bytes the data at @offset into newly-allocated memory. @dest must be freed using g_free() when done. + - a #GstBuffer + a #GstBuffer - the offset to extract + the offset to extract - the size to extract + the size to extract - A pointer where + A pointer where the destination array will be written. Might be %NULL if the size is 0. @@ -2083,41 +3223,58 @@ newly-allocated memory. @dest must be freed using g_free() when done. direction="out" caller-allocates="0" transfer-ownership="full"> - A location where the size of @dest can be written + A location where the size of @dest can be written - Copy @size bytes from @src to @buffer at @offset. + Copy @size bytes from @src to @buffer at @offset. + - The amount of bytes copied. This value can be lower than @size + The amount of bytes copied. This value can be lower than @size when @buffer did not contain enough data. - a #GstBuffer. + a #GstBuffer. - the offset to fill + the offset to fill - the source address + the source address - the size to fill + the size to fill - Find the memory blocks that span @size bytes starting from @offset + Find the memory blocks that span @size bytes starting from @offset in @buffer. When this function returns %TRUE, @idx will contain the index of the first @@ -2127,67 +3284,91 @@ the number of bytes to skip in the memory block at @idx to get to the byte for @offset. @size can be -1 to get all the memory blocks after @idx. + - %TRUE when @size bytes starting from @offset could be found in + %TRUE when @size bytes starting from @offset could be found in @buffer and @idx, @length and @skip will be filled. - a #GstBuffer. + a #GstBuffer. - an offset + an offset - a size + a size - pointer to index + pointer to index - pointer to length + pointer to length - pointer to skip + pointer to skip - Call @func with @user_data for each meta in @buffer. + Call @func with @user_data for each meta in @buffer. @func can modify the passed meta pointer or its contents. The return value of @func define if this function returns or if the remaining metadata items in the buffer should be skipped. + - %FALSE when @func returned %FALSE for one of the metadata. + %FALSE when @func returned %FALSE for one of the metadata. - a #GstBuffer + a #GstBuffer - a #GstBufferForeachMetaFunc to call + a #GstBufferForeachMetaFunc to call @@ -2195,22 +3376,31 @@ in the buffer should be skipped. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to @func + user data passed to @func - Get all the memory block in @buffer. The memory blocks will be merged + Get all the memory block in @buffer. The memory blocks will be merged into one large #GstMemory. + - a #GstMemory that contains the merged memory. + a #GstMemory that contains the merged memory. Use gst_memory_unref () after usage. - a #GstBuffer. + a #GstBuffer. @@ -2218,80 +3408,116 @@ Use gst_memory_unref () after usage. - Get the #GstBufferFlags flags set on this buffer. + Get the #GstBufferFlags flags set on this buffer. + - the flags set on this buffer. + the flags set on this buffer. - a #GstBuffer + a #GstBuffer - Get the memory block at index @idx in @buffer. + Get the memory block at index @idx in @buffer. + - a #GstMemory that contains the data of the + a #GstMemory that contains the data of the memory block at @idx. Use gst_memory_unref () after usage. - a #GstBuffer. + a #GstBuffer. - an index + an index - Get @length memory blocks in @buffer starting at @idx. The memory blocks will + Get @length memory blocks in @buffer starting at @idx. The memory blocks will be merged into one large #GstMemory. If @length is -1, all memory starting from @idx is merged. + - a #GstMemory that contains the merged data of @length + a #GstMemory that contains the merged data of @length blocks starting at @idx. Use gst_memory_unref () after usage. - a #GstBuffer. + a #GstBuffer. - an index + an index - a length + a length - Get the metadata for @api on buffer. When there is no such metadata, %NULL is + Get the metadata for @api on buffer. When there is no such metadata, %NULL is returned. If multiple metadata with the given @api are attached to this buffer only the first one is returned. To handle multiple metadata with a given API use gst_buffer_iterate_meta() or gst_buffer_foreach_meta() instead and check the meta->info.api member for the API type. + - the metadata for @api on + the metadata for @api on @buffer. - a #GstBuffer + a #GstBuffer - the #GType of an API + the #GType of an API @@ -2299,17 +3525,24 @@ and check the meta->info.api member for the API type. + - number of metas of type @api_type on @buffer. + number of metas of type @api_type on @buffer. - a #GstBuffer + a #GstBuffer - the #GType of an API + the #GType of an API @@ -2317,59 +3550,82 @@ and check the meta->info.api member for the API type. - Find the first #GstReferenceTimestampMeta on @buffer that conforms to + Find the first #GstReferenceTimestampMeta on @buffer that conforms to @reference. Conformance is tested by checking if the meta's reference is a subset of @reference. Buffers can contain multiple #GstReferenceTimestampMeta metadata items. + - the #GstReferenceTimestampMeta or %NULL when there + the #GstReferenceTimestampMeta or %NULL when there is no such metadata on @buffer. - a #GstBuffer + a #GstBuffer - a reference #GstCaps + a reference #GstCaps - Get the total size of the memory blocks in @buffer. + Get the total size of the memory blocks in @buffer. + - total size of the memory blocks in @buffer. + total size of the memory blocks in @buffer. - a #GstBuffer. + a #GstBuffer. - Get the total size of the memory blocks in @b. + Get the total size of the memory blocks in @b. When not %NULL, @offset will contain the offset of the data in the first memory block in @buffer and @maxsize will contain the sum of the size and @offset and the amount of extra padding on the last memory block. @offset and @maxsize can be used to resize the buffer memory blocks with gst_buffer_resize(). + - total size of the memory blocks in @buffer. + total size of the memory blocks in @buffer. - a #GstBuffer. + a #GstBuffer. transfer-ownership="full" optional="1" allow-none="1"> - a pointer to the offset + a pointer to the offset transfer-ownership="full" optional="1" allow-none="1"> - a pointer to the maxsize + a pointer to the maxsize - Get the total size of @length memory blocks stating from @idx in @buffer. + Get the total size of @length memory blocks stating from @idx in @buffer. When not %NULL, @offset will contain the offset of the data in the memory block in @buffer at @idx and @maxsize will contain the sum of the size @@ -2401,21 +3663,30 @@ and @offset and the amount of extra padding on the memory block at @idx + @length -1. @offset and @maxsize can be used to resize the buffer memory blocks with gst_buffer_resize_range(). + - total size of @length memory blocks starting at @idx in @buffer. + total size of @length memory blocks starting at @idx in @buffer. - a #GstBuffer. + a #GstBuffer. - an index + an index - a length + a length transfer-ownership="full" optional="1" allow-none="1"> - a pointer to the offset + a pointer to the offset transfer-ownership="full" optional="1" allow-none="1"> - a pointer to the maxsize + a pointer to the maxsize + @@ -2452,26 +3728,35 @@ gst_buffer_resize_range(). - Insert the memory block @mem to @buffer at @idx. This function takes ownership + Insert the memory block @mem to @buffer at @idx. This function takes ownership of @mem and thus doesn't increase its refcount. Only gst_buffer_get_max_memory() can be added to a buffer. If more memory is added, existing memory blocks will automatically be merged to make room for the new memory. + - a #GstBuffer. + a #GstBuffer. - the index to add the memory at, or -1 to append it to the end + the index to add the memory at, or -1 to append it to the end - a #GstMemory. + a #GstMemory. @@ -2479,17 +3764,24 @@ the new memory. - Check if all memory blocks in @buffer are writable. + Check if all memory blocks in @buffer are writable. Note that this function does not check if @buffer is writable, use gst_buffer_is_writable() to check that if needed. + - %TRUE if all memory blocks in @buffer are writable + %TRUE if all memory blocks in @buffer are writable - a #GstBuffer. + a #GstBuffer. @@ -2497,27 +3789,38 @@ gst_buffer_is_writable() to check that if needed. - Check if @length memory blocks in @buffer starting from @idx are writable. + Check if @length memory blocks in @buffer starting from @idx are writable. @length can be -1 to check all the memory blocks after @idx. Note that this function does not check if @buffer is writable, use gst_buffer_is_writable() to check that if needed. + - %TRUE if the memory range is writable + %TRUE if the memory range is writable - a #GstBuffer. + a #GstBuffer. - an index + an index - a length should not be 0 + a length should not be 0 @@ -2525,18 +3828,25 @@ gst_buffer_is_writable() to check that if needed. - Retrieve the next #GstMeta after @current. If @state points + Retrieve the next #GstMeta after @current. If @state points to %NULL, the first metadata is returned. @state will be updated with an opaque state pointer + - The next #GstMeta or %NULL + The next #GstMeta or %NULL when there are no more items. - a #GstBuffer + a #GstBuffer caller-allocates="1" transfer-ownership="none" nullable="1"> - an opaque state pointer + an opaque state pointer @@ -2553,19 +3865,26 @@ when there are no more items. c:identifier="gst_buffer_iterate_meta_filtered" version="1.12" introspectable="0"> - Retrieve the next #GstMeta of type @meta_api_type after the current one + Retrieve the next #GstMeta of type @meta_api_type after the current one according to @state. If @state points to %NULL, the first metadata of type @meta_api_type is returned. @state will be updated with an opaque state pointer + - The next #GstMeta of type + The next #GstMeta of type @meta_api_type or %NULL when there are no more items. - a #GstBuffer + a #GstBuffer - an opaque state pointer + an opaque state pointer - only return #GstMeta of this type + only return #GstMeta of this type - This function fills @info with the #GstMapInfo of all merged memory + This function fills @info with the #GstMapInfo of all merged memory blocks in @buffer. @flags describe the desired access of the memory. When @flags is @@ -2596,30 +3921,41 @@ buffer memory will then also be replaced with this writable copy. The memory in @info should be unmapped with gst_buffer_unmap() after usage. + - %TRUE if the map succeeded and @info contains valid data. + %TRUE if the map succeeded and @info contains valid data. - a #GstBuffer. + a #GstBuffer. - info about the mapping + info about the mapping - flags for the mapping + flags for the mapping - This function fills @info with the #GstMapInfo of @length merged memory blocks + This function fills @info with the #GstMapInfo of @length merged memory blocks starting at @idx in @buffer. When @length is -1, all memory blocks starting from @idx are merged and mapped. @@ -2632,326 +3968,469 @@ automatically be created and returned. The readonly copy of the buffer memory will then also be replaced with this writable copy. The memory in @info should be unmapped with gst_buffer_unmap() after usage. + - %TRUE if the map succeeded and @info contains valid + %TRUE if the map succeeded and @info contains valid data. - a #GstBuffer. + a #GstBuffer. - an index + an index - a length + a length - info about the mapping + info about the mapping - flags for the mapping + flags for the mapping - Compare @size bytes starting from @offset in @buffer with the memory in @mem. + Compare @size bytes starting from @offset in @buffer with the memory in @mem. + - 0 if the memory is equal. + 0 if the memory is equal. - a #GstBuffer. + a #GstBuffer. - the offset in @buffer + the offset in @buffer - the memory to compare + the memory to compare - the size to compare + the size to compare - Fill @buf with @size bytes with @val starting from @offset. + Fill @buf with @size bytes with @val starting from @offset. + - The amount of bytes filled. This value can be lower than @size + The amount of bytes filled. This value can be lower than @size when @buffer did not contain enough data. - a #GstBuffer. + a #GstBuffer. - the offset in @buffer + the offset in @buffer - the value to set + the value to set - the size to set + the size to set - Get the amount of memory blocks that this buffer has. This amount is never + Get the amount of memory blocks that this buffer has. This amount is never larger than what gst_buffer_get_max_memory() returns. + - the number of memory blocks this buffer is made of. + the number of memory blocks this buffer is made of. - a #GstBuffer. + a #GstBuffer. - Get the memory block at @idx in @buffer. The memory block stays valid until + Get the memory block at @idx in @buffer. The memory block stays valid until the memory block in @buffer is removed, replaced or merged, typically with any call that modifies the memory in @buffer. + - the #GstMemory at @idx. + the #GstMemory at @idx. - a #GstBuffer. + a #GstBuffer. - an index + an index - Prepend the memory block @mem to @buffer. This function takes + Prepend the memory block @mem to @buffer. This function takes ownership of @mem and thus doesn't increase its refcount. This function is identical to gst_buffer_insert_memory() with an index of 0. See gst_buffer_insert_memory() for more details. + - a #GstBuffer. + a #GstBuffer. - a #GstMemory. + a #GstMemory. - Remove all the memory blocks in @buffer. + Remove all the memory blocks in @buffer. + - a #GstBuffer. + a #GstBuffer. - Remove the memory block in @b at index @i. + Remove the memory block in @b at index @i. + - a #GstBuffer. + a #GstBuffer. - an index + an index - Remove @length memory blocks in @buffer starting from @idx. + Remove @length memory blocks in @buffer starting from @idx. @length can be -1, in which case all memory starting from @idx is removed. + - a #GstBuffer. + a #GstBuffer. - an index + an index - a length + a length - Remove the metadata for @meta on @buffer. + Remove the metadata for @meta on @buffer. + - %TRUE if the metadata existed and was removed, %FALSE if no such + %TRUE if the metadata existed and was removed, %FALSE if no such metadata was on @buffer. - a #GstBuffer + a #GstBuffer - a #GstMeta + a #GstMeta - Replaces all memory in @buffer with @mem. + Replaces all memory in @buffer with @mem. + - a #GstBuffer. + a #GstBuffer. - a #GstMemory + a #GstMemory - Replaces the memory block at index @idx in @buffer with @mem. + Replaces the memory block at index @idx in @buffer with @mem. + - a #GstBuffer. + a #GstBuffer. - an index + an index - a #GstMemory + a #GstMemory - Replaces @length memory blocks in @buffer starting at @idx with @mem. + Replaces @length memory blocks in @buffer starting at @idx with @mem. If @length is -1, all memory starting from @idx will be removed and replaced with @mem. @buffer should be writable. + - a #GstBuffer. + a #GstBuffer. - an index + an index - a length should not be 0 + a length should not be 0 - a #GstMemory + a #GstMemory - Set the offset and total size of the memory blocks in @buffer. + Set the offset and total size of the memory blocks in @buffer. + - a #GstBuffer. + a #GstBuffer. - the offset adjustment + the offset adjustment - the new size or -1 to just adjust the offset + the new size or -1 to just adjust the offset - Set the total size of the @length memory blocks starting at @idx in + Set the total size of the @length memory blocks starting at @idx in @buffer + - %TRUE if resizing succeeded, %FALSE otherwise. + %TRUE if resizing succeeded, %FALSE otherwise. - a #GstBuffer. + a #GstBuffer. - an index + an index - a length + a length - the offset adjustment + the offset adjustment - the new size or -1 to just adjust the offset + the new size or -1 to just adjust the offset @@ -2959,50 +4438,73 @@ replaced with @mem. - Sets one or more buffer flags on a buffer. + Sets one or more buffer flags on a buffer. + - %TRUE if @flags were successfully set on buffer. + %TRUE if @flags were successfully set on buffer. - a #GstBuffer + a #GstBuffer - the #GstBufferFlags to set. + the #GstBufferFlags to set. - Set the total size of the memory blocks in @buffer. + Set the total size of the memory blocks in @buffer. + - a #GstBuffer. + a #GstBuffer. - the new size + the new size - Release the memory previously mapped with gst_buffer_map(). + Release the memory previously mapped with gst_buffer_map(). + - a #GstBuffer. + a #GstBuffer. - a #GstMapInfo + a #GstMapInfo @@ -3010,18 +4512,27 @@ replaced with @mem. - Clears one or more buffer flags. + Clears one or more buffer flags. + - true if @flags is successfully cleared from buffer. + true if @flags is successfully cleared from buffer. - a #GstBuffer + a #GstBuffer - the #GstBufferFlags to clear + the #GstBufferFlags to clear @@ -3029,13 +4540,18 @@ replaced with @mem. - Get the maximum amount of memory blocks that a buffer can hold. This is a + Get the maximum amount of memory blocks that a buffer can hold. This is a compile time constant that can be queried with the function. When more memory blocks are added, existing memory blocks will be merged together to make room for the new block. + - the maximum amount of memory blocks that a buffer can hold. + the maximum amount of memory blocks that a buffer can hold. @@ -3044,39 +4560,51 @@ together to make room for the new block. glib:type-name="GstBufferCopyFlags" glib:get-type="gst_buffer_copy_flags_get_type" c:type="GstBufferCopyFlags"> - A set of flags that can be provided to the gst_buffer_copy_into() + A set of flags that can be provided to the gst_buffer_copy_into() function to specify which items should be copied. - copy nothing + copy nothing - flag indicating that buffer flags should be copied + flag indicating that buffer flags should be copied - flag indicating that buffer pts, dts, + flag indicating that buffer pts, dts, duration, offset and offset_end should be copied - flag indicating that buffer meta should be + flag indicating that buffer meta should be copied - flag indicating that buffer memory should be reffed + flag indicating that buffer memory should be reffed and appended to already existing memory. Unless the memory is marked as NO_SHARE, no actual copy of the memory is made but it is simply reffed. Add @GST_BUFFER_COPY_DEEP to force a real copy. @@ -3085,14 +4613,18 @@ function to specify which items should be copied. value="16" c:identifier="GST_BUFFER_COPY_MERGE" glib:nick="merge"> - flag indicating that buffer memory should be + flag indicating that buffer memory should be merged - flag indicating that memory should always be + flag indicating that memory should always be copied instead of reffed (Since: 1.2) @@ -3100,19 +4632,25 @@ function to specify which items should be copied. glib:type-name="GstBufferFlags" glib:get-type="gst_buffer_flags_get_type" c:type="GstBufferFlags"> - A set of buffer flags used to describe properties of a #GstBuffer. + A set of buffer flags used to describe properties of a #GstBuffer. - the buffer is live data and should be discarded in + the buffer is live data and should be discarded in the PAUSED state. - the buffer contains data that should be dropped + the buffer contains data that should be dropped because it will be clipped against the segment boundaries or because it does not contain data that should be shown to the user. @@ -3121,7 +4659,9 @@ function to specify which items should be copied. value="64" c:identifier="GST_BUFFER_FLAG_DISCONT" glib:nick="discont"> - the buffer marks a data discontinuity in the stream. + the buffer marks a data discontinuity in the stream. This typically occurs after a seek or a dropped buffer from a live or network source. @@ -3129,20 +4669,26 @@ function to specify which items should be copied. value="128" c:identifier="GST_BUFFER_FLAG_RESYNC" glib:nick="resync"> - the buffer timestamps might have a discontinuity + the buffer timestamps might have a discontinuity and this buffer is a good point to resynchronize. - the buffer data is corrupted. + the buffer data is corrupted. - the buffer contains a media specific marker. for + the buffer contains a media specific marker. for video this is typically the end of a frame boundary, for audio this is usually the start of a talkspurt. @@ -3150,14 +4696,18 @@ function to specify which items should be copied. value="1024" c:identifier="GST_BUFFER_FLAG_HEADER" glib:nick="header"> - the buffer contains header information that is + the buffer contains header information that is needed to decode the following data. - the buffer has been created to fill a gap in the + the buffer has been created to fill a gap in the stream and contains media neutral data (elements can switch to optimized code path that ignores the buffer content). @@ -3166,27 +4716,35 @@ function to specify which items should be copied. value="4096" c:identifier="GST_BUFFER_FLAG_DROPPABLE" glib:nick="droppable"> - the buffer can be dropped without breaking the + the buffer can be dropped without breaking the stream, for example to reduce bandwidth. - this unit cannot be decoded independently. + this unit cannot be decoded independently. - this flag is set when memory of the buffer + this flag is set when memory of the buffer is added/removed - Elements which write to disk or permanent + Elements which write to disk or permanent storage should ensure the data is synced after writing the contents of this buffer. (Since: 1.6) @@ -3194,7 +4752,9 @@ function to specify which items should be copied. value="65536" c:identifier="GST_BUFFER_FLAG_NON_DROPPABLE" glib:nick="non-droppable"> - This buffer is important and should not be dropped. + This buffer is important and should not be dropped. This can be used to mark important buffers, e.g. to flag RTP packets carrying keyframes or codec setup data for RTP Forward Error Correction purposes, or to prevent still video @@ -3204,12 +4764,16 @@ function to specify which items should be copied. value="1048576" c:identifier="GST_BUFFER_FLAG_LAST" glib:nick="last"> - additional media specific flags can be added starting from + additional media specific flags can be added starting from this flag. - A function that will be called from gst_buffer_foreach_meta(). The @meta + A function that will be called from gst_buffer_foreach_meta(). The @meta field will point to a the reference of the meta. @buffer should not be modified from this callback. @@ -3218,13 +4782,18 @@ When this function returns %TRUE, the next meta will be returned. When %FALSE is returned, gst_buffer_foreach_meta() will return. When @meta is set to %NULL, the item will be removed from the buffer. + - %FALSE when gst_buffer_foreach_meta() should stop + %FALSE when gst_buffer_foreach_meta() should stop - a #GstBuffer + a #GstBuffer caller-allocates="0" transfer-ownership="full" nullable="1"> - a pointer to a #GstMeta + a pointer to a #GstMeta nullable="1" allow-none="1" closure="2"> - user data passed to gst_buffer_foreach_meta() + user data passed to gst_buffer_foreach_meta() @@ -3250,7 +4823,9 @@ When @meta is set to %NULL, the item will be removed from the buffer. glib:type-name="GstBufferList" glib:get-type="gst_buffer_list_get_type" c:symbol-prefix="buffer_list"> - Buffer lists are an object containing a list of buffers. + Buffer lists are an object containing a list of buffers. Buffer lists are created with gst_buffer_list_new() and filled with data using a gst_buffer_list_insert(). @@ -3258,31 +4833,44 @@ using a gst_buffer_list_insert(). Buffer lists can be pushed on a srcpad with gst_pad_push_list(). This is interesting when multiple buffers need to be pushed in one go because it can reduce the amount of overhead for pushing each buffer individually. + - Creates a new, empty #GstBufferList. The caller is responsible for unreffing + Creates a new, empty #GstBufferList. The caller is responsible for unreffing the returned #GstBufferList. Free-function: gst_buffer_list_unref + - the new #GstBufferList. gst_buffer_list_unref() + the new #GstBufferList. gst_buffer_list_unref() after usage. - Creates a new, empty #GstBufferList. The caller is responsible for unreffing + Creates a new, empty #GstBufferList. The caller is responsible for unreffing the returned #GstBufferList. The list will have @size space preallocated so that memory reallocations can be avoided. Free-function: gst_buffer_list_unref + - the new #GstBufferList. gst_buffer_list_unref() + the new #GstBufferList. gst_buffer_list_unref() after usage. - an initial reserved size + an initial reserved size @@ -3290,15 +4878,22 @@ Free-function: gst_buffer_list_unref - Calculates the size of the data contained in buffer list by adding the + Calculates the size of the data contained in buffer list by adding the size of all buffers. + - the size of the data contained in buffer list in bytes. + the size of the data contained in buffer list in bytes. - a #GstBufferList + a #GstBufferList @@ -3306,69 +4901,96 @@ size of all buffers. - Create a copy of the given buffer list. This will make a newly allocated + Create a copy of the given buffer list. This will make a newly allocated copy of the buffer that the source buffer list contains. + - a new copy of @list. + a new copy of @list. - a #GstBufferList + a #GstBufferList - Call @func with @data for each buffer in @list. + Call @func with @data for each buffer in @list. @func can modify the passed buffer pointer or its contents. The return value of @func define if this function returns or if the remaining buffers in the list should be skipped. + - %TRUE when @func returned %TRUE for each buffer in @list or when + %TRUE when @func returned %TRUE for each buffer in @list or when @list is empty. - a #GstBufferList + a #GstBufferList - a #GstBufferListFunc to call + a #GstBufferListFunc to call - user data passed to @func + user data passed to @func - Get the buffer at @idx. + Get the buffer at @idx. You must make sure that @idx does not exceed the number of buffers available. + - the buffer at @idx in @group + the buffer at @idx in @group or %NULL when there is no buffer. The buffer remains valid as long as @list is valid and buffer is not removed from the list. - a #GstBufferList + a #GstBufferList - the index + the index @@ -3376,87 +4998,123 @@ buffers available. - Gets the buffer at @idx, ensuring it is a writable buffer. + Gets the buffer at @idx, ensuring it is a writable buffer. You must make sure that @idx does not exceed the number of buffers available. + - the buffer at @idx in @group. + the buffer at @idx in @group. The returned buffer remains valid as long as @list is valid and the buffer is not removed from the list. - a (writable) #GstBufferList + a (writable) #GstBufferList - the index + the index - Insert @buffer at @idx in @list. Other buffers are moved to make room for + Insert @buffer at @idx in @list. Other buffers are moved to make room for this new buffer. A -1 value for @idx will append the buffer at the end. + - a #GstBufferList + a #GstBufferList - the index + the index - a #GstBuffer + a #GstBuffer - Returns the number of buffers in @list. + Returns the number of buffers in @list. + - the number of buffers in the buffer list + the number of buffers in the buffer list - a #GstBufferList + a #GstBufferList - Remove @length buffers starting from @idx in @list. The following buffers + Remove @length buffers starting from @idx in @list. The following buffers are moved to close the gap. + - a #GstBufferList + a #GstBufferList - the index + the index - the amount to remove + the amount to remove - A function that will be called from gst_buffer_list_foreach(). The @buffer + A function that will be called from gst_buffer_list_foreach(). The @buffer field will point to a the reference of the buffer at @idx. When this function returns %TRUE, the next buffer will be @@ -3466,8 +5124,11 @@ When @buffer is set to %NULL, the item will be removed from the bufferlist. When @buffer has been made writable, the new buffer reference can be assigned to @buffer. This function is responsible for unreffing the old buffer when removing or modifying. + - %FALSE when gst_buffer_list_foreach() should stop + %FALSE when gst_buffer_list_foreach() should stop @@ -3476,11 +5137,15 @@ removing or modifying. caller-allocates="0" transfer-ownership="full" nullable="1"> - pointer the buffer + pointer the buffer - the index of @buffer + the index of @buffer nullable="1" allow-none="1" closure="2"> - user data passed to gst_buffer_list_foreach() + user data passed to gst_buffer_list_foreach() @@ -3500,7 +5167,9 @@ removing or modifying. glib:type-name="GstBufferPool" glib:get-type="gst_buffer_pool_get_type" glib:type-struct="BufferPoolClass"> - A #GstBufferPool is an object that can be used to pre-allocate and recycle + A #GstBufferPool is an object that can be used to pre-allocate and recycle buffers of the same size and with the same properties. A #GstBufferPool is created with gst_buffer_pool_new(). @@ -3537,43 +5206,63 @@ all buffers are returned to the pool they will be freed. Use gst_object_unref() to release the reference to a bufferpool. If the refcount of the pool reaches 0, the pool will be freed. + - Creates a new #GstBufferPool instance. + Creates a new #GstBufferPool instance. + - a new #GstBufferPool instance + a new #GstBufferPool instance - Enabled the option in @config. This will instruct the @bufferpool to enable + Enabled the option in @config. This will instruct the @bufferpool to enable the specified option on the buffers that it allocates. The supported options by @pool can be retrieved with gst_buffer_pool_get_options(). + - a #GstBufferPool configuration + a #GstBufferPool configuration - an option to add + an option to add - Get the @allocator and @params from @config. + Get the @allocator and @params from @config. + - %TRUE, if the values are set. + %TRUE, if the values are set. - a #GstBufferPool configuration + a #GstBufferPool configuration - a #GstAllocator, or %NULL + a #GstAllocator, or %NULL - #GstAllocationParams, or %NULL + #GstAllocationParams, or %NULL - Parse an available @config and get the option at @index of the options API + Parse an available @config and get the option at @index of the options API array. + - a #gchar of the option at @index. + a #gchar of the option at @index. - a #GstBufferPool configuration + a #GstBufferPool configuration - position in the option array to read + position in the option array to read - Get the configuration values from @config. + Get the configuration values from @config. + - %TRUE if all parameters could be fetched. + %TRUE if all parameters could be fetched. - a #GstBufferPool configuration + a #GstBufferPool configuration transfer-ownership="none" optional="1" allow-none="1"> - the caps of buffers + the caps of buffers transfer-ownership="full" optional="1" allow-none="1"> - the size of each buffer, not including prefix and padding + the size of each buffer, not including prefix and padding transfer-ownership="full" optional="1" allow-none="1"> - the minimum amount of buffers to allocate. + the minimum amount of buffers to allocate. transfer-ownership="full" optional="1" allow-none="1"> - the maximum amount of buffers to allocate or 0 for unlimited. + the maximum amount of buffers to allocate or 0 for unlimited. - Check if @config contains @option. + Check if @config contains @option. + - %TRUE if the options array contains @option. + %TRUE if the options array contains @option. - a #GstBufferPool configuration + a #GstBufferPool configuration - an option + an option - Retrieve the number of values currently stored in the options array of the + Retrieve the number of values currently stored in the options array of the @config structure. + - the options array size as a #guint. + the options array size as a #guint. - a #GstBufferPool configuration + a #GstBufferPool configuration - Set the @allocator and @params on @config. + Set the @allocator and @params on @config. One of @allocator and @params can be %NULL, but not both. When @allocator is %NULL, the default allocator of the pool will use the values in @param @@ -3712,55 +5447,75 @@ with the values that it is able to do. Some pools are, for example, not able to operate with different allocators or cannot allocate with the values specified in @params. Use gst_buffer_pool_get_config() to get the currently used values. + - a #GstBufferPool configuration + a #GstBufferPool configuration - a #GstAllocator + a #GstAllocator - #GstAllocationParams + #GstAllocationParams - Configure @config with the given parameters. + Configure @config with the given parameters. + - a #GstBufferPool configuration + a #GstBufferPool configuration - caps for the buffers + caps for the buffers - the size of each buffer, not including prefix and padding + the size of each buffer, not including prefix and padding - the minimum amount of buffers to allocate. + the minimum amount of buffers to allocate. - the maximum amount of buffers to allocate or 0 for unlimited. + the maximum amount of buffers to allocate or 0 for unlimited. @@ -3768,7 +5523,9 @@ used values. - Validate that changes made to @config are still valid in the context of the + Validate that changes made to @config are still valid in the context of the expected parameters. This function is a helper that can be used to validate changes made by a pool to a config when gst_buffer_pool_set_config() returns %FALSE. This expects that @caps haven't changed and that @@ -3776,67 +5533,92 @@ returns %FALSE. This expects that @caps haven't changed and that This does not check if options or allocator parameters are still valid, won't check if size have changed, since changing the size is valid to adapt padding. + - %TRUE, if the parameters are valid in this context. + %TRUE, if the parameters are valid in this context. - a #GstBufferPool configuration + a #GstBufferPool configuration - the excepted caps of buffers + the excepted caps of buffers - the expected size of each buffer, not including prefix and padding + the expected size of each buffer, not including prefix and padding - the expected minimum amount of buffers to allocate. + the expected minimum amount of buffers to allocate. - the expect maximum amount of buffers to allocate or 0 for unlimited. + the expect maximum amount of buffers to allocate or 0 for unlimited. - Acquire a buffer from @pool. @buffer should point to a memory location that + Acquire a buffer from @pool. @buffer should point to a memory location that can hold a pointer to the new buffer. @params can be %NULL or contain optional parameters to influence the allocation. + - a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is + a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is inactive. - a #GstBufferPool + a #GstBufferPool - a location for a #GstBuffer + a location for a #GstBuffer - parameters. + parameters. + @@ -3854,6 +5636,7 @@ inactive. + @@ -3864,6 +5647,7 @@ inactive. + @@ -3874,6 +5658,7 @@ inactive. + @@ -3887,11 +5672,16 @@ inactive. - Get a %NULL terminated array of string with supported bufferpool options for + Get a %NULL terminated array of string with supported bufferpool options for @pool. An option would typically be enabled with gst_buffer_pool_config_add_option(). + - a %NULL terminated array + a %NULL terminated array of strings. @@ -3899,32 +5689,42 @@ gst_buffer_pool_config_add_option(). - a #GstBufferPool + a #GstBufferPool - Release @buffer to @pool. @buffer should have previously been allocated from + Release @buffer to @pool. @buffer should have previously been allocated from @pool with gst_buffer_pool_acquire_buffer(). This function is usually called automatically when the last ref on @buffer disappears. + - a #GstBufferPool + a #GstBufferPool - a #GstBuffer + a #GstBuffer + @@ -3938,7 +5738,9 @@ disappears. - Set the configuration of the pool. If the pool is already configured, and + Set the configuration of the pool. If the pool is already configured, and the configuration haven't change, this function will return %TRUE. If the pool is active, this method will return %FALSE and active configuration will remain. Buffers allocated form this pool must be returned or else this @@ -3954,22 +5756,30 @@ If the parameters in @config can not be set exactly, this function returns then be retrieved and refined with gst_buffer_pool_get_config(). This function takes ownership of @config. + - %TRUE when the configuration could be set. + %TRUE when the configuration could be set. - a #GstBufferPool + a #GstBufferPool - a #GstStructure + a #GstStructure + @@ -3980,6 +5790,7 @@ This function takes ownership of @config. + @@ -3991,60 +5802,83 @@ This function takes ownership of @config. - Acquire a buffer from @pool. @buffer should point to a memory location that + Acquire a buffer from @pool. @buffer should point to a memory location that can hold a pointer to the new buffer. @params can be %NULL or contain optional parameters to influence the allocation. + - a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is + a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is inactive. - a #GstBufferPool + a #GstBufferPool - a location for a #GstBuffer + a location for a #GstBuffer - parameters. + parameters. - Get a copy of the current configuration of the pool. This configuration + Get a copy of the current configuration of the pool. This configuration can either be modified and used for the gst_buffer_pool_set_config() call or it must be freed after usage. + - a copy of the current configuration of @pool. use + a copy of the current configuration of @pool. use gst_structure_free() after usage or gst_buffer_pool_set_config(). - a #GstBufferPool + a #GstBufferPool - Get a %NULL terminated array of string with supported bufferpool options for + Get a %NULL terminated array of string with supported bufferpool options for @pool. An option would typically be enabled with gst_buffer_pool_config_add_option(). + - a %NULL terminated array + a %NULL terminated array of strings. @@ -4052,65 +5886,92 @@ gst_buffer_pool_config_add_option(). - a #GstBufferPool + a #GstBufferPool - Check if the bufferpool supports @option. + Check if the bufferpool supports @option. + - %TRUE if the buffer pool contains @option. + %TRUE if the buffer pool contains @option. - a #GstBufferPool + a #GstBufferPool - an option + an option - Check if @pool is active. A pool can be activated with the + Check if @pool is active. A pool can be activated with the gst_buffer_pool_set_active() call. + - %TRUE when the pool is active. + %TRUE when the pool is active. - a #GstBufferPool + a #GstBufferPool - Release @buffer to @pool. @buffer should have previously been allocated from + Release @buffer to @pool. @buffer should have previously been allocated from @pool with gst_buffer_pool_acquire_buffer(). This function is usually called automatically when the last ref on @buffer disappears. + - a #GstBufferPool + a #GstBufferPool - a #GstBuffer + a #GstBuffer - Control the active state of @pool. When the pool is inactive, new calls to + Control the active state of @pool. When the pool is inactive, new calls to gst_buffer_pool_acquire_buffer() will return with %GST_FLOW_FLUSHING. Activating the bufferpool will preallocate all resources in the pool based on @@ -4119,24 +5980,33 @@ the configuration of the pool. Deactivating will free the resources again when there are no outstanding buffers. When there are outstanding buffers, they will be freed as soon as they are all returned to the pool. + - %FALSE when the pool was not configured or when preallocation of the + %FALSE when the pool was not configured or when preallocation of the buffers failed. - a #GstBufferPool + a #GstBufferPool - the new active state + the new active state - Set the configuration of the pool. If the pool is already configured, and + Set the configuration of the pool. If the pool is already configured, and the configuration haven't change, this function will return %TRUE. If the pool is active, this method will return %FALSE and active configuration will remain. Buffers allocated form this pool must be returned or else this @@ -4152,17 +6022,24 @@ If the parameters in @config can not be set exactly, this function returns then be retrieved and refined with gst_buffer_pool_get_config(). This function takes ownership of @config. + - %TRUE when the configuration could be set. + %TRUE when the configuration could be set. - a #GstBufferPool + a #GstBufferPool - a #GstStructure + a #GstStructure @@ -4170,18 +6047,25 @@ This function takes ownership of @config. - Enable or disable the flushing state of a @pool without freeing or + Enable or disable the flushing state of a @pool without freeing or allocating buffers. + - a #GstBufferPool + a #GstBufferPool - whether to start or stop flushing + whether to start or stop flushing @@ -4196,7 +6080,7 @@ allocating buffers. - + @@ -4205,24 +6089,32 @@ allocating buffers. glib:type-name="GstBufferPoolAcquireFlags" glib:get-type="gst_buffer_pool_acquire_flags_get_type" c:type="GstBufferPoolAcquireFlags"> - Additional flags to control the allocation of a buffer + Additional flags to control the allocation of a buffer - no flags + no flags - buffer is keyframe + buffer is keyframe - when the bufferpool is empty, acquire_buffer + when the bufferpool is empty, acquire_buffer will by default block until a buffer is released into the pool again. Setting this flag makes acquire_buffer return #GST_FLOW_EOS instead of blocking. @@ -4230,42 +6122,57 @@ this flag makes acquire_buffer return #GST_FLOW_EOS instead of blocking. value="4" c:identifier="GST_BUFFER_POOL_ACQUIRE_FLAG_DISCONT" glib:nick="discont"> - buffer is discont + buffer is discont - last flag, subclasses can use private flags + last flag, subclasses can use private flags starting from this value. - Parameters passed to the gst_buffer_pool_acquire_buffer() function to control the + Parameters passed to the gst_buffer_pool_acquire_buffer() function to control the allocation of the buffer. The default implementation ignores the @start and @stop members but other implementations can use this extra information to decide what buffer to return. + - the format of @start and @stop + the format of @start and @stop - the start position + the start position - the stop position + the stop position - additional flags + additional flags - + @@ -4273,15 +6180,23 @@ return. - The GstBufferPool class. + The GstBufferPool class. + - Object parent class + Object parent class + - a %NULL terminated array + a %NULL terminated array of strings. @@ -4289,7 +6204,9 @@ return. - a #GstBufferPool + a #GstBufferPool @@ -4297,17 +6214,24 @@ return. + - %TRUE when the configuration could be set. + %TRUE when the configuration could be set. - a #GstBufferPool + a #GstBufferPool - a #GstStructure + a #GstStructure @@ -4315,6 +6239,7 @@ return. + @@ -4327,6 +6252,7 @@ return. + @@ -4339,28 +6265,37 @@ return. + - a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is + a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is inactive. - a #GstBufferPool + a #GstBufferPool - a location for a #GstBuffer + a location for a #GstBuffer - parameters. + parameters. @@ -4369,6 +6304,7 @@ inactive. + @@ -4388,6 +6324,7 @@ inactive. + @@ -4403,16 +6340,21 @@ inactive. + - a #GstBufferPool + a #GstBufferPool - a #GstBuffer + a #GstBuffer @@ -4420,6 +6362,7 @@ inactive. + @@ -4435,6 +6378,7 @@ inactive. + @@ -4447,6 +6391,7 @@ inactive. + @@ -4458,7 +6403,7 @@ inactive. - + @@ -4466,35 +6411,46 @@ inactive. + - The different types of buffering methods. + The different types of buffering methods. - a small amount of data is buffered + a small amount of data is buffered - the stream is being downloaded + the stream is being downloaded - the stream is being downloaded in a ringbuffer + the stream is being downloaded in a ringbuffer - the stream is a live stream + the stream is a live stream glib:type-name="GstBus" glib:get-type="gst_bus_get_type" glib:type-struct="BusClass"> - The #GstBus is an object responsible for delivering #GstMessage packets in + The #GstBus is an object responsible for delivering #GstMessage packets in a first-in first-out way from the streaming threads (see #GstTask) to the application. @@ -4543,14 +6501,21 @@ Every #GstPipeline has one bus. Note that a #GstPipeline will set its bus into flushing state when changing from READY to NULL state. + - Creates a new #GstBus instance. + Creates a new #GstBus instance. + - a new #GstBus instance + a new #GstBus instance + @@ -4564,6 +6529,7 @@ from READY to NULL state. + @@ -4577,7 +6543,9 @@ from READY to NULL state. - Adds a bus signal watch to the default main context with the default priority + Adds a bus signal watch to the default main context with the default priority (%G_PRIORITY_DEFAULT). It is also possible to use a non-default main context set up using g_main_context_push_thread_default() (before one had to create a bus watch source and attach it to the desired main @@ -4591,19 +6559,24 @@ responsible for calling gst_bus_remove_signal_watch() as many times as this function is called. MT safe. + - a #GstBus on which you want to receive the "message" signal + a #GstBus on which you want to receive the "message" signal - Adds a bus signal watch to the default main context with the given @priority + Adds a bus signal watch to the default main context with the given @priority (e.g. %G_PRIORITY_DEFAULT). It is also possible to use a non-default main context set up using g_main_context_push_thread_default() (before one had to create a bus watch source and attach it to the desired @@ -4620,16 +6593,21 @@ There can only be a single bus watch per bus, you must remove any signal watch before you can set another type of watch. MT safe. + - a #GstBus on which you want to receive the "message" signal + a #GstBus on which you want to receive the "message" signal - The priority of the watch. + The priority of the watch. @@ -4638,7 +6616,9 @@ MT safe. c:identifier="gst_bus_add_watch" shadowed-by="add_watch_full" introspectable="0"> - Adds a bus watch to the default main context with the default priority + Adds a bus watch to the default main context with the default priority (%G_PRIORITY_DEFAULT). It is also possible to use a non-default main context set up using g_main_context_push_thread_default() (before one had to create a bus watch source and attach it to the desired main @@ -4658,24 +6638,33 @@ The bus watch will take its own reference to the @bus, so it is safe to unref @bus using gst_object_unref() after setting the bus watch. MT safe. + - The event source id or 0 if @bus already got an event source. + The event source id or 0 if @bus already got an event source. - a #GstBus to create the watch for + a #GstBus to create the watch for - A function to call when a message is received. + A function to call when a message is received. - user data passed to @func. + user data passed to @func. @@ -4683,7 +6672,9 @@ MT safe. - Adds a bus watch to the default main context with the given @priority (e.g. + Adds a bus watch to the default main context with the given @priority (e.g. %G_PRIORITY_DEFAULT). It is also possible to use a non-default main context set up using g_main_context_push_thread_default() (before one had to create a bus watch source and attach it to the desired main @@ -4706,17 +6697,24 @@ The bus watch will take its own reference to the @bus, so it is safe to unref @bus using gst_object_unref() after setting the bus watch. MT safe. + - The event source id or 0 if @bus already got an event source. + The event source id or 0 if @bus already got an event source. - a #GstBus to create the watch for. + a #GstBus to create the watch for. - The priority of the watch. + The priority of the watch. scope="notified" closure="2" destroy="3"> - A function to call when a message is received. + A function to call when a message is received. - user data passed to @func. + user data passed to @func. - the function to call when the source is removed. + the function to call when the source is removed. - A helper #GstBusFunc that can be used to convert all asynchronous messages + A helper #GstBusFunc that can be used to convert all asynchronous messages into signals. + - %TRUE + %TRUE - a #GstBus + a #GstBus - the #GstMessage received + the #GstMessage received - user data + user data - Create watch for this bus. The GSource will be dispatched whenever + Create watch for this bus. The GSource will be dispatched whenever a message is on the bus. After the GSource is dispatched, the message is popped off the bus and unreffed. + - a #GSource that can be added to a mainloop. + a #GSource that can be added to a mainloop. - a #GstBus to create the watch for + a #GstBus to create the watch for - Instructs GStreamer to stop emitting the "sync-message" signal for this bus. + Instructs GStreamer to stop emitting the "sync-message" signal for this bus. See gst_bus_enable_sync_message_emission() for more information. In the event that multiple pieces of code have called @@ -4794,12 +6816,15 @@ the same as gst_object_ref() that which calls enable should also call disable. MT safe. + - a #GstBus on which you previously called + a #GstBus on which you previously called gst_bus_enable_sync_message_emission() @@ -4807,7 +6832,9 @@ gst_bus_enable_sync_message_emission() - Instructs GStreamer to emit the "sync-message" signal after running the bus's + Instructs GStreamer to emit the "sync-message" signal after running the bus's sync handler. This function is here so that code can ensure that they can synchronously receive messages without having to affect what the bin's sync handler is. @@ -4824,12 +6851,15 @@ comes from the thread of whatever object posted the message; the "message" signal is marshalled to the main thread via the main loop. MT safe. + - a #GstBus on which you want to receive the "sync-message" signal + a #GstBus on which you want to receive the "sync-message" signal @@ -4837,7 +6867,9 @@ MT safe. - Gets the file descriptor from the bus which can be used to get notified about + Gets the file descriptor from the bus which can be used to get notified about messages being available with functions like g_poll(), and allows integration into other event loops based on file descriptors. Whenever a message is available, the POLLIN / %G_IO_IN event is set. @@ -4845,28 +6877,38 @@ Whenever a message is available, the POLLIN / %G_IO_IN event is set. Warning: NEVER read or write anything to the returned fd but only use it for getting notifications via g_poll() or similar and then use the normal GstBus API, e.g. gst_bus_pop(). + - A #GstBus + A #GstBus - A GPollFD to fill + A GPollFD to fill - Check if there are pending messages on the bus that + Check if there are pending messages on the bus that should be handled. + - %TRUE if there are messages on the bus to be handled, %FALSE + %TRUE if there are messages on the bus to be handled, %FALSE otherwise. MT safe. @@ -4874,17 +6916,24 @@ MT safe. - a #GstBus to check + a #GstBus to check - Peek the message on the top of the bus' queue. The message will remain + Peek the message on the top of the bus' queue. The message will remain on the bus' message queue. A reference is returned, and needs to be unreffed by the caller. + - the #GstMessage that is on the + the #GstMessage that is on the bus, or %NULL if the bus is empty. MT safe. @@ -4892,13 +6941,17 @@ MT safe. - a #GstBus + a #GstBus - Poll the bus for messages. Will block while waiting for messages to come. + Poll the bus for messages. Will block while waiting for messages to come. You can specify a maximum time to poll with the @timeout parameter. If @timeout is negative, this function will block indefinitely. @@ -4931,8 +6984,11 @@ For 0 timeouts use gst_bus_pop_filtered() instead of this function; for other short timeouts use gst_bus_timed_pop_filtered(); everything else is better handled by setting up an asynchronous bus watch and doing things from there. + - the message that was received, + the message that was received, or %NULL if the poll timed out. The message is taken from the bus and needs to be unreffed with gst_message_unref() after usage. @@ -4940,25 +6996,36 @@ from there. - a #GstBus + a #GstBus - a mask of #GstMessageType, representing the set of message types to + a mask of #GstMessageType, representing the set of message types to poll for (note special handling of extended message types below) - the poll timeout, as a #GstClockTime, or #GST_CLOCK_TIME_NONE to poll + the poll timeout, as a #GstClockTime, or #GST_CLOCK_TIME_NONE to poll indefinitely. - Get a message from the bus. + Get a message from the bus. + - the #GstMessage that is on the + the #GstMessage that is on the bus, or %NULL if the bus is empty. The message is taken from the bus and needs to be unreffed with gst_message_unref() after usage. @@ -4968,19 +7035,26 @@ MT safe. - a #GstBus to pop + a #GstBus to pop - Get a message matching @type from the bus. Will discard all messages on + Get a message matching @type from the bus. Will discard all messages on the bus that do not match @type and that have been posted before the first message that does match @type. If there is no message matching @type on the bus, all messages will be discarded. It is not possible to use message enums beyond #GST_MESSAGE_EXTENDED in the @events mask. + - the next #GstMessage matching + the next #GstMessage matching @type that is on the bus, or %NULL if the bus is empty or there is no message matching @type. The message is taken from the bus and needs to be unreffed with gst_message_unref() after usage. @@ -4990,46 +7064,64 @@ MT safe. - a #GstBus to pop + a #GstBus to pop - message types to take into account + message types to take into account - Post a message on the given bus. Ownership of the message + Post a message on the given bus. Ownership of the message is taken by the bus. + - %TRUE if the message could be posted, %FALSE if the bus is flushing. + %TRUE if the message could be posted, %FALSE if the bus is flushing. MT safe. - a #GstBus to post on + a #GstBus to post on - the #GstMessage to post + the #GstMessage to post - Removes a signal watch previously added with gst_bus_add_signal_watch(). + Removes a signal watch previously added with gst_bus_add_signal_watch(). MT safe. + - a #GstBus you previously added a signal watch to + a #GstBus you previously added a signal watch to @@ -5037,40 +7129,56 @@ MT safe. - Removes an installed bus watch from @bus. + Removes an installed bus watch from @bus. + - %TRUE on success or %FALSE if @bus has no event source. + %TRUE on success or %FALSE if @bus has no event source. - a #GstBus to remove the watch from. + a #GstBus to remove the watch from. - If @flushing, flush out and unref any messages queued in the bus. Releases + If @flushing, flush out and unref any messages queued in the bus. Releases references to the message origin objects. Will flush future messages until gst_bus_set_flushing() sets @flushing to %FALSE. MT safe. + - a #GstBus + a #GstBus - whether or not to flush the bus + whether or not to flush the bus - Sets the synchronous handler on the bus. The function will be called + Sets the synchronous handler on the bus. The function will be called every time a new message is posted on the bus. Note that the function will be called in the same thread context as the posting object. This function is usually only called by the creator of the bus. Applications @@ -5079,12 +7187,15 @@ functions. You cannot replace an existing sync_handler. You can pass %NULL to this function, which will clear the existing handler. + - a #GstBus to install the handler on + a #GstBus to install the handler on scope="notified" closure="1" destroy="2"> - The handler function to install + The handler function to install - User data that will be sent to the handler function. + User data that will be sent to the handler function. - called when @user_data becomes unused + called when @user_data becomes unused - A helper GstBusSyncHandler that can be used to convert all synchronous + A helper GstBusSyncHandler that can be used to convert all synchronous messages into signals. + - GST_BUS_PASS + GST_BUS_PASS - a #GstBus + a #GstBus - the #GstMessage received + the #GstMessage received - user data + user data - Get a message from the bus, waiting up to the specified timeout. + Get a message from the bus, waiting up to the specified timeout. If @timeout is 0, this function behaves like gst_bus_pop(). If @timeout is #GST_CLOCK_TIME_NONE, this function will block forever until a message was posted on the bus. + - the #GstMessage that is on the + the #GstMessage that is on the bus after the specified timeout or %NULL if the bus is empty after the timeout expired. The message is taken from the bus and needs to be unreffed with gst_message_unref() after usage. @@ -5153,26 +7286,35 @@ MT safe. - a #GstBus to pop + a #GstBus to pop - a timeout + a timeout - Get a message from the bus whose type matches the message type mask @types, + Get a message from the bus whose type matches the message type mask @types, waiting up to the specified timeout (and discarding any messages that do not match the mask provided). If @timeout is 0, this function behaves like gst_bus_pop_filtered(). If @timeout is #GST_CLOCK_TIME_NONE, this function will block forever until a matching message was posted on the bus. + - a #GstMessage matching the + a #GstMessage matching the filter in @types, or %NULL if no matching message was found on the bus until the timeout expired. The message is taken from the bus and needs to be unreffed with gst_message_unref() after @@ -5183,15 +7325,21 @@ MT safe. - a #GstBus to pop from + a #GstBus to pop from - a timeout in nanoseconds, or GST_CLOCK_TIME_NONE to wait forever + a timeout in nanoseconds, or GST_CLOCK_TIME_NONE to wait forever - message types to take into account, GST_MESSAGE_ANY for any type + message types to take into account, GST_MESSAGE_ANY for any type @@ -5210,12 +7358,14 @@ MT safe. - + - A message has been posted on the bus. This signal is emitted from a + A message has been posted on the bus. This signal is emitted from a GSource added to the mainloop. this signal will only be emitted when there is a mainloop running. @@ -5223,13 +7373,17 @@ there is a mainloop running. - the message that has been posted asynchronously + the message that has been posted asynchronously - A message has been posted on the bus. This signal is emitted from the + A message has been posted on the bus. This signal is emitted from the thread that posted the message so one has to be careful with locking. This signal will not be emitted by default, you have to call @@ -5239,7 +7393,9 @@ gst_bus_enable_sync_message_emission() before. - the message that has been posted synchronously + the message that has been posted synchronously @@ -5248,11 +7404,13 @@ gst_bus_enable_sync_message_emission() before. + + @@ -5268,6 +7426,7 @@ gst_bus_enable_sync_message_emission() before. + @@ -5282,7 +7441,7 @@ gst_bus_enable_sync_message_emission() before. - + @@ -5291,22 +7450,30 @@ gst_bus_enable_sync_message_emission() before. glib:type-name="GstBusFlags" glib:get-type="gst_bus_flags_get_type" c:type="GstBusFlags"> - The standard flags that a bus may have. + The standard flags that a bus may have. - The bus is currently dropping all messages + The bus is currently dropping all messages - offset to define more flags + offset to define more flags - Specifies the type of function passed to gst_bus_add_watch() or + Specifies the type of function passed to gst_bus_add_watch() or gst_bus_add_watch_full(), which is called from the mainloop when a message is available on the bus. @@ -5315,17 +7482,24 @@ function so it should not be freed in the function. Note that this function is used as a GSourceFunc which means that returning %FALSE will remove the GSource from the mainloop. + - %FALSE if the event source should be removed. + %FALSE if the event source should be removed. - the #GstBus that sent the message + the #GstBus that sent the message - the #GstMessage + the #GstMessage - user data that has been given, when registering the handler + user data that has been given, when registering the handler + - Handler will be invoked synchronously, when a new message has been injected + Handler will be invoked synchronously, when a new message has been injected into the bus. This function is mostly used internally. Only one sync handler can be attached to a given bus. If the handler returns GST_BUS_DROP, it should unref the message, else the message should not be unreffed by the sync handler. + - #GstBusSyncReply stating what to do with the message + #GstBusSyncReply stating what to do with the message - the #GstBus that sent the message + the #GstBus that sent the message - the #GstMessage + the #GstMessage nullable="1" allow-none="1" closure="2"> - user data that has been given, when registering the handler + user data that has been given, when registering the handler @@ -5374,46 +7562,665 @@ message should not be unreffed by the sync handler. glib:type-name="GstBusSyncReply" glib:get-type="gst_bus_sync_reply_get_type" c:type="GstBusSyncReply"> - The result values for a GstBusSyncHandler. + The result values for a GstBusSyncHandler. - drop the message + drop the message - pass the message to the async queue + pass the message to the async queue - pass message to async queue, continue if message is handled + pass message to async queue, continue if message is handled + + Just call the parent handler. This assumes that there is a variable +named parent_class that points to the (duh!) parent class. Note that +this macro is not to be used with things that return something, use +the _WITH_DEFAULT version for that + + + + the name of the class cast macro for the parent type + + + name of the function to call + + + arguments enclosed in '( )' + + + + + Same as GST_CALL_PARENT(), but in case there is no implementation, it +evaluates to @def_return. + + + + the name of the class cast macro for the parent type + + + name of the function to call + + + arguments enclosed in '( )' + + + default result + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A flags word containing #GstCapsFlags flags set on this caps. + + + + a #GstCaps. + + + + + Gives the status of a specific flag on a caps. + + + + a #GstCaps. + + + the #GstCapsFlags to check. + + + + + Sets a caps flag on a caps. + + + + a #GstCaps. + + + the #GstCapsFlags to set. + + + + + Clears a caps flag. + + + + a #GstCaps. + + + the #GstCapsFlags to clear. + + + + + Convenience macro that checks if the number of structures in the given caps +is exactly one. + + + + the #GstCaps instance to check + + + + + Get access to the reference count field of the caps + + + + a #GstCaps + + + + + Get the reference count value of the caps. + + + + a #GstCaps + + + + + Output a hexdump of @data in the given category. + +There is no need to finish the end of the message string with a newline +character, a newline character will be added automatically. + + + + category to use + + + message string to log with the data + + + pointer to the data to output + + + length of the data to output + + + + + Output a hexdump of @data relating to the given object in the given +category. + +There is no need to finish the end of the message string with a newline +character, a newline character will be added automatically. + + + + category to use + + + the #GObject the message belongs to + + + message string to log with the data + + + pointer to the data to output + + + length of the data to output + + + + + Check whether a GStreamer version equal to or greater than +major.minor.micro is present. + + + + a number indicating the major version + + + a number indicating the minor version + + + a number indicating the micro version + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Calculate a difference between two clock times as a #GstClockTimeDiff. +The difference is calculated as @e - @s. + + + + the first time + + + the second time + + + + + Cast to a clock entry + + + + the entry to cast + + + + + Get the owner clock of the entry + Use gst_clock_id_get_clock() instead. + + + + the entry to query + + + + + Get the interval of this periodic entry + + + + the entry to query + + + + + The status of the entry + + + + the entry to query + + + + + Get the requested time of this entry + + + + the entry to query + + + + + Get the type of the clock entry + + + + the entry to query + + + + + Gets the #GstClockFlags clock flags. + + + + the clock to query + + + + + + + + + + + + Tests if a given #GstClockTimeDiff of #gint64 represents a valid defined time. + + + + signed clock time to validate + + + + + Tests if a given #GstClockTime represents a valid defined time. + + + + clock time to validate + + + - Constant to define an undefined clock time. + Constant to define an undefined clock time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Caps (capabilities) are lightweight refcounted objects describing media types. + Caps (capabilities) are lightweight refcounted objects describing media types. They are composed of an array of #GstStructure. Caps are exposed on #GstPadTemplate to describe all possible types a @@ -5447,40 +8254,60 @@ has limited support for nested #GstCaps / #GstStructure fields. It can only support one level of nesting. Using more levels will lead to unexpected behavior when using serialization features, such as gst_caps_to_string() or gst_value_serialize() and their counterparts. + - the parent type + the parent type - Creates a new #GstCaps that indicates that it is compatible with + Creates a new #GstCaps that indicates that it is compatible with any media format. + - the new #GstCaps + the new #GstCaps - Creates a new #GstCaps that is empty. That is, the returned + Creates a new #GstCaps that is empty. That is, the returned #GstCaps contains no media formats. The #GstCaps is guaranteed to be writable. Caller is responsible for unreffing the returned caps. + - the new #GstCaps + the new #GstCaps - Creates a new #GstCaps that contains one #GstStructure with name + Creates a new #GstCaps that contains one #GstStructure with name @media_type. Caller is responsible for unreffing the returned caps. + - the new #GstCaps + the new #GstCaps - the media type of the structure + the media type of the structure @@ -5488,20 +8315,29 @@ Caller is responsible for unreffing the returned caps. - Creates a new #GstCaps and adds all the structures listed as + Creates a new #GstCaps and adds all the structures listed as arguments. The list must be %NULL-terminated. The structures are not copied; the returned #GstCaps owns the structures. + - the new #GstCaps + the new #GstCaps - the first structure to add + the first structure to add - additional structures to add + additional structures to add @@ -5509,20 +8345,29 @@ are not copied; the returned #GstCaps owns the structures. - Creates a new #GstCaps and adds all the structures listed as + Creates a new #GstCaps and adds all the structures listed as arguments. The list must be %NULL-terminated. The structures are not copied; the returned #GstCaps owns the structures. + - the new #GstCaps + the new #GstCaps - the first structure to add + the first structure to add - additional structures to add + additional structures to add @@ -5530,60 +8375,85 @@ are not copied; the returned #GstCaps owns the structures. - Creates a new #GstCaps that contains one #GstStructure. The + Creates a new #GstCaps that contains one #GstStructure. The structure is defined by the arguments, which have the same format as gst_structure_new(). Caller is responsible for unreffing the returned caps. + - the new #GstCaps + the new #GstCaps - the media type of the structure + the media type of the structure - first field to set + first field to set - additional arguments + additional arguments - Appends the structures contained in @caps2 to @caps1. The structures in + Appends the structures contained in @caps2 to @caps1. The structures in @caps2 are not copied -- they are transferred to @caps1, and then @caps2 is freed. If either caps is ANY, the resulting caps will be ANY. + - the #GstCaps that will be appended to + the #GstCaps that will be appended to - the #GstCaps to append + the #GstCaps to append - Appends @structure to @caps. The structure is not copied; @caps + Appends @structure to @caps. The structure is not copied; @caps becomes the owner of @structure. + - the #GstCaps that will be appended to + the #GstCaps that will be appended to - the #GstStructure to append + the #GstStructure to append @@ -5591,49 +8461,69 @@ becomes the owner of @structure. - Appends @structure with @features to @caps. The structure is not copied; @caps + Appends @structure with @features to @caps. The structure is not copied; @caps becomes the owner of @structure. + - the #GstCaps that will be appended to + the #GstCaps that will be appended to - the #GstStructure to append + the #GstStructure to append - the #GstCapsFeatures to append + the #GstCapsFeatures to append - Tries intersecting @caps1 and @caps2 and reports whether the result would not + Tries intersecting @caps1 and @caps2 and reports whether the result would not be empty + - %TRUE if intersection would be not empty + %TRUE if intersection would be not empty - a #GstCaps to intersect + a #GstCaps to intersect - a #GstCaps to intersect + a #GstCaps to intersect - Creates a new #GstCaps as a copy of the old @caps. The new caps will have a + Creates a new #GstCaps as a copy of the old @caps. The new caps will have a refcount of 1, owned by the caller. The structures are copied as well. Note that this function is the semantic equivalent of a gst_caps_ref() @@ -5641,31 +8531,45 @@ followed by a gst_caps_make_writable(). If you only want to hold on to a reference to the data, you should use gst_caps_ref(). When you are finished with the caps, call gst_caps_unref() on it. + - the new #GstCaps + the new #GstCaps - a #GstCaps. + a #GstCaps. - Creates a new #GstCaps and appends a copy of the nth structure + Creates a new #GstCaps and appends a copy of the nth structure contained in @caps. + - the new #GstCaps + the new #GstCaps - the #GstCaps to copy + the #GstCaps to copy - the nth structure to copy + the nth structure to copy @@ -5673,81 +8577,108 @@ contained in @caps. - Calls the provided function once for each structure and caps feature in the + Calls the provided function once for each structure and caps feature in the #GstCaps. In contrast to gst_caps_foreach(), the function may modify the structure and features. In contrast to gst_caps_filter_and_map_in_place(), the structure and features are removed from the caps if %FALSE is returned from the function. The caps must be mutable. + - a #GstCaps + a #GstCaps - a function to call for each field + a function to call for each field - private data + private data - Modifies the given @caps into a representation with only fixed + Modifies the given @caps into a representation with only fixed values. First the caps will be truncated and then the first structure will be fixated with gst_structure_fixate(). This function takes ownership of @caps and will call gst_caps_make_writable() on it so you must not use @caps afterwards unless you keep an additional reference to it with gst_caps_ref(). + - the fixated caps + the fixated caps - a #GstCaps to fixate + a #GstCaps to fixate - Calls the provided function once for each structure and caps feature in the + Calls the provided function once for each structure and caps feature in the #GstCaps. The function must not modify the fields. Also see gst_caps_map_in_place() and gst_caps_filter_and_map_in_place(). + - %TRUE if the supplied function returns %TRUE for each call, + %TRUE if the supplied function returns %TRUE for each call, %FALSE otherwise. - a #GstCaps + a #GstCaps - a function to call for each field + a function to call for each field - private data + private data @@ -5755,7 +8686,9 @@ Also see gst_caps_map_in_place() and gst_caps_filter_and_map_in_place(). - Finds the features in @caps that has the index @index, and + Finds the features in @caps that has the index @index, and returns it. WARNING: This function takes a const GstCaps *, but returns a @@ -5769,37 +8702,53 @@ gst_caps_features_add(). You do not need to free or unref the structure returned, it belongs to the #GstCaps. + - a pointer to the #GstCapsFeatures + a pointer to the #GstCapsFeatures corresponding to @index - a #GstCaps + a #GstCaps - the index of the structure + the index of the structure - Gets the number of structures contained in @caps. + Gets the number of structures contained in @caps. + - the number of structures that @caps contains + the number of structures that @caps contains - a #GstCaps + a #GstCaps - Finds the structure in @caps that has the index @index, and + Finds the structure in @caps that has the index @index, and returns it. WARNING: This function takes a const GstCaps *, but returns a @@ -5813,209 +8762,311 @@ gst_structure_set(). You do not need to free or unref the structure returned, it belongs to the #GstCaps. + - a pointer to the #GstStructure corresponding + a pointer to the #GstStructure corresponding to @index - a #GstCaps + a #GstCaps - the index of the structure + the index of the structure - Creates a new #GstCaps that contains all the formats that are common + Creates a new #GstCaps that contains all the formats that are common to both @caps1 and @caps2. Defaults to %GST_CAPS_INTERSECT_ZIG_ZAG mode. + - the new #GstCaps + the new #GstCaps - a #GstCaps to intersect + a #GstCaps to intersect - a #GstCaps to intersect + a #GstCaps to intersect - Creates a new #GstCaps that contains all the formats that are common + Creates a new #GstCaps that contains all the formats that are common to both @caps1 and @caps2, the order is defined by the #GstCapsIntersectMode used. + - the new #GstCaps + the new #GstCaps - a #GstCaps to intersect + a #GstCaps to intersect - a #GstCaps to intersect + a #GstCaps to intersect - The intersection algorithm/mode to use + The intersection algorithm/mode to use - A given #GstCaps structure is always compatible with another if + A given #GstCaps structure is always compatible with another if every media format that is in the first is also contained in the second. That is, @caps1 is a subset of @caps2. + - %TRUE if @caps1 is a subset of @caps2. + %TRUE if @caps1 is a subset of @caps2. - the #GstCaps to test + the #GstCaps to test - the #GstCaps to test + the #GstCaps to test - Determines if @caps represents any media format. + Determines if @caps represents any media format. + - %TRUE if @caps represents any format. + %TRUE if @caps represents any format. - the #GstCaps to test + the #GstCaps to test - Determines if @caps represents no media formats. + Determines if @caps represents no media formats. + - %TRUE if @caps represents no formats. + %TRUE if @caps represents no formats. - the #GstCaps to test + the #GstCaps to test - Checks if the given caps represent the same set of caps. + Checks if the given caps represent the same set of caps. + - %TRUE if both caps are equal. + %TRUE if both caps are equal. - a #GstCaps + a #GstCaps - another #GstCaps + another #GstCaps - Tests if two #GstCaps are equal. This function only works on fixed + Tests if two #GstCaps are equal. This function only works on fixed #GstCaps. + - %TRUE if the arguments represent the same format + %TRUE if the arguments represent the same format - the #GstCaps to test + the #GstCaps to test - the #GstCaps to test + the #GstCaps to test - Fixed #GstCaps describe exactly one format, that is, they have exactly + Fixed #GstCaps describe exactly one format, that is, they have exactly one structure, and each field in the structure describes a fixed type. Examples of non-fixed types are GST_TYPE_INT_RANGE and GST_TYPE_LIST. + - %TRUE if @caps is fixed + %TRUE if @caps is fixed - the #GstCaps to test + the #GstCaps to test - Checks if the given caps are exactly the same set of caps. + Checks if the given caps are exactly the same set of caps. + - %TRUE if both caps are strictly equal. + %TRUE if both caps are strictly equal. - a #GstCaps + a #GstCaps - another #GstCaps + another #GstCaps - Checks if all caps represented by @subset are also represented by @superset. + Checks if all caps represented by @subset are also represented by @superset. + - %TRUE if @subset is a subset of @superset + %TRUE if @subset is a subset of @superset - a #GstCaps + a #GstCaps - a potentially greater #GstCaps + a potentially greater #GstCaps - Checks if @structure is a subset of @caps. See gst_caps_is_subset() + Checks if @structure is a subset of @caps. See gst_caps_is_subset() for more information. + - %TRUE if @structure is a subset of @caps + %TRUE if @structure is a subset of @caps - a #GstCaps + a #GstCaps - a potential #GstStructure subset of @caps + a potential #GstStructure subset of @caps @@ -6023,26 +9074,37 @@ for more information. - Checks if @structure is a subset of @caps. See gst_caps_is_subset() + Checks if @structure is a subset of @caps. See gst_caps_is_subset() for more information. + - %TRUE if @structure is a subset of @caps + %TRUE if @structure is a subset of @caps - a #GstCaps + a #GstCaps - a potential #GstStructure subset of @caps + a potential #GstStructure subset of @caps - a #GstCapsFeatures for @structure + a #GstCapsFeatures for @structure @@ -6050,68 +9112,97 @@ for more information. - Calls the provided function once for each structure and caps feature in the + Calls the provided function once for each structure and caps feature in the #GstCaps. In contrast to gst_caps_foreach(), the function may modify but not delete the structures and features. The caps must be mutable. + - %TRUE if the supplied function returns %TRUE for each call, + %TRUE if the supplied function returns %TRUE for each call, %FALSE otherwise. - a #GstCaps + a #GstCaps - a function to call for each field + a function to call for each field - private data + private data - Appends the structures contained in @caps2 to @caps1 if they are not yet + Appends the structures contained in @caps2 to @caps1 if they are not yet expressed by @caps1. The structures in @caps2 are not copied -- they are transferred to a writable copy of @caps1, and then @caps2 is freed. If either caps is ANY, the resulting caps will be ANY. + - the merged caps. + the merged caps. - the #GstCaps that will take the new entries + the #GstCaps that will take the new entries - the #GstCaps to merge in + the #GstCaps to merge in - Appends @structure to @caps if its not already expressed by @caps. + Appends @structure to @caps if its not already expressed by @caps. + - the merged caps. + the merged caps. - the #GstCaps to merge into + the #GstCaps to merge into - the #GstStructure to merge + the #GstStructure to merge @@ -6119,61 +9210,86 @@ If either caps is ANY, the resulting caps will be ANY. - Appends @structure with @features to @caps if its not already expressed by @caps. + Appends @structure with @features to @caps if its not already expressed by @caps. + - the merged caps. + the merged caps. - the #GstCaps to merge into + the #GstCaps to merge into - the #GstStructure to merge + the #GstStructure to merge - the #GstCapsFeatures to merge + the #GstCapsFeatures to merge - Returns a #GstCaps that represents the same set of formats as + Returns a #GstCaps that represents the same set of formats as @caps, but contains no lists. Each list is expanded into separate @GstStructures. This function takes ownership of @caps and will call gst_caps_make_writable() on it so you must not use @caps afterwards unless you keep an additional reference to it with gst_caps_ref(). + - the normalized #GstCaps + the normalized #GstCaps - a #GstCaps to normalize + a #GstCaps to normalize - removes the structure with the given index from the list of structures + removes the structure with the given index from the list of structures contained in @caps. + - the #GstCaps to remove from + the #GstCaps to remove from - Index of the structure to remove + Index of the structure to remove @@ -6181,24 +9297,33 @@ contained in @caps. - Sets the #GstCapsFeatures @features for the structure at @index. + Sets the #GstCapsFeatures @features for the structure at @index. + - a #GstCaps + a #GstCaps - the index of the structure + the index of the structure - the #GstCapsFeatures to set + the #GstCapsFeatures to set @@ -6206,20 +9331,27 @@ contained in @caps. - Sets the #GstCapsFeatures @features for all the structures of @caps. + Sets the #GstCapsFeatures @features for all the structures of @caps. + - a #GstCaps + a #GstCaps - the #GstCapsFeatures to set + the #GstCapsFeatures to set @@ -6227,22 +9359,31 @@ contained in @caps. - Sets fields in a #GstCaps. The arguments must be passed in the same + Sets fields in a #GstCaps. The arguments must be passed in the same manner as gst_structure_set(), and be %NULL-terminated. + - the #GstCaps to set + the #GstCaps to set - first field to set + first field to set - additional parameters + additional parameters @@ -6250,50 +9391,70 @@ manner as gst_structure_set(), and be %NULL-terminated. - Sets fields in a #GstCaps. The arguments must be passed in the same + Sets fields in a #GstCaps. The arguments must be passed in the same manner as gst_structure_set(), and be %NULL-terminated. + - the #GstCaps to set + the #GstCaps to set - first field to set + first field to set - additional parameters + additional parameters - Sets the given @field on all structures of @caps to the given @value. + Sets the given @field on all structures of @caps to the given @value. This is a convenience function for calling gst_structure_set_value() on all structures of @caps. + - a writable caps + a writable caps - name of the field to set + name of the field to set - value to set the field to + value to set the field to - Converts the given @caps into a representation that represents the + Converts the given @caps into a representation that represents the same set of formats, but in a simpler form. Component structures that are identical are merged. Component structures that have values that can be merged are also merged. @@ -6303,57 +9464,82 @@ on it if necessary, so you must not use @caps afterwards unless you keep an additional reference to it with gst_caps_ref(). This method does not preserve the original order of @caps. + - The simplified caps. + The simplified caps. - a #GstCaps to simplify + a #GstCaps to simplify - Retrieves the structure with the given index from the list of structures + Retrieves the structure with the given index from the list of structures contained in @caps. The caller becomes the owner of the returned structure. + - a pointer to the #GstStructure + a pointer to the #GstStructure corresponding to @index. - the #GstCaps to retrieve from + the #GstCaps to retrieve from - Index of the structure to retrieve + Index of the structure to retrieve - Subtracts the @subtrahend from the @minuend. + Subtracts the @subtrahend from the @minuend. > This function does not work reliably if optional properties for caps > are included on one caps and omitted on the other. + - the resulting caps + the resulting caps - #GstCaps to subtract from + #GstCaps to subtract from - #GstCaps to subtract + #GstCaps to subtract - Converts @caps to a string representation. This string representation + Converts @caps to a string representation. This string representation can be converted back to a #GstCaps by gst_caps_from_string(). For debugging purposes its easier to do something like this: @@ -6364,47 +9550,66 @@ This prints the caps in human readable form. The current implementation of serialization will lead to unexpected results when there are nested #GstCaps / #GstStructure deeper than one level. + - a newly allocated string representing @caps. + a newly allocated string representing @caps. - a #GstCaps + a #GstCaps - Discard all but the first structure from @caps. Useful when + Discard all but the first structure from @caps. Useful when fixating. This function takes ownership of @caps and will call gst_caps_make_writable() on it if necessary, so you must not use @caps afterwards unless you keep an additional reference to it with gst_caps_ref(). + - truncated caps + truncated caps - the #GstCaps to truncate + the #GstCaps to truncate - Converts @caps from a string representation. + Converts @caps from a string representation. The current implementation of serialization will lead to unexpected results when there are nested #GstCaps / #GstStructure deeper than one level. + - a newly allocated #GstCaps + a newly allocated #GstCaps - a string to convert to #GstCaps + a string to convert to #GstCaps @@ -6412,10 +9617,13 @@ when there are nested #GstCaps / #GstStructure deeper than one level. - #GstCapsFeatures can optionally be set on a #GstCaps to add requirements + #GstCapsFeatures can optionally be set on a #GstCaps to add requirements for additional features for a specific #GstStructure. Caps structures with the same name but with a non-equal set of caps features are not compatible. If a pad supports multiple sets of features it has to add multiple equal @@ -6433,25 +9641,35 @@ Examples for caps features would be the requirement of a specific #GstMemory types or the requirement of having a specific #GstMeta on the buffer. Features are given as a string of the format "memory:GstMemoryTypeName" or "meta:GstMetaAPIName". + - Creates a new #GstCapsFeatures with the given features. + Creates a new #GstCapsFeatures with the given features. The last argument must be %NULL. Free-function: gst_caps_features_free + - a new, empty #GstCapsFeatures + a new, empty #GstCapsFeatures - name of first feature to set + name of first feature to set - additional features + additional features @@ -6459,24 +9677,34 @@ Free-function: gst_caps_features_free - Creates a new, ANY #GstCapsFeatures. This will be equal + Creates a new, ANY #GstCapsFeatures. This will be equal to any other #GstCapsFeatures but caps with these are unfixed. Free-function: gst_caps_features_free + - a new, ANY #GstCapsFeatures + a new, ANY #GstCapsFeatures - Creates a new, empty #GstCapsFeatures. + Creates a new, empty #GstCapsFeatures. Free-function: gst_caps_features_free + - a new, empty #GstCapsFeatures + a new, empty #GstCapsFeatures @@ -6484,21 +9712,30 @@ Free-function: gst_caps_features_free c:identifier="gst_caps_features_new_id" version="1.2" introspectable="0"> - Creates a new #GstCapsFeatures with the given features. + Creates a new #GstCapsFeatures with the given features. The last argument must be 0. Free-function: gst_caps_features_free + - a new, empty #GstCapsFeatures + a new, empty #GstCapsFeatures - name of first feature to set + name of first feature to set - additional features + additional features @@ -6507,20 +9744,29 @@ Free-function: gst_caps_features_free c:identifier="gst_caps_features_new_id_valist" version="1.2" introspectable="0"> - Creates a new #GstCapsFeatures with the given features. + Creates a new #GstCapsFeatures with the given features. Free-function: gst_caps_features_free + - a new, empty #GstCapsFeatures + a new, empty #GstCapsFeatures - name of first feature to set + name of first feature to set - variable argument list + variable argument list @@ -6529,36 +9775,52 @@ Free-function: gst_caps_features_free c:identifier="gst_caps_features_new_valist" version="1.2" introspectable="0"> - Creates a new #GstCapsFeatures with the given features. + Creates a new #GstCapsFeatures with the given features. Free-function: gst_caps_features_free + - a new, empty #GstCapsFeatures + a new, empty #GstCapsFeatures - name of first feature to set + name of first feature to set - variable argument list + variable argument list - Adds @feature to @features. + Adds @feature to @features. + - a #GstCapsFeatures. + a #GstCapsFeatures. - a feature. + a feature. @@ -6566,17 +9828,24 @@ Free-function: gst_caps_features_free - Adds @feature to @features. + Adds @feature to @features. + - a #GstCapsFeatures. + a #GstCapsFeatures. - a feature. + a feature. @@ -6584,18 +9853,27 @@ Free-function: gst_caps_features_free - Check if @features contains @feature. + Check if @features contains @feature. + - %TRUE if @features contains @feature. + %TRUE if @features contains @feature. - a #GstCapsFeatures. + a #GstCapsFeatures. - a feature + a feature @@ -6603,46 +9881,67 @@ Free-function: gst_caps_features_free - Check if @features contains @feature. + Check if @features contains @feature. + - %TRUE if @features contains @feature. + %TRUE if @features contains @feature. - a #GstCapsFeatures. + a #GstCapsFeatures. - a feature + a feature - Duplicates a #GstCapsFeatures and all its values. + Duplicates a #GstCapsFeatures and all its values. Free-function: gst_caps_features_free + - a new #GstCapsFeatures. + a new #GstCapsFeatures. - a #GstCapsFeatures to duplicate + a #GstCapsFeatures to duplicate - Frees a #GstCapsFeatures and all its values. The caps features must not + Frees a #GstCapsFeatures and all its values. The caps features must not have a parent when this function is called. + - the #GstCapsFeatures to free + the #GstCapsFeatures to free @@ -6650,18 +9949,27 @@ have a parent when this function is called. - Returns the @i-th feature of @features. + Returns the @i-th feature of @features. + - The @i-th feature of @features. + The @i-th feature of @features. - a #GstCapsFeatures. + a #GstCapsFeatures. - index of the feature + index of the feature @@ -6669,18 +9977,27 @@ have a parent when this function is called. - Returns the @i-th feature of @features. + Returns the @i-th feature of @features. + - The @i-th feature of @features. + The @i-th feature of @features. - a #GstCapsFeatures. + a #GstCapsFeatures. - index of the feature + index of the feature @@ -6688,14 +10005,21 @@ have a parent when this function is called. - Returns the number of features in @features. + Returns the number of features in @features. + - The number of features in @features. + The number of features in @features. - a #GstCapsFeatures. + a #GstCapsFeatures. @@ -6703,14 +10027,21 @@ have a parent when this function is called. - Check if @features is %GST_CAPS_FEATURES_ANY. + Check if @features is %GST_CAPS_FEATURES_ANY. + - %TRUE if @features is %GST_CAPS_FEATURES_ANY. + %TRUE if @features is %GST_CAPS_FEATURES_ANY. - a #GstCapsFeatures. + a #GstCapsFeatures. @@ -6718,18 +10049,27 @@ have a parent when this function is called. - Check if @features1 and @features2 are equal. + Check if @features1 and @features2 are equal. + - %TRUE if @features1 and @features2 are equal. + %TRUE if @features1 and @features2 are equal. - a #GstCapsFeatures. + a #GstCapsFeatures. - a #GstCapsFeatures. + a #GstCapsFeatures. @@ -6737,17 +10077,24 @@ have a parent when this function is called. - Removes @feature from @features. + Removes @feature from @features. + - a #GstCapsFeatures. + a #GstCapsFeatures. - a feature. + a feature. @@ -6755,17 +10102,24 @@ have a parent when this function is called. - Removes @feature from @features. + Removes @feature from @features. + - a #GstCapsFeatures. + a #GstCapsFeatures. - a feature. + a feature. @@ -6773,21 +10127,30 @@ have a parent when this function is called. - Sets the parent_refcount field of #GstCapsFeatures. This field is used to + Sets the parent_refcount field of #GstCapsFeatures. This field is used to determine whether a caps features is mutable or not. This function should only be called by code implementing parent objects of #GstCapsFeatures, as described in the MT Refcounting section of the design documents. + - %TRUE if the parent refcount could be set. + %TRUE if the parent refcount could be set. - a #GstCapsFeatures + a #GstCapsFeatures - a pointer to the parent's refcount + a pointer to the parent's refcount @@ -6795,7 +10158,9 @@ the MT Refcounting section of the design documents. - Converts @features to a human-readable string representation. + Converts @features to a human-readable string representation. For debugging purposes its easier to do something like this: |[<!-- language="C" --> @@ -6804,14 +10169,19 @@ GST_LOG ("features is %" GST_PTR_FORMAT, features); This prints the features in human readable form. Free-function: g_free + - a pointer to string allocated by g_malloc(). + a pointer to string allocated by g_malloc(). g_free() after usage. - a #GstCapsFeatures + a #GstCapsFeatures @@ -6819,39 +10189,55 @@ Free-function: g_free - Creates a #GstCapsFeatures from a string representation. + Creates a #GstCapsFeatures from a string representation. Free-function: gst_caps_features_free + - a new #GstCapsFeatures or + a new #GstCapsFeatures or %NULL when the string could not be parsed. Free with gst_caps_features_free() after use. - a string representation of a #GstCapsFeatures. + a string representation of a #GstCapsFeatures. - A function that will be called in gst_caps_filter_and_map_in_place(). + A function that will be called in gst_caps_filter_and_map_in_place(). The function may modify @features and @structure, and both will be removed from the caps if %FALSE is returned. + - %TRUE if the features and structure should be preserved, + %TRUE if the features and structure should be preserved, %FALSE if it should be removed. - the #GstCapsFeatures + the #GstCapsFeatures - the #GstStructure + the #GstStructure nullable="1" allow-none="1" closure="2"> - user data + user data @@ -6868,30 +10256,43 @@ removed from the caps if %FALSE is returned. glib:type-name="GstCapsFlags" glib:get-type="gst_caps_flags_get_type" c:type="GstCapsFlags"> - Extra flags for a caps. + Extra flags for a caps. - Caps has no specific content, but can contain + Caps has no specific content, but can contain anything. - A function that will be called in gst_caps_foreach(). The function may + A function that will be called in gst_caps_foreach(). The function may not modify @features or @structure. + - %TRUE if the foreach operation should continue, %FALSE if + %TRUE if the foreach operation should continue, %FALSE if the foreach operation should stop with %FALSE. - the #GstCapsFeatures + the #GstCapsFeatures - the #GstStructure + the #GstStructure nullable="1" allow-none="1" closure="2"> - user data + user data @@ -6908,7 +10311,9 @@ the foreach operation should stop with %FALSE. glib:type-name="GstCapsIntersectMode" glib:get-type="gst_caps_intersect_mode_get_type" c:type="GstCapsIntersectMode"> - Modes of caps intersection + Modes of caps intersection @GST_CAPS_INTERSECT_ZIG_ZAG tries to preserve overall order of both caps by iterating on the caps' structures as the following matrix shows: @@ -6931,30 +10336,43 @@ would be [A, B], maintaining the first caps priority on the intersection. value="0" c:identifier="GST_CAPS_INTERSECT_ZIG_ZAG" glib:nick="zig-zag"> - Zig-zags over both caps. + Zig-zags over both caps. - Keeps the first caps order. + Keeps the first caps order. - A function that will be called in gst_caps_map_in_place(). The function + A function that will be called in gst_caps_map_in_place(). The function may modify @features and @structure. + - %TRUE if the map operation should continue, %FALSE if + %TRUE if the map operation should continue, %FALSE if the map operation should stop with %FALSE. - the #GstCapsFeatures + the #GstCapsFeatures - the #GstStructure + the #GstStructure nullable="1" allow-none="1" closure="2"> - user data + user data @@ -6973,7 +10393,9 @@ the map operation should stop with %FALSE. glib:type-name="GstChildProxy" glib:get-type="gst_child_proxy_get_type" glib:type-struct="ChildProxyInterface"> - This interface abstracts handling of property sets for elements with + This interface abstracts handling of property sets for elements with children. Imagine elements such as mixers or polyphonic generators. They all have multiple #GstPad or some kind of voice objects. Another use case are container elements like #GstBin. @@ -6986,50 +10408,74 @@ parent element by using gst_child_proxy_get() and gst_child_proxy_set(). Property names are written as "child-name::property-name". The whole naming scheme is recursive. Thus "child1::child2::property" is valid too, if "child1" and "child2" implement the #GstChildProxy interface. + - Emits the "child-added" signal. + Emits the "child-added" signal. + - the parent object + the parent object - the newly added child + the newly added child - the name of the new child + the name of the new child - Emits the "child-removed" signal. + Emits the "child-removed" signal. + - the parent object + the parent object - the removed child + the removed child - the name of the old child + the name of the old child - Fetches a child by its number. + Fetches a child by its number. + - the child object or %NULL if + the child object or %NULL if not found (index too high). Unref after usage. MT safe. @@ -7037,23 +10483,32 @@ MT safe. - the parent object to get the child from + the parent object to get the child from - the child's position in the child list + the child's position in the child list - Looks up a child element by the given name. + Looks up a child element by the given name. This virtual method has a default implementation that uses #GstObject together with gst_object_get_name(). If the interface is to be used with #GObjects, this methods needs to be overridden. + - the child object or %NULL if + the child object or %NULL if not found. Unref after usage. MT safe. @@ -7061,96 +10516,139 @@ MT safe. - the parent object to get the child from + the parent object to get the child from - the child's name + the child's name - Gets the number of child objects this parent contains. + Gets the number of child objects this parent contains. + - the number of child objects + the number of child objects MT safe. - the parent object + the parent object - Emits the "child-added" signal. + Emits the "child-added" signal. + - the parent object + the parent object - the newly added child + the newly added child - the name of the new child + the name of the new child - Emits the "child-removed" signal. + Emits the "child-removed" signal. + - the parent object + the parent object - the removed child + the removed child - the name of the old child + the name of the old child - Gets properties of the parent object and its children. + Gets properties of the parent object and its children. + - the parent object + the parent object - name of the first property to get + name of the first property to get - return location for the first property, followed optionally by more name/return location pairs, followed by %NULL + return location for the first property, followed optionally by more name/return location pairs, followed by %NULL - Fetches a child by its number. + Fetches a child by its number. + - the child object or %NULL if + the child object or %NULL if not found (index too high). Unref after usage. MT safe. @@ -7158,24 +10656,33 @@ MT safe. - the parent object to get the child from + the parent object to get the child from - the child's position in the child list + the child's position in the child list - Looks up a child element by the given name. + Looks up a child element by the given name. This virtual method has a default implementation that uses #GstObject together with gst_object_get_name(). If the interface is to be used with #GObjects, this methods needs to be overridden. + - the child object or %NULL if + the child object or %NULL if not found. Unref after usage. MT safe. @@ -7183,51 +10690,71 @@ MT safe. - the parent object to get the child from + the parent object to get the child from - the child's name + the child's name - Gets the number of child objects this parent contains. + Gets the number of child objects this parent contains. + - the number of child objects + the number of child objects MT safe. - the parent object + the parent object - Gets a single property using the GstChildProxy mechanism. + Gets a single property using the GstChildProxy mechanism. You are responsible for freeing it by calling g_value_unset() + - object to query + object to query - name of the property + name of the property - a #GValue that should take the result. + a #GValue that should take the result. @@ -7235,42 +10762,60 @@ You are responsible for freeing it by calling g_value_unset() - Gets properties of the parent object and its children. + Gets properties of the parent object and its children. + - the object to query + the object to query - name of the first property to get + name of the first property to get - return location for the first property, followed optionally by more name/return location pairs, followed by %NULL + return location for the first property, followed optionally by more name/return location pairs, followed by %NULL - Looks up which object and #GParamSpec would be effected by the given @name. + Looks up which object and #GParamSpec would be effected by the given @name. MT safe. + - %TRUE if @target and @pspec could be found. %FALSE otherwise. In that + %TRUE if @target and @pspec could be found. %FALSE otherwise. In that case the values for @pspec and @target are not modified. Unref @target after usage. For plain GObjects @target is the same as @object. - child proxy object to lookup the property in + child proxy object to lookup the property in - name of the property to look up + name of the property to look up transfer-ownership="full" optional="1" allow-none="1"> - pointer to a #GObject that + pointer to a #GObject that takes the real object to set property on @@ -7289,48 +10836,68 @@ usage. For plain GObjects @target is the same as @object. transfer-ownership="none" optional="1" allow-none="1"> - pointer to take the #GParamSpec + pointer to take the #GParamSpec describing the property - Sets properties of the parent object and its children. + Sets properties of the parent object and its children. + - the parent object + the parent object - name of the first property to set + name of the first property to set - value for the first property, followed optionally by more name/value pairs, followed by %NULL + value for the first property, followed optionally by more name/value pairs, followed by %NULL - Sets a single property using the GstChildProxy mechanism. + Sets a single property using the GstChildProxy mechanism. + - the parent object + the parent object - name of the property to set + name of the property to set - new #GValue for the property + new #GValue for the property @@ -7338,53 +10905,74 @@ usage. For plain GObjects @target is the same as @object. - Sets properties of the parent object and its children. + Sets properties of the parent object and its children. + - the parent object + the parent object - name of the first property to set + name of the first property to set - value for the first property, followed optionally by more name/value pairs, followed by %NULL + value for the first property, followed optionally by more name/value pairs, followed by %NULL - Will be emitted after the @object was added to the @child_proxy. + Will be emitted after the @object was added to the @child_proxy. - the #GObject that was added + the #GObject that was added - the name of the new child + the name of the new child - Will be emitted after the @object was removed from the @child_proxy. + Will be emitted after the @object was removed from the @child_proxy. - the #GObject that was removed + the #GObject that was removed - the name of the old child + the name of the old child @@ -7393,15 +10981,23 @@ usage. For plain GObjects @target is the same as @object. - #GstChildProxy interface. + #GstChildProxy interface. + - parent interface type. + parent interface type. + - the child object or %NULL if + the child object or %NULL if not found. Unref after usage. MT safe. @@ -7409,11 +11005,15 @@ MT safe. - the parent object to get the child from + the parent object to get the child from - the child's name + the child's name @@ -7421,8 +11021,11 @@ MT safe. + - the child object or %NULL if + the child object or %NULL if not found (index too high). Unref after usage. MT safe. @@ -7430,11 +11033,15 @@ MT safe. - the parent object to get the child from + the parent object to get the child from - the child's position in the child list + the child's position in the child list @@ -7442,15 +11049,20 @@ MT safe. + - the number of child objects + the number of child objects MT safe. - the parent object + the parent object @@ -7458,20 +11070,27 @@ MT safe. + - the parent object + the parent object - the newly added child + the newly added child - the name of the new child + the name of the new child @@ -7479,27 +11098,34 @@ MT safe. + - the parent object + the parent object - the removed child + the removed child - the name of the old child + the name of the old child - + @@ -7512,7 +11138,9 @@ MT safe. glib:type-name="GstClock" glib:get-type="gst_clock_get_type" glib:type-struct="ClockClass"> - GStreamer uses a global clock to synchronize the plugins in a pipeline. + GStreamer uses a global clock to synchronize the plugins in a pipeline. Different clock implementations are possible by implementing this abstract base class or, more conveniently, by subclassing #GstSystemClock. @@ -7584,12 +11212,18 @@ The #GstClock:timeout property defines the interval to sample the master clock and run the calibration functions. #GstClock:window-size defines the number of samples to use when calibrating and #GstClock:window-threshold defines the minimum number of samples before the calibration is performed. + - Compares the two #GstClockID instances. This function can be used + Compares the two #GstClockID instances. This function can be used as a GCompareFunc when sorting ids. + - negative value if a < b; zero if a = b; positive value if a > b + negative value if a < b; zero if a = b; positive value if a > b MT safe. @@ -7599,14 +11233,18 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - A #GstClockID + A #GstClockID - A #GstClockID to compare with + A #GstClockID to compare with @@ -7614,9 +11252,14 @@ MT safe. - This function returns the underlying clock. + This function returns the underlying clock. + - a #GstClock or %NULL when the + a #GstClock or %NULL when the underlying clock has been freed. Unref after usage. MT safe. @@ -7624,69 +11267,95 @@ MT safe. - a #GstClockID + a #GstClockID - Get the time of the clock ID + Get the time of the clock ID + - the time of the given clock id. + the time of the given clock id. MT safe. - The #GstClockID to query + The #GstClockID to query - Increase the refcount of given @id. + Increase the refcount of given @id. + - The same #GstClockID with increased refcount. + The same #GstClockID with increased refcount. MT safe. - The #GstClockID to ref + The #GstClockID to ref - Unref given @id. When the refcount reaches 0 the + Unref given @id. When the refcount reaches 0 the #GstClockID will be freed. MT safe. + - The #GstClockID to unref + The #GstClockID to unref - Cancel an outstanding request with @id. This can either + Cancel an outstanding request with @id. This can either be an outstanding async notification or a pending sync notification. After this call, @id cannot be used anymore to receive sync or async notifications, you need to create a new #GstClockID. MT safe. + - The id to unschedule + The id to unschedule @@ -7694,29 +11363,40 @@ MT safe. - This function returns whether @id uses @clock as the underlying clock. + This function returns whether @id uses @clock as the underlying clock. @clock can be NULL, in which case the return value indicates whether the underlying clock has been freed. If this is the case, the @id is no longer usable and should be freed. + - whether the clock @id uses the same underlying #GstClock @clock. + whether the clock @id uses the same underlying #GstClock @clock. MT safe. - a #GstClockID to check + a #GstClockID to check - a #GstClock to compare against + a #GstClock to compare against - Perform a blocking wait on @id. + Perform a blocking wait on @id. @id should have been created with gst_clock_new_single_shot_id() or gst_clock_new_periodic_id() and should not have been unscheduled with a call to gst_clock_id_unschedule(). @@ -7729,8 +11409,11 @@ Positive values indicate how late @id was relative to the clock (in which case this function will return #GST_CLOCK_EARLY). Negative values indicate how much time was spent waiting on the clock before this function returned. + - the result of the blocking wait. #GST_CLOCK_EARLY will be returned + the result of the blocking wait. #GST_CLOCK_EARLY will be returned if the current clock time is past the time of @id, #GST_CLOCK_OK if @id was scheduled in time. #GST_CLOCK_UNSCHEDULED if @id was unscheduled with gst_clock_id_unschedule(). @@ -7740,7 +11423,9 @@ MT safe. - The #GstClockID to wait on + The #GstClockID to wait on transfer-ownership="full" optional="1" allow-none="1"> - a pointer that will contain the jitter, + a pointer that will contain the jitter, can be %NULL. - Register a callback on the given #GstClockID @id with the given + Register a callback on the given #GstClockID @id with the given function and user_data. When passing a #GstClockID with an invalid time to this function, the callback will be called immediately with a time set to GST_CLOCK_TIME_NONE. The callback will @@ -7764,15 +11453,20 @@ be called when the time of @id has been reached. The callback @func can be invoked from any thread, either provided by the core or from a streaming thread. The application should be prepared for this. + - the result of the non blocking wait. + the result of the non blocking wait. MT safe. - a #GstClockID to wait on + a #GstClockID to wait on scope="notified" closure="2" destroy="3"> - The callback function + The callback function - User data passed in the callback + User data passed in the callback - #GDestroyNotify for user_data + #GDestroyNotify for user_data + @@ -7815,10 +11516,15 @@ MT safe. - Gets the current internal time of the given clock. The time is returned + Gets the current internal time of the given clock. The time is returned unadjusted for the offset and the rate. + - the internal time of the clock. Or GST_CLOCK_TIME_NONE when + the internal time of the clock. Or GST_CLOCK_TIME_NONE when given invalid input. MT safe. @@ -7826,28 +11532,38 @@ MT safe. - a #GstClock to query + a #GstClock to query - Get the accuracy of the clock. The accuracy of the clock is the granularity + Get the accuracy of the clock. The accuracy of the clock is the granularity of the values returned by gst_clock_get_time(). + - the resolution of the clock in units of #GstClockTime. + the resolution of the clock in units of #GstClockTime. MT safe. - a #GstClock + a #GstClock + @@ -7861,6 +11577,7 @@ MT safe. + @@ -7877,6 +11594,7 @@ MT safe. + @@ -7890,7 +11608,9 @@ MT safe. - The time @master of the master clock and the time @slave of the slave + The time @master of the master clock and the time @slave of the slave clock are added to the list of observations. If enough observations are available, a linear regression algorithm is run on the observations and @clock is recalibrated. @@ -7900,8 +11620,11 @@ correlation coefficient of the interpolation. A value of 1.0 means a perfect regression was performed. This value can be used to control the sampling frequency of the master and slave clocks. + - %TRUE if enough observations were added to run the + %TRUE if enough observations were added to run the regression algorithm. MT safe. @@ -7909,22 +11632,30 @@ MT safe. - a #GstClock + a #GstClock - a time on the slave + a time on the slave - a time on the master + a time on the master - a pointer to hold the result + a pointer to hold the result @@ -7932,33 +11663,44 @@ MT safe. - Add a clock observation to the internal slaving algorithm the same as + Add a clock observation to the internal slaving algorithm the same as gst_clock_add_observation(), and return the result of the master clock estimation, without updating the internal calibration. The caller can then take the results and call gst_clock_set_calibration() with the values, or some modified version of them. + - a #GstClock + a #GstClock - a time on the slave + a time on the slave - a time on the master + a time on the master - a pointer to hold the result + a pointer to hold the result transfer-ownership="full" optional="1" allow-none="1"> - a location to store the internal time + a location to store the internal time transfer-ownership="full" optional="1" allow-none="1"> - a location to store the external time + a location to store the external time transfer-ownership="full" optional="1" allow-none="1"> - a location to store the rate numerator + a location to store the rate numerator transfer-ownership="full" optional="1" allow-none="1"> - a location to store the rate denominator + a location to store the rate denominator - Converts the given @internal clock time to the external time, adjusting for the + Converts the given @internal clock time to the external time, adjusting for the rate and reference time set with gst_clock_set_calibration() and making sure that the returned time is increasing. This function should be called with the clock's OBJECT_LOCK held and is mainly used by clock subclasses. This function is the reverse of gst_clock_unadjust_unlocked(). + - the converted time of the clock. + the converted time of the clock. - a #GstClock to use + a #GstClock to use - a clock time + a clock time @@ -8024,15 +11783,20 @@ This function is the reverse of gst_clock_unadjust_unlocked(). - Converts the given @internal_target clock time to the external time, + Converts the given @internal_target clock time to the external time, using the passed calibration parameters. This function performs the same calculation as gst_clock_adjust_unlocked() when called using the current calibration parameters, but doesn't ensure a monotonically increasing result as gst_clock_adjust_unlocked() does. Note: The @clock parameter is unused and can be NULL + - the converted time of the clock. + the converted time of the clock. @@ -8040,46 +11804,63 @@ Note: The @clock parameter is unused and can be NULL transfer-ownership="none" nullable="1" allow-none="1"> - a #GstClock to use + a #GstClock to use - a clock time + a clock time - a reference internal time + a reference internal time - a reference external time + a reference external time - the numerator of the rate of the clock relative to its + the numerator of the rate of the clock relative to its internal time - the denominator of the rate of the clock + the denominator of the rate of the clock - Gets the internal rate and reference time of @clock. See + Gets the internal rate and reference time of @clock. See gst_clock_set_calibration() for more information. @internal, @external, @rate_num, and @rate_denom can be left %NULL if the caller is not interested in the values. MT safe. + - a #GstClock + a #GstClock transfer-ownership="full" optional="1" allow-none="1"> - a location to store the internal time + a location to store the internal time transfer-ownership="full" optional="1" allow-none="1"> - a location to store the external time + a location to store the external time transfer-ownership="full" optional="1" allow-none="1"> - a location to store the rate numerator + a location to store the rate numerator transfer-ownership="full" optional="1" allow-none="1"> - a location to store the rate denominator + a location to store the rate denominator - Gets the current internal time of the given clock. The time is returned + Gets the current internal time of the given clock. The time is returned unadjusted for the offset and the rate. + - the internal time of the clock. Or GST_CLOCK_TIME_NONE when + the internal time of the clock. Or GST_CLOCK_TIME_NONE when given invalid input. MT safe. @@ -8133,16 +11927,23 @@ MT safe. - a #GstClock to query + a #GstClock to query - Get the master clock that @clock is slaved to or %NULL when the clock is + Get the master clock that @clock is slaved to or %NULL when the clock is not slaved to any master clock. + - a master #GstClock or %NULL + a master #GstClock or %NULL when this clock is not slaved to a master clock. Unref after usage. @@ -8151,33 +11952,47 @@ MT safe. - a #GstClock + a #GstClock - Get the accuracy of the clock. The accuracy of the clock is the granularity + Get the accuracy of the clock. The accuracy of the clock is the granularity of the values returned by gst_clock_get_time(). + - the resolution of the clock in units of #GstClockTime. + the resolution of the clock in units of #GstClockTime. MT safe. - a #GstClock + a #GstClock - Gets the current time of the given clock. The time is always + Gets the current time of the given clock. The time is always monotonically increasing and adjusted according to the current offset and rate. + - the time of the clock. Or GST_CLOCK_TIME_NONE when + the time of the clock. Or GST_CLOCK_TIME_NONE when given invalid input. MT safe. @@ -8185,20 +12000,29 @@ MT safe. - a #GstClock to query + a #GstClock to query - Get the amount of time that master and slave clocks are sampled. + Get the amount of time that master and slave clocks are sampled. + - the interval between samples. + the interval between samples. - a #GstClock + a #GstClock @@ -8206,29 +12030,41 @@ MT safe. - Checks if the clock is currently synced. + Checks if the clock is currently synced. This returns if GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC is not set on the clock. + - %TRUE if the clock is currently synced + %TRUE if the clock is currently synced - a GstClock + a GstClock - Get an ID from @clock to trigger a periodic notification. + Get an ID from @clock to trigger a periodic notification. The periodic notifications will start at time @start_time and will then be fired with the given @interval. @id should be unreffed after usage. Free-function: gst_clock_id_unref + - a #GstClockID that can be used to request the + a #GstClockID that can be used to request the time notification. MT safe. @@ -8236,28 +12072,39 @@ MT safe. - The #GstClockID to get a periodic notification id from + The #GstClockID to get a periodic notification id from - the requested start time + the requested start time - the requested interval + the requested interval - Get a #GstClockID from @clock to trigger a single shot + Get a #GstClockID from @clock to trigger a single shot notification at the requested time. The single shot id should be unreffed after usage. Free-function: gst_clock_id_unref + - a #GstClockID that can be used to request the + a #GstClockID that can be used to request the time notification. MT safe. @@ -8265,45 +12112,64 @@ MT safe. - The #GstClockID to get a single shot notification from + The #GstClockID to get a single shot notification from - the requested time + the requested time - Reinitializes the provided periodic @id to the provided start time and + Reinitializes the provided periodic @id to the provided start time and interval. Does not modify the reference count. + - %TRUE if the GstClockID could be reinitialized to the provided + %TRUE if the GstClockID could be reinitialized to the provided @time, else %FALSE. - a #GstClock + a #GstClock - a #GstClockID + a #GstClockID - the requested start time + the requested start time - the requested interval + the requested interval - Adjusts the rate and time of @clock. A rate of 1/1 is the normal speed of + Adjusts the rate and time of @clock. A rate of 1/1 is the normal speed of the clock. Values bigger than 1/1 make the clock go faster. @internal and @external are calibration parameters that arrange that @@ -8326,35 +12192,48 @@ move the clock backwards, gst_clock_get_time() will report the previous value until the clock catches up. MT safe. + - a #GstClock to calibrate + a #GstClock to calibrate - a reference internal time + a reference internal time - a reference external time + a reference external time - the numerator of the rate of the clock relative to its + the numerator of the rate of the clock relative to its internal time - the denominator of the rate of the clock + the denominator of the rate of the clock - Set @master as the master clock for @clock. @clock will be automatically + Set @master as the master clock for @clock. @clock will be automatically calibrated so that gst_clock_get_time() reports the same time as the master clock. @@ -8364,8 +12243,11 @@ calibration values with gst_clock_get_calibration(). @master can be %NULL in which case @clock will not be slaved anymore. It will however keep reporting its time adjusted with the last configured rate and time offsets. + - %TRUE if the clock is capable of being slaved to a master clock. + %TRUE if the clock is capable of being slaved to a master clock. Trying to set a master on a clock without the #GST_CLOCK_FLAG_CAN_SET_MASTER flag will make this function return %FALSE. @@ -8374,35 +12256,48 @@ MT safe. - a #GstClock + a #GstClock - a master #GstClock + a master #GstClock - Set the accuracy of the clock. Some clocks have the possibility to operate + Set the accuracy of the clock. Some clocks have the possibility to operate with different accuracy at the expense of more resource usage. There is normally no need to change the default resolution of a clock. The resolution of a clock can only be changed if the clock has the #GST_CLOCK_FLAG_CAN_SET_RESOLUTION flag set. + - the new resolution of the clock. + the new resolution of the clock. - a #GstClock + a #GstClock - The resolution to set + The resolution to set @@ -8410,85 +12305,119 @@ of a clock can only be changed if the clock has the - Sets @clock to synced and emits the GstClock::synced signal, and wakes up any + Sets @clock to synced and emits the GstClock::synced signal, and wakes up any thread waiting in gst_clock_wait_for_sync(). This function must only be called if GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC is set on the clock, and is intended to be called by subclasses only. + - a GstClock + a GstClock - if the clock is synced + if the clock is synced - Set the amount of time, in nanoseconds, to sample master and slave + Set the amount of time, in nanoseconds, to sample master and slave clocks + - a #GstClock + a #GstClock - a timeout + a timeout - Reinitializes the provided single shot @id to the provided time. Does not + Reinitializes the provided single shot @id to the provided time. Does not modify the reference count. + - %TRUE if the GstClockID could be reinitialized to the provided + %TRUE if the GstClockID could be reinitialized to the provided @time, else %FALSE. - a #GstClock + a #GstClock - a #GstClockID + a #GstClockID - The requested time. + The requested time. - Converts the given @external clock time to the internal time of @clock, + Converts the given @external clock time to the internal time of @clock, using the rate and reference time set with gst_clock_set_calibration(). This function should be called with the clock's OBJECT_LOCK held and is mainly used by clock subclasses. This function is the reverse of gst_clock_adjust_unlocked(). + - the internal time of the clock corresponding to @external. + the internal time of the clock corresponding to @external. - a #GstClock to use + a #GstClock to use - an external clock time + an external clock time @@ -8496,14 +12425,19 @@ This function is the reverse of gst_clock_adjust_unlocked(). - Converts the given @external_target clock time to the internal time, + Converts the given @external_target clock time to the internal time, using the passed calibration parameters. This function performs the same calculation as gst_clock_unadjust_unlocked() when called using the current calibration parameters. Note: The @clock parameter is unused and can be NULL + - the converted time of the clock. + the converted time of the clock. @@ -8511,28 +12445,40 @@ Note: The @clock parameter is unused and can be NULL transfer-ownership="none" nullable="1" allow-none="1"> - a #GstClock to use + a #GstClock to use - a clock time + a clock time - a reference internal time + a reference internal time - a reference external time + a reference external time - the numerator of the rate of the clock relative to its + the numerator of the rate of the clock relative to its internal time - the denominator of the rate of the clock + the denominator of the rate of the clock @@ -8540,7 +12486,9 @@ Note: The @clock parameter is unused and can be NULL - Waits until @clock is synced for reporting the current time. If @timeout + Waits until @clock is synced for reporting the current time. If @timeout is %GST_CLOCK_TIME_NONE it will wait forever, otherwise it will time out after @timeout nanoseconds. @@ -8548,17 +12496,24 @@ For asynchronous waiting, the GstClock::synced signal can be used. This returns immediately with TRUE if GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC is not set on the clock, or if the clock is already synced. + - %TRUE if waiting was successful, or %FALSE on timeout + %TRUE if waiting was successful, or %FALSE on timeout - a GstClock + a GstClock - timeout for waiting or %GST_CLOCK_TIME_NONE + timeout for waiting or %GST_CLOCK_TIME_NONE @@ -8579,12 +12534,14 @@ is not set on the clock, or if the clock is already synced. - + - Signaled on clocks with GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC set once + Signaled on clocks with GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC set once the clock is synchronized, or when it completely lost synchronization. This signal will not be emitted on clocks without the flag. @@ -8595,29 +12552,42 @@ the application's main thread. - if the clock is synced now + if the clock is synced now - The function prototype of the callback. + The function prototype of the callback. + - %TRUE or %FALSE (currently unused) + %TRUE or %FALSE (currently unused) - The clock that triggered the callback + The clock that triggered the callback - The time it was triggered + The time it was triggered - The #GstClockID that expired + The #GstClockID that expired nullable="1" allow-none="1" closure="3"> - user data passed in the gst_clock_id_wait_async() function + user data passed in the gst_clock_id_wait_async() function @@ -8633,14 +12605,20 @@ the application's main thread. - GStreamer clock class. Override the vmethods to implement the clock + GStreamer clock class. Override the vmethods to implement the clock functionality. + - the parent class structure + the parent class structure + @@ -8659,15 +12637,20 @@ functionality. + - the resolution of the clock in units of #GstClockTime. + the resolution of the clock in units of #GstClockTime. MT safe. - a #GstClock + a #GstClock @@ -8675,8 +12658,11 @@ MT safe. + - the internal time of the clock. Or GST_CLOCK_TIME_NONE when + the internal time of the clock. Or GST_CLOCK_TIME_NONE when given invalid input. MT safe. @@ -8684,7 +12670,9 @@ MT safe. - a #GstClock to query + a #GstClock to query @@ -8692,6 +12680,7 @@ MT safe. + @@ -8710,6 +12699,7 @@ MT safe. + @@ -8725,6 +12715,7 @@ MT safe. + @@ -8739,18 +12730,23 @@ MT safe. - + - All pending timeouts or periodic notifies are converted into + All pending timeouts or periodic notifies are converted into an entry. Note that GstClockEntry should be treated as an opaque structure. It must not be extended or allocated using a custom allocator. + - reference counter (read-only) + reference counter (read-only) @@ -8784,7 +12780,7 @@ not be extended or allocated using a custom allocator. - + @@ -8793,159 +12789,213 @@ not be extended or allocated using a custom allocator. glib:type-name="GstClockEntryType" glib:get-type="gst_clock_entry_type_get_type" c:type="GstClockEntryType"> - The type of the clock entry + The type of the clock entry - a single shot timeout + a single shot timeout - a periodic timeout request + a periodic timeout request - The capabilities of this clock + The capabilities of this clock - clock can do a single sync timeout request + clock can do a single sync timeout request - clock can do a single async timeout request + clock can do a single async timeout request - clock can do sync periodic timeout requests + clock can do sync periodic timeout requests - clock can do async periodic timeout callbacks + clock can do async periodic timeout callbacks - clock's resolution can be changed + clock's resolution can be changed - clock can be slaved to a master clock + clock can be slaved to a master clock - clock needs to be synced before it can be used + clock needs to be synced before it can be used (Since: 1.6) - subclasses can add additional flags starting from this flag + subclasses can add additional flags starting from this flag + - The return value of a clock operation. + The return value of a clock operation. - The operation succeeded. + The operation succeeded. - The operation was scheduled too late. + The operation was scheduled too late. - The clockID was unscheduled + The clockID was unscheduled - The ClockID is busy + The ClockID is busy - A bad time was provided to a function. + A bad time was provided to a function. - An error occurred + An error occurred - Operation is not supported + Operation is not supported - The ClockID is done waiting + The ClockID is done waiting - The different kind of clocks. + The different kind of clocks. - time since Epoch + time since Epoch - monotonic time since some unspecified starting + monotonic time since some unspecified starting point - some other time source is used (Since: 1.0.5) + some other time source is used (Since: 1.0.5) - #GstContext is a container object used to store contexts like a device + #GstContext is a container object used to store contexts like a device context, a display server connection and similar concepts that should be shared between multiple elements. @@ -8973,19 +13023,29 @@ A persistent #GstContext is kept in elements when they reach %GST_STATE_NULL, non-persistent ones will be removed. Also, a non-persistent context won't override a previous persistent context set to an element. + - Create a new context. + Create a new context. + - The new context. + The new context. - Context type + Context type - Persistent context + Persistent context @@ -8993,14 +13053,21 @@ context set to an element. - Get the type of @context. + Get the type of @context. + - The type of the context. + The type of the context. - The #GstContext. + The #GstContext. @@ -9008,16 +13075,23 @@ context set to an element. - Access the structure of the context. + Access the structure of the context. + - The structure of the context. The structure is + The structure of the context. The structure is still owned by the context, which means that you should not modify it, free it and that the pointer becomes invalid when you free the context. - The #GstContext. + The #GstContext. @@ -9025,18 +13099,27 @@ free it and that the pointer becomes invalid when you free the context. - Checks if @context has @context_type. + Checks if @context has @context_type. + - %TRUE if @context has @context_type. + %TRUE if @context has @context_type. - The #GstContext. + The #GstContext. - Context type to check. + Context type to check. @@ -9044,14 +13127,21 @@ free it and that the pointer becomes invalid when you free the context. - Check if @context is persistent. + Check if @context is persistent. + - %TRUE if the context is persistent. + %TRUE if the context is persistent. - The #GstContext. + The #GstContext. @@ -9059,9 +13149,14 @@ free it and that the pointer becomes invalid when you free the context. - Get a writable version of the structure. + Get a writable version of the structure. + - The structure of the context. The structure is still + The structure of the context. The structure is still owned by the context, which means that you should not free it and that the pointer becomes invalid when you free the context. This function checks if @context is writable. @@ -9069,7 +13164,9 @@ This function checks if @context is writable. - The #GstContext. + The #GstContext. @@ -9083,40 +13180,58 @@ This function checks if @context is writable. glib:type-name="GstControlBinding" glib:get-type="gst_control_binding_get_type" glib:type-struct="ControlBindingClass"> - A base class for value mapping objects that attaches control sources to gobject + A base class for value mapping objects that attaches control sources to gobject properties. Such an object is taking one or more #GstControlSource instances, combines them and maps the resulting value to the type and value range of the bound property. + - Gets a number of #GValues for the given controlled property starting at the + Gets a number of #GValues for the given controlled property starting at the requested time. The array @values need to hold enough space for @n_values of #GValue. This function is useful if one wants to e.g. draw a graph of the control curve or apply a control curve sample by sample. + - %TRUE if the given array could be filled, %FALSE otherwise + %TRUE if the given array could be filled, %FALSE otherwise - the control binding + the control binding - the time that should be processed + the time that should be processed - the time spacing between subsequent values + the time spacing between subsequent values - the number of values + the number of values - array to put control-values in + array to put control-values in @@ -9124,19 +13239,28 @@ curve or apply a control curve sample by sample. - Gets the value for the given controlled property at the requested time. + Gets the value for the given controlled property at the requested time. + - the GValue of the property at the given time, + the GValue of the property at the given time, or %NULL if the property isn't controlled. - the control binding + the control binding - the time the control-change should be read from + the time the control-change should be read from @@ -9144,7 +13268,9 @@ or %NULL if the property isn't controlled. - Gets a number of values for the given controlled property starting at the + Gets a number of values for the given controlled property starting at the requested time. The array @values need to hold enough space for @n_values of the same type as the objects property's type. @@ -9154,32 +13280,45 @@ curve or apply a control curve sample by sample. The values are unboxed and ready to be used. The similar function gst_control_binding_get_g_value_array() returns the array as #GValues and is more suitable for bindings. + - %TRUE if the given array could be filled, %FALSE otherwise + %TRUE if the given array could be filled, %FALSE otherwise - the control binding + the control binding - the time that should be processed + the time that should be processed - the time spacing between subsequent values + the time spacing between subsequent values - the number of values + the number of values - array to put control-values in + array to put control-values in @@ -9187,66 +13326,94 @@ more suitable for bindings. - Sets the property of the @object, according to the #GstControlSources that + Sets the property of the @object, according to the #GstControlSources that handle them and for the given timestamp. If this function fails, it is most likely the application developers fault. Most probably the control sources are not setup correctly. + - %TRUE if the controller value could be applied to the object + %TRUE if the controller value could be applied to the object property, %FALSE otherwise - the control binding + the control binding - the object that has controlled properties + the object that has controlled properties - the time that should be processed + the time that should be processed - the last time this was called + the last time this was called - Gets a number of #GValues for the given controlled property starting at the + Gets a number of #GValues for the given controlled property starting at the requested time. The array @values need to hold enough space for @n_values of #GValue. This function is useful if one wants to e.g. draw a graph of the control curve or apply a control curve sample by sample. + - %TRUE if the given array could be filled, %FALSE otherwise + %TRUE if the given array could be filled, %FALSE otherwise - the control binding + the control binding - the time that should be processed + the time that should be processed - the time spacing between subsequent values + the time spacing between subsequent values - the number of values + the number of values - array to put control-values in + array to put control-values in @@ -9254,19 +13421,28 @@ curve or apply a control curve sample by sample. - Gets the value for the given controlled property at the requested time. + Gets the value for the given controlled property at the requested time. + - the GValue of the property at the given time, + the GValue of the property at the given time, or %NULL if the property isn't controlled. - the control binding + the control binding - the time the control-change should be read from + the time the control-change should be read from @@ -9274,7 +13450,9 @@ or %NULL if the property isn't controlled. - Gets a number of values for the given controlled property starting at the + Gets a number of values for the given controlled property starting at the requested time. The array @values need to hold enough space for @n_values of the same type as the objects property's type. @@ -9284,29 +13462,42 @@ curve or apply a control curve sample by sample. The values are unboxed and ready to be used. The similar function gst_control_binding_get_g_value_array() returns the array as #GValues and is more suitable for bindings. + - %TRUE if the given array could be filled, %FALSE otherwise + %TRUE if the given array could be filled, %FALSE otherwise - the control binding + the control binding - the time that should be processed + the time that should be processed - the time spacing between subsequent values + the time spacing between subsequent values - the number of values + the number of values - array to put control-values in + array to put control-values in @@ -9315,32 +13506,46 @@ more suitable for bindings. - Check if the control binding is disabled. + Check if the control binding is disabled. + - %TRUE if the binding is inactive + %TRUE if the binding is inactive - the control binding + the control binding - This function is used to disable a control binding for some time, i.e. + This function is used to disable a control binding for some time, i.e. gst_object_sync_values() will do nothing. + - the control binding + the control binding - boolean that specifies whether to disable the controller + boolean that specifies whether to disable the controller or not. @@ -9348,31 +13553,44 @@ or not. - Sets the property of the @object, according to the #GstControlSources that + Sets the property of the @object, according to the #GstControlSources that handle them and for the given timestamp. If this function fails, it is most likely the application developers fault. Most probably the control sources are not setup correctly. + - %TRUE if the controller value could be applied to the object + %TRUE if the controller value could be applied to the object property, %FALSE otherwise - the control binding + the control binding - the object that has controlled properties + the object that has controlled properties - the time that should be processed + the time that should be processed - the last time this was called + the last time this was called @@ -9393,11 +13611,15 @@ property, %FALSE otherwise - name of the property of this binding + name of the property of this binding - #GParamSpec for this property + #GParamSpec for this property @@ -9407,14 +13629,16 @@ property, %FALSE otherwise + + - + @@ -9423,33 +13647,49 @@ property, %FALSE otherwise - The class structure of #GstControlBinding. + The class structure of #GstControlBinding. + - Parent class + Parent class + - %TRUE if the controller value could be applied to the object + %TRUE if the controller value could be applied to the object property, %FALSE otherwise - the control binding + the control binding - the object that has controlled properties + the object that has controlled properties - the time that should be processed + the time that should be processed - the last time this was called + the last time this was called @@ -9457,18 +13697,25 @@ property, %FALSE otherwise + - the GValue of the property at the given time, + the GValue of the property at the given time, or %NULL if the property isn't controlled. - the control binding + the control binding - the time the control-change should be read from + the time the control-change should be read from @@ -9476,32 +13723,45 @@ or %NULL if the property isn't controlled. + - %TRUE if the given array could be filled, %FALSE otherwise + %TRUE if the given array could be filled, %FALSE otherwise - the control binding + the control binding - the time that should be processed + the time that should be processed - the time spacing between subsequent values + the time spacing between subsequent values - the number of values + the number of values - array to put control-values in + array to put control-values in @@ -9511,29 +13771,42 @@ or %NULL if the property isn't controlled. + - %TRUE if the given array could be filled, %FALSE otherwise + %TRUE if the given array could be filled, %FALSE otherwise - the control binding + the control binding - the time that should be processed + the time that should be processed - the time spacing between subsequent values + the time spacing between subsequent values - the number of values + the number of values - array to put control-values in + array to put control-values in @@ -9542,12 +13815,13 @@ or %NULL if the property isn't controlled. - + + @@ -9566,6 +13840,7 @@ or %NULL if the property isn't controlled. + glib:type-name="GstControlSource" glib:get-type="gst_control_source_get_type" glib:type-struct="ControlSourceClass"> - The #GstControlSource is a base class for control value sources that could + The #GstControlSource is a base class for control value sources that could be used to get timestamp-value pairs. A control source essentially is a function over time. @@ -9588,58 +13865,85 @@ For implementing a new #GstControlSource one has to implement #GstControlSourceGetValue and #GstControlSourceGetValueArray functions. These are then used by gst_control_source_get_value() and gst_control_source_get_value_array() to get values for specific timestamps. + - Gets the value for this #GstControlSource at a given timestamp. + Gets the value for this #GstControlSource at a given timestamp. + - %FALSE if the value couldn't be returned, %TRUE otherwise. + %FALSE if the value couldn't be returned, %TRUE otherwise. - the #GstControlSource object + the #GstControlSource object - the time for which the value should be returned + the time for which the value should be returned - the value + the value - Gets an array of values for for this #GstControlSource. Values that are + Gets an array of values for for this #GstControlSource. Values that are undefined contain NANs. + - %TRUE if the given array could be filled, %FALSE otherwise + %TRUE if the given array could be filled, %FALSE otherwise - the #GstControlSource object + the #GstControlSource object - the first timestamp + the first timestamp - the time steps + the time steps - the number of values to fetch + the number of values to fetch - array to put control-values in + array to put control-values in @@ -9650,16 +13954,20 @@ undefined contain NANs. - Function for returning a value for a given timestamp + Function for returning a value for a given timestamp - Function for returning a values array for a given timestamp + Function for returning a values array for a given timestamp - + @@ -9667,64 +13975,95 @@ undefined contain NANs. - The class structure of #GstControlSource. + The class structure of #GstControlSource. + - Parent class + Parent class - + - Function for returning a value for a given timestamp. + Function for returning a value for a given timestamp. + - %TRUE if the value was successfully calculated. + %TRUE if the value was successfully calculated. - the #GstControlSource instance + the #GstControlSource instance - timestamp for which a value should be calculated + timestamp for which a value should be calculated - a value which will be set to the result. + a value which will be set to the result. - Function for returning an array of values for starting at a given timestamp. + Function for returning an array of values for starting at a given timestamp. + - %TRUE if the values were successfully calculated. + %TRUE if the values were successfully calculated. - the #GstControlSource instance + the #GstControlSource instance - timestamp for which a value should be calculated + timestamp for which a value should be calculated - the time spacing between subsequent values + the time spacing between subsequent values - the number of values + the number of values - array to put control-values in + array to put control-values in @@ -9734,100 +14073,132 @@ undefined contain NANs. glib:get-type="gst_core_error_get_type" c:type="GstCoreError" glib:error-domain="gst-core-error-quark"> - Core errors are errors inside the core GStreamer library. + Core errors are errors inside the core GStreamer library. - a general error which doesn't fit in any other + a general error which doesn't fit in any other category. Make sure you add a custom message to the error call. - do not use this except as a placeholder for + do not use this except as a placeholder for deciding where to go while developing code. - use this when you do not want to implement + use this when you do not want to implement this functionality yet. - used for state change errors. + used for state change errors. - used for pad-related errors. + used for pad-related errors. - used for thread-related errors. + used for thread-related errors. - used for negotiation-related errors. + used for negotiation-related errors. - used for event-related errors. + used for event-related errors. - used for seek-related errors. + used for seek-related errors. - used for caps-related errors. + used for caps-related errors. - used for negotiation-related errors. + used for negotiation-related errors. - used if a plugin is missing. + used if a plugin is missing. - used for clock related errors. + used for clock related errors. - used if functionality has been disabled at + used if functionality has been disabled at compile time. - the number of core error types. + the number of core error types. @@ -9836,29 +14207,478 @@ this functionality yet. + + + To aid debugging applications one can use this method to write out the whole +network of gstreamer elements that form the pipeline into an dot file. +This file can be processed with graphviz to get an image, like this: +|[ + dot -Tpng -oimage.png graph_lowlevel.dot +]| +There is also a utility called xdot which allows you to view the dot file +directly without converting it first. + +The macro is only active if the environment variable GST_DEBUG_DUMP_DOT_DIR +is set to a basepath (e.g. /tmp), and the GStreamer debugging subsystem is +enabled (i.e., no use of `./configure --disable-gst-debug') + + + + the top-level pipeline that should be analyzed + + + details to show in the graph, e.g. #GST_DEBUG_GRAPH_SHOW_ALL or + one or more other #GstDebugGraphDetails flags. + + + output base filename (e.g. "myplayer") + + + + + This works like GST_DEBUG_BIN_TO_DOT_FILE(), but adds the current timestamp +to the filename, so that it can be used to take multiple snapshots. + + + + the top-level pipeline that should be analyzed + + + details to show in the graph, e.g. #GST_DEBUG_GRAPH_SHOW_ALL or + one or more other #GstDebugGraphDetails flags. + + + output base filename (e.g. "myplayer") + + + + + Defines a GstDebugCategory variable. +This macro expands to nothing if debugging is disabled. + + + + the category + + + + + Declares a GstDebugCategory variable as extern. Use in header files. +This macro expands to nothing if debugging is disabled. + + + + the category + + + + + Looks up an existing #GstDebugCategory by its @name and sets @cat. If the +category is not found, but GST_CAT_DEFAULT is defined, that is assigned to +@cat. Otherwise @cat will be %NULL. + +|[<!-- language="C" --> +GST_DEBUG_CATEGORY_STATIC (gst_myplugin_debug); +#define GST_CAT_DEFAULT gst_myplugin_debug +GST_DEBUG_CATEGORY_STATIC (GST_CAT_PERFORMANCE); +... +GST_DEBUG_CATEGORY_INIT (gst_myplugin_debug, "myplugin", 0, "nice element"); +GST_DEBUG_CATEGORY_GET (GST_CAT_PERFORMANCE, "GST_PERFORMANCE"); +]| + + + + the category to initialize. + + + log category name + + + + + Initializes a new #GstDebugCategory with the given properties and set to +the default threshold. + +> This macro expands to nothing if debugging is disabled. +> +> When naming your category, please follow the following conventions to ensure +> that the pattern matching for categories works as expected. It is not +> earth-shattering if you don't follow these conventions, but it would be nice +> for everyone. +> +> If you define a category for a plugin or a feature of it, name the category +> like the feature. So if you wanted to write a "filesrc" element, you would +> name the category "filesrc". Use lowercase letters only. +> If you define more than one category for the same element, append an +> underscore and an identifier to your categories, like this: "filesrc_cache" +> +> If you create a library or an application using debugging categories, use a +> common prefix followed by an underscore for all your categories. GStreamer +> uses the GST prefix so GStreamer categories look like "GST_STATES". Be sure +> to include uppercase letters. + + + + the category to initialize. + + + the name of the category. + + + the colors to use for a color representation or 0 for no color. + + + optional description of the category. + + + + + Defines a static GstDebugCategory variable. +This macro expands to nothing if debugging is disabled. + + + + the category + + + + + + + Register a pointer to a function with its name, so it can later be used by +GST_DEBUG_FUNCPTR_NAME(). + + + + pointer to the function to register + + + + + Retrieves the name of the function, if it was previously registered with +GST_DEBUG_FUNCPTR(). If not, it returns a description of the pointer. + +This macro returns a constant string which must not be modified or +freed by the caller. + + + + address of the function of which to look up the name + + + + + Evaluates to 2 strings, that describe the pad. Often used in debugging +statements. + + + + The pad to debug. + + + + + Register a pointer to a function with its name, so it can later be used by +GST_DEBUG_FUNCPTR_NAME(). + +Use this variant of #GST_DEBUG_FUNCPTR if you do not need to use @ptr. + + + + pointer to the function to register + + + + + Define a new mini-object type with the given name + + + + name of the new type in CamelCase + + + name of the new type + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Struct to store date, time and timezone information altogether. + Struct to store date, time and timezone information altogether. #GstDateTime is refcounted and immutable. Date information is handled using the proleptic Gregorian calendar. Provides basic creation functions and accessor functions to its fields. + - Creates a new #GstDateTime using the date and times in the gregorian calendar + Creates a new #GstDateTime using the date and times in the gregorian calendar in the supplied timezone. @year should be from 1 to 9999, @month should be from 1 to 12, @day from @@ -9874,61 +14694,87 @@ if @month == -1, then #GstDateTime will created only for @year. If so on. Free-function: gst_date_time_unref + - the newly created #GstDateTime + the newly created #GstDateTime - Offset from UTC in hours. + Offset from UTC in hours. - the gregorian year + the gregorian year - the gregorian month + the gregorian month - the day of the gregorian month + the day of the gregorian month - the hour of the day + the hour of the day - the minute of the hour + the minute of the hour - the second of the minute + the second of the minute - Creates a new #GstDateTime from a #GDateTime object. + Creates a new #GstDateTime from a #GDateTime object. Free-function: gst_date_time_unref + - a newly created #GstDateTime, + a newly created #GstDateTime, or %NULL on error - the #GDateTime. The new #GstDateTime takes ownership. + the #GDateTime. The new #GstDateTime takes ownership. - Tries to parse common variants of ISO-8601 datetime strings into a + Tries to parse common variants of ISO-8601 datetime strings into a #GstDateTime. Possible input formats are (for example): 2012-06-30T22:46:43Z, 2012, 2012-06, 2012-06-30, 2012-06-30T22:46:43-0430, 2012-06-30T22:46Z, 2012-06-30T22:46-0430, 2012-06-30 22:46, @@ -9938,55 +14784,76 @@ If no date is provided, it is assumed to be "today" in the timezone provided (if any), otherwise UTC. Free-function: gst_date_time_unref + - a newly created #GstDateTime, + a newly created #GstDateTime, or %NULL on error - ISO 8601-formatted datetime string. + ISO 8601-formatted datetime string. - Creates a new #GstDateTime using the time since Jan 1, 1970 specified by + Creates a new #GstDateTime using the time since Jan 1, 1970 specified by @secs. The #GstDateTime is in the local timezone. Free-function: gst_date_time_unref + - the newly created #GstDateTime + the newly created #GstDateTime - seconds from the Unix epoch + seconds from the Unix epoch - Creates a new #GstDateTime using the time since Jan 1, 1970 specified by + Creates a new #GstDateTime using the time since Jan 1, 1970 specified by @secs. The #GstDateTime is in the UTC timezone. Free-function: gst_date_time_unref + - the newly created #GstDateTime + the newly created #GstDateTime - seconds from the Unix epoch + seconds from the Unix epoch - Creates a new #GstDateTime using the date and times in the gregorian calendar + Creates a new #GstDateTime using the date and times in the gregorian calendar in the local timezone. @year should be from 1 to 9999, @month should be from 1 to 12, @day from @@ -10003,79 +14870,113 @@ If @hour is -1, then the #GstDateTime created will only contain @year and case @minute and @seconds should also be -1. Free-function: gst_date_time_unref + - the newly created #GstDateTime + the newly created #GstDateTime - the gregorian year + the gregorian year - the gregorian month, or -1 + the gregorian month, or -1 - the day of the gregorian month, or -1 + the day of the gregorian month, or -1 - the hour of the day, or -1 + the hour of the day, or -1 - the minute of the hour, or -1 + the minute of the hour, or -1 - the second of the minute, or -1 + the second of the minute, or -1 - Creates a new #GstDateTime representing the current date and time. + Creates a new #GstDateTime representing the current date and time. Free-function: gst_date_time_unref + - the newly created #GstDateTime which should + the newly created #GstDateTime which should be freed with gst_date_time_unref(). - Creates a new #GstDateTime that represents the current instant at Universal + Creates a new #GstDateTime that represents the current instant at Universal coordinated time. Free-function: gst_date_time_unref + - the newly created #GstDateTime which should + the newly created #GstDateTime which should be freed with gst_date_time_unref(). - Creates a new #GstDateTime using the date and times in the gregorian calendar + Creates a new #GstDateTime using the date and times in the gregorian calendar in the local timezone. @year should be from 1 to 9999. Free-function: gst_date_time_unref + - the newly created #GstDateTime + the newly created #GstDateTime - the gregorian year + the gregorian year - Creates a new #GstDateTime using the date and times in the gregorian calendar + Creates a new #GstDateTime using the date and times in the gregorian calendar in the local timezone. @year should be from 1 to 9999, @month should be from 1 to 12. @@ -10084,23 +14985,32 @@ If value is -1 then all over value will be ignored. For example if @month == -1, then #GstDateTime will created only for @year. Free-function: gst_date_time_unref + - the newly created #GstDateTime + the newly created #GstDateTime - the gregorian year + the gregorian year - the gregorian month + the gregorian month - Creates a new #GstDateTime using the date and times in the gregorian calendar + Creates a new #GstDateTime using the date and times in the gregorian calendar in the local timezone. @year should be from 1 to 9999, @month should be from 1 to 12, @day from @@ -10112,243 +15022,352 @@ if @month == -1, then #GstDateTime will created only for @year. If so on. Free-function: gst_date_time_unref + - the newly created #GstDateTime + the newly created #GstDateTime - the gregorian year + the gregorian year - the gregorian month + the gregorian month - the day of the gregorian month + the day of the gregorian month - Returns the day of the month of this #GstDateTime. + Returns the day of the month of this #GstDateTime. Call gst_date_time_has_day() before, to avoid warnings. + - The day of this #GstDateTime + The day of this #GstDateTime - a #GstDateTime + a #GstDateTime - Retrieves the hour of the day represented by @datetime in the gregorian + Retrieves the hour of the day represented by @datetime in the gregorian calendar. The return is in the range of 0 to 23. Call gst_date_time_has_time() before, to avoid warnings. + - the hour of the day + the hour of the day - a #GstDateTime + a #GstDateTime - Retrieves the fractional part of the seconds in microseconds represented by + Retrieves the fractional part of the seconds in microseconds represented by @datetime in the gregorian calendar. + - the microsecond of the second + the microsecond of the second - a #GstDateTime + a #GstDateTime - Retrieves the minute of the hour represented by @datetime in the gregorian + Retrieves the minute of the hour represented by @datetime in the gregorian calendar. Call gst_date_time_has_time() before, to avoid warnings. + - the minute of the hour + the minute of the hour - a #GstDateTime + a #GstDateTime - Returns the month of this #GstDateTime. January is 1, February is 2, etc.. + Returns the month of this #GstDateTime. January is 1, February is 2, etc.. Call gst_date_time_has_month() before, to avoid warnings. + - The month of this #GstDateTime + The month of this #GstDateTime - a #GstDateTime + a #GstDateTime - Retrieves the second of the minute represented by @datetime in the gregorian + Retrieves the second of the minute represented by @datetime in the gregorian calendar. Call gst_date_time_has_time() before, to avoid warnings. + - the second represented by @datetime + the second represented by @datetime - a #GstDateTime + a #GstDateTime - Retrieves the offset from UTC in hours that the timezone specified + Retrieves the offset from UTC in hours that the timezone specified by @datetime represents. Timezones ahead (to the east) of UTC have positive values, timezones before (to the west) of UTC have negative values. If @datetime represents UTC time, then the offset is zero. + - the offset from UTC in hours + the offset from UTC in hours - a #GstDateTime + a #GstDateTime - Returns the year of this #GstDateTime + Returns the year of this #GstDateTime Call gst_date_time_has_year() before, to avoid warnings. + - The year of this #GstDateTime + The year of this #GstDateTime - a #GstDateTime + a #GstDateTime + - %TRUE if @datetime<!-- -->'s day field is set, otherwise %FALSE + %TRUE if @datetime<!-- -->'s day field is set, otherwise %FALSE - a #GstDateTime + a #GstDateTime + - %TRUE if @datetime<!-- -->'s month field is set, otherwise %FALSE + %TRUE if @datetime<!-- -->'s month field is set, otherwise %FALSE - a #GstDateTime + a #GstDateTime + - %TRUE if @datetime<!-- -->'s second field is set, otherwise %FALSE + %TRUE if @datetime<!-- -->'s second field is set, otherwise %FALSE - a #GstDateTime + a #GstDateTime + - %TRUE if @datetime<!-- -->'s hour and minute fields are set, + %TRUE if @datetime<!-- -->'s hour and minute fields are set, otherwise %FALSE - a #GstDateTime + a #GstDateTime + - %TRUE if @datetime<!-- -->'s year field is set (which should always + %TRUE if @datetime<!-- -->'s year field is set (which should always be the case), otherwise %FALSE - a #GstDateTime + a #GstDateTime - Atomically increments the reference count of @datetime by one. + Atomically increments the reference count of @datetime by one. + - the reference @datetime + the reference @datetime - a #GstDateTime + a #GstDateTime - Creates a new #GDateTime from a fully defined #GstDateTime object. + Creates a new #GDateTime from a fully defined #GstDateTime object. Free-function: g_date_time_unref + - a newly created #GDateTime, or + a newly created #GDateTime, or %NULL on error - GstDateTime. + GstDateTime. - Create a minimal string compatible with ISO-8601. Possible output formats + Create a minimal string compatible with ISO-8601. Possible output formats are (for example): 2012, 2012-06, 2012-06-23, 2012-06-23T23:30Z, 2012-06-23T23:30+0100, 2012-06-23T23:30:59Z, 2012-06-23T23:30:59+0100 + - a newly allocated string formatted according + a newly allocated string formatted according to ISO 8601 and only including the datetime fields that are valid, or %NULL in case there was an error. The string should be freed with g_free(). @@ -10356,28 +15375,38 @@ are (for example): 2012, 2012-06, 2012-06-23, 2012-06-23T23:30Z, - GstDateTime. + GstDateTime. - Atomically decrements the reference count of @datetime by one. When the + Atomically decrements the reference count of @datetime by one. When the reference count reaches zero, the structure is freed. + - a #GstDateTime + a #GstDateTime - This is the struct that describes the categories. Once initialized with + This is the struct that describes the categories. Once initialized with #GST_DEBUG_CATEGORY_INIT, its values can't be changed anymore. + @@ -10391,107 +15420,152 @@ reference count reaches zero, the structure is freed. - Removes and frees the category and all associated resources. + Removes and frees the category and all associated resources. + - #GstDebugCategory to free. + #GstDebugCategory to free. - Returns the color of a debug category used when printing output in this + Returns the color of a debug category used when printing output in this category. + - the color of the category. + the color of the category. - a #GstDebugCategory to get the color of. + a #GstDebugCategory to get the color of. - Returns the description of a debug category. + Returns the description of a debug category. + - the description of the category. + the description of the category. - a #GstDebugCategory to get the description of. + a #GstDebugCategory to get the description of. - Returns the name of a debug category. + Returns the name of a debug category. + - the name of the category. + the name of the category. - a #GstDebugCategory to get name of. + a #GstDebugCategory to get name of. - Returns the threshold of a #GstDebugCategory. + Returns the threshold of a #GstDebugCategory. + - the #GstDebugLevel that is used as threshold. + the #GstDebugLevel that is used as threshold. - a #GstDebugCategory to get threshold of. + a #GstDebugCategory to get threshold of. - Resets the threshold of the category to the default level. Debug information + Resets the threshold of the category to the default level. Debug information will only be output if the threshold is lower or equal to the level of the debugging message. Use this function to set the threshold back to where it was after using gst_debug_category_set_threshold(). + - a #GstDebugCategory to reset threshold of. + a #GstDebugCategory to reset threshold of. - Sets the threshold of the category to the given level. Debug information will + Sets the threshold of the category to the given level. Debug information will only be output if the threshold is lower or equal to the level of the debugging message. > Do not use this function in production code, because other functions may > change the threshold of categories as side effect. It is however a nice > function to use when debugging (even from gdb). + - a #GstDebugCategory to set threshold of. + a #GstDebugCategory to set threshold of. - the #GstDebugLevel threshold to set. + the #GstDebugLevel threshold to set. @@ -10501,115 +15575,153 @@ debugging message. glib:type-name="GstDebugColorFlags" glib:get-type="gst_debug_color_flags_get_type" c:type="GstDebugColorFlags"> - These are some terminal style flags you can use when creating your + These are some terminal style flags you can use when creating your debugging categories to make them stand out in debugging output. - Use black as foreground color. + Use black as foreground color. - Use red as foreground color. + Use red as foreground color. - Use green as foreground color. + Use green as foreground color. - Use yellow as foreground color. + Use yellow as foreground color. - Use blue as foreground color. + Use blue as foreground color. - Use magenta as foreground color. + Use magenta as foreground color. - Use cyan as foreground color. + Use cyan as foreground color. - Use white as foreground color. + Use white as foreground color. - Use black as background color. + Use black as background color. - Use red as background color. + Use red as background color. - Use green as background color. + Use green as background color. - Use yellow as background color. + Use yellow as background color. - Use blue as background color. + Use blue as background color. - Use magenta as background color. + Use magenta as background color. - Use cyan as background color. + Use cyan as background color. - Use white as background color. + Use white as background color. - Make the output bold. + Make the output bold. - Underline the output. + Underline the output. value="0" c:identifier="GST_DEBUG_COLOR_MODE_OFF" glib:nick="off"> - Do not use colors in logs. + Do not use colors in logs. - Paint logs in a platform-specific way. + Paint logs in a platform-specific way. - Paint logs with UNIX terminal color codes + Paint logs with UNIX terminal color codes no matter what platform GStreamer is running on. + @@ -10645,51 +15764,67 @@ debugging categories to make them stand out in debugging output. glib:type-name="GstDebugGraphDetails" glib:get-type="gst_debug_graph_details_get_type" c:type="GstDebugGraphDetails"> - Available details for pipeline graphs produced by GST_DEBUG_BIN_TO_DOT_FILE() + Available details for pipeline graphs produced by GST_DEBUG_BIN_TO_DOT_FILE() and GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(). - show caps-name on edges + show caps-name on edges - show caps-details on edges + show caps-details on edges - show modified parameters on + show modified parameters on elements - show element states + show element states - show full element parameter values even + show full element parameter values even if they are very long - show all the typical details that one might want + show all the typical details that one might want - show all details regardless of how large or + show all details regardless of how large or verbose they make the resulting output @@ -10697,20 +15832,26 @@ and GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(). glib:type-name="GstDebugLevel" glib:get-type="gst_debug_level_get_type" c:type="GstDebugLevel"> - The level defines the importance of a debugging message. The more important a + The level defines the importance of a debugging message. The more important a message is, the greater the probability that the debugging system outputs it. - No debugging level specified or desired. Used to deactivate + No debugging level specified or desired. Used to deactivate debugging output. - Error messages are to be used only when an error occurred + Error messages are to be used only when an error occurred that stops the application from keeping working correctly. An examples is gst_element_error, which outputs a message with this priority. It does not mean that the application is terminating as with g_error. @@ -10719,7 +15860,9 @@ message is, the greater the probability that the debugging system outputs it. - Warning messages are to inform about abnormal behaviour + Warning messages are to inform about abnormal behaviour that could lead to problems or weird behaviour later on. An example of this would be clocking issues ("your computer is pretty slow") or broken input data ("Can't synchronize to stream.") @@ -10728,7 +15871,9 @@ message is, the greater the probability that the debugging system outputs it. - Fixme messages are messages that indicate that something + Fixme messages are messages that indicate that something in the executed code path is not fully implemented or handled yet. Note that this does not replace proper error handling in any way, the purpose of this message is to make it easier to spot incomplete/unfinished pieces @@ -10738,7 +15883,9 @@ message is, the greater the probability that the debugging system outputs it. - Informational messages should be used to keep the developer + Informational messages should be used to keep the developer updated about what is happening. Examples where this should be used are when a typefind function has successfully determined the type of the stream or when an mp3 plugin detects @@ -10748,7 +15895,9 @@ message is, the greater the probability that the debugging system outputs it. - Debugging messages should be used when something common + Debugging messages should be used when something common happens that is not the expected default behavior, or something that's useful to know but doesn't happen all the time (ie. per loop iteration or buffer processed or event handled). @@ -10759,7 +15908,9 @@ message is, the greater the probability that the debugging system outputs it. - Log messages are messages that are very common but might be + Log messages are messages that are very common but might be useful to know. As a rule of thumb a pipeline that is running as expected should never output anything else but LOG messages whilst processing data. Use this log level to log recurring information in chain functions and @@ -10769,14 +15920,18 @@ message is, the greater the probability that the debugging system outputs it. - Tracing-related messages. + Tracing-related messages. Examples for this are referencing/dereferencing of objects. - memory dump messages are used to log (small) chunks of + memory dump messages are used to log (small) chunks of data as memory dumps in the log. They will be displayed as hexdump with ASCII characters. @@ -10784,33 +15939,50 @@ message is, the greater the probability that the debugging system outputs it. - The number of defined debugging levels. + The number of defined debugging levels. - Get the string representation of a debugging level + Get the string representation of a debugging level + - the name + the name - the level to get the name for + the level to get the name for + - Gets the string representation of a #GstDebugMessage. This function is used + Gets the string representation of a #GstDebugMessage. This function is used in debug handlers to extract the message. + - the string representation of a #GstDebugMessage. + the string representation of a #GstDebugMessage. - a debug message + a debug message @@ -10825,32 +15997,44 @@ in debug handlers to extract the message. glib:type-name="GstDevice" glib:get-type="gst_device_get_type" glib:type-struct="DeviceClass"> - #GstDevice are objects representing a device, they contain + #GstDevice are objects representing a device, they contain relevant metadata about the device, such as its class and the #GstCaps representing the media types it can produce or handle. #GstDevice are created by #GstDeviceProvider objects which can be aggregated by #GstDeviceMonitor objects. + - Creates the element with all of the required parameters set to use + Creates the element with all of the required parameters set to use this device. + - a new #GstElement configured to use + a new #GstElement configured to use this device - a #GstDevice + a #GstDevice - name of new element, or %NULL to automatically + name of new element, or %NULL to automatically create a unique name. @@ -10859,24 +16043,33 @@ create a unique name. - Tries to reconfigure an existing element to use the device. If this + Tries to reconfigure an existing element to use the device. If this function fails, then one must destroy the element and create a new one using gst_device_create_element(). Note: This should only be implemented for elements can change their device in the PLAYING state. + - %TRUE if the element could be reconfigured to use this device, + %TRUE if the element could be reconfigured to use this device, %FALSE otherwise. - a #GstDevice + a #GstDevice - a #GstElement + a #GstElement @@ -10884,38 +16077,54 @@ device in the PLAYING state. - Creates the element with all of the required parameters set to use + Creates the element with all of the required parameters set to use this device. + - a new #GstElement configured to use + a new #GstElement configured to use this device - a #GstDevice + a #GstDevice - name of new element, or %NULL to automatically + name of new element, or %NULL to automatically create a unique name. - Getter for the #GstCaps that this device supports. + Getter for the #GstCaps that this device supports. + - The #GstCaps supported by this device. Unref with + The #GstCaps supported by this device. Unref with gst_caps_unref() when done. - a #GstDevice + a #GstDevice @@ -10923,16 +16132,23 @@ gst_caps_unref() when done. - Gets the "class" of a device. This is a "/" separated list of + Gets the "class" of a device. This is a "/" separated list of classes that represent this device. They are a subset of the classes of the #GstDeviceProvider that produced this device. + - The device class. Free with g_free() after use. + The device class. Free with g_free() after use. - a #GstDevice + a #GstDevice @@ -10940,14 +16156,21 @@ classes of the #GstDeviceProvider that produced this device. - Gets the user-friendly name of the device. + Gets the user-friendly name of the device. + - The device name. Free with g_free() after use. + The device name. Free with g_free() after use. - a #GstDevice + a #GstDevice @@ -10955,15 +16178,22 @@ classes of the #GstDeviceProvider that produced this device. - Gets the extra properties of a device. + Gets the extra properties of a device. + - The extra properties or %NULL when there are none. + The extra properties or %NULL when there are none. Free with gst_structure_free() after use. - a #GstDevice + a #GstDevice @@ -10971,18 +16201,27 @@ classes of the #GstDeviceProvider that produced this device. - Check if @device matches all of the given classes + Check if @device matches all of the given classes + - %TRUE if @device matches. + %TRUE if @device matches. - a #GstDevice + a #GstDevice - a "/"-separated list of device classes to match, only match if + a "/"-separated list of device classes to match, only match if all classes are matched @@ -10991,18 +16230,27 @@ classes of the #GstDeviceProvider that produced this device. - Check if @factory matches all of the given classes + Check if @factory matches all of the given classes + - %TRUE if @device matches. + %TRUE if @device matches. - a #GstDevice + a #GstDevice - a %NULL terminated array of classes + a %NULL terminated array of classes to match, only match if all classes are matched @@ -11013,24 +16261,33 @@ classes of the #GstDeviceProvider that produced this device. - Tries to reconfigure an existing element to use the device. If this + Tries to reconfigure an existing element to use the device. If this function fails, then one must destroy the element and create a new one using gst_device_create_element(). Note: This should only be implemented for elements can change their device in the PLAYING state. + - %TRUE if the element could be reconfigured to use this device, + %TRUE if the element could be reconfigured to use this device, %FALSE otherwise. - a #GstDevice + a #GstDevice - a #GstElement + a #GstElement @@ -11060,14 +16317,16 @@ device in the PLAYING state. - The parent #GstObject structure. + The parent #GstObject structure. - + @@ -11081,28 +16340,40 @@ device in the PLAYING state. c:type="GstDeviceClass" glib:is-gtype-struct-for="Device" version="1.4"> - The class structure for a #GstDevice object. + The class structure for a #GstDevice object. + - The parent #GstObjectClass structure. + The parent #GstObjectClass structure. + - a new #GstElement configured to use + a new #GstElement configured to use this device - a #GstDevice + a #GstDevice - name of new element, or %NULL to automatically + name of new element, or %NULL to automatically create a unique name. @@ -11111,25 +16382,32 @@ create a unique name. + - %TRUE if the element could be reconfigured to use this device, + %TRUE if the element could be reconfigured to use this device, %FALSE otherwise. - a #GstDevice + a #GstDevice - a #GstElement + a #GstElement - + @@ -11142,7 +16420,9 @@ create a unique name. glib:type-name="GstDeviceMonitor" glib:get-type="gst_device_monitor_get_type" glib:type-struct="DeviceMonitorClass"> - Applications should create a #GstDeviceMonitor when they want + Applications should create a #GstDeviceMonitor when they want to probe, list and monitor devices of a specific type. The #GstDeviceMonitor will create the appropriate #GstDeviceProvider objects and manage them. It will then post @@ -11203,19 +16483,27 @@ The basic use pattern of a device monitor is as follows: return monitor; } ]| + - Create a new #GstDeviceMonitor + Create a new #GstDeviceMonitor + - a new device monitor. + a new device monitor. - Adds a filter for which #GstDevice will be monitored, any device that matches + Adds a filter for which #GstDevice will be monitored, any device that matches all these classes and the #GstCaps will be returned. If this function is called multiple times to add more filters, each will be @@ -11226,28 +16514,37 @@ The #GstCaps supported by the device as returned by gst_device_get_caps() are not intersected with caps filters added using this function. Filters must be added before the #GstDeviceMonitor is started. + - The id of the new filter or 0 if no provider matched the filter's + The id of the new filter or 0 if no provider matched the filter's classes. - a device monitor + a device monitor - device classes to use as filter or %NULL for any class + device classes to use as filter or %NULL for any class - the #GstCaps to filter or %NULL for ANY + the #GstCaps to filter or %NULL for ANY @@ -11255,14 +16552,21 @@ Filters must be added before the #GstDeviceMonitor is started. - Gets the #GstBus of this #GstDeviceMonitor + Gets the #GstBus of this #GstDeviceMonitor + - a #GstBus + a #GstBus - a #GstDeviceProvider + a #GstDeviceProvider @@ -11270,10 +16574,15 @@ Filters must be added before the #GstDeviceMonitor is started. - Gets a list of devices from all of the relevant monitors. This may actually + Gets a list of devices from all of the relevant monitors. This may actually probe the hardware if the monitor is not currently started. + - a #GList of + a #GList of #GstDevice @@ -11281,7 +16590,9 @@ probe the hardware if the monitor is not currently started. - A #GstDeviceProvider + A #GstDeviceProvider @@ -11289,11 +16600,16 @@ probe the hardware if the monitor is not currently started. - Get a list of the currently selected device provider factories. + Get a list of the currently selected device provider factories. This + - + A list of device provider factory names that are currently being monitored by @monitor or %NULL when nothing is being monitored. @@ -11302,7 +16618,9 @@ This - a #GstDeviceMonitor + a #GstDeviceMonitor @@ -11310,15 +16628,22 @@ This - Get if @monitor is curretly showing all devices, even those from hidden + Get if @monitor is curretly showing all devices, even those from hidden providers. + - %TRUE when all devices will be shown. + %TRUE when all devices will be shown. - a #GstDeviceMonitor + a #GstDeviceMonitor @@ -11326,19 +16651,28 @@ providers. - Removes a filter from the #GstDeviceMonitor using the id that was returned + Removes a filter from the #GstDeviceMonitor using the id that was returned by gst_device_monitor_add_filter(). + - %TRUE of the filter id was valid, %FALSE otherwise + %TRUE of the filter id was valid, %FALSE otherwise - a device monitor + a device monitor - the id of the filter + the id of the filter @@ -11346,18 +16680,25 @@ by gst_device_monitor_add_filter(). - Set if all devices should be visible, even those devices from hidden + Set if all devices should be visible, even those devices from hidden providers. Setting @show_all to true might show some devices multiple times. + - a #GstDeviceMonitor + a #GstDeviceMonitor - show all devices + show all devices @@ -11365,28 +16706,40 @@ providers. Setting @show_all to true might show some devices multiple times. - Starts monitoring the devices, one this has succeeded, the + Starts monitoring the devices, one this has succeeded, the %GST_MESSAGE_DEVICE_ADDED and %GST_MESSAGE_DEVICE_REMOVED messages will be emitted on the bus when the list of devices changes. + - %TRUE if the device monitoring could be started + %TRUE if the device monitoring could be started - A #GstDeviceMonitor + A #GstDeviceMonitor - Stops monitoring the devices. + Stops monitoring the devices. + - A #GstDeviceProvider + A #GstDeviceProvider @@ -11395,14 +16748,16 @@ will be emitted on the bus when the list of devices changes. - the parent #GstObject structure + the parent #GstObject structure - + @@ -11411,13 +16766,18 @@ will be emitted on the bus when the list of devices changes. c:type="GstDeviceMonitorClass" glib:is-gtype-struct-for="DeviceMonitor" version="1.4"> - Opaque device monitor class structure. + Opaque device monitor class structure. + - the parent #GstObjectClass structure + the parent #GstObjectClass structure - + @@ -11425,8 +16785,10 @@ will be emitted on the bus when the list of devices changes. + + glib:type-name="GstDeviceProvider" glib:get-type="gst_device_provider_get_type" glib:type-struct="DeviceProviderClass"> - A #GstDeviceProvider subclass is provided by a plugin that handles devices + A #GstDeviceProvider subclass is provided by a plugin that handles devices if there is a way to programmatically list connected devices. It can also optionally provide updates to the list of connected devices. @@ -11446,13 +16810,19 @@ normally provide a single subclass for all devices. Applications would normally use a #GstDeviceMonitor to monitor devices from all relevant providers. + - Create a new device providerfactory capable of instantiating objects of the + Create a new device providerfactory capable of instantiating objects of the @type and add the factory to @plugin. + - %TRUE, if the registering succeeded, %FALSE on error + %TRUE, if the registering succeeded, %FALSE on error @@ -11460,25 +16830,34 @@ from all relevant providers. transfer-ownership="none" nullable="1" allow-none="1"> - #GstPlugin to register the device provider with, or %NULL for + #GstPlugin to register the device provider with, or %NULL for a static device provider. - name of device providers of this type + name of device providers of this type - rank of device provider (higher rank means more importance when autoplugging) + rank of device provider (higher rank means more importance when autoplugging) - GType of device provider to register + GType of device provider to register + @@ -11491,7 +16870,9 @@ from all relevant providers. - Starts providering the devices. This will cause #GST_MESSAGE_DEVICE_ADDED + Starts providering the devices. This will cause #GST_MESSAGE_DEVICE_ADDED and #GST_MESSAGE_DEVICE_REMOVED messages to be posted on the provider's bus when devices are added or removed from the system. @@ -11499,33 +16880,44 @@ Since the #GstDeviceProvider is a singleton, gst_device_provider_start() may already have been called by another user of the object, gst_device_provider_stop() needs to be called the same number of times. + - %TRUE if the device providering could be started + %TRUE if the device providering could be started - A #GstDeviceProvider + A #GstDeviceProvider - Decreases the use-count by one. If the use count reaches zero, this + Decreases the use-count by one. If the use count reaches zero, this #GstDeviceProvider will stop providering the devices. This needs to be called the same number of times that gst_device_provider_start() was called. + - A #GstDeviceProvider + A #GstDeviceProvider + @@ -11538,23 +16930,30 @@ called the same number of times that gst_device_provider_start() was called. - Posts a message on the provider's #GstBus to inform applications that + Posts a message on the provider's #GstBus to inform applications that a new device has been added. This is for use by subclasses. @device's reference count will be incremented, and any floating reference will be removed (see gst_object_ref_sink()). + - a #GstDeviceProvider + a #GstDeviceProvider - a #GstDevice that has been added + a #GstDevice that has been added @@ -11562,11 +16961,14 @@ will be removed (see gst_object_ref_sink()). - This function is used when @changed_device was modified into its new form + This function is used when @changed_device was modified into its new form @device. This will post a `DEVICE_CHANGED` message on the bus to let the application know that the device was modified. #GstDevice is immutable for MT. safety purposes so this is an "atomic" way of letting the application know when a device was modified. + @@ -11575,11 +16977,15 @@ know when a device was modified. - the new version of @changed_device + the new version of @changed_device - the old version of the device that has been udpated + the old version of the device that has been udpated @@ -11587,20 +16993,27 @@ know when a device was modified. - Posts a message on the provider's #GstBus to inform applications that + Posts a message on the provider's #GstBus to inform applications that a device has been removed. This is for use by subclasses. + - a #GstDeviceProvider + a #GstDeviceProvider - a #GstDevice that has been removed + a #GstDevice that has been removed @@ -11608,14 +17021,21 @@ This is for use by subclasses. - Gets the #GstBus of this #GstDeviceProvider + Gets the #GstBus of this #GstDeviceProvider + - a #GstBus + a #GstBus - a #GstDeviceProvider + a #GstDeviceProvider @@ -11623,10 +17043,15 @@ This is for use by subclasses. - Gets a list of devices that this provider understands. This may actually + Gets a list of devices that this provider understands. This may actually probe the hardware if the provider is not currently started. + - a #GList of + a #GList of #GstDevice @@ -11634,7 +17059,9 @@ probe the hardware if the provider is not currently started. - A #GstDeviceProvider + A #GstDeviceProvider @@ -11642,16 +17069,23 @@ probe the hardware if the provider is not currently started. - Retrieves the factory that was used to create this device provider. + Retrieves the factory that was used to create this device provider. + - the #GstDeviceProviderFactory used for + the #GstDeviceProviderFactory used for creating this device provider. no refcounting is needed. - a #GstDeviceProvider to request the device provider factory of. + a #GstDeviceProvider to request the device provider factory of. @@ -11659,10 +17093,15 @@ probe the hardware if the provider is not currently started. - Get the provider factory names of the #GstDeviceProvider instances that + Get the provider factory names of the #GstDeviceProvider instances that are hidden by @provider. + - + a list of hidden providers factory names or %NULL when nothing is hidden by @provider. Free with g_strfreev. @@ -11671,7 +17110,9 @@ are hidden by @provider. - a #GstDeviceProvider + a #GstDeviceProvider @@ -11679,18 +17120,27 @@ are hidden by @provider. - Get metadata with @key in @provider. + Get metadata with @key in @provider. + - the metadata for @key. + the metadata for @key. - provider to get metadata for + provider to get metadata for - the key to get + the key to get @@ -11698,21 +17148,28 @@ are hidden by @provider. - Make @provider hide the devices from the factory with @name. + Make @provider hide the devices from the factory with @name. This function is used when @provider will also provide the devices reported by provider factory @name. A monitor should stop monitoring the device provider with @name to avoid duplicate devices. + - a #GstDeviceProvider + a #GstDeviceProvider - a provider factory name + a provider factory name @@ -11720,7 +17177,9 @@ device provider with @name to avoid duplicate devices. - Starts providering the devices. This will cause #GST_MESSAGE_DEVICE_ADDED + Starts providering the devices. This will cause #GST_MESSAGE_DEVICE_ADDED and #GST_MESSAGE_DEVICE_REMOVED messages to be posted on the provider's bus when devices are added or removed from the system. @@ -11728,13 +17187,18 @@ Since the #GstDeviceProvider is a singleton, gst_device_provider_start() may already have been called by another user of the object, gst_device_provider_stop() needs to be called the same number of times. + - %TRUE if the device providering could be started + %TRUE if the device providering could be started - A #GstDeviceProvider + A #GstDeviceProvider @@ -11742,15 +17206,20 @@ number of times. - Decreases the use-count by one. If the use count reaches zero, this + Decreases the use-count by one. If the use count reaches zero, this #GstDeviceProvider will stop providering the devices. This needs to be called the same number of times that gst_device_provider_start() was called. + - A #GstDeviceProvider + A #GstDeviceProvider @@ -11758,32 +17227,43 @@ called the same number of times that gst_device_provider_start() was called. - Make @provider unhide the devices from factory @name. + Make @provider unhide the devices from factory @name. This function is used when @provider will no longer provide the devices reported by provider factory @name. A monitor should start monitoring the devices from provider factory @name in order to see all devices again. + - a #GstDeviceProvider + a #GstDeviceProvider - a provider factory name + a provider factory name - The parent #GstObject + The parent #GstObject - a #GList of the #GstDevice objects + a #GList of the #GstDevice objects @@ -11792,7 +17272,7 @@ all devices again. - + @@ -11821,18 +17301,26 @@ all devices again. c:type="GstDeviceProviderClass" glib:is-gtype-struct-for="DeviceProvider" version="1.4"> - The structure of the base #GstDeviceProviderClass + The structure of the base #GstDeviceProviderClass + - the parent #GstObjectClass structure + the parent #GstObjectClass structure - a pointer to the #GstDeviceProviderFactory that creates this + a pointer to the #GstDeviceProviderFactory that creates this provider + @@ -11847,13 +17335,18 @@ all devices again. + - %TRUE if the device providering could be started + %TRUE if the device providering could be started - A #GstDeviceProvider + A #GstDeviceProvider @@ -11861,12 +17354,15 @@ all devices again. + - A #GstDeviceProvider + A #GstDeviceProvider @@ -11876,28 +17372,37 @@ all devices again. - + - Set @key with @value as metadata in @klass. + Set @key with @value as metadata in @klass. + - class to set metadata for + class to set metadata for - the key to set + the key to set - the value to set + the value to set @@ -11905,26 +17410,35 @@ all devices again. - Set @key with @value as metadata in @klass. + Set @key with @value as metadata in @klass. Same as gst_device_provider_class_add_metadata(), but @value must be a static string or an inlined string, as it will not be copied. (GStreamer plugins will be made resident once loaded, so this function can be used even from dynamically loaded plugins.) + - class to set metadata for + class to set metadata for - the key to set + the key to set - the value to set + the value to set @@ -11932,18 +17446,27 @@ dynamically loaded plugins.) - Get metadata with @key in @klass. + Get metadata with @key in @klass. + - the metadata for @key. + the metadata for @key. - class to get metadata for + class to get metadata for - the key to get + the key to get @@ -11951,35 +17474,48 @@ dynamically loaded plugins.) - Sets the detailed information for a #GstDeviceProviderClass. + Sets the detailed information for a #GstDeviceProviderClass. > This function is for use in _class_init functions only. + - class to set metadata for + class to set metadata for - The long English name of the device provider. E.g. "File Sink" + The long English name of the device provider. E.g. "File Sink" - String describing the type of device provider, as an + String describing the type of device provider, as an unordered list separated with slashes ('/'). See draft-klass.txt of the design docs for more details and common types. E.g: "Sink/File" - Sentence describing the purpose of the device provider. + Sentence describing the purpose of the device provider. E.g: "Write stream to a file" - Name and contact details of the author(s). Use \n to separate + Name and contact details of the author(s). Use \n to separate multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;" @@ -11988,7 +17524,9 @@ multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;" - Sets the detailed information for a #GstDeviceProviderClass. + Sets the detailed information for a #GstDeviceProviderClass. > This function is for use in _class_init functions only. @@ -11996,31 +17534,42 @@ Same as gst_device_provider_class_set_metadata(), but @longname, @classification @description, and @author must be static strings or inlined strings, as they will not be copied. (GStreamer plugins will be made resident once loaded, so this function can be used even from dynamically loaded plugins.) + - class to set metadata for + class to set metadata for - The long English name of the element. E.g. "File Sink" + The long English name of the element. E.g. "File Sink" - String describing the type of element, as + String describing the type of element, as an unordered list separated with slashes ('/'). See draft-klass.txt of the design docs for more details and common types. E.g: "Sink/File" - Sentence describing the purpose of the + Sentence describing the purpose of the element. E.g: "Write stream to a file" - Name and contact details of the author(s). Use \n + Name and contact details of the author(s). Use \n to separate multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;" @@ -12036,7 +17585,9 @@ foo.com&gt;" glib:type-name="GstDeviceProviderFactory" glib:get-type="gst_device_provider_factory_get_type" glib:type-struct="DeviceProviderFactoryClass"> - #GstDeviceProviderFactory is used to create instances of device providers. A + #GstDeviceProviderFactory is used to create instances of device providers. A GstDeviceProviderfactory can be added to a #GstPlugin as it is also a #GstPluginFeature. @@ -12044,20 +17595,28 @@ Use the gst_device_provider_factory_find() and gst_device_provider_factory_get() functions to create device provider instances or use gst_device_provider_factory_get_by_name() as a convenient shortcut. + - Search for an device provider factory of the given name. Refs the returned + Search for an device provider factory of the given name. Refs the returned device provider factory; caller is responsible for unreffing. + - #GstDeviceProviderFactory if + #GstDeviceProviderFactory if found, %NULL otherwise - name of factory to find + name of factory to find @@ -12065,16 +17624,23 @@ found, %NULL otherwise - Returns the device provider of the type defined by the given device + Returns the device provider of the type defined by the given device provider factory. + - a #GstDeviceProvider or %NULL + a #GstDeviceProvider or %NULL if unable to create device provider - a named factory to instantiate + a named factory to instantiate @@ -12082,10 +17648,15 @@ if unable to create device provider - Get a list of factories with a rank greater or equal to @minrank. + Get a list of factories with a rank greater or equal to @minrank. The list of factories is returned by decreasing rank. + - + a #GList of #GstDeviceProviderFactory device providers. Use gst_plugin_feature_list_free() after usage. @@ -12094,7 +17665,9 @@ gst_plugin_feature_list_free() after usage. - Minimum rank + Minimum rank @@ -12102,16 +17675,23 @@ gst_plugin_feature_list_free() after usage. - Returns the device provider of the type defined by the given device + Returns the device provider of the type defined by the given device providerfactory. + - the #GstDeviceProvider or %NULL + the #GstDeviceProvider or %NULL if the device provider couldn't be created - factory to instantiate + factory to instantiate @@ -12120,16 +17700,23 @@ if the device provider couldn't be created - Get the #GType for device providers managed by this factory. The type can + Get the #GType for device providers managed by this factory. The type can only be retrieved if the device provider factory is loaded, which can be assured with gst_plugin_feature_load(). + - the #GType for device providers managed by this factory. + the #GType for device providers managed by this factory. - factory to get managed #GType from + factory to get managed #GType from @@ -12138,20 +17725,29 @@ assured with gst_plugin_feature_load(). - Get the metadata on @factory with @key. + Get the metadata on @factory with @key. + - the metadata with @key on @factory or %NULL + the metadata with @key on @factory or %NULL when there was no metadata with the given @key. - a #GstDeviceProviderFactory + a #GstDeviceProviderFactory - a key + a key @@ -12159,9 +17755,14 @@ when there was no metadata with the given @key. - Get the available keys for the metadata on @factory. + Get the available keys for the metadata on @factory. + - + a %NULL-terminated array of key strings, or %NULL when there is no metadata. Free with g_strfreev() when no longer needed. @@ -12170,7 +17771,9 @@ metadata. Free with g_strfreev() when no longer needed. - a #GstDeviceProviderFactory + a #GstDeviceProviderFactory @@ -12179,14 +17782,21 @@ metadata. Free with g_strfreev() when no longer needed. - Check if @factory matches all of the given @classes + Check if @factory matches all of the given @classes + - %TRUE if @factory matches or if @classes is %NULL. + %TRUE if @factory matches or if @classes is %NULL. - a #GstDeviceProviderFactory + a #GstDeviceProviderFactory @@ -12194,7 +17804,9 @@ metadata. Free with g_strfreev() when no longer needed. transfer-ownership="none" nullable="1" allow-none="1"> - a "/" separate list of classes to match, only match + a "/" separate list of classes to match, only match if all classes are matched @@ -12203,14 +17815,21 @@ metadata. Free with g_strfreev() when no longer needed. - Check if @factory matches all of the given classes + Check if @factory matches all of the given classes + - %TRUE if @factory matches. + %TRUE if @factory matches. - a #GstDeviceProviderFactory + a #GstDeviceProviderFactory @@ -12218,7 +17837,9 @@ metadata. Free with g_strfreev() when no longer needed. transfer-ownership="none" nullable="1" allow-none="1"> - a %NULL terminated array + a %NULL terminated array of classes to match, only match if all classes are matched @@ -12232,11 +17853,15 @@ metadata. Free with g_strfreev() when no longer needed. disguised="1" glib:is-gtype-struct-for="DeviceProviderFactory" version="1.4"> - The opaque #GstDeviceProviderFactoryClass data structure. + The opaque #GstDeviceProviderFactoryClass data structure. + + glib:type-name="GstDynamicTypeFactory" glib:get-type="gst_dynamic_type_factory_get_type" glib:type-struct="DynamicTypeFactoryClass"> - #GstDynamicTypeFactory is used to represent a type that can be + #GstDynamicTypeFactory is used to represent a type that can be automatically loaded the first time it is used. For example, a non-standard type for use in caps fields. @@ -12270,7 +17897,9 @@ plugin_init (GstPlugin * plugin) return gst_dynamic_type_register (plugin, GST_TYPE_CUSTOM_CAPS_FIELD); } ]| + + @@ -12285,290 +17914,1001 @@ plugin_init (GstPlugin * plugin) c:type="GstDynamicTypeFactoryClass" disguised="1" glib:is-gtype-struct-for="DynamicTypeFactory"> + + + + + + + + + + Get the message bus of this element. This is not thread-safe by default +(i.e. you will have to make sure the object lock is taken yourself). +If in doubt use gst_element_get_bus() instead. + + + + A #GstElement to query + + + + + + + + + + + + + + + + + + + Get the clock of this element.This is not thread-safe by default +(i.e. you will have to make sure it is safe yourself). +If in doubt use gst_element_get_clock() instead. + + + + A #GstElement to query + + + + + Utility function that elements can use in case they encountered a fatal +data processing error. The pipeline will post an error message and the +application will be requested to stop further media processing. + + + + the element that generates the error + + + like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError) + + + error code defined for that domain (see #gstreamer-GstGError) + + + the message to display (format string and args enclosed in + parentheses) + + + debugging information for the message (format string and args + enclosed in parentheses) + + + + + Utility function that elements can use in case they encountered a fatal +data processing error. The pipeline will post an error message and the +application will be requested to stop further media processing. + + + + the element that generates the error + + + like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError) + + + error code defined for that domain (see #gstreamer-GstGError) + + + the message to display (format string and args enclosed in + parentheses) + + + debugging information for the message (format string and args + enclosed in parentheses) + + + optional name, type, value triplets, which will be stored + in the associated GstStructure. NULL terminator required. + Must be enclosed within parentheses. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Elements interacting with hardware devices should specify this classifier in + Elements interacting with hardware devices should specify this classifier in their metadata. You may need to put the element in "READY" state to test if the hardware is present in the system. + + + + + + + + + + + - Elements of any of the defined GST_ELEMENT_FACTORY_LIST types + Elements of any of the defined GST_ELEMENT_FACTORY_LIST types + - All sinks handling audio, video or image media types + All sinks handling audio, video or image media types + - All encoders handling audio media types + All encoders handling audio media types + - All elements used to 'decode' streams (decoders, demuxers, parsers, depayloaders) + All elements used to 'decode' streams (decoders, demuxers, parsers, depayloaders) + + + + + + + + + - Elements matching any of the defined GST_ELEMENT_FACTORY_TYPE_MEDIA types + Elements matching any of the defined GST_ELEMENT_FACTORY_TYPE_MEDIA types Note: Do not use this if you wish to not filter against any of the defined media types. If you wish to do this, simply don't specify any GST_ELEMENT_FACTORY_TYPE_MEDIA flag. + + + + + + + + + + + - All encoders handling video or image media types + All encoders handling video or image media types + + + Utility function that elements can use in case they encountered a fatal +data processing error due to wrong flow processing. + + + + the element that generates the error + + + the GstFlowReturn leading to that ERROR message + + + + + + + + + + + + Utility function that elements can use in case they want to inform +the application of something noteworthy that is not an error. +The pipeline will post a info message and the +application will be informed. + + + + the element that generates the information + + + like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError) + + + error code defined for that domain (see #gstreamer-GstGError) + + + the message to display (format string and args enclosed in + parentheses) + + + debugging information for the message (format string and args + enclosed in parentheses) + + + + + Utility function that elements can use in case they want to inform +the application of something noteworthy that is not an error. +The pipeline will post a info message and the +application will be informed. +Optional name, type, value triplets may be supplied, and will be stored +in the associated GstStructure. NULL terminator required. + + + + the element that generates the information + + + like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError) + + + error code defined for that domain (see #gstreamer-GstGError) + + + the message to display (format string and args enclosed in + parentheses) + + + debugging information for the message (format string and args + enclosed in parentheses) + + + optional name, type, value triplets, which will be stored + in the associated GstStructure. NULL terminator required. + Must be enclosed within parentheses. + + + + + Check if the element is in the locked state and therefore will ignore state +changes from its parent object. + + + + A #GstElement to query + + + + + + + + + + - Name and contact details of the author(s). Use \n to separate + Name and contact details of the author(s). Use \n to separate multiple author details. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;" + - Sentence describing the purpose of the element. + Sentence describing the purpose of the element. E.g: "Write stream to a file" + - Set uri pointing to user documentation. Applications can use this to show + Set uri pointing to user documentation. Applications can use this to show help for e.g. effects to users. + - Elements that bridge to certain other products can include an icon of that + Elements that bridge to certain other products can include an icon of that used product. Application can show the icon in menus/selectors to help identifying specific elements. + - String describing the type of element, as an unordered list + String describing the type of element, as an unordered list separated with slashes ('/'). See draft-klass.txt of the design docs for more details and common types. E.g: "Sink/File" + - The long English name of the element. E.g. "File Sink" + The long English name of the element. E.g. "File Sink" + + + Gets the name of this element. This is not thread-safe by default +(i.e. you will have to make sure the object lock is taken yourself). +If in doubt use gst_element_get_name() instead. + + + + A #GstElement to query + + + + + Get the pads of this elements. + + + + A #GstElement to query + + + + + Get the parent object of this element. This is not thread-safe by default +(i.e. you will have to make sure the object lock is taken yourself). +If in doubt use gst_object_get_parent() instead. + + + + A #GstElement to query + + + + + This macro returns the start_time of the @elem. The start_time is the +running_time of the pipeline when the element went to PAUSED. + + + + a #GstElement to return the start time for. + + + + + Utility function that elements can use in case they encountered a non-fatal +data processing problem. The pipeline will post a warning message and the +application will be informed. + + + + the element that generates the warning + + + like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError) + + + error code defined for that domain (see #gstreamer-GstGError) + + + the message to display (format string and args enclosed in + parentheses) + + + debugging information for the message (format string and args + enclosed in parentheses) + + + + + Utility function that elements can use in case they encountered a non-fatal +data processing problem. The pipeline will post a warning message and the +application will be informed. + + + + the element that generates the warning + + + like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError) + + + error code defined for that domain (see #gstreamer-GstGError) + + + the message to display (format string and args enclosed in + parentheses) + + + debugging information for the message (format string and args + enclosed in parentheses) + + + optional name, type, value triplets, which will be stored + in the associated GstStructure. NULL terminator required. + Must be enclosed within parentheses. + + + - Builds a string using errno describing the previously failed system + Builds a string using errno describing the previously failed system call. To be used as the debug argument in #GST_ELEMENT_ERROR. + + + + + + + + + + + + + + + + + Check if an event can travel downstream. + + + + the event to query + + + + + Check if an event is serialized with the data stream. + + + + the event to query + + + + + Check if an event is sticky on the pads. + + + + the event to query + + + + + Check if an event can travel upstream. + + + + the event to query + + + + + when making custom event types, use this macro with the num and +the given flags + + + + the event number to create + + + the event flags + + + + + + The sequence number of @event. + + + + the event to query + + + + + Get the #GstClockTime timestamp of the event. This is the time when the event +was created. + + + + the event to query + + + + + Get the #GstEventType of the event. + + + + the event to query + + + - The same thing as #GST_EVENT_TYPE_UPSTREAM | #GST_EVENT_TYPE_DOWNSTREAM. + The same thing as #GST_EVENT_TYPE_UPSTREAM | #GST_EVENT_TYPE_DOWNSTREAM. + + + Get a constant string representation of the #GstEventType of the event. + + + + the event to query + + + glib:type-name="GstElement" glib:get-type="gst_element_get_type" glib:type-struct="ElementClass"> - GstElement is the abstract base class needed to construct an element that + GstElement is the abstract base class needed to construct an element that can be used in a GStreamer pipeline. Please refer to the plugin writers guide for more information on creating #GstElement subclasses. @@ -12626,38 +18968,55 @@ element with gst_element_set_clock(). Note that clock selection and distribution is normally handled by the toplevel #GstPipeline so the clock functions are only to be used in very specific situations. + - Creates an element for handling the given URI. + Creates an element for handling the given URI. + - a new element or %NULL if none + a new element or %NULL if none could be created - Whether to create a source or a sink + Whether to create a source or a sink - URI to create an element for + URI to create an element for - Name of created element, can be %NULL. + Name of created element, can be %NULL. - Create a new elementfactory capable of instantiating objects of the + Create a new elementfactory capable of instantiating objects of the @type and add the factory to @plugin. + - %TRUE, if the registering succeeded, %FALSE on error + %TRUE, if the registering succeeded, %FALSE on error @@ -12665,75 +19024,108 @@ could be created transfer-ownership="none" nullable="1" allow-none="1"> - #GstPlugin to register the element with, or %NULL for + #GstPlugin to register the element with, or %NULL for a static element. - name of elements of this type + name of elements of this type - rank of element (higher rank means more importance when autoplugging) + rank of element (higher rank means more importance when autoplugging) - GType of element to register + GType of element to register - Gets a string representing the given state change result. + Gets a string representing the given state change result. + - a string with the name of the state + a string with the name of the state result. - a #GstStateChangeReturn to get the name of. + a #GstStateChangeReturn to get the name of. - Gets a string representing the given state. + Gets a string representing the given state. + - a string with the name of the state. + a string with the name of the state. - a #GstState to get the name of. + a #GstState to get the name of. - Perform @transition on @element. + Perform @transition on @element. This function must be called with STATE_LOCK held and is mainly used internally. + - the #GstStateChangeReturn of the state transition. + the #GstStateChangeReturn of the state transition. - a #GstElement + a #GstElement - the requested transition + the requested transition - Gets the state of the element. + Gets the state of the element. For elements that performed an ASYNC state change, as reported by gst_element_set_state(), this function will block up to the @@ -12753,8 +19145,11 @@ This mostly happens for live sources that only produce data in some sink elements might not be able to complete their state change because an element is not producing data to complete the preroll. When setting the element to playing, the preroll will complete and playback will start. + - %GST_STATE_CHANGE_SUCCESS if the element has no more pending state + %GST_STATE_CHANGE_SUCCESS if the element has no more pending state and the last state change succeeded, %GST_STATE_CHANGE_ASYNC if the element is still performing a state change or %GST_STATE_CHANGE_FAILURE if the last state change failed. @@ -12764,7 +19159,9 @@ MT safe. - a #GstElement to get the state of. + a #GstElement to get the state of. transfer-ownership="full" optional="1" allow-none="1"> - a pointer to #GstState to hold the state. + a pointer to #GstState to hold the state. Can be %NULL. @@ -12783,19 +19182,25 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - a pointer to #GstState to hold the pending + a pointer to #GstState to hold the pending state. Can be %NULL. - a #GstClockTime to specify the timeout for an async + a #GstClockTime to specify the timeout for an async state change or %GST_CLOCK_TIME_NONE for infinite timeout. - Use this function to signal that the element does not expect any more pads + Use this function to signal that the element does not expect any more pads to show up in the current pipeline. This function should be called whenever pads have been added by the element itself. Elements with #GST_PAD_SOMETIMES pad templates use this in combination with autopluggers to figure out that @@ -12804,17 +19209,21 @@ the element is done initializing its pads. This function emits the #GstElement::no-more-pads signal. MT safe. + - a #GstElement + a #GstElement + @@ -12828,6 +19237,7 @@ MT safe. + @@ -12841,11 +19251,16 @@ MT safe. - Post a message on the element's #GstBus. This function takes ownership of the + Post a message on the element's #GstBus. This function takes ownership of the message; if you want to access the message after this call, you should add an additional reference before calling. + - %TRUE if the message was successfully posted. The function returns + %TRUE if the message was successfully posted. The function returns %FALSE if the element did not have a bus. MT safe. @@ -12853,21 +19268,30 @@ MT safe. - a #GstElement posting the message + a #GstElement posting the message - a #GstMessage to post + a #GstMessage to post - Get the clock provided by the given element. + Get the clock provided by the given element. > An element is only required to provide a clock in the PAUSED > state. Some elements can provide a clock in other states. + - the GstClock provided by the + the GstClock provided by the element or %NULL if no clock could be provided. Unref after usage. MT safe. @@ -12875,37 +19299,49 @@ MT safe. - a #GstElement to query + a #GstElement to query - Performs a query on the given element. + Performs a query on the given element. For elements that don't implement a query handler, this function forwards the query to a random srcpad or to the peer of a random linked sinkpad of this element. Please note that some queries might need a running pipeline to work. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. MT safe. - a #GstElement to perform the query on. + a #GstElement to perform the query on. - the #GstQuery. + the #GstQuery. + @@ -12919,30 +19355,41 @@ MT safe. - Retrieves a request pad from the element according to the provided template. + Retrieves a request pad from the element according to the provided template. Pad templates can be looked up using gst_element_factory_get_static_pad_templates(). The pad should be released with gst_element_release_request_pad(). + - requested #GstPad if found, + requested #GstPad if found, otherwise %NULL. Release after usage. - a #GstElement to find a request pad of. + a #GstElement to find a request pad of. - a #GstPadTemplate of which we want a pad of. + a #GstPadTemplate of which we want a pad of. - the name of the request #GstPad + the name of the request #GstPad to retrieve. Can be %NULL. @@ -12950,14 +19397,18 @@ to retrieve. Can be %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - the caps of the pad we want to + the caps of the pad we want to request. Can be %NULL. - Sends an event to an element. If the element doesn't implement an + Sends an event to an element. If the element doesn't implement an event handler, the event will be pushed on a random linked sink pad for downstream events or a random linked source pad for upstream events. @@ -12965,50 +19416,69 @@ This function takes ownership of the provided event so you should gst_event_ref() it if you want to reuse the event after this call. MT safe. + - %TRUE if the event was handled. Events that trigger a preroll (such + %TRUE if the event was handled. Events that trigger a preroll (such as flushing seeks and steps) will emit %GST_MESSAGE_ASYNC_DONE. - a #GstElement to send the event to. + a #GstElement to send the event to. - the #GstEvent to send to the element. + the #GstEvent to send to the element. - Sets the bus of the element. Increases the refcount on the bus. + Sets the bus of the element. Increases the refcount on the bus. For internal use only, unless you're testing elements. MT safe. + - a #GstElement to set the bus of. + a #GstElement to set the bus of. - the #GstBus to set. + the #GstBus to set. - Sets the clock for the element. This function increases the + Sets the clock for the element. This function increases the refcount on the clock. Any previously set clock on the object is unreffed. + - %TRUE if the element accepted the clock. An element can refuse a + %TRUE if the element accepted the clock. An element can refuse a clock when it, for example, is not able to slave its internal clock to the @clock or when it requires a specific clock to operate. @@ -13017,38 +19487,51 @@ MT safe. - a #GstElement to set the clock for. + a #GstElement to set the clock for. - the #GstClock to set for the element. + the #GstClock to set for the element. - Sets the context of the element. Increases the refcount of the context. + Sets the context of the element. Increases the refcount of the context. MT safe. + - a #GstElement to set the context of. + a #GstElement to set the context of. - the #GstContext to set. + the #GstContext to set. - Sets the state of the element. This function will try to set the + Sets the state of the element. This function will try to set the requested state by going through all the intermediary states and calling the class's state change function for each. @@ -13061,24 +19544,32 @@ of the state change or it can wait for a %GST_MESSAGE_ASYNC_DONE or State changes to %GST_STATE_READY or %GST_STATE_NULL never return #GST_STATE_CHANGE_ASYNC. + - Result of the state change using #GstStateChangeReturn. + Result of the state change using #GstStateChangeReturn. MT safe. - a #GstElement to change state of. + a #GstElement to change state of. - the element's new #GstState. + the element's new #GstState. + @@ -13098,25 +19589,32 @@ MT safe. - Abort the state change of the element. This function is used + Abort the state change of the element. This function is used by elements that do asynchronous state changes and find out something is wrong. This function should be called with the STATE_LOCK held. MT safe. + - a #GstElement to abort the state of. + a #GstElement to abort the state of. - Adds a pad (link point) to @element. @pad's parent will be set to @element; + Adds a pad (link point) to @element. @pad's parent will be set to @element; see gst_object_set_parent() for refcounting information. Pads are automatically activated when added in the PAUSED or PLAYING @@ -13125,8 +19623,11 @@ state. The pad and the element should be unlocked when calling this function. This function will emit the #GstElement::pad-added signal on the element. + - %TRUE if the pad could be added. This function can fail when + %TRUE if the pad could be added. This function can fail when a pad with the same name already existed or the pad already had another parent. @@ -13135,11 +19636,15 @@ MT safe. - a #GstElement to add the pad to. + a #GstElement to add the pad to. - the #GstPad to add to the element. + the #GstPad to add to the element. @@ -13147,26 +19652,35 @@ MT safe. + - a watch id, which can be used in connection with + a watch id, which can be used in connection with gst_element_remove_property_notify_watch() to remove the watch again. - a #GstElement to watch (recursively) for property changes + a #GstElement to watch (recursively) for property changes - name of property to watch for changes, or + name of property to watch for changes, or NULL to watch all properties - whether to include the new property value in the message + whether to include the new property value in the message @@ -13174,26 +19688,35 @@ MT safe. + - a watch id, which can be used in connection with + a watch id, which can be used in connection with gst_element_remove_property_notify_watch() to remove the watch again. - a #GstElement to watch for property changes + a #GstElement to watch for property changes - name of property to watch for changes, or + name of property to watch for changes, or NULL to watch all properties - whether to include the new property value in the message + whether to include the new property value in the message @@ -13201,7 +19724,9 @@ MT safe. - Calls @func from another thread and passes @user_data to it. This is to be + Calls @func from another thread and passes @user_data to it. This is to be used for cases when a state change has to be performed from a streaming thread, directly via gst_element_set_state() or indirectly e.g. via SEEK events. @@ -13211,12 +19736,15 @@ deadlocks in many situations, as they might involve waiting for the streaming thread to shut down from this very streaming thread. MT safe. + - a #GstElement + a #GstElement scope="notified" closure="1" destroy="2"> - Function to call asynchronously from another thread + Function to call asynchronously from another thread @@ -13232,39 +19762,54 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - Data to pass to @func + Data to pass to @func - GDestroyNotify for @user_data + GDestroyNotify for @user_data - Perform @transition on @element. + Perform @transition on @element. This function must be called with STATE_LOCK held and is mainly used internally. + - the #GstStateChangeReturn of the state transition. + the #GstStateChangeReturn of the state transition. - a #GstElement + a #GstElement - the requested transition + the requested transition - Commit the state change of the element and proceed to the next + Commit the state change of the element and proceed to the next pending state if any. This function is used by elements that do asynchronous state changes. The core will normally call this method automatically when an @@ -13277,34 +19822,46 @@ This method is used internally and should normally not be called by plugins or applications. This function must be called with STATE_LOCK held. + - The result of the commit state change. + The result of the commit state change. MT safe. - a #GstElement to continue the state change of. + a #GstElement to continue the state change of. - The previous state return value + The previous state return value - Creates a pad for each pad template that is always available. + Creates a pad for each pad template that is always available. This function is only useful during object initialization of subclasses of #GstElement. + - a #GstElement to create pads for + a #GstElement to create pads for @@ -13312,27 +19869,36 @@ subclasses of #GstElement. - Call @func with @user_data for each of @element's pads. @func will be called + Call @func with @user_data for each of @element's pads. @func will be called exactly once for each pad that exists at the time of this call, unless one of the calls to @func returns %FALSE in which case we will stop iterating pads and return early. If new pads are added or pads are removed while pads are being iterated, this will not be taken into account until next time this function is used. + - %FALSE if @element had no pads or if one of the calls to @func + %FALSE if @element had no pads or if one of the calls to @func returned %FALSE. - a #GstElement to iterate pads of + a #GstElement to iterate pads of - function to call for each pad + function to call for each pad @@ -13340,7 +19906,9 @@ next time this function is used. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to @func + user data passed to @func @@ -13348,27 +19916,36 @@ next time this function is used. - Call @func with @user_data for each of @element's sink pads. @func will be + Call @func with @user_data for each of @element's sink pads. @func will be called exactly once for each sink pad that exists at the time of this call, unless one of the calls to @func returns %FALSE in which case we will stop iterating pads and return early. If new sink pads are added or sink pads are removed while the sink pads are being iterated, this will not be taken into account until next time this function is used. + - %FALSE if @element had no sink pads or if one of the calls to @func + %FALSE if @element had no sink pads or if one of the calls to @func returned %FALSE. - a #GstElement to iterate sink pads of + a #GstElement to iterate sink pads of - function to call for each sink pad + function to call for each sink pad @@ -13376,7 +19953,9 @@ into account until next time this function is used. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to @func + user data passed to @func @@ -13384,27 +19963,36 @@ into account until next time this function is used. - Call @func with @user_data for each of @element's source pads. @func will be + Call @func with @user_data for each of @element's source pads. @func will be called exactly once for each source pad that exists at the time of this call, unless one of the calls to @func returns %FALSE in which case we will stop iterating pads and return early. If new source pads are added or source pads are removed while the source pads are being iterated, this will not be taken into account until next time this function is used. + - %FALSE if @element had no source pads or if one of the calls + %FALSE if @element had no source pads or if one of the calls to @func returned %FALSE. - a #GstElement to iterate source pads of + a #GstElement to iterate source pads of - function to call for each source pad + function to call for each source pad @@ -13412,34 +20000,48 @@ into account until next time this function is used. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to @func + user data passed to @func - Returns the base time of the element. The base time is the + Returns the base time of the element. The base time is the absolute time of the clock when this element was last put to PLAYING. Subtracting the base time from the clock time gives the running time of the element. + - the base time of the element. + the base time of the element. MT safe. - a #GstElement. + a #GstElement. - Returns the bus of the element. Note that only a #GstPipeline will provide a + Returns the bus of the element. Note that only a #GstPipeline will provide a bus for the application. + - the element's #GstBus. unref after + the element's #GstBus. unref after usage. MT safe. @@ -13447,79 +20049,108 @@ MT safe. - a #GstElement to get the bus of. + a #GstElement to get the bus of. - Gets the currently configured clock of the element. This is the clock as was + Gets the currently configured clock of the element. This is the clock as was last set with gst_element_set_clock(). Elements in a pipeline will only have their clock set when the pipeline is in the PLAYING state. + - the #GstClock of the element. unref after usage. + the #GstClock of the element. unref after usage. MT safe. - a #GstElement to get the clock of. + a #GstElement to get the clock of. - Looks for an unlinked pad to which the given pad can link. It is not + Looks for an unlinked pad to which the given pad can link. It is not guaranteed that linking the pads will work, though it should work in most cases. This function will first attempt to find a compatible unlinked ALWAYS pad, and if none can be found, it will request a compatible REQUEST pad by looking at the templates of @element. + - the #GstPad to which a link + the #GstPad to which a link can be made, or %NULL if one cannot be found. gst_object_unref() after usage. - a #GstElement in which the pad should be found. + a #GstElement in which the pad should be found. - the #GstPad to find a compatible one for. + the #GstPad to find a compatible one for. - the #GstCaps to use as a filter. + the #GstCaps to use as a filter. - Retrieves a pad template from @element that is compatible with @compattempl. + Retrieves a pad template from @element that is compatible with @compattempl. Pads from compatible templates can be linked together. + - a compatible #GstPadTemplate, + a compatible #GstPadTemplate, or %NULL if none was found. No unreferencing is necessary. - a #GstElement to get a compatible pad template for + a #GstElement to get a compatible pad template for - the #GstPadTemplate to find a compatible + the #GstPadTemplate to find a compatible template for @@ -13528,20 +20159,29 @@ Pads from compatible templates can be linked together. - Gets the context with @context_type set on the element or NULL. + Gets the context with @context_type set on the element or NULL. MT safe. + - A #GstContext or NULL + A #GstContext or NULL - a #GstElement to get the context of. + a #GstElement to get the context of. - a name of a context to retrieve + a name of a context to retrieve @@ -13549,18 +20189,27 @@ MT safe. - Gets the context with @context_type set on the element or NULL. + Gets the context with @context_type set on the element or NULL. + - A #GstContext or NULL + A #GstContext or NULL - a #GstElement to get the context of. + a #GstElement to get the context of. - a name of a context to retrieve + a name of a context to retrieve @@ -13568,32 +20217,46 @@ MT safe. - Gets the contexts set on the element. + Gets the contexts set on the element. MT safe. + - List of #GstContext + List of #GstContext - a #GstElement to set the context of. + a #GstElement to set the context of. - Retrieves the factory that was used to create this element. + Retrieves the factory that was used to create this element. + - the #GstElementFactory used for creating this + the #GstElementFactory used for creating this element or %NULL if element has not been registered (static element). no refcounting is needed. - a #GstElement to request the element factory of. + a #GstElement to request the element factory of. @@ -13601,18 +20264,27 @@ MT safe. - Get metadata with @key in @klass. + Get metadata with @key in @klass. + - the metadata for @key. + the metadata for @key. - class to get metadata for + class to get metadata for - the key to get + the key to get @@ -13620,20 +20292,29 @@ MT safe. - Retrieves a padtemplate from @element with the given name. + Retrieves a padtemplate from @element with the given name. + - the #GstPadTemplate with the + the #GstPadTemplate with the given name, or %NULL if none was found. No unreferencing is necessary. - a #GstElement to get the pad template of. + a #GstElement to get the pad template of. - the name of the #GstPadTemplate to get. + the name of the #GstPadTemplate to get. @@ -13641,10 +20322,15 @@ MT safe. - Retrieves a list of the pad templates associated with @element. The + Retrieves a list of the pad templates associated with @element. The list must not be modified by the calling code. + - the #GList of + the #GList of pad templates. @@ -13652,57 +20338,77 @@ list must not be modified by the calling code. - a #GstElement to get pad templates of. + a #GstElement to get pad templates of. - Retrieves a pad from the element by name (e.g. "src_\%d"). This version only + Retrieves a pad from the element by name (e.g. "src_\%d"). This version only retrieves request pads. The pad should be released with gst_element_release_request_pad(). This method is slower than manually getting the pad template and calling gst_element_request_pad() if the pads should have a specific name (e.g. @name is "src_1" instead of "src_\%u"). + - requested #GstPad if found, + requested #GstPad if found, otherwise %NULL. Release after usage. - a #GstElement to find a request pad of. + a #GstElement to find a request pad of. - the name of the request #GstPad to retrieve. + the name of the request #GstPad to retrieve. - Returns the start time of the element. The start time is the + Returns the start time of the element. The start time is the running time of the clock when this element was last put to PAUSED. Usually the start_time is managed by a toplevel element such as #GstPipeline. MT safe. + - the start time of the element. + the start time of the element. - a #GstElement. + a #GstElement. - Gets the state of the element. + Gets the state of the element. For elements that performed an ASYNC state change, as reported by gst_element_set_state(), this function will block up to the @@ -13722,8 +20428,11 @@ This mostly happens for live sources that only produce data in some sink elements might not be able to complete their state change because an element is not producing data to complete the preroll. When setting the element to playing, the preroll will complete and playback will start. + - %GST_STATE_CHANGE_SUCCESS if the element has no more pending state + %GST_STATE_CHANGE_SUCCESS if the element has no more pending state and the last state change succeeded, %GST_STATE_CHANGE_ASYNC if the element is still performing a state change or %GST_STATE_CHANGE_FAILURE if the last state change failed. @@ -13733,7 +20442,9 @@ MT safe. - a #GstElement to get the state of. + a #GstElement to get the state of. transfer-ownership="full" optional="1" allow-none="1"> - a pointer to #GstState to hold the state. + a pointer to #GstState to hold the state. Can be %NULL. @@ -13752,22 +20465,31 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - a pointer to #GstState to hold the pending + a pointer to #GstState to hold the pending state. Can be %NULL. - a #GstClockTime to specify the timeout for an async + a #GstClockTime to specify the timeout for an async state change or %GST_CLOCK_TIME_NONE for infinite timeout. - Retrieves a pad from @element by name. This version only retrieves + Retrieves a pad from @element by name. This version only retrieves already-existing (i.e. 'static') pads. + - the requested #GstPad if + the requested #GstPad if found, otherwise %NULL. unref after usage. MT safe. @@ -13775,95 +20497,129 @@ MT safe. - a #GstElement to find a static pad of. + a #GstElement to find a static pad of. - the name of the static #GstPad to retrieve. + the name of the static #GstPad to retrieve. - Checks if the state of an element is locked. + Checks if the state of an element is locked. If the state of an element is locked, state changes of the parent don't affect the element. This way you can leave currently unused elements inside bins. Just lock their state before changing the state from #GST_STATE_NULL. MT safe. + - %TRUE, if the element's state is locked. + %TRUE, if the element's state is locked. - a #GstElement. + a #GstElement. - Retrieves an iterator of @element's pads. The iterator should + Retrieves an iterator of @element's pads. The iterator should be freed after usage. Also more specialized iterators exists such as gst_element_iterate_src_pads() or gst_element_iterate_sink_pads(). The order of pads returned by the iterator will be the order in which the pads were added to the element. + - the #GstIterator of #GstPad. + the #GstIterator of #GstPad. MT safe. - a #GstElement to iterate pads of. + a #GstElement to iterate pads of. - Retrieves an iterator of @element's sink pads. + Retrieves an iterator of @element's sink pads. The order of pads returned by the iterator will be the order in which the pads were added to the element. + - the #GstIterator of #GstPad. + the #GstIterator of #GstPad. MT safe. - a #GstElement. + a #GstElement. - Retrieves an iterator of @element's source pads. + Retrieves an iterator of @element's source pads. The order of pads returned by the iterator will be the order in which the pads were added to the element. + - the #GstIterator of #GstPad. + the #GstIterator of #GstPad. MT safe. - a #GstElement. + a #GstElement. - Links @src to @dest. The link must be from source to + Links @src to @dest. The link must be from source to destination; the other direction will not be tried. The function looks for existing pads that aren't linked yet. It will request new pads if necessary. Such pads need to be released manually when unlinking. @@ -13871,23 +20627,32 @@ If multiple links are possible, only one is established. Make sure you have added your elements to a bin or pipeline with gst_bin_add() before trying to link them. + - %TRUE if the elements could be linked, %FALSE otherwise. + %TRUE if the elements could be linked, %FALSE otherwise. - a #GstElement containing the source pad. + a #GstElement containing the source pad. - the #GstElement containing the destination pad. + the #GstElement containing the destination pad. - Links @src to @dest using the given caps as filtercaps. + Links @src to @dest using the given caps as filtercaps. The link must be from source to destination; the other direction will not be tried. The function looks for existing pads that aren't linked yet. It will request new pads if necessary. @@ -13895,24 +20660,33 @@ If multiple links are possible, only one is established. Make sure you have added your elements to a bin or pipeline with gst_bin_add() before trying to link them. + - %TRUE if the pads could be linked, %FALSE otherwise. + %TRUE if the pads could be linked, %FALSE otherwise. - a #GstElement containing the source pad. + a #GstElement containing the source pad. - the #GstElement containing the destination pad. + the #GstElement containing the destination pad. - the #GstCaps to filter the link, + the #GstCaps to filter the link, or %NULL for no filter. @@ -13921,59 +20695,83 @@ gst_bin_add() before trying to link them. - Chain together a series of elements. Uses gst_element_link(). + Chain together a series of elements. Uses gst_element_link(). Make sure you have added your elements to a bin or pipeline with gst_bin_add() before trying to link them. + - %TRUE on success, %FALSE otherwise. + %TRUE on success, %FALSE otherwise. - the first #GstElement in the link chain. + the first #GstElement in the link chain. - the second #GstElement in the link chain. + the second #GstElement in the link chain. - the %NULL-terminated list of elements to link in order. + the %NULL-terminated list of elements to link in order. - Links the two named pads of the source and destination elements. + Links the two named pads of the source and destination elements. Side effect is that if one of the pads has no parent, it becomes a child of the parent of the other element. If they have different parents, the link fails. + - %TRUE if the pads could be linked, %FALSE otherwise. + %TRUE if the pads could be linked, %FALSE otherwise. - a #GstElement containing the source pad. + a #GstElement containing the source pad. - the name of the #GstPad in source element + the name of the #GstPad in source element or %NULL for any pad. - the #GstElement containing the destination pad. + the #GstElement containing the destination pad. - the name of the #GstPad in destination element, + the name of the #GstPad in destination element, or %NULL for any pad. @@ -13981,36 +20779,49 @@ or %NULL for any pad. - Links the two named pads of the source and destination elements. Side effect + Links the two named pads of the source and destination elements. Side effect is that if one of the pads has no parent, it becomes a child of the parent of the other element. If they have different parents, the link fails. If @caps is not %NULL, makes sure that the caps of the link is a subset of @caps. + - %TRUE if the pads could be linked, %FALSE otherwise. + %TRUE if the pads could be linked, %FALSE otherwise. - a #GstElement containing the source pad. + a #GstElement containing the source pad. - the name of the #GstPad in source element + the name of the #GstPad in source element or %NULL for any pad. - the #GstElement containing the destination pad. + the #GstElement containing the destination pad. - the name of the #GstPad in destination element + the name of the #GstPad in destination element or %NULL for any pad. @@ -14018,14 +20829,18 @@ is not %NULL, makes sure that the caps of the link is a subset of @caps. transfer-ownership="none" nullable="1" allow-none="1"> - the #GstCaps to filter the link, + the #GstCaps to filter the link, or %NULL for no filter. - Links the two named pads of the source and destination elements. + Links the two named pads of the source and destination elements. Side effect is that if one of the pads has no parent, it becomes a child of the parent of the other element. If they have different parents, the link fails. @@ -14035,43 +20850,58 @@ is the same as calling gst_element_link_pads() and the recommended way of linking pads with safety checks applied. This is a convenience function for gst_pad_link_full(). + - %TRUE if the pads could be linked, %FALSE otherwise. + %TRUE if the pads could be linked, %FALSE otherwise. - a #GstElement containing the source pad. + a #GstElement containing the source pad. - the name of the #GstPad in source element + the name of the #GstPad in source element or %NULL for any pad. - the #GstElement containing the destination pad. + the #GstElement containing the destination pad. - the name of the #GstPad in destination element, + the name of the #GstPad in destination element, or %NULL for any pad. - the #GstPadLinkCheck to be performed when linking pads. + the #GstPadLinkCheck to be performed when linking pads. - Brings the element to the lost state. The current state of the + Brings the element to the lost state. The current state of the element is copied to the pending state so that any call to gst_element_get_state() will return %GST_STATE_CHANGE_ASYNC. @@ -14087,48 +20917,64 @@ not in error or an async state change. This function is used internally and should normally not be called from plugins or applications. + - a #GstElement the state is lost of + a #GstElement the state is lost of - Post an error, warning or info message on the bus from inside an element. + Post an error, warning or info message on the bus from inside an element. @type must be of #GST_MESSAGE_ERROR, #GST_MESSAGE_WARNING or #GST_MESSAGE_INFO. MT safe. + - a #GstElement to send message from + a #GstElement to send message from - the #GstMessageType + the #GstMessageType - the GStreamer GError domain this message belongs to + the GStreamer GError domain this message belongs to - the GError code belonging to the domain + the GError code belonging to the domain - an allocated text string to be used + an allocated text string to be used as a replacement for the default message connected to code, or %NULL @@ -14137,21 +20983,29 @@ MT safe. transfer-ownership="full" nullable="1" allow-none="1"> - an allocated debug message to be + an allocated debug message to be used as a replacement for the default debugging information, or %NULL - the source code file where the error was generated + the source code file where the error was generated - the source code function where the error was generated + the source code function where the error was generated - the source code line where the error was generated + the source code line where the error was generated @@ -14159,35 +21013,48 @@ MT safe. - Post an error, warning or info message on the bus from inside an element. + Post an error, warning or info message on the bus from inside an element. @type must be of #GST_MESSAGE_ERROR, #GST_MESSAGE_WARNING or #GST_MESSAGE_INFO. + - a #GstElement to send message from + a #GstElement to send message from - the #GstMessageType + the #GstMessageType - the GStreamer GError domain this message belongs to + the GStreamer GError domain this message belongs to - the GError code belonging to the domain + the GError code belonging to the domain - an allocated text string to be used + an allocated text string to be used as a replacement for the default message connected to code, or %NULL @@ -14196,31 +21063,43 @@ MT safe. transfer-ownership="full" nullable="1" allow-none="1"> - an allocated debug message to be + an allocated debug message to be used as a replacement for the default debugging information, or %NULL - the source code file where the error was generated + the source code file where the error was generated - the source code function where the error was generated + the source code function where the error was generated - the source code line where the error was generated + the source code line where the error was generated - optional details structure + optional details structure - Use this function to signal that the element does not expect any more pads + Use this function to signal that the element does not expect any more pads to show up in the current pipeline. This function should be called whenever pads have been added by the element itself. Elements with #GST_PAD_SOMETIMES pad templates use this in combination with autopluggers to figure out that @@ -14229,22 +21108,30 @@ the element is done initializing its pads. This function emits the #GstElement::no-more-pads signal. MT safe. + - a #GstElement + a #GstElement - Post a message on the element's #GstBus. This function takes ownership of the + Post a message on the element's #GstBus. This function takes ownership of the message; if you want to access the message after this call, you should add an additional reference before calling. + - %TRUE if the message was successfully posted. The function returns + %TRUE if the message was successfully posted. The function returns %FALSE if the element did not have a bus. MT safe. @@ -14252,21 +21139,30 @@ MT safe. - a #GstElement posting the message + a #GstElement posting the message - a #GstMessage to post + a #GstMessage to post - Get the clock provided by the given element. + Get the clock provided by the given element. > An element is only required to provide a clock in the PAUSED > state. Some elements can provide a clock in other states. + - the GstClock provided by the + the GstClock provided by the element or %NULL if no clock could be provided. Unref after usage. MT safe. @@ -14274,70 +21170,98 @@ MT safe. - a #GstElement to query + a #GstElement to query - Performs a query on the given element. + Performs a query on the given element. For elements that don't implement a query handler, this function forwards the query to a random srcpad or to the peer of a random linked sinkpad of this element. Please note that some queries might need a running pipeline to work. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. MT safe. - a #GstElement to perform the query on. + a #GstElement to perform the query on. - the #GstQuery. + the #GstQuery. - Queries an element to convert @src_val in @src_format to @dest_format. + Queries an element to convert @src_val in @src_format to @dest_format. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - a #GstElement to invoke the convert query on. + a #GstElement to invoke the convert query on. - a #GstFormat to convert from. + a #GstFormat to convert from. - a value to convert. + a value to convert. - the #GstFormat to convert to. + the #GstFormat to convert to. - a pointer to the result. + a pointer to the result. - Queries an element (usually top-level pipeline or playbin element) for the + Queries an element (usually top-level pipeline or playbin element) for the total stream duration in nanoseconds. This query will only work once the pipeline is prerolled (i.e. reached PAUSED or PLAYING state). The application will receive an ASYNC_DONE message on the pipeline bus when that is the case. @@ -14345,17 +21269,24 @@ will receive an ASYNC_DONE message on the pipeline bus when that is the case. If the duration changes for some reason, you will get a DURATION_CHANGED message on the pipeline bus, in which case you should re-query the duration using this function. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - a #GstElement to invoke the duration query on. + a #GstElement to invoke the duration query on. - the #GstFormat requested + the #GstFormat requested transfer-ownership="full" optional="1" allow-none="1"> - A location in which to store the total duration, or %NULL. + A location in which to store the total duration, or %NULL. - Queries an element (usually top-level pipeline or playbin element) for the + Queries an element (usually top-level pipeline or playbin element) for the stream position in nanoseconds. This will be a value between 0 and the stream duration (if the stream duration is known). This query will usually only work once the pipeline is prerolled (i.e. reached PAUSED or PLAYING @@ -14379,17 +21314,24 @@ bus when that is the case. If one repeatedly calls this function one can also create a query and reuse it in gst_element_query(). + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - a #GstElement to invoke the position query on. + a #GstElement to invoke the position query on. - the #GstFormat requested + the #GstFormat requested transfer-ownership="full" optional="1" allow-none="1"> - a location in which to store the current + a location in which to store the current position, or %NULL. @@ -14406,7 +21350,9 @@ it in gst_element_query(). - Makes the element free the previously requested pad as obtained + Makes the element free the previously requested pad as obtained with gst_element_request_pad(). This does not unref the pad. If the pad was created by using @@ -14414,22 +21360,29 @@ gst_element_request_pad(), gst_element_release_request_pad() needs to be followed by gst_object_unref() to free the @pad. MT safe. + - a #GstElement to release the request pad of. + a #GstElement to release the request pad of. - the #GstPad to release. + the #GstPad to release. - Removes @pad from @element. @pad will be destroyed if it has not been + Removes @pad from @element. @pad will be destroyed if it has not been referenced elsewhere using gst_object_unparent(). This function is used by plugin developers and should not be used @@ -14445,8 +21398,11 @@ deactivating pads. The pad and the element should be unlocked when calling this function. This function will emit the #GstElement::pad-removed signal on the element. + - %TRUE if the pad could be removed. Can return %FALSE if the + %TRUE if the pad could be removed. Can return %FALSE if the pad does not belong to the provided element. MT safe. @@ -14454,11 +21410,15 @@ MT safe. - a #GstElement to remove pad from. + a #GstElement to remove pad from. - the #GstPad to remove from the element. + the #GstPad to remove from the element. @@ -14466,45 +21426,61 @@ MT safe. + - a #GstElement being watched for property changes + a #GstElement being watched for property changes - watch id to remove + watch id to remove - Retrieves a request pad from the element according to the provided template. + Retrieves a request pad from the element according to the provided template. Pad templates can be looked up using gst_element_factory_get_static_pad_templates(). The pad should be released with gst_element_release_request_pad(). + - requested #GstPad if found, + requested #GstPad if found, otherwise %NULL. Release after usage. - a #GstElement to find a request pad of. + a #GstElement to find a request pad of. - a #GstPadTemplate of which we want a pad of. + a #GstPadTemplate of which we want a pad of. - the name of the request #GstPad + the name of the request #GstPad to retrieve. Can be %NULL. @@ -14512,60 +21488,85 @@ to retrieve. Can be %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - the caps of the pad we want to + the caps of the pad we want to request. Can be %NULL. - Sends a seek event to an element. See gst_event_new_seek() for the details of + Sends a seek event to an element. See gst_event_new_seek() for the details of the parameters. The seek event is sent to the element using gst_element_send_event(). MT safe. + - %TRUE if the event was handled. Flushing seeks will trigger a + %TRUE if the event was handled. Flushing seeks will trigger a preroll, which will emit %GST_MESSAGE_ASYNC_DONE. - a #GstElement to send the event to. + a #GstElement to send the event to. - The new playback rate + The new playback rate - The format of the seek values + The format of the seek values - The optional seek flags. + The optional seek flags. - The type and flags for the new start position + The type and flags for the new start position - The value of the new start position + The value of the new start position - The type and flags for the new stop position + The type and flags for the new stop position - The value of the new stop position + The value of the new stop position - Simple API to perform a seek on the given element, meaning it just seeks + Simple API to perform a seek on the given element, meaning it just seeks to the given position relative to the start of the stream. For more complex operations like segment seeks (e.g. for looping) or changing the playback rate or seeking relative to the last configured playback segment you should @@ -14579,27 +21580,38 @@ Some elements allow for seeking in the READY state, in this case they will store the seek event and execute it when they are put to PAUSED. If the element supports seek in READY, it will always return %TRUE when it receives the event in the READY state. + - %TRUE if the seek operation succeeded. Flushing seeks will trigger a + %TRUE if the seek operation succeeded. Flushing seeks will trigger a preroll, which will emit %GST_MESSAGE_ASYNC_DONE. - a #GstElement to seek on + a #GstElement to seek on - a #GstFormat to execute the seek in, such as #GST_FORMAT_TIME + a #GstFormat to execute the seek in, such as #GST_FORMAT_TIME - seek options; playback applications will usually want to use + seek options; playback applications will usually want to use GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_KEY_UNIT here - position to seek to (relative to the start); if you are doing + position to seek to (relative to the start); if you are doing a seek in #GST_FORMAT_TIME this value is in nanoseconds - multiply with #GST_SECOND to convert seconds to nanoseconds or with #GST_MSECOND to convert milliseconds to nanoseconds. @@ -14608,7 +21620,9 @@ preroll, which will emit %GST_MESSAGE_ASYNC_DONE. - Sends an event to an element. If the element doesn't implement an + Sends an event to an element. If the element doesn't implement an event handler, the event will be pushed on a random linked sink pad for downstream events or a random linked source pad for upstream events. @@ -14616,68 +21630,94 @@ This function takes ownership of the provided event so you should gst_event_ref() it if you want to reuse the event after this call. MT safe. + - %TRUE if the event was handled. Events that trigger a preroll (such + %TRUE if the event was handled. Events that trigger a preroll (such as flushing seeks and steps) will emit %GST_MESSAGE_ASYNC_DONE. - a #GstElement to send the event to. + a #GstElement to send the event to. - the #GstEvent to send to the element. + the #GstEvent to send to the element. - Set the base time of an element. See gst_element_get_base_time(). + Set the base time of an element. See gst_element_get_base_time(). MT safe. + - a #GstElement. + a #GstElement. - the base time to set. + the base time to set. - Sets the bus of the element. Increases the refcount on the bus. + Sets the bus of the element. Increases the refcount on the bus. For internal use only, unless you're testing elements. MT safe. + - a #GstElement to set the bus of. + a #GstElement to set the bus of. - the #GstBus to set. + the #GstBus to set. - Sets the clock for the element. This function increases the + Sets the clock for the element. This function increases the refcount on the clock. Any previously set clock on the object is unreffed. + - %TRUE if the element accepted the clock. An element can refuse a + %TRUE if the element accepted the clock. An element can refuse a clock when it, for example, is not able to slave its internal clock to the @clock or when it requires a specific clock to operate. @@ -14686,39 +21726,52 @@ MT safe. - a #GstElement to set the clock for. + a #GstElement to set the clock for. - the #GstClock to set for the element. + the #GstClock to set for the element. - Sets the context of the element. Increases the refcount of the context. + Sets the context of the element. Increases the refcount of the context. MT safe. + - a #GstElement to set the context of. + a #GstElement to set the context of. - the #GstContext to set. + the #GstContext to set. - Locks the state of an element, so state changes of the parent don't affect + Locks the state of an element, so state changes of the parent don't affect this element anymore. Note that this is racy if the state lock of the parent bin is not taken. @@ -14726,24 +21779,33 @@ The parent bin might've just checked the flag in another thread and as the next step proceed to change the child element's state. MT safe. + - %TRUE if the state was changed, %FALSE if bad parameters were given + %TRUE if the state was changed, %FALSE if bad parameters were given or the elements state-locking needed no change. - a #GstElement + a #GstElement - %TRUE to lock the element's state + %TRUE to lock the element's state - Set the start time of an element. The start time of the element is the + Set the start time of an element. The start time of the element is the running time of the element when it last went to the PAUSED state. In READY or after a flushing seek, it is set to 0. @@ -14755,22 +21817,29 @@ itself, for example if you want to synchronize capture from multiple pipelines, and you can also ensure that the pipelines have the same clock. MT safe. + - a #GstElement. + a #GstElement. - the base time to set. + the base time to set. - Sets the state of the element. This function will try to set the + Sets the state of the element. This function will try to set the requested state by going through all the intermediary states and calling the class's state change function for each. @@ -14783,56 +21852,77 @@ of the state change or it can wait for a %GST_MESSAGE_ASYNC_DONE or State changes to %GST_STATE_READY or %GST_STATE_NULL never return #GST_STATE_CHANGE_ASYNC. + - Result of the state change using #GstStateChangeReturn. + Result of the state change using #GstStateChangeReturn. MT safe. - a #GstElement to change state of. + a #GstElement to change state of. - the element's new #GstState. + the element's new #GstState. - Tries to change the state of the element to the same as its parent. + Tries to change the state of the element to the same as its parent. If this function returns %FALSE, the state of element is undefined. + - %TRUE, if the element's state could be synced to the parent's state. + %TRUE, if the element's state could be synced to the parent's state. MT safe. - a #GstElement. + a #GstElement. - Unlinks all source pads of the source element with all sink pads + Unlinks all source pads of the source element with all sink pads of the sink element to which they are linked. If the link has been made using gst_element_link(), it could have created an requestpad, which has to be released using gst_element_release_request_pad(). + - the source #GstElement to unlink. + the source #GstElement to unlink. - the sink #GstElement to unlink. + the sink #GstElement to unlink. @@ -14840,47 +21930,67 @@ requestpad, which has to be released using gst_element_release_request_pad(). - Unlinks a series of elements. Uses gst_element_unlink(). + Unlinks a series of elements. Uses gst_element_unlink(). + - the first #GstElement in the link chain. + the first #GstElement in the link chain. - the second #GstElement in the link chain. + the second #GstElement in the link chain. - the %NULL-terminated list of elements to unlink in order. + the %NULL-terminated list of elements to unlink in order. - Unlinks the two named pads of the source and destination elements. + Unlinks the two named pads of the source and destination elements. This is a convenience function for gst_pad_unlink(). + - a (transfer none): #GstElement containing the source pad. + a (transfer none): #GstElement containing the source pad. - the name of the #GstPad in source element. + the name of the #GstPad in source element. - a #GstElement containing the destination pad. + a #GstElement containing the destination pad. - the name of the #GstPad in destination element. + the name of the #GstPad in destination element. @@ -14889,107 +21999,149 @@ This is a convenience function for gst_pad_unlink(). - Used to serialize execution of gst_element_set_state() + Used to serialize execution of gst_element_set_state() - Used to signal completion of a state change + Used to signal completion of a state change - Used to detect concurrent execution of + Used to detect concurrent execution of gst_element_set_state() and gst_element_get_state() - the target state of an element as set by the application + the target state of an element as set by the application - the current state of an element + the current state of an element - the next state of an element, can be #GST_STATE_VOID_PENDING if + the next state of an element, can be #GST_STATE_VOID_PENDING if the element is in the correct state. - the final state the element should go to, can be + the final state the element should go to, can be #GST_STATE_VOID_PENDING if the element is in the correct state - the last return value of an element state change + the last return value of an element state change - the bus of the element. This bus is provided to the element by the + the bus of the element. This bus is provided to the element by the parent element or the application. A #GstPipeline has a bus of its own. - the clock of the element. This clock is usually provided to the + the clock of the element. This clock is usually provided to the element by the toplevel #GstPipeline. - the time of the clock right before the element is set to + the time of the clock right before the element is set to PLAYING. Subtracting @base_time from the current clock time in the PLAYING state will yield the running_time against the clock. - the running_time of the last PAUSED state + the running_time of the last PAUSED state - number of pads of the element, includes both source and sink pads. + number of pads of the element, includes both source and sink pads. - list of pads + list of pads - number of source pads of the element. + number of source pads of the element. - list of source pads + list of source pads - number of sink pads of the element. + number of sink pads of the element. - list of sink pads + list of sink pads - updated whenever the a pad is added or removed + updated whenever the a pad is added or removed - list of contexts + list of contexts - + - This signals that the element will not generate more dynamic pads. + This signals that the element will not generate more dynamic pads. Note that this signal will usually be emitted from the context of the streaming thread. @@ -14997,7 +22149,9 @@ the streaming thread. - a new #GstPad has been added to the element. Note that this signal will + a new #GstPad has been added to the element. Note that this signal will usually be emitted from the context of the streaming thread. Also keep in mind that if you add new elements to the pipeline in the signal handler you will need to set them to the desired target state with @@ -15007,25 +22161,32 @@ gst_element_set_state() or gst_element_sync_state_with_parent(). - the pad that has been added + the pad that has been added - a #GstPad has been removed from the element + a #GstPad has been removed from the element - the pad that has been removed + the pad that has been removed + @@ -15045,36 +22206,52 @@ gst_element_set_state() or gst_element_sync_state_with_parent(). - GStreamer element class. Override the vmethods to implement the element + GStreamer element class. Override the vmethods to implement the element functionality. + - the parent class structure + the parent class structure - metadata for elements of this class + metadata for elements of this class - the #GstElementFactory that creates these elements + the #GstElementFactory that creates these elements - a #GList of #GstPadTemplate + a #GList of #GstPadTemplate - the number of padtemplates + the number of padtemplates - changed whenever the padtemplates change + changed whenever the padtemplates change + @@ -15090,6 +22267,7 @@ functionality. + @@ -15105,12 +22283,15 @@ functionality. + - a #GstElement + a #GstElement @@ -15118,25 +22299,34 @@ functionality. + - requested #GstPad if found, + requested #GstPad if found, otherwise %NULL. Release after usage. - a #GstElement to find a request pad of. + a #GstElement to find a request pad of. - a #GstPadTemplate of which we want a pad of. + a #GstPadTemplate of which we want a pad of. - the name of the request #GstPad + the name of the request #GstPad to retrieve. Can be %NULL. @@ -15144,7 +22334,9 @@ to retrieve. Can be %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - the caps of the pad we want to + the caps of the pad we want to request. Can be %NULL. @@ -15153,6 +22345,7 @@ request. Can be %NULL. + @@ -15168,8 +22361,11 @@ request. Can be %NULL. + - %GST_STATE_CHANGE_SUCCESS if the element has no more pending state + %GST_STATE_CHANGE_SUCCESS if the element has no more pending state and the last state change succeeded, %GST_STATE_CHANGE_ASYNC if the element is still performing a state change or %GST_STATE_CHANGE_FAILURE if the last state change failed. @@ -15179,7 +22375,9 @@ MT safe. - a #GstElement to get the state of. + a #GstElement to get the state of. transfer-ownership="full" optional="1" allow-none="1"> - a pointer to #GstState to hold the state. + a pointer to #GstState to hold the state. Can be %NULL. @@ -15198,12 +22398,16 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - a pointer to #GstState to hold the pending + a pointer to #GstState to hold the pending state. Can be %NULL. - a #GstClockTime to specify the timeout for an async + a #GstClockTime to specify the timeout for an async state change or %GST_CLOCK_TIME_NONE for infinite timeout. @@ -15212,19 +22416,26 @@ MT safe. + - Result of the state change using #GstStateChangeReturn. + Result of the state change using #GstStateChangeReturn. MT safe. - a #GstElement to change state of. + a #GstElement to change state of. - the element's new #GstState. + the element's new #GstState. @@ -15232,17 +22443,24 @@ MT safe. + - the #GstStateChangeReturn of the state transition. + the #GstStateChangeReturn of the state transition. - a #GstElement + a #GstElement - the requested transition + the requested transition @@ -15250,6 +22468,7 @@ MT safe. + @@ -15271,19 +22490,24 @@ MT safe. + - a #GstElement to set the bus of. + a #GstElement to set the bus of. - the #GstBus to set. + the #GstBus to set. @@ -15291,8 +22515,11 @@ MT safe. + - the GstClock provided by the + the GstClock provided by the element or %NULL if no clock could be provided. Unref after usage. MT safe. @@ -15300,7 +22527,9 @@ MT safe. - a #GstElement to query + a #GstElement to query @@ -15308,8 +22537,11 @@ MT safe. + - %TRUE if the element accepted the clock. An element can refuse a + %TRUE if the element accepted the clock. An element can refuse a clock when it, for example, is not able to slave its internal clock to the @clock or when it requires a specific clock to operate. @@ -15318,14 +22550,18 @@ MT safe. - a #GstElement to set the clock for. + a #GstElement to set the clock for. - the #GstClock to set for the element. + the #GstClock to set for the element. @@ -15333,18 +22569,25 @@ MT safe. + - %TRUE if the event was handled. Events that trigger a preroll (such + %TRUE if the event was handled. Events that trigger a preroll (such as flushing seeks and steps) will emit %GST_MESSAGE_ASYNC_DONE. - a #GstElement to send the event to. + a #GstElement to send the event to. - the #GstEvent to send to the element. + the #GstEvent to send to the element. @@ -15352,19 +22595,26 @@ as flushing seeks and steps) will emit %GST_MESSAGE_ASYNC_DONE. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. MT safe. - a #GstElement to perform the query on. + a #GstElement to perform the query on. - the #GstQuery. + the #GstQuery. @@ -15372,8 +22622,11 @@ MT safe. + - %TRUE if the message was successfully posted. The function returns + %TRUE if the message was successfully posted. The function returns %FALSE if the element did not have a bus. MT safe. @@ -15381,11 +22634,15 @@ MT safe. - a #GstElement posting the message + a #GstElement posting the message - a #GstMessage to post + a #GstMessage to post @@ -15393,91 +22650,121 @@ MT safe. + - a #GstElement to set the context of. + a #GstElement to set the context of. - the #GstContext to set. + the #GstContext to set. - + - Set @key with @value as metadata in @klass. + Set @key with @value as metadata in @klass. + - class to set metadata for + class to set metadata for - the key to set + the key to set - the value to set + the value to set - Adds a padtemplate to an element class. This is mainly used in the _class_init + Adds a padtemplate to an element class. This is mainly used in the _class_init functions of classes. If a pad template with the same name as an already existing one is added the old one is replaced by the new one. @templ's reference count will be incremented, and any floating reference will be removed (see gst_object_ref_sink()) + - the #GstElementClass to add the pad template to. + the #GstElementClass to add the pad template to. - a #GstPadTemplate to add to the element class. + a #GstPadTemplate to add to the element class. - Set @key with @value as metadata in @klass. + Set @key with @value as metadata in @klass. Same as gst_element_class_add_metadata(), but @value must be a static string or an inlined string, as it will not be copied. (GStreamer plugins will be made resident once loaded, so this function can be used even from dynamically loaded plugins.) + - class to set metadata for + class to set metadata for - the key to set + the key to set - the value to set + the value to set @@ -15485,20 +22772,27 @@ dynamically loaded plugins.) - Adds a pad template to an element class based on the static pad template + Adds a pad template to an element class based on the static pad template @templ. This is mainly used in the _class_init functions of element implementations. If a pad template with the same name already exists, the old one is replaced by the new one. + - the #GstElementClass to add the pad template to. + the #GstElementClass to add the pad template to. - #GstStaticPadTemplate to add as pad template to the element class. + #GstStaticPadTemplate to add as pad template to the element class. @@ -15506,78 +22800,110 @@ the old one is replaced by the new one. - Adds a pad template to an element class based on the static pad template + Adds a pad template to an element class based on the static pad template @templ. This is mainly used in the _class_init functions of element implementations. If a pad template with the same name already exists, the old one is replaced by the new one. + - the #GstElementClass to add the pad template to. + the #GstElementClass to add the pad template to. - #GstStaticPadTemplate to add as pad template to the element class. + #GstStaticPadTemplate to add as pad template to the element class. - The #GType of the pad to create + The #GType of the pad to create - Get metadata with @key in @klass. + Get metadata with @key in @klass. + - the metadata for @key. + the metadata for @key. - class to get metadata for + class to get metadata for - the key to get + the key to get - Retrieves a padtemplate from @element_class with the given name. + Retrieves a padtemplate from @element_class with the given name. > If you use this function in the #GInstanceInitFunc of an object class > that has subclasses, make sure to pass the g_class parameter of the > #GInstanceInitFunc here. + - the #GstPadTemplate with the + the #GstPadTemplate with the given name, or %NULL if none was found. No unreferencing is necessary. - a #GstElementClass to get the pad template of. + a #GstElementClass to get the pad template of. - the name of the #GstPadTemplate to get. + the name of the #GstPadTemplate to get. - Retrieves a list of the pad templates associated with @element_class. The + Retrieves a list of the pad templates associated with @element_class. The list must not be modified by the calling code. > If you use this function in the #GInstanceInitFunc of an object class > that has subclasses, make sure to pass the g_class parameter of the > #GInstanceInitFunc here. + - the #GList of + the #GList of pad templates. @@ -15585,40 +22911,55 @@ list must not be modified by the calling code. - a #GstElementClass to get pad templates of. + a #GstElementClass to get pad templates of. - Sets the detailed information for a #GstElementClass. + Sets the detailed information for a #GstElementClass. > This function is for use in _class_init functions only. + - class to set metadata for + class to set metadata for - The long English name of the element. E.g. "File Sink" + The long English name of the element. E.g. "File Sink" - String describing the type of element, as an unordered list + String describing the type of element, as an unordered list separated with slashes ('/'). See draft-klass.txt of the design docs for more details and common types. E.g: "Sink/File" - Sentence describing the purpose of the element. + Sentence describing the purpose of the element. E.g: "Write stream to a file" - Name and contact details of the author(s). Use \n to separate + Name and contact details of the author(s). Use \n to separate multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;" @@ -15626,7 +22967,9 @@ multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;" - Sets the detailed information for a #GstElementClass. + Sets the detailed information for a #GstElementClass. > This function is for use in _class_init functions only. @@ -15634,31 +22977,42 @@ Same as gst_element_class_set_metadata(), but @longname, @classification, @description, and @author must be static strings or inlined strings, as they will not be copied. (GStreamer plugins will be made resident once loaded, so this function can be used even from dynamically loaded plugins.) + - class to set metadata for + class to set metadata for - The long English name of the element. E.g. "File Sink" + The long English name of the element. E.g. "File Sink" - String describing the type of element, as an unordered list + String describing the type of element, as an unordered list separated with slashes ('/'). See draft-klass.txt of the design docs for more details and common types. E.g: "Sink/File" - Sentence describing the purpose of the element. + Sentence describing the purpose of the element. E.g: "Write stream to a file" - Name and contact details of the author(s). Use \n to separate + Name and contact details of the author(s). Use \n to separate multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;" @@ -15672,7 +23026,9 @@ multiple author metadata. E.g: "Joe Bloggs &lt;joe.blogs at foo.com&gt;" glib:type-name="GstElementFactory" glib:get-type="gst_element_factory_get_type" glib:type-struct="ElementFactoryClass"> - #GstElementFactory is used to create instances of elements. A + #GstElementFactory is used to create instances of elements. A GstElementFactory can be added to a #GstPlugin as it is also a #GstPluginFeature. @@ -15697,31 +23053,44 @@ The following code example shows you how to create a GstFileSrc element. g_return_if_fail (src != NULL); ... ]| + - Search for an element factory of the given name. Refs the returned + Search for an element factory of the given name. Refs the returned element factory; caller is responsible for unreffing. + - #GstElementFactory if found, + #GstElementFactory if found, %NULL otherwise - name of factory to find + name of factory to find - Filter out all the elementfactories in @list that can handle @caps in + Filter out all the elementfactories in @list that can handle @caps in the given direction. If @subsetonly is %TRUE, then only the elements whose pads templates are a complete superset of @caps will be returned. Else any element whose pad templates caps can intersect with @caps will be returned. + - a #GList of + a #GList of #GstElementFactory elements that match the given requisites. Use #gst_plugin_feature_list_free after usage. @@ -15730,33 +23099,46 @@ whose pad templates caps can intersect with @caps will be returned. - a #GList of + a #GList of #GstElementFactory to filter - a #GstCaps + a #GstCaps - a #GstPadDirection to filter on + a #GstPadDirection to filter on - whether to filter on caps subsets or not. + whether to filter on caps subsets or not. - Get a list of factories that match the given @type. Only elements + Get a list of factories that match the given @type. Only elements with a rank greater or equal to @minrank will be returned. The list of factories is returned by decreasing rank. + - a #GList of + a #GList of #GstElementFactory elements. Use gst_plugin_feature_list_free() after usage. @@ -15765,36 +23147,49 @@ The list of factories is returned by decreasing rank. - a #GstElementFactoryListType + a #GstElementFactoryListType - Minimum rank + Minimum rank - Create a new element of the type defined by the given element factory. + Create a new element of the type defined by the given element factory. If name is %NULL, then the element will receive a guaranteed unique name, consisting of the element factory name and a number. If name is given, it will be given the name supplied. + - new #GstElement or %NULL + new #GstElement or %NULL if unable to create element - a named factory to instantiate + a named factory to instantiate - name of new element, or %NULL to automatically create + name of new element, or %NULL to automatically create a unique name @@ -15802,95 +23197,140 @@ if unable to create element - Checks if the factory can sink all possible capabilities. + Checks if the factory can sink all possible capabilities. + - %TRUE if the caps are fully compatible. + %TRUE if the caps are fully compatible. - factory to query + factory to query - the caps to check + the caps to check - Checks if the factory can sink any possible capability. + Checks if the factory can sink any possible capability. + - %TRUE if the caps have a common subset. + %TRUE if the caps have a common subset. - factory to query + factory to query - the caps to check + the caps to check - Checks if the factory can src all possible capabilities. + Checks if the factory can src all possible capabilities. + - %TRUE if the caps are fully compatible. + %TRUE if the caps are fully compatible. - factory to query + factory to query - the caps to check + the caps to check - Checks if the factory can src any possible capability. + Checks if the factory can src any possible capability. + - %TRUE if the caps have a common subset. + %TRUE if the caps have a common subset. - factory to query + factory to query - the caps to check + the caps to check - Create a new element of the type defined by the given elementfactory. + Create a new element of the type defined by the given elementfactory. It will be given the name supplied, since all elements require a name as their first argument. + - new #GstElement or %NULL + new #GstElement or %NULL if the element couldn't be created - factory to instantiate + factory to instantiate - name of new element, or %NULL to automatically create + name of new element, or %NULL to automatically create a unique name @@ -15898,45 +23338,66 @@ their first argument. - Get the #GType for elements managed by this factory. The type can + Get the #GType for elements managed by this factory. The type can only be retrieved if the element factory is loaded, which can be assured with gst_plugin_feature_load(). + - the #GType for elements managed by this factory or 0 if + the #GType for elements managed by this factory or 0 if the factory is not loaded. - factory to get managed #GType from + factory to get managed #GType from - Get the metadata on @factory with @key. + Get the metadata on @factory with @key. + - the metadata with @key on @factory or %NULL + the metadata with @key on @factory or %NULL when there was no metadata with the given @key. - a #GstElementFactory + a #GstElementFactory - a key + a key - Get the available keys for the metadata on @factory. + Get the available keys for the metadata on @factory. + - + a %NULL-terminated array of key strings, or %NULL when there is no metadata. Free with g_strfreev() when no longer needed. @@ -15945,30 +23406,44 @@ metadata. Free with g_strfreev() when no longer needed. - a #GstElementFactory + a #GstElementFactory - Gets the number of pad_templates in this factory. + Gets the number of pad_templates in this factory. + - the number of pad_templates + the number of pad_templates - a #GstElementFactory + a #GstElementFactory - Gets the #GList of #GstStaticPadTemplate for this factory. + Gets the #GList of #GstStaticPadTemplate for this factory. + - the + the static pad templates @@ -15976,19 +23451,26 @@ metadata. Free with g_strfreev() when no longer needed. - a #GstElementFactory + a #GstElementFactory - Gets a %NULL-terminated array of protocols this element supports or %NULL if + Gets a %NULL-terminated array of protocols this element supports or %NULL if no protocols are supported. You may not change the contents of the returned array, as it is still owned by the element factory. Use g_strdupv() to make a copy of the protocol string array if you need to. + - the supported protocols + the supported protocols or %NULL @@ -15996,57 +23478,84 @@ make a copy of the protocol string array if you need to. - a #GstElementFactory + a #GstElementFactory - Gets the type of URIs the element supports or #GST_URI_UNKNOWN if none. + Gets the type of URIs the element supports or #GST_URI_UNKNOWN if none. + - type of URIs this element supports + type of URIs this element supports - a #GstElementFactory + a #GstElementFactory - Check if @factory implements the interface with name @interfacename. + Check if @factory implements the interface with name @interfacename. + - %TRUE when @factory implement the interface. + %TRUE when @factory implement the interface. - a #GstElementFactory + a #GstElementFactory - an interface name + an interface name - Check if @factory is of the given types. + Check if @factory is of the given types. + - %TRUE if @factory is of @type. + %TRUE if @factory is of @type. - a #GstElementFactory + a #GstElementFactory - a #GstElementFactoryListType + a #GstElementFactoryListType @@ -16057,71 +23566,97 @@ make a copy of the protocol string array if you need to. c:type="GstElementFactoryClass" disguised="1" glib:is-gtype-struct-for="ElementFactory"> + - The standard flags that an element may have. + The standard flags that an element may have. - ignore state changes from parent + ignore state changes from parent - the element is a sink + the element is a sink - the element is a source. + the element is a source. - the element can provide a clock + the element can provide a clock - the element requires a clock + the element requires a clock - the element can use an index + the element can use an index - offset to define more flags + offset to define more flags - Function called for each pad when using gst_element_foreach_sink_pad(), + Function called for each pad when using gst_element_foreach_sink_pad(), gst_element_foreach_src_pad(), or gst_element_foreach_pad(). + - %FALSE to stop iterating pads, %TRUE to continue + %FALSE to stop iterating pads, %TRUE to continue - the #GstElement + the #GstElement - a #GstPad + a #GstPad nullable="1" allow-none="1" closure="2"> - user data passed to the foreach function + user data passed to the foreach function @@ -16139,7 +23676,9 @@ gst_element_foreach_src_pad(), or gst_element_foreach_pad(). glib:type-name="GstEvent" glib:get-type="gst_event_get_type" c:symbol-prefix="event"> - The event class provides factory methods to construct events for sending + The event class provides factory methods to construct events for sending and functions to query (parse) received events. Events are usually created with gst_event_new_*() which takes event-type @@ -16180,68 +23719,99 @@ the needed parameters to specify seeking time and mode. g_warning ("seek failed"); ... ]| + - the parent structure + the parent structure - the #GstEventType of the event + the #GstEventType of the event - the timestamp of the event + the timestamp of the event - the sequence number of the event + the sequence number of the event - Create a new buffersize event. The event is sent downstream and notifies + Create a new buffersize event. The event is sent downstream and notifies elements that they should provide a buffer of the specified dimensions. When the @async flag is set, a thread boundary is preferred. + - a new #GstEvent + a new #GstEvent - buffer format + buffer format - minimum buffer size + minimum buffer size - maximum buffer size + maximum buffer size - thread behavior + thread behavior - Create a new CAPS event for @caps. The caps event can only travel downstream + Create a new CAPS event for @caps. The caps event can only travel downstream synchronized with the buffer flow and contains the format of the buffers that will follow after the event. + - the new CAPS event. + the new CAPS event. - a #GstCaps + a #GstCaps - Create a new custom-typed event. This can be used for anything not + Create a new custom-typed event. This can be used for anything not handled by other event-specific functions to pass an event to another element. @@ -16251,24 +23821,33 @@ serialization flags. New custom events can also be created by subclassing the event type if needed. + - the new custom event. + the new custom event. - The type of the new event + The type of the new event - the structure for the event. The event will + the structure for the event. The event will take ownership of the structure. - Create a new EOS event. The eos event can only travel downstream + Create a new EOS event. The eos event can only travel downstream synchronized with the buffer flow. Elements that receive the EOS event on a pad can return #GST_FLOW_EOS as a #GstFlowReturn when data after the EOS event arrives. @@ -16281,14 +23860,19 @@ When all sinks have posted an EOS message, an EOS message is forwarded to the application. The EOS event itself will not cause any state transitions of the pipeline. + - the new EOS event. + the new EOS event. - Allocate a new flush start event. The flush start event can be sent + Allocate a new flush start event. The flush start event can be sent upstream and downstream and travels out-of-bounds with the dataflow. It marks pads as being flushing and will make them return @@ -16302,14 +23886,19 @@ functions as fast as possible when this event is received. This event is typically generated after a seek to flush out all queued data in the pipeline so that the new media is played as soon as possible. + - a new flush start event. + a new flush start event. - Allocate a new flush stop event. The flush stop event can be sent + Allocate a new flush stop event. The flush stop event can be sent upstream and downstream and travels serialized with the dataflow. It is typically sent after sending a FLUSH_START event to make the pads accept data again. @@ -16319,66 +23908,94 @@ the preceding FLUSH_START event stopped the dataflow. This event is typically generated to complete a seek and to resume dataflow. + - a new flush stop event. + a new flush stop event. - if time should be reset + if time should be reset - Create a new GAP event. A gap event can be thought of as conceptually + Create a new GAP event. A gap event can be thought of as conceptually equivalent to a buffer to signal that there is no data for a certain amount of time. This is useful to signal a gap to downstream elements which may wait for data, such as muxers or mixers or overlays, especially for sparse streams such as subtitle streams. + - the new GAP event. + the new GAP event. - the start time (pts) of the gap + the start time (pts) of the gap - the duration of the gap + the duration of the gap - Create a new latency event. The event is sent upstream from the sinks and + Create a new latency event. The event is sent upstream from the sinks and notifies elements that they should add an additional @latency to the running time before synchronising against the clock. The latency is mostly used in live sinks and is always expressed in the time format. + - a new #GstEvent + a new #GstEvent - the new latency value + the new latency value - Create a new navigation event from the given description. + Create a new navigation event from the given description. + - a new #GstEvent + a new #GstEvent - description of the event. The event will take + description of the event. The event will take ownership of the structure. @@ -16387,7 +24004,9 @@ the time format. - Creates a new event containing information specific to a particular + Creates a new event containing information specific to a particular protection system (uniquely identified by @system_id), by which that protection system can acquire key(s) to decrypt a protected stream. @@ -16416,24 +24035,33 @@ The events returned by gst_event_new_protection() are implemented in such a way as to ensure that the most recently-pushed protection info event of a particular @origin and @system_id will be stuck to the output pad of the sending element. + - a #GST_EVENT_PROTECTION event, if successful; %NULL + a #GST_EVENT_PROTECTION event, if successful; %NULL if unsuccessful. - a string holding a UUID that uniquely + a string holding a UUID that uniquely identifies a protection system. - a #GstBuffer holding protection system specific + a #GstBuffer holding protection system specific information. The reference count of the buffer will be incremented by one. - a string indicating where the protection + a string indicating where the protection information carried in the event was extracted from. The allowed values of this string will depend upon the protection scheme. @@ -16441,7 +24069,9 @@ of this string will depend upon the protection scheme. - Allocate a new qos event with the given values. + Allocate a new qos event with the given values. The QOS event is generated in an element that wants an upstream element to either reduce or increase its rate because of high/low CPU load or other resource usage such as network performance or @@ -16483,42 +24113,60 @@ result smaller than 0 is not allowed. The application can use general event probes to intercept the QoS event and implement custom application specific QoS handling. + - a new QOS event. + a new QOS event. - the QoS type + the QoS type - the proportion of the qos message + the proportion of the qos message - The time difference of the last Clock sync + The time difference of the last Clock sync - The timestamp of the buffer + The timestamp of the buffer - Create a new reconfigure event. The purpose of the reconfigure event is + Create a new reconfigure event. The purpose of the reconfigure event is to travel upstream and make elements renegotiate their caps or reconfigure their buffer pools. This is useful when changing properties on elements or changing the topology of the pipeline. + - a new #GstEvent + a new #GstEvent - Allocate a new seek event with the given parameters. + Allocate a new seek event with the given parameters. The seek event configures playback of the pipeline between @start to @stop at the speed given in @rate, also called a playback segment. @@ -16549,43 +24197,62 @@ It is not possible to seek relative to the current playback position, to do this, PAUSE the pipeline, query the current playback position with #GST_QUERY_POSITION and update the playback segment current position with a #GST_SEEK_TYPE_SET to the desired position. + - a new seek event. + a new seek event. - The new playback rate + The new playback rate - The format of the seek values + The format of the seek values - The optional seek flags + The optional seek flags - The type and flags for the new start position + The type and flags for the new start position - The value of the new start position + The value of the new start position - The type and flags for the new stop position + The type and flags for the new stop position - The value of the new stop position + The value of the new stop position - Create a new SEGMENT event for @segment. The segment event can only travel + Create a new SEGMENT event for @segment. The segment event can only travel downstream synchronized with the buffer flow and contains timing information and playback properties for the buffers that will follow. @@ -16616,32 +24283,46 @@ with @rate of 1.0 and @applied_rate of 2.0 After a segment event, the buffer stream time is calculated with: time + (TIMESTAMP(buf) - start) * ABS (rate * applied_rate) + - the new SEGMENT event. + the new SEGMENT event. - a #GstSegment + a #GstSegment - Create a new segment-done event. This event is sent by elements that + Create a new segment-done event. This event is sent by elements that finish playback of a segment as a result of a segment seek. + - a new #GstEvent + a new #GstEvent - The format of the position being done + The format of the position being done - The position of the segment being done + The position of the segment being done @@ -16649,7 +24330,9 @@ finish playback of a segment as a result of a segment seek. - Allocate a new select-streams event. + Allocate a new select-streams event. The select-streams event requests the specified @streams to be activated. @@ -16659,14 +24342,19 @@ in #GST_EVENT_STREAM_START, #GST_EVENT_STREAM_COLLECTION or #GST_MESSAGE_STREAM_COLLECTION. Note: The list of @streams can not be empty. + - a new select-streams event or %NULL in case of + a new select-streams event or %NULL in case of an error (like an empty streams list). - the list of streams to + the list of streams to activate @@ -16676,28 +24364,39 @@ activate - Create a new sink-message event. The purpose of the sink-message event is + Create a new sink-message event. The purpose of the sink-message event is to instruct a sink to post the message contained in the event synchronized with the stream. @name is used to store multiple sticky events on one pad. + - a new #GstEvent + a new #GstEvent - a name for the event + a name for the event - the #GstMessage to be posted + the #GstMessage to be posted - Create a new step event. The purpose of the step event is to instruct a sink + Create a new step event. The purpose of the step event is to instruct a sink to skip @amount (expressed in @format) of media. It can be used to implement stepping through the video frame by frame or for doing fast trick modes. @@ -16710,29 +24409,42 @@ the step operation. The @intermediate flag instructs the pipeline that this step operation is part of a larger step operation. + - a new #GstEvent + a new #GstEvent - the format of @amount + the format of @amount - the amount of data to step + the amount of data to step - the step rate + the step rate - flushing steps + flushing steps - intermediate steps + intermediate steps @@ -16740,7 +24452,9 @@ part of a larger step operation. - Create a new STREAM_COLLECTION event. The stream collection event can only + Create a new STREAM_COLLECTION event. The stream collection event can only travel downstream synchronized with the buffer flow. Source elements, demuxers and other elements that manage collections @@ -16748,13 +24462,18 @@ of streams and post #GstStreamCollection messages on the bus also send this event downstream on each pad involved in the collection, so that activation of a new collection can be tracked through the downstream data flow. + - the new STREAM_COLLECTION event. + the new STREAM_COLLECTION event. - Active collection for this data flow + Active collection for this data flow @@ -16762,7 +24481,9 @@ data flow. - Create a new Stream Group Done event. The stream-group-done event can + Create a new Stream Group Done event. The stream-group-done event can only travel downstream synchronized with the buffer flow. Elements that receive the event on a pad should handle it mostly like EOS, and emit any data or pending buffers that would depend on more data @@ -16771,20 +24492,27 @@ arriving and unblock, since there won't be any more data. This event is followed by EOS at some point in the future, and is generally used when switching pads - to unblock downstream so that new pads can be exposed before sending EOS on the existing pads. + - the new stream-group-done event. + the new stream-group-done event. - the group id of the stream group which is ending + the group id of the stream group which is ending - Create a new STREAM_START event. The stream start event can only + Create a new STREAM_START event. The stream start event can only travel downstream synchronized with the buffer flow. It is expected to be the first event that is sent for a new stream. @@ -16805,84 +24533,119 @@ used to create a stream-id. There are no particular semantics for the stream-id, though it should be deterministic (to support stream matching) and it might be used to order streams (besides any information conveyed by stream flags). + - the new STREAM_START event. + the new STREAM_START event. - Identifier for this stream + Identifier for this stream - Generates a metadata tag event from the given @taglist. + Generates a metadata tag event from the given @taglist. The scope of the taglist specifies if the taglist applies to the complete medium or only to this specific stream. As the tag event is a sticky event, elements should merge tags received from upstream with a given scope with their own tags with the same scope and create a new tag event from it. + - a new #GstEvent + a new #GstEvent - metadata list. The event will take ownership + metadata list. The event will take ownership of the taglist. - Generate a TOC event from the given @toc. The purpose of the TOC event is to + Generate a TOC event from the given @toc. The purpose of the TOC event is to inform elements that some kind of the TOC was found. + - a new #GstEvent. + a new #GstEvent. - #GstToc structure. + #GstToc structure. - whether @toc was updated or not. + whether @toc was updated or not. - Generate a TOC select event with the given @uid. The purpose of the + Generate a TOC select event with the given @uid. The purpose of the TOC select event is to start playback based on the TOC's entry with the given @uid. + - a new #GstEvent. + a new #GstEvent. - UID in the TOC to start playback from. + UID in the TOC to start playback from. - Parses a segment @event and copies the #GstSegment into the location + Parses a segment @event and copies the #GstSegment into the location given by @segment. + - The event to parse + The event to parse - a pointer to a #GstSegment + a pointer to a #GstSegment @@ -16890,7 +24653,9 @@ given by @segment. - Retrieve the accumulated running time offset of the event. + Retrieve the accumulated running time offset of the event. Events passing through #GstPads that have a running time offset set via gst_pad_set_offset() will get their offset @@ -16899,21 +24664,28 @@ adjusted according to the pad's offset. If the event contains any information that related to the running time, this information will need to be updated before usage with this offset. + - The event's running time offset + The event's running time offset MT safe. - A #GstEvent. + A #GstEvent. - Retrieve the sequence number of a event. + Retrieve the sequence number of a event. Events have ever-incrementing sequence numbers, which may also be set explicitly via gst_event_set_seqnum(). Sequence numbers are typically used to @@ -16925,23 +24697,33 @@ required. Note that events and messages share the same sequence number incrementor; two events or messages will never have the same sequence number unless that correspondence was made explicitly. + - The event's sequence number. + The event's sequence number. MT safe. - A #GstEvent. + A #GstEvent. - Access the structure of the event. + Access the structure of the event. + - The structure of the event. The + The structure of the event. The structure is still owned by the event, which means that you should not free it and that the pointer becomes invalid when you free the event. @@ -16950,118 +24732,161 @@ MT safe. - The #GstEvent. + The #GstEvent. - Checks if @event has the given @name. This function is usually used to + Checks if @event has the given @name. This function is usually used to check the name of a custom event. + - %TRUE if @name matches the name of the event structure. + %TRUE if @name matches the name of the event structure. - The #GstEvent. + The #GstEvent. - name to check + name to check - Get the format, minsize, maxsize and async-flag in the buffersize event. + Get the format, minsize, maxsize and async-flag in the buffersize event. + - The event to query + The event to query - A pointer to store the format in + A pointer to store the format in - A pointer to store the minsize in + A pointer to store the minsize in - A pointer to store the maxsize in + A pointer to store the maxsize in - A pointer to store the async-flag in + A pointer to store the async-flag in - Get the caps from @event. The caps remains valid as long as @event remains + Get the caps from @event. The caps remains valid as long as @event remains valid. + - The event to parse + The event to parse - A pointer to the caps + A pointer to the caps - Parse the FLUSH_STOP event and retrieve the @reset_time member. + Parse the FLUSH_STOP event and retrieve the @reset_time member. + - The event to parse + The event to parse - if time should be reset + if time should be reset - Extract timestamp and duration from a new GAP event. + Extract timestamp and duration from a new GAP event. + - a #GstEvent of type #GST_EVENT_GAP + a #GstEvent of type #GST_EVENT_GAP transfer-ownership="full" optional="1" allow-none="1"> - location where to store the + location where to store the start time (pts) of the gap, or %NULL @@ -17080,7 +24907,9 @@ valid. transfer-ownership="full" optional="1" allow-none="1"> - location where to store the duration of + location where to store the duration of the gap, or %NULL @@ -17089,40 +24918,54 @@ valid. + - %TRUE if a group id was set on the event and could be parsed, + %TRUE if a group id was set on the event and could be parsed, %FALSE otherwise. - a stream-start event + a stream-start event - address of variable where to store the group id + address of variable where to store the group id - Get the latency in the latency event. + Get the latency in the latency event. + - The event to query + The event to query - A pointer to store the latency in. + A pointer to store the latency in. @@ -17130,15 +24973,20 @@ valid. - Parses an event containing protection system specific information and stores + Parses an event containing protection system specific information and stores the results in @system_id, @data and @origin. The data stored in @system_id, @origin and @data are valid until @event is released. + - a #GST_EVENT_PROTECTION event. + a #GST_EVENT_PROTECTION event. - pointer to store the UUID + pointer to store the UUID string uniquely identifying a content protection system. @@ -17157,7 +25007,9 @@ string uniquely identifying a content protection system. transfer-ownership="none" optional="1" allow-none="1"> - pointer to store a #GstBuffer + pointer to store a #GstBuffer holding protection system specific information. @@ -17167,7 +25019,9 @@ holding protection system specific information. transfer-ownership="none" optional="1" allow-none="1"> - pointer to store a value that + pointer to store a value that indicates where the protection information carried by @event was extracted from. @@ -17175,105 +25029,137 @@ from. - Get the type, proportion, diff and timestamp in the qos event. See + Get the type, proportion, diff and timestamp in the qos event. See gst_event_new_qos() for more information about the different QoS values. @timestamp will be adjusted for any pad offsets of pads it was passing through. + - The event to query + The event to query - A pointer to store the QoS type in + A pointer to store the QoS type in - A pointer to store the proportion in + A pointer to store the proportion in - A pointer to store the diff in + A pointer to store the diff in - A pointer to store the timestamp in + A pointer to store the timestamp in - Parses a seek @event and stores the results in the given result locations. + Parses a seek @event and stores the results in the given result locations. + - a seek event + a seek event - result location for the rate + result location for the rate - result location for the stream format + result location for the stream format - result location for the #GstSeekFlags + result location for the #GstSeekFlags - result location for the #GstSeekType of the start position + result location for the #GstSeekType of the start position - result location for the start position expressed in @format + result location for the start position expressed in @format - result location for the #GstSeekType of the stop position + result location for the #GstSeekType of the stop position - result location for the stop position expressed in @format + result location for the stop position expressed in @format @@ -17281,8 +25167,11 @@ gst_event_new_qos() for more information about the different QoS values. - Retrieve the trickmode interval that may have been set on a + Retrieve the trickmode interval that may have been set on a seek event with gst_event_set_seek_trickmode_interval(). + @@ -17299,35 +25188,47 @@ seek event with gst_event_set_seek_trickmode_interval(). - Parses a segment @event and stores the result in the given @segment location. + Parses a segment @event and stores the result in the given @segment location. @segment remains valid only until the @event is freed. Don't modify the segment and make a copy if you want to modify it or store it for later use. + - The event to parse + The event to parse - a pointer to a #GstSegment + a pointer to a #GstSegment - Extracts the position and format from the segment done message. + Extracts the position and format from the segment done message. + - A valid #GstEvent of type GST_EVENT_SEGMENT_DONE. + A valid #GstEvent of type GST_EVENT_SEGMENT_DONE. transfer-ownership="full" optional="1" allow-none="1"> - Result location for the format, or %NULL + Result location for the format, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - Result location for the position, or %NULL + Result location for the position, or %NULL @@ -17353,20 +25258,27 @@ and make a copy if you want to modify it or store it for later use. - Parse the SELECT_STREAMS event and retrieve the contained streams. + Parse the SELECT_STREAMS event and retrieve the contained streams. + - The event to parse + The event to parse - the streams + the streams @@ -17375,32 +25287,44 @@ and make a copy if you want to modify it or store it for later use. - Parse the sink-message event. Unref @msg after usage. + Parse the sink-message event. Unref @msg after usage. + - The event to query + The event to query - a pointer to store the #GstMessage in. + a pointer to store the #GstMessage in. - Parse the step event. + Parse the step event. + - The event to query + The event to query transfer-ownership="full" optional="1" allow-none="1"> - a pointer to store the format in + a pointer to store the format in transfer-ownership="full" optional="1" allow-none="1"> - a pointer to store the amount in + a pointer to store the amount in transfer-ownership="full" optional="1" allow-none="1"> - a pointer to store the rate in + a pointer to store the rate in transfer-ownership="full" optional="1" allow-none="1"> - a pointer to store the flush boolean in + a pointer to store the flush boolean in transfer-ownership="full" optional="1" allow-none="1"> - a pointer to store the intermediate + a pointer to store the intermediate boolean in @@ -17454,20 +25388,27 @@ and make a copy if you want to modify it or store it for later use. - Parse a stream-start @event and extract the #GstStream from it. + Parse a stream-start @event and extract the #GstStream from it. + - a stream-start event + a stream-start event - address of variable to store the stream + address of variable to store the stream @@ -17475,20 +25416,27 @@ and make a copy if you want to modify it or store it for later use. - Retrieve new #GstStreamCollection from STREAM_COLLECTION event @event. + Retrieve new #GstStreamCollection from STREAM_COLLECTION event @event. + - a stream-collection event + a stream-collection event - pointer to store the collection + pointer to store the collection @@ -17496,19 +25444,24 @@ and make a copy if you want to modify it or store it for later use. + - a stream-start event + a stream-start event - address of variable where to store the stream flags + address of variable where to store the stream flags @@ -17516,105 +25469,140 @@ and make a copy if you want to modify it or store it for later use. - Parse a stream-group-done @event and store the result in the given + Parse a stream-group-done @event and store the result in the given @group_id location. + - a stream-group-done event. + a stream-group-done event. - address of variable to store the group id into + address of variable to store the group id into - Parse a stream-id @event and store the result in the given @stream_id + Parse a stream-id @event and store the result in the given @stream_id location. The string stored in @stream_id must not be modified and will remain valid only until @event gets freed. Make a copy if you want to modify it or store it for later use. + - a stream-start event. + a stream-start event. - pointer to store the stream-id + pointer to store the stream-id - Parses a tag @event and stores the results in the given @taglist location. + Parses a tag @event and stores the results in the given @taglist location. No reference to the taglist will be returned, it remains valid only until the @event is freed. Don't modify or free the taglist, make a copy if you want to modify it or store it for later use. + - a tag event + a tag event - pointer to metadata list + pointer to metadata list - Parse a TOC @event and store the results in the given @toc and @updated locations. + Parse a TOC @event and store the results in the given @toc and @updated locations. + - a TOC event. + a TOC event. - pointer to #GstToc structure. + pointer to #GstToc structure. - pointer to store TOC updated flag. + pointer to store TOC updated flag. - Parse a TOC select @event and store the results in the given @uid location. + Parse a TOC select @event and store the results in the given @uid location. + - a TOC select event. + a TOC select event. transfer-ownership="full" optional="1" allow-none="1"> - storage for the selection UID. + storage for the selection UID. @@ -17631,23 +25621,30 @@ want to modify it or store it for later use. - All streams that have the same group id are supposed to be played + All streams that have the same group id are supposed to be played together, i.e. all streams inside a container file should have the same group id but different stream ids. The group id should change each time the stream is started, resulting in different group ids each time a file is played for example. Use gst_util_group_id_next() to get a new group id. + - a stream-start event + a stream-start event - the group id to set + the group id to set @@ -17655,20 +25652,27 @@ Use gst_util_group_id_next() to get a new group id. - Set the running time offset of a event. See + Set the running time offset of a event. See gst_event_get_running_time_offset() for more information. MT safe. + - A #GstEvent. + A #GstEvent. - A the new running time offset + A the new running time offset @@ -17676,9 +25680,12 @@ MT safe. - Sets a trickmode interval on a (writable) seek event. Elements + Sets a trickmode interval on a (writable) seek event. Elements that support TRICKMODE_KEY_UNITS seeks SHOULD use this as the minimal interval between each frame they may output. + @@ -17692,23 +25699,30 @@ interval between each frame they may output. - Set the sequence number of a event. + Set the sequence number of a event. This function might be called by the creator of a event to indicate that the event relates to other events or messages. See gst_event_get_seqnum() for more information. MT safe. + - A #GstEvent. + A #GstEvent. - A sequence number. + A sequence number. @@ -17716,17 +25730,24 @@ MT safe. - Set the @stream on the stream-start @event + Set the @stream on the stream-start @event + - a stream-start event + a stream-start event - the stream object to set + the stream object to set @@ -17734,25 +25755,35 @@ MT safe. + - a stream-start event + a stream-start event - the stream flags to set + the stream flags to set - Get a writable version of the structure. + Get a writable version of the structure. + - The structure of the event. The structure + The structure of the event. The structure is still owned by the event, which means that you should not free it and that the pointer becomes invalid when you free the event. This function checks if @event is writable and will never return @@ -17763,7 +25794,9 @@ MT safe. - The #GstEvent. + The #GstEvent. @@ -17773,7 +25806,9 @@ MT safe. glib:type-name="GstEventType" glib:get-type="gst_event_type_get_type" c:type="GstEventType"> - #GstEventType lists the standard event types that can be sent in a pipeline. + #GstEventType lists the standard event types that can be sent in a pipeline. The custom event types can be used for private messages between elements that can't be expressed using normal @@ -17784,27 +25819,35 @@ Specific custom events are distinguished by the name of the structure. value="0" c:identifier="GST_EVENT_UNKNOWN" glib:nick="unknown"> - unknown event. + unknown event. - Start a flush operation. This event clears all data + Start a flush operation. This event clears all data from the pipeline and unblock all streaming threads. - Stop a flush operation. This event resets the + Stop a flush operation. This event resets the running-time of the pipeline. - Event to mark the start of a new stream. Sent before any + Event to mark the start of a new stream. Sent before any other serialized event and only sent at the start of a new stream, not after flushing seeks. @@ -17812,13 +25855,17 @@ Specific custom events are distinguished by the name of the structure. value="12814" c:identifier="GST_EVENT_CAPS" glib:nick="caps"> - #GstCaps event. Notify the pad of a new media type. + #GstCaps event. Notify the pad of a new media type. - A new media segment follows in the dataflow. The + A new media segment follows in the dataflow. The segment events contains information for clipping buffers and converting buffer timestamps to running-time and stream-time. @@ -17827,26 +25874,34 @@ Specific custom events are distinguished by the name of the structure. value="19230" c:identifier="GST_EVENT_STREAM_COLLECTION" glib:nick="stream-collection"> - A new #GstStreamCollection is available (Since: 1.10) + A new #GstStreamCollection is available (Since: 1.10) - A new set of metadata tags has been found in the stream. + A new set of metadata tags has been found in the stream. - Notification of buffering requirements. Currently not + Notification of buffering requirements. Currently not used yet. - An event that sinks turn into a message. Used to + An event that sinks turn into a message. Used to send messages that should be emitted in sync with rendering. @@ -17854,7 +25909,9 @@ Specific custom events are distinguished by the name of the structure. value="26894" c:identifier="GST_EVENT_STREAM_GROUP_DONE" glib:nick="stream-group-done"> - Indicates that there is no more data for + Indicates that there is no more data for the stream group ID in the message. Sent before EOS in some instances and should be handled mostly the same. (Since: 1.10) @@ -17862,7 +25919,9 @@ Specific custom events are distinguished by the name of the structure. value="28174" c:identifier="GST_EVENT_EOS" glib:nick="eos"> - End-Of-Stream. No more data is to be expected to follow + End-Of-Stream. No more data is to be expected to follow without either a STREAM_START event, or a FLUSH_STOP and a SEGMENT event. @@ -17870,33 +25929,43 @@ Specific custom events are distinguished by the name of the structure. value="30750" c:identifier="GST_EVENT_TOC" glib:nick="toc"> - An event which indicates that a new table of contents (TOC) + An event which indicates that a new table of contents (TOC) was found or updated. - An event which indicates that new or updated + An event which indicates that new or updated encryption information has been found in the stream. - Marks the end of a segment playback. + Marks the end of a segment playback. - Marks a gap in the datastream. + Marks a gap in the datastream. - A quality message. Used to indicate to upstream elements + A quality message. Used to indicate to upstream elements that the downstream elements should adjust their processing rate. @@ -17904,13 +25973,17 @@ Specific custom events are distinguished by the name of the structure. value="51201" c:identifier="GST_EVENT_SEEK" glib:nick="seek"> - A request for a new playback position and rate. + A request for a new playback position and rate. - Navigation events are usually used for communicating + Navigation events are usually used for communicating user requests, such as mouse or keyboard movements, to upstream elements. @@ -17918,108 +25991,151 @@ Specific custom events are distinguished by the name of the structure. value="56321" c:identifier="GST_EVENT_LATENCY" glib:nick="latency"> - Notification of new latency adjustment. Sinks will use + Notification of new latency adjustment. Sinks will use the latency information to adjust their synchronisation. - A request for stepping through the media. Sinks will usually + A request for stepping through the media. Sinks will usually execute the step operation. - A request for upstream renegotiating caps and reconfiguring. + A request for upstream renegotiating caps and reconfiguring. - A request for a new playback position based on TOC + A request for a new playback position based on TOC entry's UID. - A request to select one or more streams (Since: 1.10) + A request to select one or more streams (Since: 1.10) - Upstream custom event + Upstream custom event - Downstream custom event that travels in the + Downstream custom event that travels in the data flow. - Custom out-of-band downstream event. + Custom out-of-band downstream event. - Custom sticky downstream event. + Custom sticky downstream event. - Custom upstream or downstream event. + Custom upstream or downstream event. In-band when travelling downstream. - Custom upstream or downstream out-of-band event. + Custom upstream or downstream out-of-band event. - Gets the #GstEventTypeFlags associated with @type. + Gets the #GstEventTypeFlags associated with @type. + - a #GstEventTypeFlags. + a #GstEventTypeFlags. - a #GstEventType + a #GstEventType - Get a printable name for the given event type. Do not modify or free. + Get a printable name for the given event type. Do not modify or free. + - a reference to the static name of the event. + a reference to the static name of the event. - the event type + the event type - Get the unique quark for the given event type. + Get the unique quark for the given event type. + - the quark associated with the event type + the quark associated with the event type - the event type + the event type @@ -18029,39 +26145,51 @@ Specific custom events are distinguished by the name of the structure. glib:type-name="GstEventTypeFlags" glib:get-type="gst_event_type_flags_get_type" c:type="GstEventTypeFlags"> - #GstEventTypeFlags indicate the aspects of the different #GstEventType + #GstEventTypeFlags indicate the aspects of the different #GstEventType values. You can get the type flags of a #GstEventType with the gst_event_type_get_flags() function. - Set if the event can travel upstream. + Set if the event can travel upstream. - Set if the event can travel downstream. + Set if the event can travel downstream. - Set if the event should be serialized with data + Set if the event should be serialized with data flow. - Set if the event is sticky on the pads. + Set if the event is sticky on the pads. - Multiple sticky events can be on a pad, each + Multiple sticky events can be on a pad, each identified by the event name. @@ -18069,34 +26197,62 @@ gst_event_type_get_flags() function. value="4294967295" c:type="GST_FLAG_SET_MASK_EXACT" version="1.6"> - A mask value with all bits set, for use as a + A mask value with all bits set, for use as a GstFlagSet mask where all flag bits must match exactly + - The PERCENT format is between 0 and this value + The PERCENT format is between 0 and this value + - The value used to scale down the reported PERCENT format value to + The value used to scale down the reported PERCENT format value to its real value. + + + Can be used together with #GST_FOURCC_FORMAT to properly output a +#guint32 fourcc value in a printf()-style text message. + + + + a #guint32 fourcc value to output + + + - Can be used together with #GST_FOURCC_ARGS to properly output a + Can be used together with #GST_FOURCC_ARGS to properly output a #guint32 fourcc value in a printf()-style text message. |[ printf ("fourcc: %" GST_FOURCC_FORMAT "\n", GST_FOURCC_ARGS (fcc)); ]| + - Create a new sub-class of #GST_TYPE_FLAG_SET + Create a new sub-class of #GST_TYPE_FLAG_SET which will pretty-print the human-readable flags when serializing, for easier debugging. + - a #GType of a #G_TYPE_FLAGS type. + a #GType of a #G_TYPE_FLAGS type. @@ -18125,7 +26286,9 @@ when serializing, for easier debugging. glib:type-name="GstFlowReturn" glib:get-type="gst_flow_return_get_type" c:type="GstFlowReturn"> - The result of passing data to a pad. + The result of passing data to a pad. Note that the custom return values should not be exposed outside of the element scope. @@ -18133,13 +26296,17 @@ element scope. value="102" c:identifier="GST_FLOW_CUSTOM_SUCCESS_2" glib:nick="custom-success-2"> - Pre-defined custom success code. + Pre-defined custom success code. - Pre-defined custom success code (define your + Pre-defined custom success code (define your custom success code to this to avoid compiler warnings). @@ -18147,42 +26314,56 @@ element scope. value="100" c:identifier="GST_FLOW_CUSTOM_SUCCESS" glib:nick="custom-success"> - Elements can use values starting from + Elements can use values starting from this (and higher) to define custom success codes. - Data passing was ok. + Data passing was ok. - Pad is not linked. + Pad is not linked. - Pad is flushing. + Pad is flushing. - Pad is EOS. + Pad is EOS. - Pad is not negotiated. + Pad is not negotiated. - Some (fatal) error occurred. Element generating + Some (fatal) error occurred. Element generating this error should post an error message with more details. @@ -18190,20 +26371,26 @@ element scope. value="-6" c:identifier="GST_FLOW_NOT_SUPPORTED" glib:nick="not-supported"> - This operation is not supported. + This operation is not supported. - Elements can use values starting from + Elements can use values starting from this (and lower) to define custom error codes. - Pre-defined custom error code (define your + Pre-defined custom error code (define your custom error code to this to avoid compiler warnings). @@ -18211,25 +26398,33 @@ element scope. value="-102" c:identifier="GST_FLOW_CUSTOM_ERROR_2" glib:nick="custom-error-2"> - Pre-defined custom error code. + Pre-defined custom error code. - Standard predefined formats + Standard predefined formats - undefined format + undefined format - the default format of the pad/element. This can be + the default format of the pad/element. This can be samples for raw audio, frames/fields for raw video (some, but not all, elements support this; use @GST_FORMAT_TIME if you don't have a good reason to query for samples/frames) @@ -18238,46 +26433,64 @@ element scope. value="2" c:identifier="GST_FORMAT_BYTES" glib:nick="bytes"> - bytes + bytes - time in nanoseconds + time in nanoseconds - buffers (few, if any, elements implement this as of + buffers (few, if any, elements implement this as of May 2009) - percentage of stream (few, if any, elements implement + percentage of stream (few, if any, elements implement this as of May 2009) - Return the format registered with the given nick. + Return the format registered with the given nick. + - The format with @nick or GST_FORMAT_UNDEFINED + The format with @nick or GST_FORMAT_UNDEFINED if the format was not registered. - The nick of the format + The nick of the format - Get details about the given format. + Get details about the given format. + - The #GstFormatDefinition for @format or %NULL + The #GstFormatDefinition for @format or %NULL on failure. MT safe. @@ -18285,39 +26498,58 @@ MT safe. - The format to get details of + The format to get details of - Get a printable name for the given format. Do not modify or free. + Get a printable name for the given format. Do not modify or free. + - a reference to the static name of the format + a reference to the static name of the format or %NULL if the format is unknown. - a #GstFormat + a #GstFormat - Iterate all the registered formats. The format definition is read + Iterate all the registered formats. The format definition is read only. + - a GstIterator of #GstFormatDefinition. + a GstIterator of #GstFormatDefinition. - Create a new GstFormat based on the nick or return an + Create a new GstFormat based on the nick or return an already registered format with that nick. + - A new GstFormat or an already registered format + A new GstFormat or an already registered format with the same nick. MT safe. @@ -18325,46 +26557,68 @@ MT safe. - The nick of the new format + The nick of the new format - The description of the new format + The description of the new format - Get the unique quark for the given format. + Get the unique quark for the given format. + - the quark associated with the format or 0 if the format + the quark associated with the format or 0 if the format is unknown. - a #GstFormat + a #GstFormat - A format definition + A format definition + - The unique id of this format + The unique id of this format - A short nick of the format + A short nick of the format - A longer description of the format + A longer description of the format - A quark for the nick + A quark for the nick @@ -18380,14 +26634,44 @@ is unknown. glib:get-type="gst_fraction_range_get_type" glib:fundamental="1"> + + + + + + + + + + + + + + + + + + + + + - A value which is guaranteed to never be returned by + A value which is guaranteed to never be returned by gst_util_group_id_next(). Can be used as a default value in variables used to store group_id. + glib:type-name="GstGhostPad" glib:get-type="gst_ghost_pad_get_type" glib:type-struct="GhostPadClass"> - GhostPads are useful when organizing pipelines with #GstBin like elements. + GhostPads are useful when organizing pipelines with #GstBin like elements. The idea here is to create hierarchical element graphs. The bin element contains a sub-graph. Now one would like to treat the bin-element like any other #GstElement. This is where GhostPads come into play. A GhostPad acts as @@ -18410,13 +26696,19 @@ to create the ghost-pad and use gst_ghost_pad_set_target() to establish the association later on. Note that GhostPads add overhead to the data processing of a pipeline. + - Create a new ghostpad with @target as the target. The direction will be taken + Create a new ghostpad with @target as the target. The direction will be taken from the target pad. @target must be unlinked. Will ref the target. + - a new #GstPad, or %NULL in + a new #GstPad, or %NULL in case of an error. @@ -18425,23 +26717,32 @@ case of an error. transfer-ownership="none" nullable="1" allow-none="1"> - the name of the new pad, or %NULL to assign a default name + the name of the new pad, or %NULL to assign a default name - the pad to ghost. + the pad to ghost. - Create a new ghostpad with @target as the target. The direction will be taken + Create a new ghostpad with @target as the target. The direction will be taken from the target pad. The template used on the ghostpad will be @template. Will ref the target. + - a new #GstPad, or %NULL in + a new #GstPad, or %NULL in case of an error. @@ -18450,28 +26751,39 @@ case of an error. transfer-ownership="none" nullable="1" allow-none="1"> - the name of the new pad, or %NULL to assign a default name. + the name of the new pad, or %NULL to assign a default name. - the pad to ghost. + the pad to ghost. - the #GstPadTemplate to use on the ghostpad. + the #GstPadTemplate to use on the ghostpad. - Create a new ghostpad without a target with the given direction. + Create a new ghostpad without a target with the given direction. A target can be set on the ghostpad later with the gst_ghost_pad_set_target() function. The created ghostpad will not have a padtemplate. + - a new #GstPad, or %NULL in + a new #GstPad, or %NULL in case of an error. @@ -18480,21 +26792,30 @@ case of an error. transfer-ownership="none" nullable="1" allow-none="1"> - the name of the new pad, or %NULL to assign a default name. + the name of the new pad, or %NULL to assign a default name. - the direction of the ghostpad + the direction of the ghostpad - Create a new ghostpad based on @templ, without setting a target. The + Create a new ghostpad based on @templ, without setting a target. The direction will be taken from the @templ. + - a new #GstPad, or %NULL in + a new #GstPad, or %NULL in case of an error. @@ -18503,126 +26824,179 @@ case of an error. transfer-ownership="none" nullable="1" allow-none="1"> - the name of the new pad, or %NULL to assign a default name + the name of the new pad, or %NULL to assign a default name - the #GstPadTemplate to create the ghostpad from. + the #GstPadTemplate to create the ghostpad from. - Invoke the default activate mode function of a ghost pad. + Invoke the default activate mode function of a ghost pad. + - %TRUE if the operation was successful. + %TRUE if the operation was successful. - the #GstPad to activate or deactivate. + the #GstPad to activate or deactivate. - the parent of @pad or %NULL + the parent of @pad or %NULL - the requested activation mode + the requested activation mode - whether the pad should be active or not. + whether the pad should be active or not. - Invoke the default activate mode function of a proxy pad that is + Invoke the default activate mode function of a proxy pad that is owned by a ghost pad. + - %TRUE if the operation was successful. + %TRUE if the operation was successful. - the #GstPad to activate or deactivate. + the #GstPad to activate or deactivate. - the parent of @pad or %NULL + the parent of @pad or %NULL - the requested activation mode + the requested activation mode - whether the pad should be active or not. + whether the pad should be active or not. - Finish initialization of a newly allocated ghost pad. + Finish initialization of a newly allocated ghost pad. This function is most useful in language bindings and when subclassing #GstGhostPad; plugin and application developers normally will not call this function. Call this function directly after a call to g_object_new (GST_TYPE_GHOST_PAD, "direction", @dir, ..., NULL). + - %TRUE if the construction succeeds, %FALSE otherwise. + %TRUE if the construction succeeds, %FALSE otherwise. - the newly allocated ghost pad + the newly allocated ghost pad - Get the target pad of @gpad. Unref target pad after usage. + Get the target pad of @gpad. Unref target pad after usage. + - the target #GstPad, can be + the target #GstPad, can be %NULL if the ghostpad has no target set. Unref target pad after usage. - the #GstGhostPad + the #GstGhostPad - Set the new target of the ghostpad @gpad. Any existing target + Set the new target of the ghostpad @gpad. Any existing target is unlinked and links to the new target are established. if @newtarget is %NULL the target will be cleared. + - %TRUE if the new target could be set. This function + %TRUE if the new target could be set. This function can return %FALSE when the internal pads could not be linked. - the #GstGhostPad + the #GstGhostPad - the new pad target + the new pad target @@ -18637,17 +27011,836 @@ is unlinked and links to the new target are established. if @newtarget is + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Macro to cast to a #GstIterator + + + + the #GstIterator value + + + + + Macro to get the cookie of a #GstIterator. The cookie of the +iterator is the value of the master cookie when the iterator +was created. +Whenever the iterator is iterated, the value is compared to the +value of the master cookie. If they are different, a concurrent +modification happened to the iterator and a resync is needed. + + + + the #GstIterator to get the cookie of + + + + + Macro to get the lock protecting the datastructure being iterated. + + + + the #GstIterator to get the lock of + + + + + Macro to get a pointer to where the master cookie is stored. The +master cookie protects the structure being iterated and gets updated +whenever the datastructure changes. + + + + the #GstIterator to get the master cookie of + + + - A GstIterator is used to retrieve multiple objects from another object in + A GstIterator is used to retrieve multiple objects from another object in a threadsafe way. Various GStreamer objects provide access to their internal structures using @@ -18703,111 +27898,157 @@ The basic use pattern of an iterator is as follows: g_value_unset (&amp;item); gst_iterator_free (it); ]| + - The function to copy the iterator + The function to copy the iterator - The function to get the next item in the iterator + The function to get the next item in the iterator - The function to be called for each item retrieved + The function to be called for each item retrieved - The function to call when a resync is needed. + The function to call when a resync is needed. - The function to call when the iterator is freed + The function to call when the iterator is freed - The iterator that is currently pushed with gst_iterator_push() + The iterator that is currently pushed with gst_iterator_push() - The type of the object that this iterator will return + The type of the object that this iterator will return - The lock protecting the data structure and the cookie. + The lock protecting the data structure and the cookie. - The cookie; the value of the master_cookie when this iterator was + The cookie; the value of the master_cookie when this iterator was created. - A pointer to the master cookie. + A pointer to the master cookie. - the size of the iterator + the size of the iterator - + - Create a new iterator. This function is mainly used for objects + Create a new iterator. This function is mainly used for objects implementing the next/resync/free function to iterate a data structure. For each item retrieved, the @item function is called with the lock held. The @free function is called when the iterator is freed. + - the new #GstIterator. + the new #GstIterator. MT safe. - the size of the iterator structure + the size of the iterator structure - #GType of children + #GType of children - pointer to a #GMutex. + pointer to a #GMutex. - pointer to a guint32 that is changed when the items in the + pointer to a guint32 that is changed when the items in the iterator changed. - copy function + copy function - function to get next item + function to get next item - function to call on each item retrieved + function to call on each item retrieved - function to resync the iterator + function to resync the iterator - function to free the iterator + function to free the iterator @@ -18816,7 +28057,9 @@ MT safe. - Create a new iterator designed for iterating @list. + Create a new iterator designed for iterating @list. The list you iterate is usually part of a data structure @owner and is protected with @lock. @@ -18828,107 +28071,151 @@ When a concurrent update to the list is performed, usually by @owner while holding @lock, @master_cookie will be updated. The iterator implementation will notice the update of the cookie and will return %GST_ITERATOR_RESYNC to the user of the iterator in the next call to gst_iterator_next(). + - the new #GstIterator for @list. + the new #GstIterator for @list. MT safe. - #GType of elements + #GType of elements - pointer to a #GMutex protecting the list. + pointer to a #GMutex protecting the list. - pointer to a guint32 that is incremented when the list + pointer to a guint32 that is incremented when the list is changed. - pointer to the list + pointer to the list - object owning the list + object owning the list - function to call on each item retrieved + function to call on each item retrieved - This #GstIterator is a convenient iterator for the common + This #GstIterator is a convenient iterator for the common case where a #GstIterator needs to be returned but only a single object has to be considered. This happens often for the #GstPadIterIntLinkFunction. + - the new #GstIterator for @object. + the new #GstIterator for @object. - #GType of the passed object + #GType of the passed object - object that this iterator should return + object that this iterator should return - Copy the iterator and its state. + Copy the iterator and its state. + - a new copy of @it. + a new copy of @it. - a #GstIterator + a #GstIterator - Create a new iterator from an existing iterator. The new iterator + Create a new iterator from an existing iterator. The new iterator will only return those elements that match the given compare function @func. The first parameter that is passed to @func is the #GValue of the current iterator element and the second parameter is @user_data. @func should return 0 for elements that should be included in the filtered iterator. When this iterator is freed, @it will also be freed. + - a new #GstIterator. + a new #GstIterator. MT safe. - The #GstIterator to filter + The #GstIterator to filter - the compare function to select elements + the compare function to select elements - user data passed to the compare function + user data passed to the compare function - Find the first element in @it that matches the compare function @func. + Find the first element in @it that matches the compare function @func. @func should return 0 when the element is found. The first parameter to @func will be the current element of the iterator and the second parameter will be @user_data. @@ -18938,42 +28225,55 @@ The iterator will not be freed. This function will return %FALSE if an error happened to the iterator or if the element wasn't found. + - Returns %TRUE if the element was found, else %FALSE. + Returns %TRUE if the element was found, else %FALSE. MT safe. - The #GstIterator to iterate + The #GstIterator to iterate - the compare function to use + the compare function to use - pointer to a #GValue where to store the result + pointer to a #GValue where to store the result - user data passed to the compare function + user data passed to the compare function - Folds @func over the elements of @iter. That is to say, @func will be called + Folds @func over the elements of @iter. That is to say, @func will be called as @func (object, @ret, @user_data) for each object in @it. The normal use of this procedure is to accumulate the results of operating on the objects in @ret. @@ -18988,43 +28288,59 @@ will cause fold to return %GST_ITERATOR_ERROR or %GST_ITERATOR_RESYNC as appropriate. The iterator will not be freed. + - A #GstIteratorResult, as described above. + A #GstIteratorResult, as described above. MT safe. - The #GstIterator to fold over + The #GstIterator to fold over - the fold function + the fold function - the seed value passed to the fold function + the seed value passed to the fold function - user data passed to the fold function + user data passed to the fold function - Iterate over all element of @it and call the given function @func for + Iterate over all element of @it and call the given function @func for each element. + - the result call to gst_iterator_fold(). The iterator will not be + the result call to gst_iterator_fold(). The iterator will not be freed. MT safe. @@ -19032,14 +28348,18 @@ MT safe. - The #GstIterator to iterate + The #GstIterator to iterate - the function to call for each element. + the function to call for each element. @@ -19047,27 +28367,36 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to the function + user data passed to the function - Free the iterator. + Free the iterator. MT safe. + - The #GstIterator to free + The #GstIterator to free - Get the next item from the iterator in @elem. + Get the next item from the iterator in @elem. Only when this function returns %GST_ITERATOR_OK, @elem will contain a valid value. @elem must have been initialized to the type of the iterator or @@ -19083,28 +28412,37 @@ concurrently updated. The user of @it should call gst_iterator_resync() to get the newly updated list. A return value of %GST_ITERATOR_ERROR indicates an unrecoverable fatal error. + - The result of the iteration. Unset @elem after usage. + The result of the iteration. Unset @elem after usage. MT safe. - The #GstIterator to iterate + The #GstIterator to iterate - pointer to hold next element + pointer to hold next element - Pushes @other iterator onto @it. All calls performed on @it are + Pushes @other iterator onto @it. All calls performed on @it are forwarded to @other. If @other returns %GST_ITERATOR_DONE, it is popped again and calls are handled by @it again. @@ -19115,70 +28453,96 @@ When gst_iterator_resync() is called on @it, @other will automatically be popped. MT safe. + - The #GstIterator to use + The #GstIterator to use - The #GstIterator to push + The #GstIterator to push - Resync the iterator. this function is mostly called + Resync the iterator. this function is mostly called after gst_iterator_next() returned %GST_ITERATOR_RESYNC. When an iterator was pushed on @it, it will automatically be popped again with this function. MT safe. + - The #GstIterator to resync + The #GstIterator to resync - This function will be called when creating a copy of @it and should + This function will be called when creating a copy of @it and should create a copy of all custom iterator fields or increase their reference counts. + - The original iterator + The original iterator - The copied iterator + The copied iterator - A function to be passed to gst_iterator_fold(). + A function to be passed to gst_iterator_fold(). + - %TRUE if the fold should continue, %FALSE if it should stop. + %TRUE if the fold should continue, %FALSE if it should stop. - the item to fold + the item to fold - a #GValue collecting the result + a #GValue collecting the result nullable="1" allow-none="1" closure="2"> - data passed to gst_iterator_fold() + data passed to gst_iterator_fold() - A function that is called by gst_iterator_foreach() for every element. + A function that is called by gst_iterator_foreach() for every element. + - The item + The item nullable="1" allow-none="1" closure="1"> - User data + User data - This function will be called when the iterator is freed. + This function will be called when the iterator is freed. Implementors of a #GstIterator should implement this function and pass it to the constructor of the custom iterator. The function will be called with the iterator lock held. + - the iterator + the iterator @@ -19232,65 +28610,91 @@ The function will be called with the iterator lock held. glib:type-name="GstIteratorItem" glib:get-type="gst_iterator_item_get_type" c:type="GstIteratorItem"> - The result of a #GstIteratorItemFunction. + The result of a #GstIteratorItemFunction. - Skip this item + Skip this item - Return item + Return item - Stop after this item. + Stop after this item. - The function that will be called after the next item of the iterator + The function that will be called after the next item of the iterator has been retrieved. This function can be used to skip items or stop the iterator. The function will be called with the iterator lock held. + - the result of the operation. + the result of the operation. - the iterator + the iterator - the item being retrieved. + the item being retrieved. - The function that will be called when the next element of the iterator + The function that will be called when the next element of the iterator should be retrieved. Implementors of a #GstIterator should implement this function and pass it to the constructor of the custom iterator. The function will be called with the iterator lock held. + - the result of the operation. + the result of the operation. - the iterator + the iterator - a pointer to hold the next item + a pointer to hold the next item @@ -19299,34 +28703,46 @@ The function will be called with the iterator lock held. glib:type-name="GstIteratorResult" glib:get-type="gst_iterator_result_get_type" c:type="GstIteratorResult"> - The result of gst_iterator_next(). + The result of gst_iterator_next(). - No more items in the iterator + No more items in the iterator - An item was retrieved + An item was retrieved - Datastructure changed while iterating + Datastructure changed while iterating - An error happened + An error happened - This function will be called whenever a concurrent update happened + This function will be called whenever a concurrent update happened to the iterated datastructure. The implementor of the iterator should restart the iterator from the beginning and clean up any state it might have. @@ -19334,12 +28750,15 @@ have. Implementors of a #GstIterator should implement this function and pass it to the constructor of the custom iterator. The function will be called with the iterator lock held. + - the iterator + the iterator @@ -19347,13 +28766,19 @@ The function will be called with the iterator lock held. - To be used in GST_PLUGIN_DEFINE if unsure about the licence. + To be used in GST_PLUGIN_DEFINE if unsure about the licence. + - GstLockFlags value alias for GST_LOCK_FLAG_READ | GST_LOCK_FLAG_WRITE + GstLockFlags value alias for GST_LOCK_FLAG_READ | GST_LOCK_FLAG_WRITE + glib:get-type="gst_library_error_get_type" c:type="GstLibraryError" glib:error-domain="gst-library-error-quark"> - Library errors are for errors from the library being used by elements + Library errors are for errors from the library being used by elements (initializing, finalizing, settings, ...) - a general error which doesn't fit in any other + a general error which doesn't fit in any other category. Make sure you add a custom message to the error call. - do not use this except as a placeholder for + do not use this except as a placeholder for deciding where to go while developing code. - used when the library could not be opened. + used when the library could not be opened. - used when the library could not be closed. + used when the library could not be closed. - used when the library doesn't accept settings. + used when the library doesn't accept settings. - used when the library generated an encoding error. + used when the library generated an encoding error. - the number of library error types. + the number of library error types. @@ -19417,66 +28858,93 @@ deciding where to go while developing code. glib:type-name="GstLockFlags" glib:get-type="gst_lock_flags_get_type" c:type="GstLockFlags"> - Flags used when locking miniobjects + Flags used when locking miniobjects - lock for read access + lock for read access - lock for write access + lock for write access - lock for exclusive access + lock for exclusive access - first flag that can be used for custom purposes + first flag that can be used for custom purposes - Function prototype for a logging function that can be registered with + Function prototype for a logging function that can be registered with gst_debug_add_log_function(). Use G_GNUC_NO_INSTRUMENT on that function. + - a #GstDebugCategory + a #GstDebugCategory - a #GstDebugLevel + a #GstDebugLevel - file name + file name - function name + function name - line number + line number - a #GObject + a #GObject - the message + the message nullable="1" allow-none="1" closure="7"> - user data for the log function + user data for the log function + + Transform four characters into a #guint32 fourcc value with host +endianness. + +|[ +guint32 fourcc = GST_MAKE_FOURCC ('M', 'J', 'P', 'G'); +]| + + + + the first character + + + the second character + + + the third character + + + the fourth character + + + - GstMapFlags value alias for GST_MAP_READ | GST_MAP_WRITE + GstMapFlags value alias for GST_MAP_READ | GST_MAP_WRITE + + + Output a hexdump of @data. + +There is no need to finish the end of the message string with a newline +character, a newline character will be added automatically. + + + + message string to log with the data + + + pointer to the data to output + + + length of the data to output + + + + + Output a logging message belonging to the given object in the default category. + +There is no need to finish the end of the message string with a newline +character, a newline character will be added automatically. + + + + the #GObject the message belongs to + + + message string to log with the data + + + pointer to the data to output + + + length of the data to output + + + + + + + + + + + + A flags word containing #GstMemoryFlags flags set on @mem + + + + a #GstMemory. + + + + + Gives the status of a specific flag on a @mem. + + + + a #GstMemory. + + + the #GstMemoryFlags to check. + + + + + Clear a specific flag on a @mem. + + + + a #GstMemory. + + + the #GstMemoryFlags to clear. + + + + + Check if @mem can't be mapped via gst_memory_map() without any preconditions + + + + a #GstMemory. + + + + + Check if @mem cannot be shared between buffers + + + + a #GstMemory. + + + + + Check if @mem is physically contiguous. + + + + a #GstMemory. + + + + + Check if @mem is readonly. + + + + a #GstMemory. + + + + + Check if the padding in @mem is 0 filled. + + + + a #GstMemory. + + + + + Check if the prefix in @mem is 0 filled. + + + + a #GstMemory. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Get the sequence number of @message. + + + + a #GstMessage + + + + + + + + + + + + Get the object that posted @message. + + + + a #GstMessage + + + + + Get the name of the object that posted @message. Returns "(NULL)" if +the message has no source object set. + + + + a #GstMessage + + + + + Get the timestamp of @message. This is the timestamp when the message +was created. + + + + a #GstMessage + + + + + Get the #GstMessageType of @message. + + + + a #GstMessage + + + + + Check if the message is in the extended message group + + + + a #GstMessage + + + + + Get a constant string representation of the #GstMessageType of @message. + + + + a #GstMessage + + + + + + + + + + + + + + + + + + + + + + + + + + A flags word containing #GstMetaFlags flags set on @meta + + + + a #GstMeta. + + + + + Gives the status of a specific flag on a metadata. + + + + a #GstMeta. + + + the #GstMetaFlags to check. + + + + + Sets a metadata flag on a metadata. + + + + a #GstMeta. + + + the #GstMetaFlags to set. + + + + + Clears a metadata flag. + + + + a #GstMeta. + + + the #GstMetaFlags to clear. + + + - This metadata stays relevant as long as memory layout is unchanged. + This metadata stays relevant as long as memory layout is unchanged. + + + Check if the transform type is a copy transform + + + + a transform type + + + + + + + + + + + + + + + + + + + + + + + + + + This macro returns the entire set of flags for the mini-object. + + + + MiniObject to return flags for. + + + + + This macro checks to see if the given flag is set. + + + + MiniObject to check for flags. + + + Flag to check for + + + + + This macro sets the given bits. + + + + MiniObject to set flag in. + + + Flag to set, can by any number of bits in guint32. + + + + + This macro unsets the given bits. + + + + MiniObject to unset flag in. + + + Flag to set, must be a single bit in guint32. + + + + + Check if @obj is lockable. A lockable object can be locked and unlocked with +gst_mini_object_lock() and gst_mini_object_unlock(). + + + + a #GstMiniObject + + + + + Get access to the reference count field of the mini-object. + + + + a #GstMiniObject + + + + + Get the reference count value of the mini-object. + + + + a #GstMiniObject + + + + + This macro returns the type of the mini-object. + + + + MiniObject to return type for. + + + - Constant that defines one GStreamer millisecond. + Constant that defines one GStreamer millisecond. + - Flags used when mapping memory + Flags used when mapping memory - map for read access + map for read access - map for write access + map for write access - first flag that can be used for custom purposes + first flag that can be used for custom purposes - A structure containing the result of a map operation such as + A structure containing the result of a map operation such as gst_memory_map(). It contains the data and size. + - a pointer to the mapped memory + a pointer to the mapped memory - flags used when mapping the memory + flags used when mapping the memory - a pointer to the mapped data + a pointer to the mapped data - the valid size in @data + the valid size in @data - the maximum bytes in @data + the maximum bytes in @data - extra private user_data that the implementation of the memory + extra private user_data that the implementation of the memory can use to store extra info. - + - + @@ -19571,7 +29767,9 @@ gst_memory_map(). It contains the data and size. glib:type-name="GstMemory" glib:get-type="gst_memory_get_type" c:symbol-prefix="memory"> - GstMemory is a lightweight refcounted object that wraps a region of memory. + GstMemory is a lightweight refcounted object that wraps a region of memory. They are typically used to manage the data of a #GstBuffer. A GstMemory object has an allocated region of memory of maxsize. The maximum @@ -19607,72 +29805,104 @@ memory with an existing memory block at a custom offset and with a custom size. Memory can be efficiently merged when gst_memory_is_span() returns %TRUE. + - parent structure + parent structure - pointer to the #GstAllocator + pointer to the #GstAllocator - parent memory block + parent memory block - the maximum size allocated + the maximum size allocated - the alignment of the memory + the alignment of the memory - the offset where valid data starts + the offset where valid data starts - the size of valid data + the size of valid data - Allocate a new memory block that wraps the given @data. + Allocate a new memory block that wraps the given @data. The prefix/padding must be filled with 0 if @flags contains #GST_MEMORY_FLAG_ZERO_PREFIXED and #GST_MEMORY_FLAG_ZERO_PADDED respectively. + - a new #GstMemory. + a new #GstMemory. - #GstMemoryFlags + #GstMemoryFlags - data to + data to wrap - allocated size of @data + allocated size of @data - offset in @data + offset in @data - size of valid data + size of valid data - user_data + user_data - called with @user_data when the memory is freed + called with @user_data when the memory is freed - Return a copy of @size bytes from @mem starting from @offset. This copy is + Return a copy of @size bytes from @mem starting from @offset. This copy is guaranteed to be writable. @size can be set to -1 to return a copy from @offset to the end of the memory region. + - a new #GstMemory. + a new #GstMemory. - a #GstMemory + a #GstMemory - offset to copy from + offset to copy from - size to copy, or -1 to copy to the end of the memory region + size to copy, or -1 to copy to the end of the memory region - Get the current @size, @offset and @maxsize of @mem. + Get the current @size, @offset and @maxsize of @mem. + - the current sizes of @mem + the current sizes of @mem - a #GstMemory + a #GstMemory transfer-ownership="full" optional="1" allow-none="1"> - pointer to offset + pointer to offset transfer-ownership="full" optional="1" allow-none="1"> - pointer to maxsize + pointer to maxsize - Initializes a newly allocated @mem with the given parameters. This function + Initializes a newly allocated @mem with the given parameters. This function will call gst_mini_object_init() with the default memory parameters. + - a #GstMemory + a #GstMemory - #GstMemoryFlags + #GstMemoryFlags - the #GstAllocator + the #GstAllocator - the parent of @mem + the parent of @mem - the total size of the memory + the total size of the memory - the alignment of the memory + the alignment of the memory - The offset in the memory + The offset in the memory - the size of valid data in the memory + the size of valid data in the memory - Check if @mem1 and mem2 share the memory with a common parent memory object + Check if @mem1 and mem2 share the memory with a common parent memory object and that the memory is contiguous. If this is the case, the memory of @mem1 and @mem2 can be merged efficiently by performing gst_memory_share() on the parent object from the returned @offset. + - %TRUE if the memory is contiguous and of a common parent. + %TRUE if the memory is contiguous and of a common parent. - a #GstMemory + a #GstMemory - a #GstMemory + a #GstMemory - a pointer to a result offset + a pointer to a result offset - Check if @mem if allocated with an allocator for @mem_type. + Check if @mem if allocated with an allocator for @mem_type. + - %TRUE if @mem was allocated from an allocator for @mem_type. + %TRUE if @mem was allocated from an allocator for @mem_type. - a #GstMemory + a #GstMemory - a memory type + a memory type - Create a #GstMemory object that is mapped with @flags. If @mem is mappable + Create a #GstMemory object that is mapped with @flags. If @mem is mappable with @flags, this function returns the mapped @mem directly. Otherwise a mapped copy of @mem is returned. This function takes ownership of old @mem and returns a reference to a new #GstMemory. + - a #GstMemory object mapped + a #GstMemory object mapped with @flags or %NULL when a mapping is not possible. - a #GstMemory + a #GstMemory - pointer for info + pointer for info - mapping flags + mapping flags - Fill @info with the pointer and sizes of the memory in @mem that can be + Fill @info with the pointer and sizes of the memory in @mem that can be accessed according to @flags. This function can return %FALSE for various reasons: @@ -19870,113 +30176,160 @@ until gst_memory_unmap() is called. For each gst_memory_map() call, a corresponding gst_memory_unmap() call should be done. + - %TRUE if the map operation was successful. + %TRUE if the map operation was successful. - a #GstMemory + a #GstMemory - pointer for info + pointer for info - mapping flags + mapping flags - Resize the memory region. @mem should be writable and offset + size should be + Resize the memory region. @mem should be writable and offset + size should be less than the maxsize of @mem. #GST_MEMORY_FLAG_ZERO_PREFIXED and #GST_MEMORY_FLAG_ZERO_PADDED will be cleared when offset or padding is increased respectively. + - a #GstMemory + a #GstMemory - a new offset + a new offset - a new size + a new size - Return a shared copy of @size bytes from @mem starting from @offset. No + Return a shared copy of @size bytes from @mem starting from @offset. No memory copy is performed and the memory region is simply shared. The result is guaranteed to be non-writable. @size can be set to -1 to return a shared copy from @offset to the end of the memory region. + - a new #GstMemory. + a new #GstMemory. - a #GstMemory + a #GstMemory - offset to share from + offset to share from - size to share, or -1 to share to the end of the memory region + size to share, or -1 to share to the end of the memory region - Release the memory obtained with gst_memory_map() + Release the memory obtained with gst_memory_map() + - a #GstMemory + a #GstMemory - a #GstMapInfo + a #GstMapInfo - Copy @size bytes from @mem starting at @offset and return them wrapped in a + Copy @size bytes from @mem starting at @offset and return them wrapped in a new GstMemory object. If @size is set to -1, all bytes starting at @offset are copied. + - a new #GstMemory object wrapping a copy of the requested region in + a new #GstMemory object wrapping a copy of the requested region in @mem. - a #GstMemory + a #GstMemory - an offset + an offset - a size or -1 + a size or -1 @@ -19985,170 +30338,242 @@ If @size is set to -1, all bytes starting at @offset are copied. glib:type-name="GstMemoryFlags" glib:get-type="gst_memory_flags_get_type" c:type="GstMemoryFlags"> - Flags for wrapped memory. + Flags for wrapped memory. - memory is readonly. It is not allowed to map the + memory is readonly. It is not allowed to map the memory with #GST_MAP_WRITE. - memory must not be shared. Copies will have to be + memory must not be shared. Copies will have to be made when this memory needs to be shared between buffers. - the memory prefix is filled with 0 bytes + the memory prefix is filled with 0 bytes - the memory padding is filled with 0 bytes + the memory padding is filled with 0 bytes - the memory is physically contiguous. (Since: 1.2) + the memory is physically contiguous. (Since: 1.2) - the memory can't be mapped via gst_memory_map() without any preconditions. (Since: 1.2) + the memory can't be mapped via gst_memory_map() without any preconditions. (Since: 1.2) - first flag that can be used for custom purposes + first flag that can be used for custom purposes - Check if @mem1 and @mem2 occupy contiguous memory and return the offset of + Check if @mem1 and @mem2 occupy contiguous memory and return the offset of @mem1 in the parent buffer in @offset. + - %TRUE if @mem1 and @mem2 are in contiguous memory. + %TRUE if @mem1 and @mem2 are in contiguous memory. - a #GstMemory + a #GstMemory - a #GstMemory + a #GstMemory - a result offset + a result offset - Get the memory of @mem that can be accessed according to the mode specified + Get the memory of @mem that can be accessed according to the mode specified in @info's flags. The function should return a pointer that contains at least @maxsize bytes. + - a pointer to memory of which at least @maxsize bytes can be + a pointer to memory of which at least @maxsize bytes can be accessed according to the access pattern in @info's flags. - a #GstMemory + a #GstMemory - the #GstMapInfo to map with + the #GstMapInfo to map with - size to map + size to map - Get the memory of @mem that can be accessed according to the mode specified + Get the memory of @mem that can be accessed according to the mode specified in @flags. The function should return a pointer that contains at least @maxsize bytes. + - a pointer to memory of which at least @maxsize bytes can be + a pointer to memory of which at least @maxsize bytes can be accessed according to the access pattern in @flags. - a #GstMemory + a #GstMemory - size to map + size to map - access mode for the memory + access mode for the memory - Share @size bytes from @mem starting at @offset and return them wrapped in a + Share @size bytes from @mem starting at @offset and return them wrapped in a new GstMemory object. If @size is set to -1, all bytes starting at @offset are shared. This function does not make a copy of the bytes in @mem. + - a new #GstMemory object sharing the requested region in @mem. + a new #GstMemory object sharing the requested region in @mem. - a #GstMemory + a #GstMemory - an offset + an offset - a size or -1 + a size or -1 - Return the pointer previously retrieved with gst_memory_map() with @info. + Return the pointer previously retrieved with gst_memory_map() with @info. + - a #GstMemory + a #GstMemory - a #GstMapInfo + a #GstMapInfo - Return the pointer previously retrieved with gst_memory_map(). + Return the pointer previously retrieved with gst_memory_map(). + - a #GstMemory + a #GstMemory @@ -20158,7 +30583,9 @@ shared. This function does not make a copy of the bytes in @mem. glib:type-name="GstMessage" glib:get-type="gst_message_get_type" c:symbol-prefix="message"> - Messages are implemented as a subclass of #GstMiniObject with a generic + Messages are implemented as a subclass of #GstMiniObject with a generic #GstStructure as the content. This allows for writing custom messages without requiring an API change while allowing a wide range of different types of messages. @@ -20173,24 +30600,35 @@ The basic use pattern of posting a message on a #GstBus is as follows: A #GstElement usually posts messages on the bus provided by the parent container using gst_element_post_message(). + - the parent structure + the parent structure - the #GstMessageType of the message + the #GstMessageType of the message - the timestamp of the message + the timestamp of the message - the src of the message + the src of the message - the sequence number of the message + the sequence number of the message @@ -20201,10 +30639,15 @@ container using gst_element_post_message(). - Create a new application-typed message. GStreamer will never create these + Create a new application-typed message. GStreamer will never create these messages; they are a gift from us to you. Enjoy. + - The new application message. + The new application message. MT safe. @@ -20214,11 +30657,15 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - the structure for the message. The message + the structure for the message. The message will take ownership of the structure. @@ -20226,13 +30673,18 @@ MT safe. - The message is posted when elements completed an ASYNC state change. + The message is posted when elements completed an ASYNC state change. @running_time contains the time of the desired running_time when this elements goes to PLAYING. A value of #GST_CLOCK_TIME_NONE for @running_time means that the element has no clock interaction and thus doesn't care about the running_time of the pipeline. + - The new async_done message. + The new async_done message. MT safe. @@ -20242,20 +30694,29 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - the desired running_time + the desired running_time - This message is posted by elements when they start an ASYNC state change. + This message is posted by elements when they start an ASYNC state change. + - The new async_start message. + The new async_start message. MT safe. @@ -20265,14 +30726,18 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - Create a new buffering message. This message can be posted by an element that + Create a new buffering message. This message can be posted by an element that needs to buffer data before it can continue processing. @percent should be a value between 0 and 100. A value of 100 means that the buffering completed. @@ -20284,8 +30749,11 @@ message with @percent set to 100, which can happen after the pipeline completed prerolling. MT safe. + - The new buffering message. + The new buffering message. @@ -20293,25 +30761,34 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The buffering percent + The buffering percent - Create a clock lost message. This message is posted whenever the + Create a clock lost message. This message is posted whenever the clock is not valid anymore. If this message is posted by the pipeline, the pipeline will select a new clock again when it goes to PLAYING. It might therefore be needed to set the pipeline to PAUSED and PLAYING again. + - The new clock lost message. + The new clock lost message. MT safe. @@ -20321,25 +30798,34 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - the clock that was lost + the clock that was lost - Create a clock provide message. This message is posted whenever an + Create a clock provide message. This message is posted whenever an element is ready to provide a clock or lost its ability to provide a clock (maybe because it paused or became EOS). This message is mainly used internally to manage the clock selection. + - the new provide clock message. + the new provide clock message. MT safe. @@ -20349,46 +30835,63 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - the clock it provides + the clock it provides - %TRUE if the sender can provide a clock + %TRUE if the sender can provide a clock - Create a new custom-typed message. This can be used for anything not + Create a new custom-typed message. This can be used for anything not handled by other message-specific functions to pass a message to the app. The structure field can be %NULL. + - The new message. + The new message. MT safe. - The #GstMessageType to distinguish messages + The #GstMessageType to distinguish messages - The object originating the message. + The object originating the message. - the structure for the + the structure for the message. The message will take ownership of the structure. @@ -20397,20 +30900,29 @@ MT safe. - Creates a new device-added message. The device-added message is produced by + Creates a new device-added message. The device-added message is produced by #GstDeviceProvider or a #GstDeviceMonitor. They announce the appearance of monitored devices. + - a newly allocated #GstMessage + a newly allocated #GstMessage - The #GstObject that created the message + The #GstObject that created the message - The new #GstDevice + The new #GstDevice @@ -20418,20 +30930,29 @@ of monitored devices. - Creates a new device-changed message. The device-changed message is produced + Creates a new device-changed message. The device-changed message is produced by #GstDeviceProvider or a #GstDeviceMonitor. They announce that a device properties has changed and @device represent the new modified version of @changed_device. + - a newly allocated #GstMessage + a newly allocated #GstMessage - The #GstObject that created the message + The #GstObject that created the message - The newly created device representing @replaced_device + The newly created device representing @replaced_device with its new configuration. @@ -20443,32 +30964,46 @@ properties has changed and @device represent the new modified version of @change - Creates a new device-removed message. The device-removed message is produced + Creates a new device-removed message. The device-removed message is produced by #GstDeviceProvider or a #GstDeviceMonitor. They announce the disappearance of monitored devices. + - a newly allocated #GstMessage + a newly allocated #GstMessage - The #GstObject that created the message + The #GstObject that created the message - The removed #GstDevice + The removed #GstDevice - Create a new duration changed message. This message is posted by elements + Create a new duration changed message. This message is posted by elements that know the duration of a stream when the duration changes. This message is received by bins and is used to calculate the total duration of a pipeline. + - The new duration-changed message. + The new duration-changed message. MT safe. @@ -20478,18 +31013,25 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - Create a new element-specific message. This is meant as a generic way of + Create a new element-specific message. This is meant as a generic way of allowing one-way communication from an element to an application, for example "the firewire cable was unplugged". The format of the message should be documented in the element's documentation. The structure field can be %NULL. + - The new element message. + The new element message. MT safe. @@ -20499,22 +31041,31 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The structure for the + The structure for the message. The message will take ownership of the structure. - Create a new eos message. This message is generated and posted in + Create a new eos message. This message is generated and posted in the sink elements of a GstBin. The bin will only forward the EOS message to the application if all sinks have posted an EOS message. + - The new eos message. + The new eos message. MT safe. @@ -20524,18 +31075,25 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - Create a new error message. The message will copy @error and + Create a new error message. The message will copy @error and @debug. This message is posted by element when a fatal event occurred. The pipeline will probably (partially) stop. The application receiving this message should stop the pipeline. + - the new error message. + the new error message. MT safe. @@ -20545,15 +31103,21 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The GError for this message. + The GError for this message. - A debugging string. + A debugging string. @@ -20561,12 +31125,17 @@ MT safe. - Create a new error message. The message will copy @error and + Create a new error message. The message will copy @error and @debug. This message is posted by element when a fatal event occurred. The pipeline will probably (partially) stop. The application receiving this message should stop the pipeline. + - the new error message. + the new error message. @@ -20574,22 +31143,30 @@ receiving this message should stop the pipeline. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The GError for this message. + The GError for this message. - A debugging string. + A debugging string. - A GstStructure with details + A GstStructure with details @@ -20597,9 +31174,14 @@ receiving this message should stop the pipeline. - This message is posted when an element has a new local #GstContext. + This message is posted when an element has a new local #GstContext. + - The new have-context message. + The new have-context message. MT safe. @@ -20609,20 +31191,29 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - the context + the context - Create a new info message. The message will make copies of @error and + Create a new info message. The message will make copies of @error and @debug. + - the new info message. + the new info message. MT safe. @@ -20632,15 +31223,21 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The GError for this message. + The GError for this message. - A debugging string. + A debugging string. @@ -20648,10 +31245,15 @@ MT safe. - Create a new info message. The message will make copies of @error and + Create a new info message. The message will make copies of @error and @debug. + - the new warning message. + the new warning message. @@ -20659,31 +31261,44 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The GError for this message. + The GError for this message. - A debugging string. + A debugging string. - A GstStructure with details + A GstStructure with details - This message can be posted by elements when their latency requirements have + This message can be posted by elements when their latency requirements have changed. + - The new latency message. + The new latency message. MT safe. @@ -20693,7 +31308,9 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. @@ -20701,9 +31318,14 @@ MT safe. - This message is posted when an element needs a specific #GstContext. + This message is posted when an element needs a specific #GstContext. + - The new need-context message. + The new need-context message. MT safe. @@ -20713,21 +31335,30 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The context type that is needed + The context type that is needed - Create a new clock message. This message is posted whenever the + Create a new clock message. This message is posted whenever the pipeline selects a new clock for the pipeline. + - The new new clock message. + The new new clock message. MT safe. @@ -20737,40 +31368,57 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - the new selected clock + the new selected clock - Progress messages are posted by elements when they use an asynchronous task + Progress messages are posted by elements when they use an asynchronous task to perform actions triggered by a state change. @code contains a well defined string describing the action. @text should contain a user visible string detailing the current action. + - The new qos message. + The new qos message. - The object originating the message. + The object originating the message. - a #GstProgressType + a #GstProgressType - a progress code + a progress code - free, user visible text describing the progress + free, user visible text describing the progress @@ -20778,30 +31426,41 @@ to perform actions triggered by a state change. + - a newly allocated #GstMessage + a newly allocated #GstMessage - The #GstObject whose property changed (may or may not be a #GstElement) + The #GstObject whose property changed (may or may not be a #GstElement) - name of the property that changed + name of the property that changed - new property value, or %NULL + new property value, or %NULL - A QOS message is posted on the bus whenever an element decides to drop a + A QOS message is posted on the bus whenever an element decides to drop a buffer because of QoS reasons or whenever it changes its processing strategy because of QoS reasons (quality adjustments such as processing at lower accuracy). @@ -20814,35 +31473,50 @@ events received from a downstream element (!live). respective running-time, stream-time, timestamp and duration of the (dropped) buffer that generated the QoS event. Values can be left to GST_CLOCK_TIME_NONE when unknown. + - The new qos message. + The new qos message. MT safe. - The object originating the message. + The object originating the message. - if the message was generated by a live element + if the message was generated by a live element - the running time of the buffer that generated the message + the running time of the buffer that generated the message - the stream time of the buffer that generated the message + the stream time of the buffer that generated the message - the timestamps of the buffer that generated the message + the timestamps of the buffer that generated the message - the duration of the buffer that generated the message + the duration of the buffer that generated the message @@ -20850,7 +31524,9 @@ MT safe. - Creates a new redirect message and adds a new entry to it. Redirect messages + Creates a new redirect message and adds a new entry to it. Redirect messages are posted when an element detects that the actual data has to be retrieved from a different location. This is useful if such a redirection cannot be handled inside a source element, for example when HTTP 302/303 redirects @@ -20875,42 +31551,58 @@ bitrate tag. The specified location string is copied. However, ownership over the tag list and structure are transferred to the message. + - a newly allocated #GstMessage + a newly allocated #GstMessage - The #GstObject whose property changed (may or may not be a #GstElement) + The #GstObject whose property changed (may or may not be a #GstElement) - location string for the new entry + location string for the new entry - tag list for the new entry + tag list for the new entry - structure for the new entry + structure for the new entry - This message can be posted by elements when they want to have their state + This message can be posted by elements when they want to have their state changed. A typical use case would be an audio server that wants to pause the pipeline because a higher priority stream is being played. + - the new request state message. + the new request state message. MT safe. @@ -20920,21 +31612,30 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The new requested state + The new requested state - This message is posted when the pipeline running-time should be reset to + This message is posted when the pipeline running-time should be reset to @running_time, like after a flushing seek. + - The new reset_time message. + The new reset_time message. MT safe. @@ -20944,23 +31645,32 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - the requested running-time + the requested running-time - Create a new segment done message. This message is posted by elements that + Create a new segment done message. This message is posted by elements that finish playback of a segment as a result of a segment seek. This message is received by the application after all elements that posted a segment_start have posted the segment_done. + - the new segment done message. + the new segment done message. MT safe. @@ -20970,27 +31680,38 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The format of the position being done + The format of the position being done - The position of the segment being done + The position of the segment being done - Create a new segment message. This message is posted by elements that + Create a new segment message. This message is posted by elements that start playback of a segment as a result of a segment seek. This message is not received by the application but is used for maintenance reasons in container elements. + - the new segment start message. + the new segment start message. MT safe. @@ -21000,25 +31721,36 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The format of the position being played + The format of the position being played - The position of the segment being played + The position of the segment being played - Create a state change message. This message is posted whenever an element + Create a state change message. This message is posted whenever an element changed its state. + - the new state change message. + the new state change message. MT safe. @@ -21028,30 +31760,43 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - the previous state + the previous state - the new (current) state + the new (current) state - the pending (target) state + the pending (target) state - Create a state dirty message. This message is posted whenever an element + Create a state dirty message. This message is posted whenever an element changed its state asynchronously and is used internally to update the states of container objects. + - the new state dirty message. + the new state dirty message. MT safe. @@ -21061,62 +31806,87 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message + The object originating the message - This message is posted by elements when they complete a part, when @intermediate set + This message is posted by elements when they complete a part, when @intermediate set to %TRUE, or a complete step operation. @duration will contain the amount of time (in GST_FORMAT_TIME) of the stepped @amount of media in format @format. + - the new step_done message. + the new step_done message. MT safe. - The object originating the message. + The object originating the message. - the format of @amount + the format of @amount - the amount of stepped data + the amount of stepped data - the rate of the stepped amount + the rate of the stepped amount - is this an flushing step + is this an flushing step - is this an intermediate step + is this an intermediate step - the duration of the data + the duration of the data - the step caused EOS + the step caused EOS - This message is posted by elements when they accept or activate a new step + This message is posted by elements when they accept or activate a new step event for @amount in @format. @active is set to %FALSE when the element accepted the new step event and has @@ -21126,39 +31896,56 @@ queued it for execution in the streaming threads. is now ready to start executing the step in the streaming thread. After this message is emitted, the application can queue a new step operation in the element. + - The new step_start message. + The new step_start message. MT safe. - The object originating the message. + The object originating the message. - if the step is active or queued + if the step is active or queued - the format of @amount + the format of @amount - the amount of stepped data + the amount of stepped data - the rate of the stepped amount + the rate of the stepped amount - is this an flushing step + is this an flushing step - is this an intermediate step + is this an intermediate step @@ -21166,30 +31953,44 @@ MT safe. - Creates a new stream-collection message. The message is used to announce new + Creates a new stream-collection message. The message is used to announce new #GstStreamCollection + - a newly allocated #GstMessage + a newly allocated #GstMessage - The #GstObject that created the message + The #GstObject that created the message - The #GstStreamCollection + The #GstStreamCollection - Create a new stream_start message. This message is generated and posted in + Create a new stream_start message. This message is generated and posted in the sink elements of a GstBin. The bin will only forward the STREAM_START message to the application if all sinks have posted an STREAM_START message. + - The new stream_start message. + The new stream_start message. MT safe. @@ -21199,32 +32000,45 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - Create a new stream status message. This message is posted when a streaming + Create a new stream status message. This message is posted when a streaming thread is created/destroyed or when the state changed. + - the new stream status message. + the new stream status message. MT safe. - The object originating the message. + The object originating the message. - The stream status type. + The stream status type. - the owner element of @src. + the owner element of @src. @@ -21232,7 +32046,9 @@ MT safe. - Creates a new steams-selected message. The message is used to announce + Creates a new steams-selected message. The message is used to announce that an array of streams has been selected. This is generally in response to a #GST_EVENT_SELECT_STREAMS event, or when an element (such as decodebin3) makes an initial selection of streams. @@ -21242,30 +32058,42 @@ belong to. Users of gst_message_new_streams_selected() can add the selected streams with gst_message_streams_selected_add(). + - a newly allocated #GstMessage + a newly allocated #GstMessage - The #GstObject that created the message + The #GstObject that created the message - The #GstStreamCollection + The #GstStreamCollection - Create a new structure change message. This message is posted when the + Create a new structure change message. This message is posted when the structure of a pipeline is in the process of being changed, for example when pads are linked or unlinked. @src should be the sinkpad that unlinked or linked. + - the new structure change message. + the new structure change message. MT safe. @@ -21275,28 +32103,41 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The change type. + The change type. - The owner element of @src. + The owner element of @src. - Whether the structure change is busy. + Whether the structure change is busy. - Create a new tag message. The message will take ownership of the tag list. + Create a new tag message. The message will take ownership of the tag list. The message is posted by elements that discovered a new taglist. + - the new tag message. + the new tag message. MT safe. @@ -21306,44 +32147,64 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - the tag list for the message. + the tag list for the message. - Create a new TOC message. The message is posted by elements + Create a new TOC message. The message is posted by elements that discovered or updated a TOC. + - a new TOC message. + a new TOC message. MT safe. - the object originating the message. + the object originating the message. - #GstToc structure for the message. + #GstToc structure for the message. - whether TOC was updated or not. + whether TOC was updated or not. - Create a new warning message. The message will make copies of @error and + Create a new warning message. The message will make copies of @error and @debug. + - the new warning message. + the new warning message. MT safe. @@ -21353,15 +32214,21 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The GError for this message. + The GError for this message. - A debugging string. + A debugging string. @@ -21369,10 +32236,15 @@ MT safe. - Create a new warning message. The message will make copies of @error and + Create a new warning message. The message will make copies of @error and @debug. + - the new warning message. + the new warning message. @@ -21380,22 +32252,30 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - The object originating the message. + The object originating the message. - The GError for this message. + The GError for this message. - A debugging string. + A debugging string. - A GstStructure with details + A GstStructure with details @@ -21403,34 +32283,45 @@ MT safe. - Creates and appends a new entry. + Creates and appends a new entry. The specified location string is copied. However, ownership over the tag list and structure are transferred to the message. + - a #GstMessage of type %GST_MESSAGE_REDIRECT + a #GstMessage of type %GST_MESSAGE_REDIRECT - location string for the new entry + location string for the new entry - tag list for the new entry + tag list for the new entry - structure for the new entry + structure for the new entry @@ -21438,19 +32329,26 @@ list and structure are transferred to the message. + - the number of entries stored in the message + the number of entries stored in the message - a #GstMessage of type %GST_MESSAGE_REDIRECT + a #GstMessage of type %GST_MESSAGE_REDIRECT - Retrieve the sequence number of a message. + Retrieve the sequence number of a message. Messages have ever-incrementing sequence numbers, which may also be set explicitly via gst_message_set_seqnum(). Sequence numbers are typically used @@ -21462,24 +32360,34 @@ it is not required. Note that events and messages share the same sequence number incrementor; two events or messages will never have the same sequence number unless that correspondence was made explicitly. + - The message's sequence number. + The message's sequence number. MT safe. - A #GstMessage. + A #GstMessage. - Extracts the object managing the streaming thread from @message. + Extracts the object managing the streaming thread from @message. + - a GValue containing the object that manages the + a GValue containing the object that manages the streaming thread. This object is usually of type GstTask but other types can be added in the future. The object remains valid as long as @message is valid. @@ -21487,15 +32395,22 @@ valid. - A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS. + A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS. - Access the structure of the message. + Access the structure of the message. + - The structure of the message. The + The structure of the message. The structure is still owned by the message, which means that you should not free it and that the pointer becomes invalid when you free the message. @@ -21504,40 +32419,56 @@ MT safe. - The #GstMessage. + The #GstMessage. - Checks if @message has the given @name. This function is usually used to + Checks if @message has the given @name. This function is usually used to check the name of a custom message. + - %TRUE if @name matches the name of the message structure. + %TRUE if @name matches the name of the message structure. - The #GstMessage. + The #GstMessage. - name to check + name to check - Extract the running_time from the async_done message. + Extract the running_time from the async_done message. MT safe. + - A valid #GstMessage of type GST_MESSAGE_ASYNC_DONE. + A valid #GstMessage of type GST_MESSAGE_ASYNC_DONE. transfer-ownership="full" optional="1" allow-none="1"> - Result location for the running_time or %NULL + Result location for the running_time or %NULL - Extracts the buffering percent from the GstMessage. see also + Extracts the buffering percent from the GstMessage. see also gst_message_new_buffering(). MT safe. + - A valid #GstMessage of type GST_MESSAGE_BUFFERING. + A valid #GstMessage of type GST_MESSAGE_BUFFERING. transfer-ownership="full" optional="1" allow-none="1"> - Return location for the percent. + Return location for the percent. - Extracts the buffering stats values from @message. + Extracts the buffering stats values from @message. + - A valid #GstMessage of type GST_MESSAGE_BUFFERING. + A valid #GstMessage of type GST_MESSAGE_BUFFERING. transfer-ownership="full" optional="1" allow-none="1"> - a buffering mode, or %NULL + a buffering mode, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the average input rate, or %NULL + the average input rate, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the average output rate, or %NULL + the average output rate, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - amount of buffering time left in + amount of buffering time left in milliseconds, or %NULL @@ -21628,16 +32581,21 @@ MT safe. - Extracts the lost clock from the GstMessage. + Extracts the lost clock from the GstMessage. The clock object returned remains valid until the message is freed. MT safe. + - A valid #GstMessage of type GST_MESSAGE_CLOCK_LOST. + A valid #GstMessage of type GST_MESSAGE_CLOCK_LOST. transfer-ownership="none" optional="1" allow-none="1"> - a pointer to hold the lost clock + a pointer to hold the lost clock - Extracts the clock and ready flag from the GstMessage. + Extracts the clock and ready flag from the GstMessage. The clock object returned remains valid until the message is freed. MT safe. + - A valid #GstMessage of type GST_MESSAGE_CLOCK_PROVIDE. + A valid #GstMessage of type GST_MESSAGE_CLOCK_PROVIDE. transfer-ownership="none" optional="1" allow-none="1"> - a pointer to hold a clock + a pointer to hold a clock object, or %NULL @@ -21681,7 +32648,9 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - a pointer to hold the ready flag, or %NULL + a pointer to hold the ready flag, or %NULL @@ -21689,14 +32658,21 @@ MT safe. - Parse a context type from an existing GST_MESSAGE_NEED_CONTEXT message. + Parse a context type from an existing GST_MESSAGE_NEED_CONTEXT message. + - a #gboolean indicating if the parsing succeeded. + a #gboolean indicating if the parsing succeeded. - a GST_MESSAGE_NEED_CONTEXT type message + a GST_MESSAGE_NEED_CONTEXT type message transfer-ownership="none" optional="1" allow-none="1"> - the context type, or %NULL + the context type, or %NULL @@ -21713,15 +32691,20 @@ MT safe. - Parses a device-added message. The device-added message is produced by + Parses a device-added message. The device-added message is produced by #GstDeviceProvider or a #GstDeviceMonitor. It announces the appearance of monitored devices. + - a #GstMessage of type %GST_MESSAGE_DEVICE_ADDED + a #GstMessage of type %GST_MESSAGE_DEVICE_ADDED transfer-ownership="full" optional="1" allow-none="1"> - A location where to store a + A location where to store a pointer to the new #GstDevice, or %NULL @@ -21739,16 +32724,21 @@ of monitored devices. - Parses a device-changed message. The device-changed message is produced by + Parses a device-changed message. The device-changed message is produced by #GstDeviceProvider or a #GstDeviceMonitor. It announces the disappearance of monitored devices. * It announce that a device properties has changed and @device represents the new modified version of @changed_device. + - a #GstMessage of type %GST_MESSAGE_DEVICE_CHANGED + a #GstMessage of type %GST_MESSAGE_DEVICE_CHANGED - A location where to store a + A location where to store a pointer to the updated version of the #GstDevice, or %NULL @@ -21767,7 +32759,9 @@ changed and @device represents the new modified version of @changed_device. - A location where to store a + A location where to store a pointer to the old version of the #GstDevice, or %NULL @@ -21776,15 +32770,20 @@ changed and @device represents the new modified version of @changed_device. - Parses a device-removed message. The device-removed message is produced by + Parses a device-removed message. The device-removed message is produced by #GstDeviceProvider or a #GstDeviceMonitor. It announces the disappearance of monitored devices. + - a #GstMessage of type %GST_MESSAGE_DEVICE_REMOVED + a #GstMessage of type %GST_MESSAGE_DEVICE_REMOVED transfer-ownership="full" optional="1" allow-none="1"> - A location where to store a + A location where to store a pointer to the removed #GstDevice, or %NULL - Extracts the GError and debug string from the GstMessage. The values returned + Extracts the GError and debug string from the GstMessage. The values returned in the output arguments are copies; the caller must free them when done. Typical usage of this function might be: @@ -21825,12 +32828,15 @@ Typical usage of this function might be: ]| MT safe. + - A valid #GstMessage of type GST_MESSAGE_ERROR. + A valid #GstMessage of type GST_MESSAGE_ERROR. transfer-ownership="full" optional="1" allow-none="1"> - location for the GError + location for the GError transfer-ownership="full" optional="1" allow-none="1"> - location for the debug message, + location for the debug message, or %NULL @@ -21857,21 +32867,28 @@ MT safe. - Returns the optional details structure, may be NULL if none. + Returns the optional details structure, may be NULL if none. The returned structure must not be freed. + - The message object + The message object - A pointer to the returned details + A pointer to the returned details @@ -21879,16 +32896,23 @@ The returned structure must not be freed. - Extract the group from the STREAM_START message. + Extract the group from the STREAM_START message. + - %TRUE if the message had a group id set, %FALSE otherwise + %TRUE if the message had a group id set, %FALSE otherwise MT safe. - A valid #GstMessage of type GST_MESSAGE_STREAM_START. + A valid #GstMessage of type GST_MESSAGE_STREAM_START. transfer-ownership="full" optional="1" allow-none="1"> - Result location for the group id or + Result location for the group id or %NULL @@ -21906,15 +32932,20 @@ MT safe. - Extract the context from the HAVE_CONTEXT message. + Extract the context from the HAVE_CONTEXT message. MT safe. + - A valid #GstMessage of type GST_MESSAGE_HAVE_CONTEXT. + A valid #GstMessage of type GST_MESSAGE_HAVE_CONTEXT. transfer-ownership="full" optional="1" allow-none="1"> - Result location for the + Result location for the context or %NULL - Extracts the GError and debug string from the GstMessage. The values returned + Extracts the GError and debug string from the GstMessage. The values returned in the output arguments are copies; the caller must free them when done. MT safe. + - A valid #GstMessage of type GST_MESSAGE_INFO. + A valid #GstMessage of type GST_MESSAGE_INFO. transfer-ownership="full" optional="1" allow-none="1"> - location for the GError + location for the GError transfer-ownership="full" optional="1" allow-none="1"> - location for the debug message, + location for the debug message, or %NULL @@ -21966,37 +33008,49 @@ MT safe. - Returns the optional details structure, may be NULL if none + Returns the optional details structure, may be NULL if none The returned structure must not be freed. + - The message object + The message object - A pointer to the returned details structure + A pointer to the returned details structure - Extracts the new clock from the GstMessage. + Extracts the new clock from the GstMessage. The clock object returned remains valid until the message is freed. MT safe. + - A valid #GstMessage of type GST_MESSAGE_NEW_CLOCK. + A valid #GstMessage of type GST_MESSAGE_NEW_CLOCK. transfer-ownership="none" optional="1" allow-none="1"> - a pointer to hold the selected + a pointer to hold the selected new clock - Parses the progress @type, @code and @text. + Parses the progress @type, @code and @text. + - A valid #GstMessage of type GST_MESSAGE_PROGRESS. + A valid #GstMessage of type GST_MESSAGE_PROGRESS. transfer-ownership="full" optional="1" allow-none="1"> - location for the type + location for the type transfer-ownership="full" optional="1" allow-none="1"> - location for the code + location for the code transfer-ownership="full" optional="1" allow-none="1"> - location for the text + location for the text @@ -22053,15 +33120,20 @@ MT safe. - Parses a property-notify message. These will be posted on the bus only + Parses a property-notify message. These will be posted on the bus only when set up with gst_element_add_property_notify_watch() or gst_element_add_property_deep_notify_watch(). + - a #GstMessage of type %GST_MESSAGE_PROPERTY_NOTIFY + a #GstMessage of type %GST_MESSAGE_PROPERTY_NOTIFY transfer-ownership="none" optional="1" allow-none="1"> - location where to store a + location where to store a pointer to the object whose property got changed, or %NULL @@ -22080,7 +33154,9 @@ gst_element_add_property_deep_notify_watch(). transfer-ownership="none" optional="1" allow-none="1"> - return location for + return location for the name of the property that got changed, or %NULL @@ -22090,7 +33166,9 @@ gst_element_add_property_deep_notify_watch(). transfer-ownership="none" optional="1" allow-none="1"> - return location for + return location for the new value of the property that got changed, or %NULL. This will only be set if the property notify watch was told to include the value when it was set up @@ -22099,19 +33177,24 @@ gst_element_add_property_deep_notify_watch(). - Extract the timestamps and live status from the QoS message. + Extract the timestamps and live status from the QoS message. The returned values give the running_time, stream_time, timestamp and duration of the dropped buffer. Values of GST_CLOCK_TIME_NONE mean unknown values. MT safe. + - A valid #GstMessage of type GST_MESSAGE_QOS. + A valid #GstMessage of type GST_MESSAGE_QOS. transfer-ownership="full" optional="1" allow-none="1"> - if the message was generated by a live element + if the message was generated by a live element transfer-ownership="full" optional="1" allow-none="1"> - the running time of the buffer that + the running time of the buffer that generated the message @@ -22139,7 +33226,9 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - the stream time of the buffer that + the stream time of the buffer that generated the message @@ -22149,7 +33238,9 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - the timestamps of the buffer that + the timestamps of the buffer that generated the message @@ -22159,7 +33250,9 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - the duration of the buffer that + the duration of the buffer that generated the message @@ -22167,19 +33260,24 @@ MT safe. - Extract the QoS stats representing the history of the current continuous + Extract the QoS stats representing the history of the current continuous pipeline playback period. When @format is @GST_FORMAT_UNDEFINED both @dropped and @processed are invalid. Values of -1 for either @processed or @dropped mean unknown values. MT safe. + - A valid #GstMessage of type GST_MESSAGE_QOS. + A valid #GstMessage of type GST_MESSAGE_QOS. transfer-ownership="full" optional="1" allow-none="1"> - Units of the 'processed' and 'dropped' fields. + Units of the 'processed' and 'dropped' fields. Video sinks and video filters will use GST_FORMAT_BUFFERS (frames). Audio sinks and audio filters will likely use GST_FORMAT_DEFAULT (samples). @@ -22200,7 +33300,9 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - Total number of units correctly processed + Total number of units correctly processed since the last state change to READY or a flushing operation. @@ -22210,7 +33312,9 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - Total number of units dropped since the last + Total number of units dropped since the last state change to READY or a flushing operation. @@ -22218,15 +33322,20 @@ MT safe. - Extract the QoS values that have been calculated/analysed from the QoS data + Extract the QoS values that have been calculated/analysed from the QoS data MT safe. + - A valid #GstMessage of type GST_MESSAGE_QOS. + A valid #GstMessage of type GST_MESSAGE_QOS. transfer-ownership="full" optional="1" allow-none="1"> - The difference of the running-time against + The difference of the running-time against the deadline. @@ -22245,7 +33356,9 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - Long term prediction of the ideal rate + Long term prediction of the ideal rate relative to normal rate to get optimal quality. @@ -22255,7 +33368,9 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - An element dependent integer value that + An element dependent integer value that specifies the current quality level of the element. The default maximum quality is 1000000. @@ -22265,19 +33380,26 @@ MT safe. - Parses the location and/or structure from the entry with the given index. + Parses the location and/or structure from the entry with the given index. The index must be between 0 and gst_message_get_num_redirect_entries() - 1. Returned pointers are valid for as long as this message exists. + - a #GstMessage of type %GST_MESSAGE_REDIRECT + a #GstMessage of type %GST_MESSAGE_REDIRECT - index of the entry to parse + index of the entry to parse transfer-ownership="none" optional="1" allow-none="1"> - return location for + return location for the pointer to the entry's location string, or %NULL @@ -22296,7 +33420,9 @@ Returned pointers are valid for as long as this message exists. transfer-ownership="none" optional="1" allow-none="1"> - return location for + return location for the pointer to the entry's tag list, or %NULL @@ -22306,7 +33432,9 @@ Returned pointers are valid for as long as this message exists. transfer-ownership="none" optional="1" allow-none="1"> - return location + return location for the pointer to the entry's structure, or %NULL @@ -22314,15 +33442,20 @@ Returned pointers are valid for as long as this message exists. - Extract the requested state from the request_state message. + Extract the requested state from the request_state message. MT safe. + - A valid #GstMessage of type GST_MESSAGE_REQUEST_STATE. + A valid #GstMessage of type GST_MESSAGE_REQUEST_STATE. transfer-ownership="full" optional="1" allow-none="1"> - Result location for the requested state or %NULL + Result location for the requested state or %NULL - Extract the running-time from the RESET_TIME message. + Extract the running-time from the RESET_TIME message. MT safe. + - A valid #GstMessage of type GST_MESSAGE_RESET_TIME. + A valid #GstMessage of type GST_MESSAGE_RESET_TIME. transfer-ownership="full" optional="1" allow-none="1"> - Result location for the running_time or + Result location for the running_time or %NULL @@ -22363,15 +33505,20 @@ MT safe. - Extracts the position and format from the segment done message. + Extracts the position and format from the segment done message. MT safe. + - A valid #GstMessage of type GST_MESSAGE_SEGMENT_DONE. + A valid #GstMessage of type GST_MESSAGE_SEGMENT_DONE. transfer-ownership="full" optional="1" allow-none="1"> - Result location for the format, or %NULL + Result location for the format, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - Result location for the position, or %NULL + Result location for the position, or %NULL - Extracts the position and format from the segment start message. + Extracts the position and format from the segment start message. MT safe. + - A valid #GstMessage of type GST_MESSAGE_SEGMENT_START. + A valid #GstMessage of type GST_MESSAGE_SEGMENT_START. transfer-ownership="full" optional="1" allow-none="1"> - Result location for the format, or %NULL + Result location for the format, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - Result location for the position, or %NULL + Result location for the position, or %NULL - Extracts the old and new states from the GstMessage. + Extracts the old and new states from the GstMessage. Typical usage of this function might be: |[<!-- language="C" --> @@ -22451,12 +33613,15 @@ Typical usage of this function might be: ]| MT safe. + - a valid #GstMessage of type GST_MESSAGE_STATE_CHANGED + a valid #GstMessage of type GST_MESSAGE_STATE_CHANGED transfer-ownership="full" optional="1" allow-none="1"> - the previous state, or %NULL + the previous state, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the new (current) state, or %NULL + the new (current) state, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the pending (target) state, or %NULL + the pending (target) state, or %NULL - Extract the values the step_done message. + Extract the values the step_done message. MT safe. + - A valid #GstMessage of type GST_MESSAGE_STEP_DONE. + A valid #GstMessage of type GST_MESSAGE_STEP_DONE. transfer-ownership="full" optional="1" allow-none="1"> - result location for the format + result location for the format transfer-ownership="full" optional="1" allow-none="1"> - result location for the amount + result location for the amount transfer-ownership="full" optional="1" allow-none="1"> - result location for the rate + result location for the rate transfer-ownership="full" optional="1" allow-none="1"> - result location for the flush flag + result location for the flush flag transfer-ownership="full" optional="1" allow-none="1"> - result location for the intermediate flag + result location for the intermediate flag transfer-ownership="full" optional="1" allow-none="1"> - result location for the duration + result location for the duration transfer-ownership="full" optional="1" allow-none="1"> - result location for the EOS flag + result location for the EOS flag - Extract the values from step_start message. + Extract the values from step_start message. MT safe. + - A valid #GstMessage of type GST_MESSAGE_STEP_DONE. + A valid #GstMessage of type GST_MESSAGE_STEP_DONE. transfer-ownership="full" optional="1" allow-none="1"> - result location for the active flag + result location for the active flag transfer-ownership="full" optional="1" allow-none="1"> - result location for the format + result location for the format transfer-ownership="full" optional="1" allow-none="1"> - result location for the amount + result location for the amount transfer-ownership="full" optional="1" allow-none="1"> - result location for the rate + result location for the rate transfer-ownership="full" optional="1" allow-none="1"> - result location for the flush flag + result location for the flush flag transfer-ownership="full" optional="1" allow-none="1"> - result location for the intermediate flag + result location for the intermediate flag @@ -22638,13 +33845,18 @@ MT safe. - Parses a stream-collection message. + Parses a stream-collection message. + - a #GstMessage of type %GST_MESSAGE_STREAM_COLLECTION + a #GstMessage of type %GST_MESSAGE_STREAM_COLLECTION transfer-ownership="full" optional="1" allow-none="1"> - A location where to store a + A location where to store a pointer to the #GstStreamCollection, or %NULL @@ -22661,31 +33875,40 @@ MT safe. - Extracts the stream status type and owner the GstMessage. The returned + Extracts the stream status type and owner the GstMessage. The returned owner remains valid for as long as the reference to @message is valid and should thus not be unreffed. MT safe. + - A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS. + A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS. - A pointer to hold the status type + A pointer to hold the status type - The owner element of the message source + The owner element of the message source @@ -22693,13 +33916,18 @@ MT safe. - Parses a streams-selected message. + Parses a streams-selected message. + - a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED + a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED transfer-ownership="full" optional="1" allow-none="1"> - A location where to store a + A location where to store a pointer to the #GstStreamCollection, or %NULL @@ -22716,22 +33946,29 @@ MT safe. - Extracts the change type and completion status from the GstMessage. + Extracts the change type and completion status from the GstMessage. MT safe. + - A valid #GstMessage of type GST_MESSAGE_STRUCTURE_CHANGE. + A valid #GstMessage of type GST_MESSAGE_STRUCTURE_CHANGE. - A pointer to hold the change type + A pointer to hold the change type transfer-ownership="none" optional="1" allow-none="1"> - The owner element of the + The owner element of the message source @@ -22750,14 +33989,18 @@ MT safe. transfer-ownership="full" optional="1" allow-none="1"> - a pointer to hold whether the change is in + a pointer to hold whether the change is in progress or has been completed - Extracts the tag list from the GstMessage. The tag list returned in the + Extracts the tag list from the GstMessage. The tag list returned in the output argument is a copy; the caller must free it when done. Typical usage of this function might be: @@ -22779,64 +34022,83 @@ Typical usage of this function might be: ]| MT safe. + - A valid #GstMessage of type GST_MESSAGE_TAG. + A valid #GstMessage of type GST_MESSAGE_TAG. - return location for the tag-list. + return location for the tag-list. - Extract the TOC from the #GstMessage. The TOC returned in the + Extract the TOC from the #GstMessage. The TOC returned in the output argument is a copy; the caller must free it with gst_toc_unref() when done. MT safe. + - a valid #GstMessage of type GST_MESSAGE_TOC. + a valid #GstMessage of type GST_MESSAGE_TOC. - return location for the TOC. + return location for the TOC. - return location for the updated flag. + return location for the updated flag. - Extracts the GError and debug string from the GstMessage. The values returned + Extracts the GError and debug string from the GstMessage. The values returned in the output arguments are copies; the caller must free them when done. MT safe. + - A valid #GstMessage of type GST_MESSAGE_WARNING. + A valid #GstMessage of type GST_MESSAGE_WARNING. transfer-ownership="full" optional="1" allow-none="1"> - location for the GError + location for the GError transfer-ownership="full" optional="1" allow-none="1"> - location for the debug message, + location for the debug message, or %NULL @@ -22863,50 +34129,70 @@ MT safe. - Returns the optional details structure, may be NULL if none + Returns the optional details structure, may be NULL if none The returned structure must not be freed. + - The message object + The message object - A pointer to the returned details structure + A pointer to the returned details structure - Configures the buffering stats values in @message. + Configures the buffering stats values in @message. + - A valid #GstMessage of type GST_MESSAGE_BUFFERING. + A valid #GstMessage of type GST_MESSAGE_BUFFERING. - a buffering mode + a buffering mode - the average input rate + the average input rate - the average output rate + the average output rate - amount of buffering time left in milliseconds + amount of buffering time left in milliseconds @@ -22914,7 +34200,9 @@ The returned structure must not be freed. - Sets the group id on the stream-start message. + Sets the group id on the stream-start message. All streams that have the same group id are supposed to be played together, i.e. all streams inside a container file should have the @@ -22923,118 +34211,159 @@ each time the stream is started, resulting in different group ids each time a file is played for example. MT safe. + - the message + the message - the group id + the group id - Set the QoS stats representing the history of the current continuous pipeline + Set the QoS stats representing the history of the current continuous pipeline playback period. When @format is @GST_FORMAT_UNDEFINED both @dropped and @processed are invalid. Values of -1 for either @processed or @dropped mean unknown values. MT safe. + - A valid #GstMessage of type GST_MESSAGE_QOS. + A valid #GstMessage of type GST_MESSAGE_QOS. - Units of the 'processed' and 'dropped' fields. Video sinks and video + Units of the 'processed' and 'dropped' fields. Video sinks and video filters will use GST_FORMAT_BUFFERS (frames). Audio sinks and audio filters will likely use GST_FORMAT_DEFAULT (samples). - Total number of units correctly processed since the last state + Total number of units correctly processed since the last state change to READY or a flushing operation. - Total number of units dropped since the last state change to READY + Total number of units dropped since the last state change to READY or a flushing operation. - Set the QoS values that have been calculated/analysed from the QoS data + Set the QoS values that have been calculated/analysed from the QoS data MT safe. + - A valid #GstMessage of type GST_MESSAGE_QOS. + A valid #GstMessage of type GST_MESSAGE_QOS. - The difference of the running-time against the deadline. + The difference of the running-time against the deadline. - Long term prediction of the ideal rate relative to normal rate + Long term prediction of the ideal rate relative to normal rate to get optimal quality. - An element dependent integer value that specifies the current + An element dependent integer value that specifies the current quality level of the element. The default maximum quality is 1000000. - Set the sequence number of a message. + Set the sequence number of a message. This function might be called by the creator of a message to indicate that the message relates to other messages or events. See gst_message_get_seqnum() for more information. MT safe. + - A #GstMessage. + A #GstMessage. - A sequence number. + A sequence number. - Configures the object handling the streaming thread. This is usually a + Configures the object handling the streaming thread. This is usually a GstTask object but other objects might be added in the future. + - A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS. + A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS. - the object controlling the streaming + the object controlling the streaming @@ -23042,17 +34371,24 @@ GstTask object but other objects might be added in the future. - Adds the @stream to the @message. + Adds the @stream to the @message. + - a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED + a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED - a #GstStream to add to @message + a #GstStream to add to @message @@ -23060,14 +34396,21 @@ GstTask object but other objects might be added in the future. - Returns the number of streams contained in the @message. + Returns the number of streams contained in the @message. + - The number of streams contained within. + The number of streams contained within. - a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED + a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED @@ -23075,18 +34418,27 @@ GstTask object but other objects might be added in the future. - Retrieves the #GstStream with index @index from the @message. + Retrieves the #GstStream with index @index from the @message. + - A #GstStream + A #GstStream - a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED + a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED - Index of the stream to retrieve + Index of the stream to retrieve @@ -23094,9 +34446,14 @@ GstTask object but other objects might be added in the future. - Get a writable version of the structure. + Get a writable version of the structure. + - The structure of the message. The structure + The structure of the message. The structure is still owned by the message, which means that you should not free it and that the pointer becomes invalid when you free the message. This function checks if @message is writable and will never return @@ -23107,7 +34464,9 @@ MT safe. - The #GstMessage. + The #GstMessage. @@ -23117,18 +34476,24 @@ MT safe. glib:type-name="GstMessageType" glib:get-type="gst_message_type_get_type" c:type="GstMessageType"> - The different message types that are available. + The different message types that are available. - an undefined message + an undefined message - end-of-stream reached in a pipeline. The application will + end-of-stream reached in a pipeline. The application will only receive this message in the PLAYING state and every time it sets a pipeline to PLAYING that is in the EOS state. The application can perform a flushing seek in the pipeline, which will undo the EOS state again. @@ -23137,7 +34502,9 @@ flushing seek in the pipeline, which will undo the EOS state again. value="2" c:identifier="GST_MESSAGE_ERROR" glib:nick="error"> - an error occurred. When the application receives an error + an error occurred. When the application receives an error message it should stop playback of the pipeline and not assume that more data will be played. @@ -23145,25 +34512,33 @@ data will be played. value="4" c:identifier="GST_MESSAGE_WARNING" glib:nick="warning"> - a warning occurred. + a warning occurred. - an info message occurred + an info message occurred - a tag was found. + a tag was found. - the pipeline is buffering. When the application + the pipeline is buffering. When the application receives a buffering message in the PLAYING state for a non-live pipeline it must PAUSE the pipeline until the buffering completes, when the percentage field in the message is 100%. For live pipelines, no action must be @@ -23174,26 +34549,34 @@ the progress. value="64" c:identifier="GST_MESSAGE_STATE_CHANGED" glib:nick="state-changed"> - a state change happened + a state change happened - an element changed state in a streaming thread. + an element changed state in a streaming thread. This message is deprecated. - a stepping operation finished. + a stepping operation finished. - an element notifies its capability of providing + an element notifies its capability of providing a clock. This message is used internally and never forwarded to the application. @@ -23201,7 +34584,9 @@ This message is deprecated. value="1024" c:identifier="GST_MESSAGE_CLOCK_LOST" glib:nick="clock-lost"> - The current clock as selected by the pipeline became + The current clock as selected by the pipeline became unusable. The pipeline will select a new clock on the next PLAYING state change. The application should set the pipeline to PAUSED and back to @@ -23211,48 +34596,62 @@ This message is deprecated. value="2048" c:identifier="GST_MESSAGE_NEW_CLOCK" glib:nick="new-clock"> - a new clock was selected in the pipeline. + a new clock was selected in the pipeline. - the structure of the pipeline changed. This + the structure of the pipeline changed. This message is used internally and never forwarded to the application. - status about a stream, emitted when it starts, + status about a stream, emitted when it starts, stops, errors, etc.. - message posted by the application, possibly + message posted by the application, possibly via an application-specific element. - element-specific message, see the specific element's + element-specific message, see the specific element's documentation - pipeline started playback of a segment. This + pipeline started playback of a segment. This message is used internally and never forwarded to the application. - pipeline completed playback of a segment. This + pipeline completed playback of a segment. This message is forwarded to the application after all elements that posted @GST_MESSAGE_SEGMENT_START posted a GST_MESSAGE_SEGMENT_DONE message. @@ -23260,21 +34659,27 @@ message is forwarded to the application after all elements that posted value="262144" c:identifier="GST_MESSAGE_DURATION_CHANGED" glib:nick="duration-changed"> - The duration of a pipeline changed. The + The duration of a pipeline changed. The application can get the new duration with a duration query. - Posted by elements when their latency changes. The + Posted by elements when their latency changes. The application should recalculate and distribute a new latency. - Posted by elements when they start an ASYNC + Posted by elements when they start an ASYNC #GstStateChange. This message is not forwarded to the application but is used internally. @@ -23282,7 +34687,9 @@ internally. value="2097152" c:identifier="GST_MESSAGE_ASYNC_DONE" glib:nick="async-done"> - Posted by elements when they complete an ASYNC + Posted by elements when they complete an ASYNC #GstStateChange. The application will only receive this message from the toplevel pipeline. @@ -23290,7 +34697,9 @@ pipeline. value="4194304" c:identifier="GST_MESSAGE_REQUEST_STATE" glib:nick="request-state"> - Posted by elements when they want the pipeline to + Posted by elements when they want the pipeline to change state. This message is a suggestion to the application which can decide to perform the state change on (part of) the pipeline. @@ -23298,33 +34707,43 @@ decide to perform the state change on (part of) the pipeline. value="8388608" c:identifier="GST_MESSAGE_STEP_START" glib:nick="step-start"> - A stepping operation was started. + A stepping operation was started. - A buffer was dropped or an element changed its processing + A buffer was dropped or an element changed its processing strategy for Quality of Service reasons. - A progress message. + A progress message. - A new table of contents (TOC) was found or previously found TOC + A new table of contents (TOC) was found or previously found TOC was updated. - Message to request resetting the pipeline's + Message to request resetting the pipeline's running time from the pipeline. This is an internal message which applications will likely never receive. @@ -23332,7 +34751,9 @@ was updated. value="268435456" c:identifier="GST_MESSAGE_STREAM_START" glib:nick="stream-start"> - Message indicating start of a new stream. Useful + Message indicating start of a new stream. Useful e.g. when using playbin in gapless playback mode, to get notified when the next title actually starts playing (which will be some time after the URI for the next title has been set). @@ -23341,19 +34762,25 @@ was updated. value="536870912" c:identifier="GST_MESSAGE_NEED_CONTEXT" glib:nick="need-context"> - Message indicating that an element wants a specific context (Since: 1.2) + Message indicating that an element wants a specific context (Since: 1.2) - Message indicating that an element created a context (Since: 1.2) + Message indicating that an element created a context (Since: 1.2) - Message is an extended message type (see below). + Message is an extended message type (see below). These extended message IDs can't be used directly with mask-based API like gst_bus_poll() or gst_bus_timed_pop_filtered(), but you can still filter for GST_MESSAGE_EXTENDED and then check the result for the @@ -23363,42 +34790,54 @@ was updated. value="2147483649" c:identifier="GST_MESSAGE_DEVICE_ADDED" glib:nick="device-added"> - Message indicating a #GstDevice was added to + Message indicating a #GstDevice was added to a #GstDeviceProvider (Since: 1.4) - Message indicating a #GstDevice was removed + Message indicating a #GstDevice was removed from a #GstDeviceProvider (Since: 1.4) - Message indicating a #GObject property has + Message indicating a #GObject property has changed (Since: 1.10) - Message indicating a new #GstStreamCollection + Message indicating a new #GstStreamCollection is available (Since: 1.10) - Message indicating the active selection of + Message indicating the active selection of #GstStreams has changed (Since: 1.10) - Message indicating to request the application to + Message indicating to request the application to try to play the given URL(s). Useful if for example a HTTP 302/303 response is received with a non-HTTP URL inside. (Since: 1.10) @@ -23406,44 +34845,64 @@ was updated. value="2147483655" c:identifier="GST_MESSAGE_DEVICE_CHANGED" glib:nick="device-changed"> - Message indicating a #GstDevice was changed + Message indicating a #GstDevice was changed a #GstDeviceProvider (Since: 1.16) - mask for all of the above messages. + mask for all of the above messages. - Get a printable name for the given message type. Do not modify or free. + Get a printable name for the given message type. Do not modify or free. + - a reference to the static name of the message. + a reference to the static name of the message. - the message type + the message type - Get the unique quark for the given message type. + Get the unique quark for the given message type. + - the quark associated with the message type + the quark associated with the message type - the message type + the message type - The #GstMeta structure should be included as the first member of a #GstBuffer + The #GstMeta structure should be included as the first member of a #GstBuffer metadata structure. The structure defines the API of the metadata and should be accessible to all elements using the metadata. @@ -23462,32 +34921,46 @@ A specific implementation can be retrieved by name with gst_meta_get_info(). See #GstBuffer for how the metadata can be added, retrieved and removed from buffers. + - extra flags for the metadata + extra flags for the metadata - pointer to the #GstMetaInfo + pointer to the #GstMetaInfo - Meta sequence number compare function. Can be used as #GCompareFunc + Meta sequence number compare function. Can be used as #GCompareFunc or a #GCompareDataFunc. + - a negative number if @meta1 comes before @meta2, 0 if both metas + a negative number if @meta1 comes before @meta2, 0 if both metas have an equal sequence number, or a positive integer if @meta1 comes after @meta2. - a #GstMeta + a #GstMeta - a #GstMeta + a #GstMeta @@ -23495,13 +34968,18 @@ or a #GCompareDataFunc. - Gets seqnum for this meta. + Gets seqnum for this meta. + - a #GstMeta + a #GstMeta @@ -23509,52 +34987,75 @@ or a #GCompareDataFunc. + - an array of tags as strings. + an array of tags as strings. - an API + an API - Check if @api was registered with @tag. + Check if @api was registered with @tag. + - %TRUE if @api was registered with @tag. + %TRUE if @api was registered with @tag. - an API + an API - the tag to check + the tag to check - Register and return a GType for the @api and associate it with + Register and return a GType for the @api and associate it with @tags. + - a unique GType for @api. + a unique GType for @api. - an API to register + an API to register - tags for @api + tags for @api @@ -23562,55 +35063,79 @@ or a #GCompareDataFunc. - Lookup a previously registered meta info structure by its implementation name + Lookup a previously registered meta info structure by its implementation name @impl. + - a #GstMetaInfo with @impl, or + a #GstMetaInfo with @impl, or %NULL when no such metainfo exists. - the name + the name - Register a new #GstMeta implementation. + Register a new #GstMeta implementation. The same @info can be retrieved later with gst_meta_get_info() by using @impl as the key. + - a #GstMetaInfo that can be used to + a #GstMetaInfo that can be used to access metadata. - the type of the #GstMeta API + the type of the #GstMeta API - the name of the #GstMeta implementation + the name of the #GstMeta implementation - the size of the #GstMeta structure + the size of the #GstMeta structure - a #GstMetaInitFunction + a #GstMetaInitFunction - a #GstMetaFreeFunction + a #GstMetaFreeFunction - a #GstMetaTransformFunction + a #GstMetaTransformFunction @@ -23621,160 +35146,227 @@ access metadata. glib:type-name="GstMetaFlags" glib:get-type="gst_meta_flags_get_type" c:type="GstMetaFlags"> - Extra metadata flags. + Extra metadata flags. - no flags + no flags - metadata should not be modified + metadata should not be modified - metadata is managed by a bufferpool + metadata is managed by a bufferpool - metadata should not be removed + metadata should not be removed - additional flags can be added starting from this flag. + additional flags can be added starting from this flag. - Function called when @meta is freed in @buffer. + Function called when @meta is freed in @buffer. + - a #GstMeta + a #GstMeta - a #GstBuffer + a #GstBuffer - The #GstMetaInfo provides information about a specific metadata + The #GstMetaInfo provides information about a specific metadata structure. + - tag identifying the metadata structure and api + tag identifying the metadata structure and api - type identifying the implementor of the api + type identifying the implementor of the api - size of the metadata + size of the metadata - function for initializing the metadata + function for initializing the metadata - function for freeing the metadata + function for freeing the metadata - function for transforming the metadata + function for transforming the metadata - Function called when @meta is initialized in @buffer. + Function called when @meta is initialized in @buffer. + - a #GstMeta + a #GstMeta - parameters passed to the init function + parameters passed to the init function - a #GstBuffer + a #GstBuffer - Extra data passed to a "gst-copy" transform #GstMetaTransformFunction. + Extra data passed to a "gst-copy" transform #GstMetaTransformFunction. + - %TRUE if only region is copied + %TRUE if only region is copied - the offset to copy, 0 if @region is %FALSE, otherwise > 0 + the offset to copy, 0 if @region is %FALSE, otherwise > 0 - the size to copy, -1 or the buffer size when @region is %FALSE + the size to copy, -1 or the buffer size when @region is %FALSE - Function called for each @meta in @buffer as a result of performing a + Function called for each @meta in @buffer as a result of performing a transformation on @transbuf. Additional @type specific transform data is passed to the function as @data. Implementations should check the @type of the transform and parse additional type specific fields in @data that should be used to update the metadata on @transbuf. + - %TRUE if the transform could be performed + %TRUE if the transform could be performed - a #GstBuffer + a #GstBuffer - a #GstMeta + a #GstMeta - a #GstBuffer + a #GstBuffer - the transform type + the transform type - transform specific data. + transform specific data. - #GstMiniObject is a simple structure that can be used to implement refcounted + #GstMiniObject is a simple structure that can be used to implement refcounted types. Subclasses will include #GstMiniObject as the first member in their structure @@ -23800,34 +35392,49 @@ with gst_mini_object_copy() or similar methods. A weak reference can be added and remove with gst_mini_object_weak_ref() and gst_mini_object_weak_unref() respectively. + - the GType of the object + the GType of the object - atomic refcount + atomic refcount - atomic state of the locks + atomic state of the locks - extra flags. + extra flags. - a copy function + a copy function - a dispose function + a dispose function - the free function + the free function @@ -23840,7 +35447,9 @@ and gst_mini_object_weak_unref() respectively. - This adds @parent as a parent for @object. Having one ore more parents affects the + This adds @parent as a parent for @object. Having one ore more parents affects the writability of @object: if a @parent is not writable, @object is also not writable, regardless of its refcount. @object is only writable if all the parents are writable and its own refcount is exactly 1. @@ -23848,16 +35457,21 @@ the parents are writable and its own refcount is exactly 1. Note: This function does not take ownership of @parent and also does not take an additional reference. It is the responsibility of the caller to remove the parent again at a later time. + - a #GstMiniObject + a #GstMiniObject - a parent #GstMiniObject + a parent #GstMiniObject @@ -23865,36 +35479,52 @@ remove the parent again at a later time. - Creates a copy of the mini-object. + Creates a copy of the mini-object. MT safe + - the new mini-object if copying is + the new mini-object if copying is possible, %NULL otherwise. - the mini-object to copy + the mini-object to copy - This function gets back user data pointers stored via + This function gets back user data pointers stored via gst_mini_object_set_qdata(). + - The user data pointer set, or + The user data pointer set, or %NULL - The GstMiniObject to get a stored user data pointer from + The GstMiniObject to get a stored user data pointer from - A #GQuark, naming the user data pointer + A #GQuark, naming the user data pointer @@ -23902,29 +35532,40 @@ gst_mini_object_set_qdata(). - Initializes a mini-object with the desired type and copy/dispose/free + Initializes a mini-object with the desired type and copy/dispose/free functions. + - a #GstMiniObject + a #GstMiniObject - initial #GstMiniObjectFlags + initial #GstMiniObjectFlags - the #GType of the mini-object to create + the #GType of the mini-object to create - the copy function, or %NULL + the copy function, or %NULL @@ -23932,7 +35573,9 @@ functions. transfer-ownership="none" nullable="1" allow-none="1"> - the dispose function, or %NULL + the dispose function, or %NULL @@ -23940,14 +35583,18 @@ functions. transfer-ownership="none" nullable="1" allow-none="1"> - the free function or %NULL + the free function or %NULL - If @mini_object has the LOCKABLE flag set, check if the current EXCLUSIVE + If @mini_object has the LOCKABLE flag set, check if the current EXCLUSIVE lock on @object is the only one, this means that changes to the object will not be visible to any other object. @@ -23957,30 +35604,44 @@ object is therefore writable. Modification of a mini-object should only be done after verifying that it is writable. + - %TRUE if the object is writable. + %TRUE if the object is writable. - the mini-object to check + the mini-object to check - Lock the mini-object with the specified access mode in @flags. + Lock the mini-object with the specified access mode in @flags. + - %TRUE if @object could be locked. + %TRUE if @object could be locked. - the mini-object to lock + the mini-object to lock - #GstLockFlags + #GstLockFlags @@ -23988,25 +35649,34 @@ is writable. - Checks if a mini-object is writable. If not, a writable copy is made and + Checks if a mini-object is writable. If not, a writable copy is made and returned. This gives away the reference to the original mini object, and returns a reference to the new object. MT safe + - a mini-object (possibly the same pointer) that + a mini-object (possibly the same pointer) that is writable. - the mini-object to make writable + the mini-object to make writable - Increase the reference count of the mini-object. + Increase the reference count of the mini-object. Note that the refcount affects the writability of @mini-object, see gst_mini_object_is_writable(). It is @@ -24014,13 +35684,18 @@ important to note that keeping additional references to GstMiniObject instances can potentially increase the number of memcpy operations in a pipeline, especially if the miniobject is a #GstBuffer. + - the mini-object. + the mini-object. - the mini-object + the mini-object @@ -24028,24 +35703,33 @@ is a #GstBuffer. - This removes @parent as a parent for @object. See + This removes @parent as a parent for @object. See gst_mini_object_add_parent(). + - a #GstMiniObject + a #GstMiniObject - a parent #GstMiniObject + a parent #GstMiniObject - This sets an opaque, named pointer on a miniobject. + This sets an opaque, named pointer on a miniobject. The name is specified through a #GQuark (retrieved e.g. via g_quark_from_static_string()), and the pointer can be gotten back from the @object with gst_mini_object_get_qdata() @@ -24057,64 +35741,89 @@ removes the data stored. @destroy may be specified which is called with @data as argument when the @object is disposed, or the data is being overwritten by a call to gst_mini_object_set_qdata() with the same @quark. + - a #GstMiniObject + a #GstMiniObject - A #GQuark, naming the user data pointer + A #GQuark, naming the user data pointer - An opaque user data pointer + An opaque user data pointer - Function to invoke with @data as argument, when @data + Function to invoke with @data as argument, when @data needs to be freed - This function gets back user data pointers stored via gst_mini_object_set_qdata() + This function gets back user data pointers stored via gst_mini_object_set_qdata() and removes the data from @object without invoking its destroy() function (if any was set). + - The user data pointer set, or + The user data pointer set, or %NULL - The GstMiniObject to get a stored user data pointer from + The GstMiniObject to get a stored user data pointer from - A #GQuark, naming the user data pointer + A #GQuark, naming the user data pointer - Unlock the mini-object with the specified access mode in @flags. + Unlock the mini-object with the specified access mode in @flags. + - the mini-object to unlock + the mini-object to unlock - #GstLockFlags + #GstLockFlags @@ -24122,14 +35831,19 @@ any was set). - Decreases the reference count of the mini-object, possibly freeing + Decreases the reference count of the mini-object, possibly freeing the mini-object. + - the mini-object + the mini-object @@ -24137,29 +35851,38 @@ the mini-object. - Adds a weak reference callback to a mini object. Weak references are + Adds a weak reference callback to a mini object. Weak references are used for notification when a mini object is finalized. They are called "weak references" because they allow you to safely hold a pointer to the mini object without calling gst_mini_object_ref() (gst_mini_object_ref() adds a strong reference, that is, forces the object to stay alive). + - #GstMiniObject to reference weakly + #GstMiniObject to reference weakly - callback to invoke before the mini object is freed + callback to invoke before the mini object is freed - extra data to pass to notify + extra data to pass to notify @@ -24167,36 +35890,50 @@ to stay alive). - Removes a weak reference callback from a mini object. + Removes a weak reference callback from a mini object. + - #GstMiniObject to remove a weak reference from + #GstMiniObject to remove a weak reference from - callback to search for + callback to search for - data to search for + data to search for - Atomically modifies a pointer to point to a new mini-object. + Atomically modifies a pointer to point to a new mini-object. The reference count of @olddata is decreased and the reference count of @newdata is increased. Either @newdata and the value pointed to by @olddata may be %NULL. + - %TRUE if @newdata was different from @olddata + %TRUE if @newdata was different from @olddata @@ -24206,7 +35943,9 @@ Either @newdata and the value pointed to by @olddata may be %NULL. transfer-ownership="full" nullable="1" allow-none="1"> - pointer to a pointer to a + pointer to a pointer to a mini-object to be replaced @@ -24214,7 +35953,9 @@ Either @newdata and the value pointed to by @olddata may be %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - pointer to new mini-object + pointer to new mini-object @@ -24222,10 +35963,15 @@ Either @newdata and the value pointed to by @olddata may be %NULL. - Replace the current #GstMiniObject pointer to by @olddata with %NULL and + Replace the current #GstMiniObject pointer to by @olddata with %NULL and return the old value. + - the #GstMiniObject at @oldata + the #GstMiniObject at @oldata @@ -24233,21 +35979,28 @@ return the old value. direction="inout" caller-allocates="0" transfer-ownership="full"> - pointer to a pointer to a mini-object to + pointer to a pointer to a mini-object to be stolen - Modifies a pointer to point to a new mini-object. The modification + Modifies a pointer to point to a new mini-object. The modification is done atomically. This version is similar to gst_mini_object_replace() except that it does not increase the refcount of @newdata and thus takes ownership of @newdata. Either @newdata and the value pointed to by @olddata may be %NULL. + - %TRUE if @newdata was different from @olddata + %TRUE if @newdata was different from @olddata @@ -24255,12 +36008,16 @@ Either @newdata and the value pointed to by @olddata may be %NULL. direction="inout" caller-allocates="0" transfer-ownership="full"> - pointer to a pointer to a mini-object to + pointer to a pointer to a mini-object to be replaced - pointer to new mini-object + pointer to new mini-object @@ -24269,32 +36026,46 @@ Either @newdata and the value pointed to by @olddata may be %NULL. - Function prototype for methods to create copies of instances. + Function prototype for methods to create copies of instances. + - reference to cloned instance. + reference to cloned instance. - MiniObject to copy + MiniObject to copy - Function prototype for when a miniobject has lost its last refcount. + Function prototype for when a miniobject has lost its last refcount. Implementation of the mini object are allowed to revive the passed object by doing a gst_mini_object_ref(). If the object is not revived after the dispose function, the function should return %TRUE and the memory associated with the object is freed. + - %TRUE if the object should be cleaned up. + %TRUE if the object should be cleaned up. - MiniObject to dispose + MiniObject to dispose @@ -24303,26 +36074,34 @@ and the memory associated with the object is freed. glib:type-name="GstMiniObjectFlags" glib:get-type="gst_mini_object_flags_get_type" c:type="GstMiniObjectFlags"> - Flags for the mini object + Flags for the mini object - the object can be locked and unlocked with + the object can be locked and unlocked with gst_mini_object_lock() and gst_mini_object_unlock(). - the object is permanently locked in + the object is permanently locked in READONLY mode. Only read locks can be performed on the object. - the object is expected to stay alive + the object is expected to stay alive even after gst_deinit() has been called and so should be ignored by leak detection tools. (Since: 1.10) @@ -24330,26 +36109,36 @@ detection tools. (Since: 1.10) value="16" c:identifier="GST_MINI_OBJECT_FLAG_LAST" glib:nick="last"> - first flag that can be used by subclasses. + first flag that can be used by subclasses. - Virtual function prototype for methods to free resources used by + Virtual function prototype for methods to free resources used by mini-objects. + - MiniObject to free + MiniObject to free - A #GstMiniObjectNotify function can be added to a mini object as a + A #GstMiniObjectNotify function can be added to a mini object as a callback that gets triggered when gst_mini_object_unref() drops the last ref and @obj is about to be freed. + @@ -24359,19 +36148,270 @@ last ref and @obj is about to be freed. nullable="1" allow-none="1" closure="0"> - data that was provided when the notify was added + data that was provided when the notify was added - the mini object + the mini object - Constant that defines one GStreamer nanosecond + Constant that defines one GStreamer nanosecond + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This macro returns the entire set of flags for the object. + + + + a #GstObject + + + + + This macro checks to see if the given flag is set. + + + + a #GstObject + + + Flag to check for + + + + + This macro sets the given bits. + + + + a #GstObject + + + Flag to set + + + + + This macro unsets the given bits. + + + + a #GstObject + + + Flag to set + + + + + + + + + + + + Acquire a reference to the mutex of this object. + + + + a #GstObject + + + + + This macro will obtain a lock on the object, making serialization possible. +It blocks until the lock can be obtained. + + + + a #GstObject to lock + + + + + Get the name of this object. This is not thread-safe by default +(i.e. you will have to make sure the object lock is taken yourself). +If in doubt use gst_object_get_name() instead. + + + + a #GstObject + + + + + Get the parent of this object. This is not thread-safe by default +(i.e. you will have to make sure the object lock is taken yourself). +If in doubt use gst_object_get_parent() instead. + + + + a #GstObject + + + + + Get access to the reference count field of the object. + + + + a #GstObject + + + + + Get the reference count value of the object. + + + + a #GstObject + + + + + This macro will try to obtain a lock on the object, but will return with +%FALSE if it can't get it immediately. + + + + a #GstObject. + + + + + This macro releases a lock on the object. + + + + a #GstObject to unlock. + + + glib:type-name="GstObject" glib:get-type="gst_object_get_type" glib:type-struct="ObjectClass"> - #GstObject provides a root for the object hierarchy tree filed in by the + #GstObject provides a root for the object hierarchy tree filed in by the GStreamer library. It is currently a thin wrapper on top of #GInitiallyUnowned. It is an abstract class that is not very usable on its own. @@ -24429,15 +36471,21 @@ What needs to be done in applications? Again it's not a lot to change. gst_timed_value_control_source_set ((GstTimedValueControlSource *)csource,1 * GST_SECOND, value2); * start your pipeline + - Checks to see if there is any object named @name in @list. This function + Checks to see if there is any object named @name in @list. This function does not do any locking of any kind. You might want to protect the provided list with the lock of the owner of the list. This function will lock each #GstObject in the list to compare the name, so be careful when passing a list with a locked object. + - %TRUE if a #GstObject named @name does not appear in @list, + %TRUE if a #GstObject named @name does not appear in @list, %FALSE if it does. MT safe. Grabs and releases the LOCK of each object in the list. @@ -24445,48 +36493,63 @@ MT safe. Grabs and releases the LOCK of each object in the list. - a list of #GstObject to + a list of #GstObject to check through - the name to search for + the name to search for - A default deep_notify signal callback for an object. The user data + A default deep_notify signal callback for an object. The user data should contain a pointer to an array of strings that should be excluded from the notify. The default handler will print the new value of the property using g_print. MT safe. This function grabs and releases @object's LOCK for getting its path string. + - the #GObject that signalled the notify. + the #GObject that signalled the notify. - a #GstObject that initiated the notify. + a #GstObject that initiated the notify. - a #GParamSpec of the property. + a #GParamSpec of the property. - + a set of user-specified properties to exclude or %NULL to show all changes. @@ -24498,7 +36561,9 @@ MT safe. This function grabs and releases @object's LOCK for getting its - Increase the reference count of @object, and possibly remove the floating + Increase the reference count of @object, and possibly remove the floating reference, if @object has a floating reference. In other words, if the object is floating, then this call "assumes ownership" @@ -24509,6 +36574,7 @@ reference count by one. For more background on "floating references" please see the #GObject documentation. + @@ -24517,19 +36583,26 @@ documentation. transfer-ownership="none" nullable="1" allow-none="1"> - a #GstObject to sink + a #GstObject to sink - Atomically modifies a pointer to point to a new object. + Atomically modifies a pointer to point to a new object. The reference count of @oldobj is decreased and the reference count of @newobj is increased. Either @newobj and the value pointed to by @oldobj may be %NULL. + - %TRUE if @newobj was different from @oldobj + %TRUE if @newobj was different from @oldobj @@ -24539,7 +36612,9 @@ Either @newobj and the value pointed to by @oldobj may be %NULL. transfer-ownership="full" nullable="1" allow-none="1"> - pointer to a place of + pointer to a place of a #GstObject to replace @@ -24547,12 +36622,15 @@ Either @newobj and the value pointed to by @oldobj may be %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - a new #GstObject + a new #GstObject + @@ -24570,76 +36648,105 @@ Either @newobj and the value pointed to by @oldobj may be %NULL. - Attach the #GstControlBinding to the object. If there already was a + Attach the #GstControlBinding to the object. If there already was a #GstControlBinding for this property it will be replaced. The object's reference count will be incremented, and any floating reference will be removed (see gst_object_ref_sink()) + - %FALSE if the given @binding has not been setup for this object or + %FALSE if the given @binding has not been setup for this object or has been setup for a non suitable property, %TRUE otherwise. - the controller object + the controller object - the #GstControlBinding that should be used + the #GstControlBinding that should be used - A default error function that uses g_printerr() to display the error message + A default error function that uses g_printerr() to display the error message and the optional debug string.. The default handler will simply print the error string using g_print. + - the #GstObject that initiated the error. + the #GstObject that initiated the error. - the GError. + the GError. - an additional debug information string, or %NULL + an additional debug information string, or %NULL - Gets the corresponding #GstControlBinding for the property. This should be + Gets the corresponding #GstControlBinding for the property. This should be unreferenced again after use. + - the #GstControlBinding for + the #GstControlBinding for @property_name or %NULL if the property is not controlled. - the object + the object - name of the property + name of the property - Obtain the control-rate for this @object. Audio processing #GstElement + Obtain the control-rate for this @object. Audio processing #GstElement objects will use this rate to sub-divide their processing loop and call gst_object_sync_values() in between. The length of the processing segment should be up to @control-rate nanoseconds. @@ -24649,52 +36756,74 @@ If the @object is not under property control, this will return The control-rate is not expected to change if the element is in %GST_STATE_PAUSED or %GST_STATE_PLAYING. + - the control rate in nanoseconds + the control rate in nanoseconds - the object that has controlled properties + the object that has controlled properties - Gets a number of #GValues for the given controlled property starting at the + Gets a number of #GValues for the given controlled property starting at the requested time. The array @values need to hold enough space for @n_values of #GValue. This function is useful if one wants to e.g. draw a graph of the control curve or apply a control curve sample by sample. + - %TRUE if the given array could be filled, %FALSE otherwise + %TRUE if the given array could be filled, %FALSE otherwise - the object that has controlled properties + the object that has controlled properties - the name of the property to get + the name of the property to get - the time that should be processed + the time that should be processed - the time spacing between subsequent values + the time spacing between subsequent values - the number of values + the number of values - array to put control-values in + array to put control-values in @@ -24702,14 +36831,19 @@ curve or apply a control curve sample by sample. - Returns a copy of the name of @object. + Returns a copy of the name of @object. Caller should g_free() the return value after usage. For a nameless object, this returns %NULL, which you can safely g_free() as well. Free-function: g_free + - the name of @object. g_free() + the name of @object. g_free() after usage. MT safe. This function grabs and releases @object's LOCK. @@ -24717,16 +36851,23 @@ MT safe. This function grabs and releases @object's LOCK. - a #GstObject + a #GstObject - Returns the parent of @object. This function increases the refcount + Returns the parent of @object. This function increases the refcount of the parent object so you should gst_object_unref() it after usage. + - parent of @object, this can be + parent of @object, this can be %NULL if @object has no parent. unref after usage. MT safe. Grabs and releases @object's LOCK. @@ -24734,18 +36875,25 @@ MT safe. Grabs and releases @object's LOCK. - a #GstObject + a #GstObject - Generates a string describing the path of @object in + Generates a string describing the path of @object in the object hierarchy. Only useful (or used) for debugging. Free-function: g_free + - a string describing the path of @object. You must + a string describing the path of @object. You must g_free() the string after usage. MT safe. Grabs and releases the #GstObject's LOCK for all objects @@ -24754,29 +36902,42 @@ MT safe. Grabs and releases the #GstObject's LOCK for all objects - a #GstObject + a #GstObject - Gets the value for the given controlled property at the requested time. + Gets the value for the given controlled property at the requested time. + - the GValue of the property at the given time, + the GValue of the property at the given time, or %NULL if the property isn't controlled. - the object that has controlled properties + the object that has controlled properties - the name of the property to get + the name of the property to get - the time the control-change should be read from + the time the control-change should be read from @@ -24784,7 +36945,9 @@ or %NULL if the property isn't controlled. - Gets a number of values for the given controlled property starting at the + Gets a number of values for the given controlled property starting at the requested time. The array @values need to hold enough space for @n_values of the same type as the objects property's type. @@ -24794,50 +36957,72 @@ curve or apply a control curve sample by sample. The values are unboxed and ready to be used. The similar function gst_object_get_g_value_array() returns the array as #GValues and is better suites for bindings. + - %TRUE if the given array could be filled, %FALSE otherwise + %TRUE if the given array could be filled, %FALSE otherwise - the object that has controlled properties + the object that has controlled properties - the name of the property to get + the name of the property to get - the time that should be processed + the time that should be processed - the time spacing between subsequent values + the time spacing between subsequent values - the number of values + the number of values - array to put control-values in + array to put control-values in - Check if the @object has active controlled properties. + Check if the @object has active controlled properties. + - %TRUE if the object has active controlled properties + %TRUE if the object has active controlled properties - the object that has controlled properties + the object that has controlled properties @@ -24845,42 +37030,60 @@ better suites for bindings. - Check if @object has an ancestor @ancestor somewhere up in + Check if @object has an ancestor @ancestor somewhere up in the hierarchy. One can e.g. check if a #GstElement is inside a #GstPipeline. Use gst_object_has_as_ancestor() instead. MT safe. Grabs and releases @object's locks. + - %TRUE if @ancestor is an ancestor of @object. + %TRUE if @ancestor is an ancestor of @object. - a #GstObject to check + a #GstObject to check - a #GstObject to check as ancestor + a #GstObject to check as ancestor - Check if @object has an ancestor @ancestor somewhere up in + Check if @object has an ancestor @ancestor somewhere up in the hierarchy. One can e.g. check if a #GstElement is inside a #GstPipeline. + - %TRUE if @ancestor is an ancestor of @object. + %TRUE if @ancestor is an ancestor of @object. MT safe. Grabs and releases @object's locks. - a #GstObject to check + a #GstObject to check - a #GstObject to check as ancestor + a #GstObject to check as ancestor @@ -24888,10 +37091,15 @@ MT safe. Grabs and releases @object's locks. - Check if @parent is the parent of @object. + Check if @parent is the parent of @object. E.g. a #GstElement can check if it owns a given #GstPad. + - %FALSE if either @object or @parent is %NULL. %TRUE if @parent is + %FALSE if either @object or @parent is %NULL. %TRUE if @parent is the parent of @object. Otherwise %FALSE. MT safe. Grabs and releases @object's locks. @@ -24899,72 +37107,101 @@ MT safe. Grabs and releases @object's locks. - a #GstObject to check + a #GstObject to check - a #GstObject to check as parent + a #GstObject to check as parent - Increments the reference count on @object. This function + Increments the reference count on @object. This function does not take the lock on @object because it relies on atomic refcounting. This object returns the input parameter to ease writing constructs like : result = gst_object_ref (object->parent); + - A pointer to @object + A pointer to @object - a #GstObject to reference + a #GstObject to reference - Removes the corresponding #GstControlBinding. If it was the + Removes the corresponding #GstControlBinding. If it was the last ref of the binding, it will be disposed. + - %TRUE if the binding could be removed. + %TRUE if the binding could be removed. - the object + the object - the binding + the binding - This function is used to disable the control bindings on a property for + This function is used to disable the control bindings on a property for some time, i.e. gst_object_sync_values() will do nothing for the property. + - the object that has controlled properties + the object that has controlled properties - property to disable + property to disable - boolean that specifies whether to disable the controller + boolean that specifies whether to disable the controller or not. @@ -24972,18 +37209,25 @@ or not. - This function is used to disable all controlled properties of the @object for + This function is used to disable all controlled properties of the @object for some time, i.e. gst_object_sync_values() will do nothing. + - the object that has controlled properties + the object that has controlled properties - boolean that specifies whether to disable the controller + boolean that specifies whether to disable the controller or not. @@ -24991,34 +37235,46 @@ or not. - Change the control-rate for this @object. Audio processing #GstElement + Change the control-rate for this @object. Audio processing #GstElement objects will use this rate to sub-divide their processing loop and call gst_object_sync_values() in between. The length of the processing segment should be up to @control-rate nanoseconds. The control-rate should not change if the element is in %GST_STATE_PAUSED or %GST_STATE_PLAYING. + - the object that has controlled properties + the object that has controlled properties - the new control-rate in nanoseconds. + the new control-rate in nanoseconds. - Sets the name of @object, or gives @object a guaranteed unique + Sets the name of @object, or gives @object a guaranteed unique name (if @name is %NULL). This function makes a copy of the provided name, so the caller retains ownership of the name it sent. + - %TRUE if the name could be set. Since Objects that have + %TRUE if the name could be set. Since Objects that have a parent cannot be renamed, this function returns %FALSE in those cases. @@ -25027,23 +37283,32 @@ MT safe. This function grabs and releases @object's LOCK. - a #GstObject + a #GstObject - new name of object + new name of object - Sets the parent of @object to @parent. The object's reference count will + Sets the parent of @object to @parent. The object's reference count will be incremented, and any floating reference will be removed (see gst_object_ref_sink()). + - %TRUE if @parent could be set or %FALSE when @object + %TRUE if @parent could be set or %FALSE when @object already had a parent or @object and @parent are the same. MT safe. Grabs and releases @object's LOCK. @@ -25051,81 +37316,111 @@ MT safe. Grabs and releases @object's LOCK. - a #GstObject + a #GstObject - new parent of object + new parent of object - Returns a suggestion for timestamps where buffers should be split + Returns a suggestion for timestamps where buffers should be split to get best controller results. + - Returns the suggested timestamp or %GST_CLOCK_TIME_NONE + Returns the suggested timestamp or %GST_CLOCK_TIME_NONE if no control-rate was set. - the object that has controlled properties + the object that has controlled properties - Sets the properties of the object, according to the #GstControlSources that + Sets the properties of the object, according to the #GstControlSources that (maybe) handle them and for the given timestamp. If this function fails, it is most likely the application developers fault. Most probably the control sources are not setup correctly. + - %TRUE if the controller values could be applied to the object + %TRUE if the controller values could be applied to the object properties, %FALSE otherwise - the object that has controlled properties + the object that has controlled properties - the time that should be processed + the time that should be processed - Clear the parent of @object, removing the associated reference. + Clear the parent of @object, removing the associated reference. This function decreases the refcount of @object. MT safe. Grabs and releases @object's lock. + - a #GstObject to unparent + a #GstObject to unparent - Decrements the reference count on @object. If reference count hits + Decrements the reference count on @object. If reference count hits zero, destroy @object. This function does not take the lock on @object as it relies on atomic refcounting. The unref method should never be called with the LOCK held since this might deadlock the dispose function. + - a #GstObject to unreference + a #GstObject to unreference @@ -25137,7 +37432,9 @@ this might deadlock the dispose function. - The parent of the object. Please note, that when changing the 'parent' + The parent of the object. Please note, that when changing the 'parent' property, we don't emit #GObject::notify and #GstObject::deep-notify signals due to locking issues. In some cases one can use #GstBin::element-added or #GstBin::element-removed signals on the parent to @@ -25148,19 +37445,27 @@ achieve a similar effect. - object LOCK + object LOCK - The name of the object + The name of the object - this object's parent, weak ref + this object's parent, weak ref - flags for this object + flags for this object @@ -25182,7 +37487,9 @@ achieve a similar effect. no-recurse="1" detailed="1" no-hooks="1"> - The deep notify signal is used to be notified of property changes. It is + The deep notify signal is used to be notified of property changes. It is typically attached to the toplevel bin to receive notifications from all the elements contained in that bin. @@ -25190,11 +37497,15 @@ the elements contained in that bin. - the object that originated the signal + the object that originated the signal - the property that changed + the property that changed @@ -25203,18 +37514,26 @@ the elements contained in that bin. - GStreamer base object class. + GStreamer base object class. + - parent + parent - separator used by gst_object_get_path_string() + separator used by gst_object_get_path_string() + @@ -25232,7 +37551,7 @@ the elements contained in that bin. - + @@ -25241,12 +37560,16 @@ the elements contained in that bin. glib:type-name="GstObjectFlags" glib:get-type="gst_object_flags_get_type" c:type="GstObjectFlags"> - The standard flags that an gstobject may have. + The standard flags that an gstobject may have. - the object is expected to stay alive even + the object is expected to stay alive even after gst_deinit() has been called and so should be ignored by leak detection tools. (Since: 1.10) @@ -25254,58 +37577,1498 @@ detection tools. (Since: 1.10) value="16" c:identifier="GST_OBJECT_FLAG_LAST" glib:nick="last"> - subclasses can add additional flags starting from this flag + subclasses can add additional flags starting from this flag + + + + + + + + + Get the #GstPadActivateFunction from @pad. + + + + a #GstPad + + + + + Get the #GstPadActivateModeFunction from the given @pad. + + + + a #GstPad + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Get the #GstPadChainFunction from the given @pad. + + + + a #GstPad + + + + + Get the #GstPadChainListFunction from the given @pad. + + + + a #GstPad + + + + + + + + + + + + Get the #GstPadDirection of the given @pad. Accessor macro, use +gst_pad_get_direction() instead. + + + + a #GstPad + + + + + Get the private data of @pad, which is usually some pad- or stream-specific +structure created by the element and set on the pad when creating it. +No locking is performed in this function. + + + + a #GstPad + + + + + Get the #GstPadEventFullFunction from the given @pad, which +is the function that handles events on the pad. You can +use this to set your own event handling function on a pad +after you create it. If your element derives from a base +class, use the base class's virtual functions instead. + + + + a #GstPad + + + + + Get the #GstPadEventFunction from the given @pad, which +is the function that handles events on the pad. You can +use this to set your own event handling function on a pad +after you create it. If your element derives from a base +class, use the base class's virtual functions instead. + + + + a #GstPad + + + + + Get the #GstPadGetRangeFunction from the given @pad. + + + + a #GstPad + + + + + Get the stream lock of @pad. The stream lock is protecting the +resources used in the data processing functions of @pad. Accessor +macro, use GST_PAD_STREAM_LOCK() and GST_PAD_STREAM_UNLOCK() instead +to take/release the pad's stream lock. + + + + a #GstPad + + + + + Check if the given @pad has pending events. This is used internally by +GStreamer. + + + + a #GstPad + + + + + Check if the pad's accept intersect flag is set. The default accept-caps +handler will check if the caps intersect the query-caps result instead of +checking for a subset. This is interesting for parser elements that can +accept incompletely specified caps. + + + + a #GstPad + + + + + Check if the pad's accept caps operation will use the pad template caps. +The default accept-caps will do a query caps to get the caps, which might +be querying downstream causing unnecessary overhead. It is recommended to +implement a proper accept-caps query handler or to use this flag to prevent +recursive accept-caps handling. + + + + a #GstPad + + + + + + + + a #GstPad + + + + + Check if the dataflow on a @pad is blocked. Use gst_pad_is_blocked() instead. + + + + a #GstPad + + + + + Check if the @pad is currently blocking on a buffer or event. Use +gst_pad_is_blocking() instead. + + + + a #GstPad + + + + + Check if the @pad is in EOS state. + + + + a #GstPad + + + + + Check if the given @pad is using fixed caps, which means that +once the caps are set on the @pad, the caps query function will +only return those caps. See gst_pad_use_fixed_caps(). + + + + a #GstPad + + + + + Check if the given @pad is flushing. + + + + a #GstPad + + + + + + + + a #GstPad + + + + + Check if the given @pad is set as proxy allocation which means +that the default query handler will forward allocation queries to the +internally linked @pads instead of discarding them. + + + + a #GstPad + + + + + Check if the given @pad is set to proxy caps. This means that the default +event and query handler will forward all events and queries to the +internally linked @pads instead of discarding them. + + + + a #GstPad + + + + + Check if the given @pad is set to proxy scheduling queries, which means that +the default query handler will forward scheduling queries to the internally +linked @pads instead of discarding them. + + + + a #GstPad + + + + + + + + a #GstPad + + + + + + + + a #GstPad + + + + + Get the #GstPadIterIntLinkFunction from the given @pad. + + + + a #GstPad + + + + + Gets the last flow return on this pad + + + + a #GstPad + + + + + Get the #GstPadLinkFunction for the given @pad. + + + + a #GstPad + + + + + Macro to test if the given #GstPadLinkReturn value indicates a failed +link step. + + + + the #GstPadLinkReturn value + + + + + Macro to test if the given #GstPadLinkReturn value indicates a successful +link step. + + + + the #GstPadLinkReturn value + + + + + Get the #GstPadMode of pad, which will be GST_PAD_MODE_NONE if the pad +has not been activated yet, and otherwise either GST_PAD_MODE_PUSH or +GST_PAD_MODE_PULL depending on which mode the pad was activated in. + + + + a #GstPad + + + + + Get name of the given pad. +No locking is performed in this function, use gst_pad_get_name() instead. + + + + a #GstPad + + + + + Check if there is a parent object before calling into the @pad callbacks. +This is used internally by GStreamer. + + + + a #GstPad + + + + + Check if the @pad should be reconfigured/renegotiated. +The flag has to be unset manually after reconfiguration happened. +Use gst_pad_needs_reconfigure() or gst_pad_check_reconfigure() instead. + + + + a #GstPad + + + + + Get the @pad #GstPadTemplate. It describes the possible media types +a @pad or an element factory can handle. + + + + a #GstPad + + + + + Get the @pad parent. +No locking is performed in this function, use gst_pad_get_parent() instead. + + + + a #GstPad + + + + + Return the pad's peer member. This member is a pointer to the linked @pad. +No locking is performed in this function, use gst_pad_get_peer() instead. + + + + a #GstPad + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Get the #GstPadQueryFunction from @pad, which is the function +that handles queries on the pad. You can use this to set your +own query handling function on a pad after you create it. If your +element derives from a base class, use the base class's virtual +functions instead. + + + + a #GstPad + + + + + Set @pad to by default accept caps by intersecting the result instead of +checking for a subset. This is interesting for parser elements that can +accept incompletely specified caps. + + + + a #GstPad + + + + + Set @pad to by default use the pad template caps to compare with +the accept caps instead of using a caps query result. + + + + a #GstPad + + + + + Set the given @pad to flushing state, which means it will not accept any +more events, queries or buffers, and return GST_FLOW_FLUSHING if any buffers +are pushed on it. This usually happens when the pad is shut down or when +a flushing seek happens. This is used inside GStreamer when flush start/stop +events pass through pads, or when an element state is changed and pads are +activated or deactivated. + + + + a #GstPad + + + + + Set @pad to proxy allocation queries, which means that the default query +handler will forward allocation queries to the internally linked @pads +instead of discarding them. +Set this if the element always outputs data in the exact same format as it +receives as input. This is just for convenience to avoid implementing some +standard query handling code in an element. + + + + a #GstPad + + + + + Set @pad to proxy caps, so that all caps-related events and queries are +proxied down- or upstream to the other side of the element automatically. +Set this if the element always outputs data in the exact same format as it +receives as input. This is just for convenience to avoid implementing some +standard event and query handling code in an element. + + + + a #GstPad + + + + + Set @pad to proxy scheduling queries, which means that the default query +handler will forward scheduling queries to the internally linked @pads +instead of discarding them. You will usually want to handle scheduling +queries explicitly if your element supports multiple scheduling modes. + + + + a #GstPad + + + + + Take the pad's stream lock. The stream lock is recursive and will be taken +when buffers or serialized downstream events are pushed on a pad. + + + + a #GstPad + + + + + Try to take the pad's stream lock, and return %TRUE if the lock could be +taken, and otherwise %FALSE. + + + + a #GstPad + + + + + Release the pad's stream lock. + + + + a #GstPad + + + + + Get the #GstTask of @pad. Accessor macro used by GStreamer. Use the +gst_pad_start_task(), gst_pad_stop_task() and gst_pad_pause_task() +functions instead. + + + + a #GstPad + + + + + + + + + + + + Get a handle to the padtemplate #GstCaps + + + + the template to query + + + + + + + + + + + + Get the #GstPadDirection of the padtemplate. + + + + the template to query + + + + + Get the #GType of the padtemplate + + + + the template to query + + + + + Check if the properties of the padtemplate are fixed + + + + the template to query + + + + + Get the nametemplate of the padtemplate. + + + + the template to query + + + + + Get the #GstPadPresence of the padtemplate. + + + + the template to query + + + + + Get the #GstPadUnlinkFunction from the given @pad. + + + + a #GstPad + + + + + Unset accept intersect flag. + + + + a #GstPad + + + + + Unset accept template flag. + + + + a #GstPad + + + + + Unset the flushing flag. + + + + a #GstPad + + + + + Unset proxy allocation flag. + + + + a #GstPad + + + + + Unset proxy caps flag. + + + + a #GstPad + + + + + Unset proxy scheduling flag. + + + + a #GstPad + + + - Use this flag on GObject properties to signal they can make sense to be. + Use this flag on GObject properties to signal they can make sense to be. controlled over time. This hint is used by the GstController. + - Use this flag on GObject properties of GstElements to indicate that + Use this flag on GObject properties of GstElements to indicate that they can be changed when the element is in the PAUSED or lower state. This flag implies GST_PARAM_MUTABLE_READY. + - Use this flag on GObject properties of GstElements to indicate that + Use this flag on GObject properties of GstElements to indicate that they can be changed when the element is in the PLAYING or lower state. This flag implies GST_PARAM_MUTABLE_PAUSED. + - Use this flag on GObject properties of GstElements to indicate that + Use this flag on GObject properties of GstElements to indicate that they can be changed when the element is in the READY or lower state. + + + + + + + + + + + + + + + - Bits based on GST_PARAM_USER_SHIFT can be used by 3rd party applications. + Bits based on GST_PARAM_USER_SHIFT can be used by 3rd party applications. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This macro needs to be used to define the entry point and meta data of a +plugin. One would use this macro to export a plugin, so that it can be used +by other applications. + +The macro uses a define named PACKAGE for the #GstPluginDesc,source field. +When using autoconf, this is usually set automatically via the AC_INIT +macro, and set in config.h. If you are not using autoconf, you will need to +define PACKAGE yourself and set it to a short mnemonic string identifying +your application/package, e.g. 'someapp' or 'my-plugins-foo. + +If defined, the GST_PACKAGE_RELEASE_DATETIME will also be used for the +#GstPluginDesc,release_datetime field. + + + + major version number of the gstreamer-core that plugin was compiled for + + + minor version number of the gstreamer-core that plugin was compiled for + + + short, but unique name of the plugin + + + information about the purpose of the plugin + + + function pointer to the plugin_init method with the signature of <code>static gboolean plugin_init (GstPlugin * plugin)</code>. + + + full version string (e.g. VERSION from config.h) + + + under which licence the package has been released, e.g. GPL, LGPL. + + + the package-name (e.g. PACKAGE_NAME from config.h) + + + a description from where the package comes from (e.g. the homepage URL) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Debug the plugin feature names in @list. + + + + a #GList of + plugin features + + + + + + + + + + + + This macro can be used to initialize statically linked plugins. It is +necessary to call this macro before the plugin can be used. +It has to be used in combination with GST_PLUGIN_STATIC_REGISTER +and must be placed outside any block to declare the plugin initialization +function. + + + + short, but unique name of the plugin + + + + + This macro can be used to initialize statically linked plugins. It is +necessary to call this macro before the plugin can be used. +It has to be used in combination with GST_PLUGIN_STATIC_DECLARE and +calls the plugin initialization function. + + + + short, but unique name of the plugin + + + + + + + + + + + + + + + + + + + + + + + + - The field name in a GstCaps that is used to signal the UUID of the protection + The field name in a GstCaps that is used to signal the UUID of the protection system. + - The protection system value of the unspecified UUID. + The protection system value of the unspecified UUID. In some cases the system protection ID is not present in the contents or in their metadata, as encrypted WebM. This define is used to set the value of the "system_id" field in GstProtectionEvent, @@ -25315,13 +39078,34 @@ protection system to use. Example: The matroskademux uses this value in the case of encrypted WebM, the application will choose the appropriate protection system based on the information received through EME API. + + + + + + + + + + + + + + + - printf format type used to debug GStreamer types. You can use this in + printf format type used to debug GStreamer types. You can use this in combination with GStreamer's debug logging system as well as the functions gst_info_vasprintf(), gst_info_strdup_vprintf() and gst_info_strdup_printf() to pretty-print the following types: #GstCaps, #GstStructure, @@ -25331,6 +39115,7 @@ to pretty-print the following types: #GstCaps, #GstStructure, else will simply be printed as pointer address. This can only be used on types whose size is >= sizeof(gpointer). + glib:type-name="GstPad" glib:get-type="gst_pad_get_type" glib:type-struct="PadClass"> - A #GstElement is linked to other elements via "pads", which are extremely + A #GstElement is linked to other elements via "pads", which are extremely light-weight generic link points. Pads have a #GstPadDirection, source pads produce data, sink pads consume @@ -25399,13 +39186,19 @@ gst_pad_set_offset() can be used to change the offset. Convenience functions exist to start, pause and stop the task on a pad with gst_pad_start_task(), gst_pad_pause_task() and gst_pad_stop_task() respectively. + - Creates a new pad with the given name in the given direction. + Creates a new pad with the given name in the given direction. If name is %NULL, a guaranteed unique name (across all pads) will be assigned. This function makes a copy of the name so you can safely free the name. + - a new #GstPad. + a new #GstPad. MT safe. @@ -25415,56 +39208,78 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - the name of the new pad. + the name of the new pad. - the #GstPadDirection of the pad. + the #GstPadDirection of the pad. - Creates a new pad with the given name from the given static template. + Creates a new pad with the given name from the given static template. If name is %NULL, a guaranteed unique name (across all pads) will be assigned. This function makes a copy of the name so you can safely free the name. + - a new #GstPad. + a new #GstPad. - the #GstStaticPadTemplate to use + the #GstStaticPadTemplate to use - the name of the pad + the name of the pad - Creates a new pad with the given name from the given template. + Creates a new pad with the given name from the given template. If name is %NULL, a guaranteed unique name (across all pads) will be assigned. This function makes a copy of the name so you can safely free the name. + - a new #GstPad. + a new #GstPad. - the pad template to use + the pad template to use - the name of the pad + the name of the pad @@ -25472,19 +39287,27 @@ This function makes a copy of the name so you can safely free the name. - Gets a string representing the given pad-link return. + Gets a string representing the given pad-link return. + - a static string with the name of the pad-link return. + a static string with the name of the pad-link return. - a #GstPadLinkReturn to get the name of. + a #GstPadLinkReturn to get the name of. + @@ -25498,6 +39321,7 @@ This function makes a copy of the name so you can safely free the name. + @@ -25511,33 +39335,46 @@ This function makes a copy of the name so you can safely free the name. - Activates or deactivates the given pad in @mode via dispatching to the + Activates or deactivates the given pad in @mode via dispatching to the pad's activatemodefunc. For use from within pad activation functions only. If you don't know what this is, you probably don't want to call it. + - %TRUE if the operation was successful. + %TRUE if the operation was successful. MT safe. - the #GstPad to activate or deactivate. + the #GstPad to activate or deactivate. - the requested activation mode + the requested activation mode - whether or not the pad should be active. + whether or not the pad should be active. - Be notified of different states of pads. The provided callback is called for + Be notified of different states of pads. The provided callback is called for every state that matches @mask. Probes are called in groups: First GST_PAD_PROBE_TYPE_BLOCK probes are @@ -25546,8 +39383,11 @@ exception here are GST_PAD_PROBE_TYPE_IDLE probes that are called immediately if the pad is already idle while calling gst_pad_add_probe(). In each of the groups, probes are called in the order in which they were added. + - an id or 0 if no probe is pending. The id can be used to remove the + an id or 0 if no probe is pending. The id can be used to remove the probe with gst_pad_remove_probe(). When using GST_PAD_PROBE_TYPE_IDLE it can happen that the probe can be run immediately and if the probe returns GST_PAD_PROBE_REMOVE this functions returns 0. @@ -25557,11 +39397,15 @@ MT safe. - the #GstPad to add the probe to + the #GstPad to add the probe to - the probe mask + the probe mask scope="notified" closure="2" destroy="3"> - #GstPadProbeCallback that will be called with notifications of + #GstPadProbeCallback that will be called with notifications of the pad state @@ -25577,37 +39423,52 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to the callback + user data passed to the callback - #GDestroyNotify for user_data + #GDestroyNotify for user_data - Checks if the source pad and the sink pad are compatible so they can be + Checks if the source pad and the sink pad are compatible so they can be linked. + - %TRUE if the pads can be linked. + %TRUE if the pads can be linked. - the source #GstPad. + the source #GstPad. - the sink #GstPad. + the sink #GstPad. - Chain a buffer to @pad. + Chain a buffer to @pad. The function returns #GST_FLOW_FLUSHING if the pad was flushing. @@ -25622,26 +39483,35 @@ chain function. In all cases, success or failure, the caller loses its reference to @buffer after calling this function. + - a #GstFlowReturn from the pad. + a #GstFlowReturn from the pad. MT safe. - a sink #GstPad, returns GST_FLOW_ERROR if not. + a sink #GstPad, returns GST_FLOW_ERROR if not. - the #GstBuffer to send, return GST_FLOW_ERROR + the #GstBuffer to send, return GST_FLOW_ERROR if not. - Chain a bufferlist to @pad. + Chain a bufferlist to @pad. The function returns #GST_FLOW_FLUSHING if the pad was flushing. @@ -25657,17 +39527,24 @@ In all cases, success or failure, the caller loses its reference to @list after calling this function. MT safe. + - a #GstFlowReturn from the pad. + a #GstFlowReturn from the pad. - a sink #GstPad, returns GST_FLOW_ERROR if not. + a sink #GstPad, returns GST_FLOW_ERROR if not. - the #GstBufferList to send, return GST_FLOW_ERROR + the #GstBufferList to send, return GST_FLOW_ERROR if not. @@ -25675,21 +39552,30 @@ MT safe. - Check and clear the #GST_PAD_FLAG_NEED_RECONFIGURE flag on @pad and return %TRUE + Check and clear the #GST_PAD_FLAG_NEED_RECONFIGURE flag on @pad and return %TRUE if the flag was set. + - %TRUE is the GST_PAD_FLAG_NEED_RECONFIGURE flag was set on @pad. + %TRUE is the GST_PAD_FLAG_NEED_RECONFIGURE flag was set on @pad. - the #GstPad to check + the #GstPad to check - Creates a stream-id for the source #GstPad @pad by combining the + Creates a stream-id for the source #GstPad @pad by combining the upstream information with the optional @stream_id of the stream of @pad. @pad must have a parent #GstElement and which must have zero or one sinkpad. @stream_id can only be %NULL if the parent element @@ -25706,24 +39592,33 @@ stream-id manually instead. Since stream IDs are sorted alphabetically, any numbers in the stream ID should be printed with a fixed number of characters, preceded by 0's, such as by using the format \%03u instead of \%u. + - A stream-id for @pad. g_free() after usage. + A stream-id for @pad. g_free() after usage. - A source #GstPad + A source #GstPad - Parent #GstElement of @pad + Parent #GstElement of @pad - The stream-id + The stream-id @@ -25731,7 +39626,9 @@ preceded by 0's, such as by using the format \%03u instead of \%u. - Creates a stream-id for the source #GstPad @pad by combining the + Creates a stream-id for the source #GstPad @pad by combining the upstream information with the optional @stream_id of the stream of @pad. @pad must have a parent #GstElement and which must have zero or one sinkpad. @stream_id can only be %NULL if the parent element @@ -25744,28 +39641,39 @@ doing an URI query on the element and in the worst case just uses a random number. Source elements that don't implement the URI handler interface should ideally generate a unique, deterministic stream-id manually instead. + - A stream-id for @pad. g_free() after usage. + A stream-id for @pad. g_free() after usage. - A source #GstPad + A source #GstPad - Parent #GstElement of @pad + Parent #GstElement of @pad - The stream-id + The stream-id - parameters for the @stream_id format string + parameters for the @stream_id format string @@ -25773,7 +39681,9 @@ stream-id manually instead. - Creates a stream-id for the source #GstPad @pad by combining the + Creates a stream-id for the source #GstPad @pad by combining the upstream information with the optional @stream_id of the stream of @pad. @pad must have a parent #GstElement and which must have zero or one sinkpad. @stream_id can only be %NULL if the parent element @@ -25786,102 +39696,140 @@ doing an URI query on the element and in the worst case just uses a random number. Source elements that don't implement the URI handler interface should ideally generate a unique, deterministic stream-id manually instead. + - A stream-id for @pad. g_free() after usage. + A stream-id for @pad. g_free() after usage. - A source #GstPad + A source #GstPad - Parent #GstElement of @pad + Parent #GstElement of @pad - The stream-id + The stream-id - parameters for the @stream_id format string + parameters for the @stream_id format string - Invokes the default event handler for the given pad. + Invokes the default event handler for the given pad. The EOS event will pause the task associated with @pad before it is forwarded to all internally linked pads, The event is sent to all pads internally linked to @pad. This function takes ownership of @event. + - %TRUE if the event was sent successfully. + %TRUE if the event was sent successfully. - a #GstPad to call the default event handler on. + a #GstPad to call the default event handler on. - the parent of @pad or %NULL + the parent of @pad or %NULL - the #GstEvent to handle. + the #GstEvent to handle. - Calls @forward for all internally linked pads of @pad. This function deals with + Calls @forward for all internally linked pads of @pad. This function deals with dynamically changing internal pads and will make sure that the @forward function is only called once for each pad. When @forward returns %TRUE, no further pads will be processed. + - %TRUE if one of the dispatcher functions returned %TRUE. + %TRUE if one of the dispatcher functions returned %TRUE. - a #GstPad + a #GstPad - a #GstPadForwardFunction + a #GstPadForwardFunction - user data passed to @forward + user data passed to @forward - Gets the capabilities of the allowed media types that can flow through + Gets the capabilities of the allowed media types that can flow through @pad and its peer. The allowed capabilities is calculated as the intersection of the results of calling gst_pad_query_caps() on @pad and its peer. The caller owns a reference on the resulting caps. + - the allowed #GstCaps of the + the allowed #GstCaps of the pad link. Unref the caps when you no longer need it. This function returns %NULL when @pad has no peer. @@ -25890,54 +39838,77 @@ MT safe. - a #GstPad. + a #GstPad. - Gets the capabilities currently configured on @pad with the last + Gets the capabilities currently configured on @pad with the last #GST_EVENT_CAPS event. + - the current caps of the pad with + the current caps of the pad with incremented ref-count or %NULL when pad has no caps. Unref after usage. - a #GstPad to get the current capabilities of. + a #GstPad to get the current capabilities of. - Gets the direction of the pad. The direction of the pad is + Gets the direction of the pad. The direction of the pad is decided at construction time so this function does not take the LOCK. + - the #GstPadDirection of the pad. + the #GstPadDirection of the pad. MT safe. - a #GstPad to get the direction of. + a #GstPad to get the direction of. - Gets the private data of a pad. + Gets the private data of a pad. No locking is performed in this function. + - a #gpointer to the private data. + a #gpointer to the private data. - the #GstPad to get the private data of. + the #GstPad to get the private data of. @@ -25945,67 +39916,98 @@ No locking is performed in this function. - Gets the #GstFlowReturn return from the last data passed by this pad. + Gets the #GstFlowReturn return from the last data passed by this pad. + - the #GstPad + the #GstPad - Get the offset applied to the running time of @pad. @pad has to be a source + Get the offset applied to the running time of @pad. @pad has to be a source pad. + - the offset. + the offset. - a #GstPad + a #GstPad - Gets the template for @pad. + Gets the template for @pad. + - the #GstPadTemplate from which + the #GstPadTemplate from which this pad was instantiated, or %NULL if this pad has no template. Unref after usage. - a #GstPad. + a #GstPad. - Gets the capabilities for @pad's template. + Gets the capabilities for @pad's template. + - the #GstCaps of this pad template. + the #GstCaps of this pad template. Unref after usage. - a #GstPad to get the template capabilities from. + a #GstPad to get the template capabilities from. - Gets the parent of @pad, cast to a #GstElement. If a @pad has no parent or + Gets the parent of @pad, cast to a #GstElement. If a @pad has no parent or its parent is not an element, return %NULL. + - the parent of the pad. The + the parent of the pad. The caller has a reference on the parent, so unref when you're finished with it. @@ -26014,29 +40016,40 @@ MT safe. - a pad + a pad - Gets the peer of @pad. This function refs the peer pad so + Gets the peer of @pad. This function refs the peer pad so you need to unref it after use. + - the peer #GstPad. Unref after usage. + the peer #GstPad. Unref after usage. MT safe. - a #GstPad to get the peer of. + a #GstPad to get the peer of. - When @pad is flushing this function returns #GST_FLOW_FLUSHING + When @pad is flushing this function returns #GST_FLOW_FLUSHING immediately and @buffer is %NULL. Calls the getrange function of @pad, see #GstPadGetRangeFunction for a @@ -26062,55 +40075,77 @@ When this function returns any other result value than #GST_FLOW_OK, @buffer will be unchanged. This is a lowlevel function. Usually gst_pad_pull_range() is used. + - a #GstFlowReturn from the pad. + a #GstFlowReturn from the pad. MT safe. - a src #GstPad, returns #GST_FLOW_ERROR if not. + a src #GstPad, returns #GST_FLOW_ERROR if not. - The start offset of the buffer + The start offset of the buffer - The length of the buffer + The length of the buffer - a pointer to hold the #GstBuffer, + a pointer to hold the #GstBuffer, returns #GST_FLOW_ERROR if %NULL. - Returns a new reference of the sticky event of type @event_type + Returns a new reference of the sticky event of type @event_type from the event. + - a #GstEvent of type + a #GstEvent of type @event_type or %NULL when no event of @event_type was on @pad. Unref after usage. - the #GstPad to get the event from. + the #GstPad to get the event from. - the #GstEventType that should be retrieved. + the #GstEventType that should be retrieved. - the index of the event + the index of the event @@ -26118,19 +40153,26 @@ from the event. - Returns the current #GstStream for the @pad, or %NULL if none has been + Returns the current #GstStream for the @pad, or %NULL if none has been set yet, i.e. the pad has not received a stream-start event yet. This is a convenience wrapper around gst_pad_get_sticky_event() and gst_event_parse_stream(). + - the current #GstStream for @pad, or %NULL. + the current #GstStream for @pad, or %NULL. unref the returned stream when no longer needed. - A source #GstPad + A source #GstPad @@ -26138,7 +40180,9 @@ gst_event_parse_stream(). - Returns the current stream-id for the @pad, or %NULL if none has been + Returns the current stream-id for the @pad, or %NULL if none has been set yet, i.e. the pad has not received a stream-start event yet. This is a convenience wrapper around gst_pad_get_sticky_event() and @@ -26146,15 +40190,20 @@ gst_event_parse_stream_start(). The returned stream-id string should be treated as an opaque string, its contents should not be interpreted. + - a newly-allocated copy of the stream-id for + a newly-allocated copy of the stream-id for @pad, or %NULL. g_free() the returned string when no longer needed. - A source #GstPad + A source #GstPad @@ -26162,148 +40211,211 @@ contents should not be interpreted. - Get @pad task state. If no task is currently + Get @pad task state. If no task is currently set, #GST_TASK_STOPPED is returned. + - The current state of @pad's task. + The current state of @pad's task. - the #GstPad to get task state from + the #GstPad to get task state from - Check if @pad has caps set on it with a #GST_EVENT_CAPS event. + Check if @pad has caps set on it with a #GST_EVENT_CAPS event. + - %TRUE when @pad has caps associated with it. + %TRUE when @pad has caps associated with it. - a #GstPad to check + a #GstPad to check - Query if a pad is active + Query if a pad is active + - %TRUE if the pad is active. + %TRUE if the pad is active. MT safe. - the #GstPad to query + the #GstPad to query - Checks if the pad is blocked or not. This function returns the + Checks if the pad is blocked or not. This function returns the last requested state of the pad. It is not certain that the pad is actually blocking at this point (see gst_pad_is_blocking()). + - %TRUE if the pad is blocked. + %TRUE if the pad is blocked. MT safe. - the #GstPad to query + the #GstPad to query - Checks if the pad is blocking or not. This is a guaranteed state + Checks if the pad is blocking or not. This is a guaranteed state of whether the pad is actually blocking on a #GstBuffer or a #GstEvent. + - %TRUE if the pad is blocking. + %TRUE if the pad is blocking. MT safe. - the #GstPad to query + the #GstPad to query - Checks if a @pad is linked to another pad or not. + Checks if a @pad is linked to another pad or not. + - %TRUE if the pad is linked, %FALSE otherwise. + %TRUE if the pad is linked, %FALSE otherwise. MT safe. - pad to check + pad to check - Gets an iterator for the pads to which the given pad is linked to inside + Gets an iterator for the pads to which the given pad is linked to inside of the parent element. Each #GstPad element yielded by the iterator will have its refcount increased, so unref after use. Free-function: gst_iterator_free + - a new #GstIterator of #GstPad + a new #GstIterator of #GstPad or %NULL when the pad does not have an iterator function configured. Use gst_iterator_free() after usage. - the GstPad to get the internal links of. + the GstPad to get the internal links of. - Iterate the list of pads to which the given pad is linked to inside of + Iterate the list of pads to which the given pad is linked to inside of the parent element. This is the default handler, and thus returns an iterator of all of the pads inside the parent element with opposite direction. The caller must free this iterator after use with gst_iterator_free(). + - a #GstIterator of #GstPad, or %NULL if @pad + a #GstIterator of #GstPad, or %NULL if @pad has no parent. Unref each returned pad with gst_object_unref(). - the #GstPad to get the internal links of. + the #GstPad to get the internal links of. - the parent of @pad or %NULL + the parent of @pad or %NULL - Links the source pad and the sink pad. + Links the source pad and the sink pad. + - A result code indicating if the connection worked or + A result code indicating if the connection worked or what went wrong. MT Safe. @@ -26311,17 +40423,23 @@ MT Safe. - the source #GstPad to link. + the source #GstPad to link. - the sink #GstPad to link. + the sink #GstPad to link. - Links the source pad and the sink pad. + Links the source pad and the sink pad. This variant of #gst_pad_link provides a more granular control on the checks being done when linking. While providing some considerable speedups @@ -26330,22 +40448,31 @@ can cause severe issues. Refer to the documentation of #GstPadLinkCheck for more information. MT Safe. + - A result code indicating if the connection worked or + A result code indicating if the connection worked or what went wrong. - the source #GstPad to link. + the source #GstPad to link. - the sink #GstPad to link. + the sink #GstPad to link. - the checks to validate when linking + the checks to validate when linking @@ -26353,24 +40480,33 @@ MT Safe. - Links @src to @sink, creating any #GstGhostPad's in between as necessary. + Links @src to @sink, creating any #GstGhostPad's in between as necessary. This is a convenience function to save having to create and add intermediate #GstGhostPad's as required for linking across #GstBin boundaries. If @src or @sink pads don't have parent elements or do not share a common ancestor, the link will fail. + - whether the link succeeded. + whether the link succeeded. - a #GstPad + a #GstPad - a #GstPad + a #GstPad @@ -26378,7 +40514,9 @@ ancestor, the link will fail. - Links @src to @sink, creating any #GstGhostPad's in between as necessary. + Links @src to @sink, creating any #GstGhostPad's in between as necessary. This is a convenience function to save having to create and add intermediate #GstGhostPad's as required for linking across #GstBin boundaries. @@ -26389,111 +40527,159 @@ ancestor, the link will fail. Calling gst_pad_link_maybe_ghosting_full() with @flags == %GST_PAD_LINK_CHECK_DEFAULT is the recommended way of linking pads with safety checks applied. + - whether the link succeeded. + whether the link succeeded. - a #GstPad + a #GstPad - a #GstPad + a #GstPad - some #GstPadLinkCheck flags + some #GstPadLinkCheck flags - Mark a pad for needing reconfiguration. The next call to + Mark a pad for needing reconfiguration. The next call to gst_pad_check_reconfigure() will return %TRUE after this call. + - the #GstPad to mark + the #GstPad to mark - Check the #GST_PAD_FLAG_NEED_RECONFIGURE flag on @pad and return %TRUE + Check the #GST_PAD_FLAG_NEED_RECONFIGURE flag on @pad and return %TRUE if the flag was set. + - %TRUE is the GST_PAD_FLAG_NEED_RECONFIGURE flag is set on @pad. + %TRUE is the GST_PAD_FLAG_NEED_RECONFIGURE flag is set on @pad. - the #GstPad to check + the #GstPad to check - Pause the task of @pad. This function will also wait until the + Pause the task of @pad. This function will also wait until the function executed by the task is finished if this function is not called from the task function. + - a %TRUE if the task could be paused or %FALSE when the pad + a %TRUE if the task could be paused or %FALSE when the pad has no task. - the #GstPad to pause the task of + the #GstPad to pause the task of - Performs gst_pad_query() on the peer of @pad. + Performs gst_pad_query() on the peer of @pad. The caller is responsible for both the allocation and deallocation of the query structure. + - %TRUE if the query could be performed. This function returns %FALSE + %TRUE if the query could be performed. This function returns %FALSE if @pad has no peer. - a #GstPad to invoke the peer query on. + a #GstPad to invoke the peer query on. - the #GstQuery to perform. + the #GstQuery to perform. - Check if the peer of @pad accepts @caps. If @pad has no peer, this function + Check if the peer of @pad accepts @caps. If @pad has no peer, this function returns %TRUE. + - %TRUE if the peer of @pad can accept the caps or @pad has no peer. + %TRUE if the peer of @pad can accept the caps or @pad has no peer. - a #GstPad to check the peer of + a #GstPad to check the peer of - a #GstCaps to check on the pad + a #GstCaps to check on the pad - Gets the capabilities of the peer connected to this pad. Similar to + Gets the capabilities of the peer connected to this pad. Similar to gst_pad_query_caps(). When called on srcpads @filter contains the caps that @@ -26501,76 +40687,107 @@ upstream could produce in the order preferred by upstream. When called on sinkpads @filter contains the caps accepted by downstream in the preferred order. @filter might be %NULL but if it is not %NULL the returned caps will be a subset of @filter. + - the caps of the peer pad with incremented + the caps of the peer pad with incremented ref-count. When there is no peer pad, this function returns @filter or, when @filter is %NULL, ANY caps. - a #GstPad to get the capabilities of. + a #GstPad to get the capabilities of. - a #GstCaps filter, or %NULL. + a #GstCaps filter, or %NULL. - Queries the peer pad of a given sink pad to convert @src_val in @src_format + Queries the peer pad of a given sink pad to convert @src_val in @src_format to @dest_format. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - a #GstPad, on whose peer pad to invoke the convert query on. + a #GstPad, on whose peer pad to invoke the convert query on. Must be a sink pad. - a #GstFormat to convert from. + a #GstFormat to convert from. - a value to convert. + a value to convert. - the #GstFormat to convert to. + the #GstFormat to convert to. - a pointer to the result. + a pointer to the result. - Queries the peer pad of a given sink pad for the total stream duration. + Queries the peer pad of a given sink pad for the total stream duration. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - a #GstPad on whose peer pad to invoke the duration query on. + a #GstPad on whose peer pad to invoke the duration query on. Must be a sink pad. - the #GstFormat requested + the #GstFormat requested transfer-ownership="full" optional="1" allow-none="1"> - a location in which to store the total + a location in which to store the total duration, or %NULL. @@ -26587,19 +40806,28 @@ to @dest_format. - Queries the peer of a given sink pad for the stream position. + Queries the peer of a given sink pad for the stream position. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - a #GstPad on whose peer to invoke the position query on. + a #GstPad on whose peer to invoke the position query on. Must be a sink pad. - the #GstFormat requested + the #GstFormat requested transfer-ownership="full" optional="1" allow-none="1"> - a location in which to store the current + a location in which to store the current position, or %NULL. @@ -26616,51 +40846,71 @@ to @dest_format. - Checks if all internally linked pads of @pad accepts the caps in @query and + Checks if all internally linked pads of @pad accepts the caps in @query and returns the intersection of the results. This function is useful as a default accept caps query function for an element that can handle any stream format, but requires caps that are acceptable for all opposite pads. + - %TRUE if @query could be executed + %TRUE if @query could be executed - a #GstPad to proxy. + a #GstPad to proxy. - an ACCEPT_CAPS #GstQuery. + an ACCEPT_CAPS #GstQuery. - Calls gst_pad_query_caps() for all internally linked pads of @pad and returns + Calls gst_pad_query_caps() for all internally linked pads of @pad and returns the intersection of the results. This function is useful as a default caps query function for an element that can handle any stream format, but requires all its pads to have the same caps. Two such elements are tee and adder. + - %TRUE if @query could be executed + %TRUE if @query could be executed - a #GstPad to proxy. + a #GstPad to proxy. - a CAPS #GstQuery. + a CAPS #GstQuery. - Pulls a @buffer from the peer pad or fills up a provided buffer. + Pulls a @buffer from the peer pad or fills up a provided buffer. This function will first trigger the pad block signal if it was installed. @@ -26685,37 +40935,50 @@ accordingly. Note that less than @size bytes can be returned in @buffer when, for example, an EOS condition is near or when @buffer is not large enough to hold @size bytes. The caller should check the result buffer size to get the result size. + - a #GstFlowReturn from the peer pad. + a #GstFlowReturn from the peer pad. MT safe. - a sink #GstPad, returns GST_FLOW_ERROR if not. + a sink #GstPad, returns GST_FLOW_ERROR if not. - The start offset of the buffer + The start offset of the buffer - The length of the buffer + The length of the buffer - a pointer to hold the #GstBuffer, returns + a pointer to hold the #GstBuffer, returns GST_FLOW_ERROR if %NULL. - Pushes a buffer to the peer of @pad. + Pushes a buffer to the peer of @pad. This function will call installed block probes before triggering any installed data probes. @@ -26726,50 +40989,68 @@ be returned. In all cases, success or failure, the caller loses its reference to @buffer after calling this function. + - a #GstFlowReturn from the peer pad. + a #GstFlowReturn from the peer pad. MT safe. - a source #GstPad, returns #GST_FLOW_ERROR if not. + a source #GstPad, returns #GST_FLOW_ERROR if not. - the #GstBuffer to push returns GST_FLOW_ERROR + the #GstBuffer to push returns GST_FLOW_ERROR if not. - Sends the event to the peer of the given pad. This function is + Sends the event to the peer of the given pad. This function is mainly used by elements to send events to their peer elements. This function takes ownership of the provided event so you should gst_event_ref() it if you want to reuse the event after this call. + - %TRUE if the event was handled. + %TRUE if the event was handled. MT safe. - a #GstPad to push the event to. + a #GstPad to push the event to. - the #GstEvent to send to the pad. + the #GstEvent to send to the pad. - Pushes a buffer list to the peer of @pad. + Pushes a buffer list to the peer of @pad. This function will call installed block probes before triggering any installed data probes. @@ -26782,26 +41063,35 @@ chained via gst_pad_chain(). In all cases, success or failure, the caller loses its reference to @list after calling this function. + - a #GstFlowReturn from the peer pad. + a #GstFlowReturn from the peer pad. MT safe. - a source #GstPad, returns #GST_FLOW_ERROR if not. + a source #GstPad, returns #GST_FLOW_ERROR if not. - the #GstBufferList to push returns GST_FLOW_ERROR + the #GstBufferList to push returns GST_FLOW_ERROR if not. - Dispatches a query to a pad. The query should have been allocated by the + Dispatches a query to a pad. The query should have been allocated by the caller via one of the type-specific allocation functions. The element that the pad belongs to is responsible for filling the query with an appropriate response, which should then be parsed with a type-specific query parsing @@ -26811,41 +41101,59 @@ Again, the caller is responsible for both the allocation and deallocation of the query structure. Please also note that some queries might need a running pipeline to work. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - a #GstPad to invoke the default query on. + a #GstPad to invoke the default query on. - the #GstQuery to perform. + the #GstQuery to perform. - Check if the given pad accepts the caps. + Check if the given pad accepts the caps. + - %TRUE if the pad can accept the caps. + %TRUE if the pad can accept the caps. - a #GstPad to check + a #GstPad to check - a #GstCaps to check on the pad + a #GstCaps to check on the pad - Gets the capabilities this pad can produce or consume. + Gets the capabilities this pad can produce or consume. Note that this method doesn't necessarily return the caps set by sending a gst_event_new_caps() - use gst_pad_get_current_caps() for that instead. gst_pad_query_caps returns all possible caps a pad can operate with, using @@ -26860,97 +41168,139 @@ if it is not %NULL the returned caps will be a subset of @filter. Note that this function does not return writable #GstCaps, use gst_caps_make_writable() before modifying the caps. + - the caps of the pad with incremented ref-count. + the caps of the pad with incremented ref-count. - a #GstPad to get the capabilities of. + a #GstPad to get the capabilities of. - suggested #GstCaps, or %NULL + suggested #GstCaps, or %NULL - Queries a pad to convert @src_val in @src_format to @dest_format. + Queries a pad to convert @src_val in @src_format to @dest_format. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - a #GstPad to invoke the convert query on. + a #GstPad to invoke the convert query on. - a #GstFormat to convert from. + a #GstFormat to convert from. - a value to convert. + a value to convert. - the #GstFormat to convert to. + the #GstFormat to convert to. - a pointer to the result. + a pointer to the result. - Invokes the default query handler for the given pad. + Invokes the default query handler for the given pad. The query is sent to all pads internally linked to @pad. Note that if there are many possible sink pads that are internally linked to @pad, only one will be sent the query. Multi-sinkpad elements should implement custom query handlers. + - %TRUE if the query was performed successfully. + %TRUE if the query was performed successfully. - a #GstPad to call the default query handler on. + a #GstPad to call the default query handler on. - the parent of @pad or %NULL + the parent of @pad or %NULL - the #GstQuery to handle. + the #GstQuery to handle. - Queries a pad for the total stream duration. + Queries a pad for the total stream duration. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - a #GstPad to invoke the duration query on. + a #GstPad to invoke the duration query on. - the #GstFormat requested + the #GstFormat requested transfer-ownership="full" optional="1" allow-none="1"> - a location in which to store the total + a location in which to store the total duration, or %NULL. - Queries a pad for the stream position. + Queries a pad for the stream position. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - a #GstPad to invoke the position query on. + a #GstPad to invoke the position query on. - the #GstFormat requested + the #GstFormat requested transfer-ownership="full" optional="1" allow-none="1"> - A location in which to store the current position, or %NULL. + A location in which to store the current position, or %NULL. - Remove the probe with @id from @pad. + Remove the probe with @id from @pad. MT safe. + - the #GstPad with the probe + the #GstPad with the probe - the probe id to remove + the probe id to remove - Sends the event to the pad. This function can be used + Sends the event to the pad. This function can be used by applications to send events in the pipeline. If @pad is a source pad, @event should be an upstream event. If @pad is a @@ -27030,34 +41402,46 @@ all necessary locks and checks. This function takes ownership of the provided event so you should gst_event_ref() it if you want to reuse the event after this call. + - %TRUE if the event was handled. + %TRUE if the event was handled. - a #GstPad to send the event to. + a #GstPad to send the event to. - the #GstEvent to send to the pad. + the #GstEvent to send to the pad. - Sets the given activate function for @pad. The activate function will + Sets the given activate function for @pad. The activate function will dispatch to gst_pad_activate_mode() to perform the actual activation. Only makes sense to set on sink pads. Call this function if your sink pad can start a pull-based task. + - a #GstPad. + a #GstPad. scope="notified" closure="1" destroy="2"> - the #GstPadActivateFunction to set. + the #GstPadActivateFunction to set. - user_data passed to @notify + user_data passed to @notify - notify called when @activate will not be used anymore. + notify called when @activate will not be used anymore. - Sets the given activate_mode function for the pad. An activate_mode function + Sets the given activate_mode function for the pad. An activate_mode function prepares the element for data passing. + - a #GstPad. + a #GstPad. scope="notified" closure="1" destroy="2"> - the #GstPadActivateModeFunction to set. + the #GstPadActivateModeFunction to set. @@ -27106,17 +41503,23 @@ prepares the element for data passing. transfer-ownership="none" nullable="1" allow-none="1"> - user_data passed to @notify + user_data passed to @notify - notify called when @activatemode will not be used anymore. + notify called when @activatemode will not be used anymore. - Activates or deactivates the given pad. + Activates or deactivates the given pad. Normally called from within core state change functions. If @active, makes sure the pad is active. If it is already active, either in @@ -27125,33 +41528,45 @@ function to perform the actual activation. If not @active, calls gst_pad_activate_mode() with the pad's current mode and a %FALSE argument. + - %TRUE if the operation was successful. + %TRUE if the operation was successful. MT safe. - the #GstPad to activate or deactivate. + the #GstPad to activate or deactivate. - whether or not the pad should be active. + whether or not the pad should be active. - Sets the given chain function for the pad. The chain function is called to + Sets the given chain function for the pad. The chain function is called to process a #GstBuffer input buffer. see #GstPadChainFunction for more details. + - a sink #GstPad. + a sink #GstPad. - the #GstPadChainFunction to set. + the #GstPadChainFunction to set. - user_data passed to @notify + user_data passed to @notify - notify called when @chain will not be used anymore. + notify called when @chain will not be used anymore. - Sets the given chain list function for the pad. The chainlist function is + Sets the given chain list function for the pad. The chainlist function is called to process a #GstBufferList input buffer list. See #GstPadChainListFunction for more details. + - a sink #GstPad. + a sink #GstPad. - the #GstPadChainListFunction to set. + the #GstPadChainListFunction to set. @@ -27201,33 +41629,44 @@ called to process a #GstBufferList input buffer list. See transfer-ownership="none" nullable="1" allow-none="1"> - user_data passed to @notify + user_data passed to @notify - notify called when @chainlist will not be used anymore. + notify called when @chainlist will not be used anymore. - Set the given private data gpointer on the pad. + Set the given private data gpointer on the pad. This function can only be used by the element that owns the pad. No locking is performed in this function. + - the #GstPad to set the private data of. + the #GstPad to set the private data of. - The private data to attach to the pad. + The private data to attach to the pad. @@ -27235,13 +41674,18 @@ No locking is performed in this function. - Sets the given event handler for the pad. + Sets the given event handler for the pad. + - a #GstPad of either direction. + a #GstPad of either direction. scope="notified" closure="1" destroy="2"> - the #GstPadEventFullFunction to set. + the #GstPadEventFullFunction to set. @@ -27257,24 +41703,33 @@ No locking is performed in this function. transfer-ownership="none" nullable="1" allow-none="1"> - user_data passed to @notify + user_data passed to @notify - notify called when @event will not be used anymore. + notify called when @event will not be used anymore. - Sets the given event handler for the pad. + Sets the given event handler for the pad. + - a #GstPad of either direction. + a #GstPad of either direction. scope="notified" closure="1" destroy="2"> - the #GstPadEventFunction to set. + the #GstPadEventFunction to set. - user_data passed to @notify + user_data passed to @notify - notify called when @event will not be used anymore. + notify called when @event will not be used anymore. - Sets the given getrange function for the pad. The getrange function is + Sets the given getrange function for the pad. The getrange function is called to produce a new #GstBuffer to start the processing pipeline. see #GstPadGetRangeFunction for a description of the getrange function. + - a source #GstPad. + a source #GstPad. - the #GstPadGetRangeFunction to set. + the #GstPadGetRangeFunction to set. - user_data passed to @notify + user_data passed to @notify - notify called when @get will not be used anymore. + notify called when @get will not be used anymore. - Sets the given internal link iterator function for the pad. + Sets the given internal link iterator function for the pad. + - a #GstPad of either direction. + a #GstPad of either direction. - the #GstPadIterIntLinkFunction to set. + the #GstPadIterIntLinkFunction to set. @@ -27356,18 +41835,24 @@ called to produce a new #GstBuffer to start the processing pipeline. see transfer-ownership="none" nullable="1" allow-none="1"> - user_data passed to @notify + user_data passed to @notify - notify called when @iterintlink will not be used anymore. + notify called when @iterintlink will not be used anymore. - Sets the given link function for the pad. It will be called when + Sets the given link function for the pad. It will be called when the pad is linked with another pad. The return value #GST_PAD_LINK_OK should be used when the connection can be @@ -27378,12 +41863,15 @@ cannot be made for some reason. If @link is installed on a source pad, it should call the #GstPadLinkFunction of the peer sink pad, if present. + - a #GstPad. + a #GstPad. scope="notified" closure="1" destroy="2"> - the #GstPadLinkFunction to set. + the #GstPadLinkFunction to set. - user_data passed to @notify + user_data passed to @notify - notify called when @link will not be used anymore. + notify called when @link will not be used anymore. - Set the offset that will be applied to the running time of @pad. + Set the offset that will be applied to the running time of @pad. + - a #GstPad + a #GstPad - the offset + the offset - Set the given query function for the pad. + Set the given query function for the pad. + - a #GstPad of either direction. + a #GstPad of either direction. scope="notified" closure="1" destroy="2"> - the #GstPadQueryFunction to set. + the #GstPadQueryFunction to set. - user_data passed to @notify + user_data passed to @notify - notify called when @query will not be used anymore. + notify called when @query will not be used anymore. - Sets the given unlink function for the pad. It will be called + Sets the given unlink function for the pad. It will be called when the pad is unlinked. Note that the pad's lock is already held when the unlink function is called, so most pad functions cannot be called from within the callback. + - a #GstPad. + a #GstPad. scope="notified" closure="1" destroy="2"> - the #GstPadUnlinkFunction to set. + the #GstPadUnlinkFunction to set. - user_data passed to @notify + user_data passed to @notify - notify called when @unlink will not be used anymore. + notify called when @unlink will not be used anymore. - Starts a task that repeatedly calls @func with @user_data. This function + Starts a task that repeatedly calls @func with @user_data. This function is mostly used in pad activation functions to start the dataflow. The #GST_PAD_STREAM_LOCK of @pad will automatically be acquired before @func is called. + - a %TRUE if the task could be started. + a %TRUE if the task could be started. - the #GstPad to start the task of + the #GstPad to start the task of scope="notified" closure="1" destroy="2"> - the task function to call + the task function to call - user data passed to the task function + user data passed to the task function - called when @user_data is no longer referenced + called when @user_data is no longer referenced - Iterates all sticky events on @pad and calls @foreach_func for every + Iterates all sticky events on @pad and calls @foreach_func for every event. If @foreach_func returns %FALSE the iteration is immediately stopped. + - the #GstPad that should be used for iteration. + the #GstPad that should be used for iteration. - the #GstPadStickyEventsForeachFunction that + the #GstPadStickyEventsForeachFunction that should be called for every event. @@ -27552,13 +42095,17 @@ event. If @foreach_func returns %FALSE the iteration is immediately stopped. - the optional user data. + the optional user data. - Stop the task of @pad. This function will also make sure that the + Stop the task of @pad. This function will also make sure that the function executed by the task will effectively stop if not called from the GstTaskFunction. @@ -27567,13 +42114,18 @@ the task. Use gst_task_pause() instead. Regardless of whether the pad has a task, the stream lock is acquired and released so as to ensure that streaming through this pad has finished. + - a %TRUE if the task could be stopped or %FALSE on error. + a %TRUE if the task could be stopped or %FALSE on error. - the #GstPad to stop the task of + the #GstPad to stop the task of @@ -27581,28 +42133,42 @@ released so as to ensure that streaming through this pad has finished. - Store the sticky @event on @pad + Store the sticky @event on @pad + - #GST_FLOW_OK on success, #GST_FLOW_FLUSHING when the pad + #GST_FLOW_OK on success, #GST_FLOW_FLUSHING when the pad was flushing or #GST_FLOW_EOS when the pad was EOS. - a #GstPad + a #GstPad - a #GstEvent + a #GstEvent - Unlinks the source pad from the sink pad. Will emit the #GstPad::unlinked + Unlinks the source pad from the sink pad. Will emit the #GstPad::unlinked signal on both pads. + - %TRUE if the pads were unlinked. This function returns %FALSE if + %TRUE if the pads were unlinked. This function returns %FALSE if the pads were not linked together. MT safe. @@ -27610,29 +42176,38 @@ MT safe. - the source #GstPad to unlink. + the source #GstPad to unlink. - the sink #GstPad to unlink. + the sink #GstPad to unlink. - A helper function you can use that sets the FIXED_CAPS flag + A helper function you can use that sets the FIXED_CAPS flag This way the default CAPS query will always return the negotiated caps or in case the pad is not negotiated, the padtemplate caps. The negotiated caps are the caps of the last CAPS event that passed on the pad. Use this function on a pad that, once it negotiated to a CAPS, cannot be renegotiated to something else. + - the pad to use + the pad to use @@ -27650,7 +42225,9 @@ be renegotiated to something else. version="1.6" writable="1" transfer-ownership="none"> - The offset that will be applied to the running time of the pad. + The offset that will be applied to the running time of the pad. @@ -27660,15 +42237,21 @@ be renegotiated to something else. - private data owned by the parent element + private data owned by the parent element - padtemplate for this pad + padtemplate for this pad - the direction of the pad, cannot change after creating + the direction of the pad, cannot change after creating the pad. @@ -27795,12 +42378,14 @@ be renegotiated to something else. + - + + @@ -27811,78 +42396,110 @@ be renegotiated to something else. - Signals that a pad has been linked to the peer pad. + Signals that a pad has been linked to the peer pad. - the peer pad that has been connected + the peer pad that has been connected - Signals that a pad has been unlinked from the peer pad. + Signals that a pad has been unlinked from the peer pad. - the peer pad that has been disconnected + the peer pad that has been disconnected - This function is called when the pad is activated during the element + This function is called when the pad is activated during the element READY to PAUSED state change. By default this function will call the activate function that puts the pad in push mode but elements can override this function to activate the pad in pull mode if they wish. + - %TRUE if the pad could be activated. + %TRUE if the pad could be activated. - a #GstPad + a #GstPad - the parent of @pad + the parent of @pad - The prototype of the push and pull activate functions. + The prototype of the push and pull activate functions. + - %TRUE if the pad could be activated or deactivated. + %TRUE if the pad could be activated or deactivated. - a #GstPad + a #GstPad - the parent of @pad + the parent of @pad - the requested activation mode of @pad + the requested activation mode of @pad - activate or deactivate the pad. + activate or deactivate the pad. - A function that will be called on sinkpads when chaining buffers. + A function that will be called on sinkpads when chaining buffers. The function typically processes the data contained in the buffer and either consumes the data or passes it on to the internally linked pad(s). @@ -27891,32 +42508,43 @@ gst_buffer_unref() when the buffer is no longer needed. When a chain function detects an error in the data stream, it must post an error on the bus and return an appropriate #GstFlowReturn value. + - #GST_FLOW_OK for success + #GST_FLOW_OK for success - the sink #GstPad that performed the chain. + the sink #GstPad that performed the chain. - the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT + the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set, @parent is guaranteed to be not-%NULL and remain valid during the execution of this function. - the #GstBuffer that is chained, not %NULL. + the #GstBuffer that is chained, not %NULL. - A function that will be called on sinkpads when chaining buffer lists. + A function that will be called on sinkpads when chaining buffer lists. The function typically processes the data contained in the buffer list and either consumes the data or passes it on to the internally linked pad(s). @@ -27925,26 +42553,35 @@ should gst_buffer_list_unref() when the list is no longer needed. When a chainlist function detects an error in the data stream, it must post an error on the bus and return an appropriate #GstFlowReturn value. + - #GST_FLOW_OK for success + #GST_FLOW_OK for success - the sink #GstPad that performed the chain. + the sink #GstPad that performed the chain. - the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT + the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set, @parent is guaranteed to be not-%NULL and remain valid during the execution of this function. - the #GstBufferList that is chained, not %NULL. + the #GstBufferList that is chained, not %NULL. @@ -27952,11 +42589,13 @@ post an error on the bus and return an appropriate #GstFlowReturn value. + + @@ -27972,6 +42611,7 @@ post an error on the bus and return an appropriate #GstFlowReturn value. + @@ -27986,7 +42626,7 @@ post an error on the bus and return an appropriate #GstFlowReturn value. - + @@ -27995,78 +42635,108 @@ post an error on the bus and return an appropriate #GstFlowReturn value. glib:type-name="GstPadDirection" glib:get-type="gst_pad_direction_get_type" c:type="GstPadDirection"> - The direction of a pad. + The direction of a pad. - direction is unknown. + direction is unknown. - the pad is a source pad. + the pad is a source pad. - the pad is a sink pad. + the pad is a sink pad. - Function signature to handle an event for the pad. + Function signature to handle an event for the pad. This variant is for specific elements that will take into account the last downstream flow return (from a pad push), in which case they can return it. + - %GST_FLOW_OK if the event was handled properly, or any other + %GST_FLOW_OK if the event was handled properly, or any other #GstFlowReturn dependent on downstream state. - the #GstPad to handle the event. + the #GstPad to handle the event. - the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT + the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set, @parent is guaranteed to be not-%NULL and remain valid during the execution of this function. - the #GstEvent to handle. + the #GstEvent to handle. - Function signature to handle an event for the pad. + Function signature to handle an event for the pad. + - %TRUE if the pad could handle the event. + %TRUE if the pad could handle the event. - the #GstPad to handle the event. + the #GstPad to handle the event. - the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT + the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set, @parent is guaranteed to be not-%NULL and remain valid during the execution of this function. - the #GstEvent to handle. + the #GstEvent to handle. @@ -28075,43 +42745,57 @@ return it. glib:type-name="GstPadFlags" glib:get-type="gst_pad_flags_get_type" c:type="GstPadFlags"> - Pad state flags + Pad state flags - is dataflow on a pad blocked + is dataflow on a pad blocked - is pad flushing + is pad flushing - is pad in EOS state + is pad in EOS state - is pad currently blocking on a buffer or event + is pad currently blocking on a buffer or event - ensure that there is a parent object before calling + ensure that there is a parent object before calling into the pad callbacks. - the pad should be reconfigured/renegotiated. + the pad should be reconfigured/renegotiated. The flag has to be unset manually after reconfiguration happened. @@ -28119,13 +42803,17 @@ return it. value="1024" c:identifier="GST_PAD_FLAG_PENDING_EVENTS" glib:nick="pending-events"> - the pad has pending events + the pad has pending events - the pad is using fixed caps. This means that + the pad is using fixed caps. This means that once the caps are set on the pad, the default caps query function will only return those caps. @@ -28133,7 +42821,9 @@ return it. value="4096" c:identifier="GST_PAD_FLAG_PROXY_CAPS" glib:nick="proxy-caps"> - the default event and query handler will forward + the default event and query handler will forward all events and queries to the internally linked pads instead of discarding them. @@ -28141,7 +42831,9 @@ return it. value="8192" c:identifier="GST_PAD_FLAG_PROXY_ALLOCATION" glib:nick="proxy-allocation"> - the default query handler will forward + the default query handler will forward allocation queries to the internally linked pads instead of discarding them. @@ -28149,7 +42841,9 @@ return it. value="16384" c:identifier="GST_PAD_FLAG_PROXY_SCHEDULING" glib:nick="proxy-scheduling"> - the default query handler will forward + the default query handler will forward scheduling queries to the internally linked pads instead of discarding them. @@ -28157,7 +42851,9 @@ return it. value="32768" c:identifier="GST_PAD_FLAG_ACCEPT_INTERSECT" glib:nick="accept-intersect"> - the default accept-caps handler will check + the default accept-caps handler will check it the caps intersect the query-caps result instead of checking for a subset. This is interesting for parsers that can accept incompletely specified caps. @@ -28166,7 +42862,9 @@ return it. value="65536" c:identifier="GST_PAD_FLAG_ACCEPT_TEMPLATE" glib:nick="accept-template"> - the default accept-caps handler will use + the default accept-caps handler will use the template pad caps instead of query caps to compare with the accept caps. Use this in combination with %GST_PAD_FLAG_ACCEPT_INTERSECT. (Since: 1.6) @@ -28175,19 +42873,28 @@ return it. value="1048576" c:identifier="GST_PAD_FLAG_LAST" glib:nick="last"> - offset to define more flags + offset to define more flags - A forward function is called for all internally linked pads, see + A forward function is called for all internally linked pads, see gst_pad_forward(). + - %TRUE if the dispatching procedure has to be stopped. + %TRUE if the dispatching procedure has to be stopped. - the #GstPad that is forwarded. + the #GstPad that is forwarded. nullable="1" allow-none="1" closure="1"> - the gpointer to optional user data. + the gpointer to optional user data. - This function will be called on source pads when a peer element + This function will be called on source pads when a peer element request a buffer at the specified @offset and @length. If this function returns #GST_FLOW_OK, the result buffer will be stored in @buffer. The contents of @buffer is invalid for any other return value. @@ -28234,43 +42945,61 @@ of length @length in the stream is returned. When this function is called with a -1 @length, a buffer with a default optimal length is returned in @buffer. The length might depend on the value of @offset. + - #GST_FLOW_OK for success and a valid buffer in @buffer. Any other + #GST_FLOW_OK for success and a valid buffer in @buffer. Any other return value leaves @buffer undefined. - the src #GstPad to perform the getrange on. + the src #GstPad to perform the getrange on. - the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT + the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set, @parent is guaranteed to be not-%NULL and remain valid during the execution of this function. - the offset of the range + the offset of the range - the length of the range + the length of the range - a memory location to hold the result buffer, cannot be %NULL. + a memory location to hold the result buffer, cannot be %NULL. - The signature of the internal pad link iterator function. + The signature of the internal pad link iterator function. + - a new #GstIterator that will iterate over all pads that are + a new #GstIterator that will iterate over all pads that are linked to the given pad on the inside of the parent element. the caller must call gst_iterator_free() after usage. @@ -28278,14 +43007,18 @@ the caller must call gst_iterator_free() after usage. - The #GstPad to query. + The #GstPad to query. - the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT + the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set, @parent is guaranteed to be not-%NULL and remain valid during the execution of this function. @@ -28296,7 +43029,9 @@ the caller must call gst_iterator_free() after usage. glib:type-name="GstPadLinkCheck" glib:get-type="gst_pad_link_check_get_type" c:type="GstPadLinkCheck"> - The amount of checking to be done when linking pads. @GST_PAD_LINK_CHECK_CAPS + The amount of checking to be done when linking pads. @GST_PAD_LINK_CHECK_CAPS and @GST_PAD_LINK_CHECK_TEMPLATE_CAPS are mutually exclusive. If both are specified, expensive but safe @GST_PAD_LINK_CHECK_CAPS are performed. @@ -28308,13 +43043,17 @@ specified, expensive but safe @GST_PAD_LINK_CHECK_CAPS are performed. value="0" c:identifier="GST_PAD_LINK_CHECK_NOTHING" glib:nick="nothing"> - Don't check hierarchy or caps compatibility. + Don't check hierarchy or caps compatibility. - Check the pads have same parents/grandparents. + Check the pads have same parents/grandparents. Could be omitted if it is already known that the two elements that own the pads are in the same bin. @@ -28322,7 +43061,9 @@ specified, expensive but safe @GST_PAD_LINK_CHECK_CAPS are performed. value="2" c:identifier="GST_PAD_LINK_CHECK_TEMPLATE_CAPS" glib:nick="template-caps"> - Check if the pads are compatible by using + Check if the pads are compatible by using their template caps. This is much faster than @GST_PAD_LINK_CHECK_CAPS, but would be unsafe e.g. if one pad has %GST_CAPS_ANY. @@ -28330,46 +43071,63 @@ specified, expensive but safe @GST_PAD_LINK_CHECK_CAPS are performed. value="4" c:identifier="GST_PAD_LINK_CHECK_CAPS" glib:nick="caps"> - Check if the pads are compatible by comparing the + Check if the pads are compatible by comparing the caps returned by gst_pad_query_caps(). - Disables pushing a reconfigure event when pads are + Disables pushing a reconfigure event when pads are linked. - The default checks done when linking + The default checks done when linking pads (i.e. the ones used by gst_pad_link()). - Function signature to handle a new link on the pad. + Function signature to handle a new link on the pad. + - the result of the link with the specified peer. + the result of the link with the specified peer. - the #GstPad that is linked. + the #GstPad that is linked. - the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT + the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set, @parent is guaranteed to be not-%NULL and remain valid during the execution of this function. - the peer #GstPad of the link + the peer #GstPad of the link @@ -28378,84 +43136,115 @@ specified, expensive but safe @GST_PAD_LINK_CHECK_CAPS are performed. glib:type-name="GstPadLinkReturn" glib:get-type="gst_pad_link_return_get_type" c:type="GstPadLinkReturn"> - Result values from gst_pad_link and friends. + Result values from gst_pad_link and friends. - link succeeded + link succeeded - pads have no common grandparent + pads have no common grandparent - pad was already linked + pad was already linked - pads have wrong direction + pads have wrong direction - pads do not have common format + pads do not have common format - pads cannot cooperate in scheduling + pads cannot cooperate in scheduling - refused for some reason + refused for some reason - The status of a GstPad. After activating a pad, which usually happens when the + The status of a GstPad. After activating a pad, which usually happens when the parent element goes from READY to PAUSED, the GstPadMode defines if the pad operates in push or pull mode. - Pad will not handle dataflow + Pad will not handle dataflow - Pad handles dataflow in downstream push mode + Pad handles dataflow in downstream push mode - Pad handles dataflow in upstream pull mode + Pad handles dataflow in upstream pull mode - Return the name of a pad mode, for use in debug messages mostly. + Return the name of a pad mode, for use in debug messages mostly. + - short mnemonic for pad mode @mode + short mnemonic for pad mode @mode - the pad mode + the pad mode @@ -28465,45 +43254,63 @@ pad operates in push or pull mode. glib:type-name="GstPadPresence" glib:get-type="gst_pad_presence_get_type" c:type="GstPadPresence"> - Indicates when this pad will become available. + Indicates when this pad will become available. - the pad is always available + the pad is always available - the pad will become available depending on the media stream + the pad will become available depending on the media stream - the pad is only available on request with + the pad is only available on request with gst_element_request_pad(). + - Callback used by gst_pad_add_probe(). Gets called to notify about the current + Callback used by gst_pad_add_probe(). Gets called to notify about the current blocking type. The callback is allowed to modify the data pointer in @info. + - a #GstPadProbeReturn + a #GstPadProbeReturn - the #GstPad that is blocked + the #GstPad that is blocked - #GstPadProbeInfo + #GstPadProbeInfo nullable="1" allow-none="1" closure="2"> - the gpointer to optional user data. + the gpointer to optional user data. - Info passed in the #GstPadProbeCallback. + Info passed in the #GstPadProbeCallback. + - the current probe type + the current probe type - the id of the probe + the id of the probe - type specific data, check the @type field to know the + type specific data, check the @type field to know the datatype. This field can be %NULL. - offset of pull probe, this field is valid when @type contains + offset of pull probe, this field is valid when @type contains #GST_PAD_PROBE_TYPE_PULL - size of pull probe, this field is valid when @type contains + size of pull probe, this field is valid when @type contains #GST_PAD_PROBE_TYPE_PULL + - + + + - The #GstBuffer from the probe + The #GstBuffer from the probe - a #GstPadProbeInfo + a #GstPadProbeInfo + - The #GstBufferList from the probe + The #GstBufferList from the probe - a #GstPadProbeInfo + a #GstPadProbeInfo + - The #GstEvent from the probe + The #GstEvent from the probe - a #GstPadProbeInfo + a #GstPadProbeInfo + - The #GstQuery from the probe + The #GstQuery from the probe - a #GstPadProbeInfo + a #GstPadProbeInfo @@ -28607,12 +43451,16 @@ The callback is allowed to modify the data pointer in @info. glib:type-name="GstPadProbeReturn" glib:get-type="gst_pad_probe_return_get_type" c:type="GstPadProbeReturn"> - Different return values for the #GstPadProbeCallback. + Different return values for the #GstPadProbeCallback. - drop data in data probes. For push mode this means that + drop data in data probes. For push mode this means that the data item is not sent downstream. For pull mode, it means that the data item is not passed upstream. In both cases, no other probes are called for this item and %GST_FLOW_OK or %TRUE is returned to the @@ -28622,7 +43470,9 @@ The callback is allowed to modify the data pointer in @info. value="1" c:identifier="GST_PAD_PROBE_OK" glib:nick="ok"> - normal probe return value. This leaves the probe in + normal probe return value. This leaves the probe in place, and defers decisions about dropping or passing data to other probes, if any. If there are no other probes, the default behaviour for the probe type applies ('block' for blocking probes, @@ -28632,20 +43482,26 @@ The callback is allowed to modify the data pointer in @info. value="2" c:identifier="GST_PAD_PROBE_REMOVE" glib:nick="remove"> - remove this probe. + remove this probe. - pass the data item in the block probe and block on the + pass the data item in the block probe and block on the next item. - Data has been handled in the probe and will not be + Data has been handled in the probe and will not be forwarded further. For events and buffers this is the same behaviour as %GST_PAD_PROBE_DROP (except that in this case you need to unref the buffer or event yourself). For queries it will also return %TRUE to the caller. @@ -28659,56 +43515,74 @@ The callback is allowed to modify the data pointer in @info. glib:type-name="GstPadProbeType" glib:get-type="gst_pad_probe_type_get_type" c:type="GstPadProbeType"> - The different probing types that can occur. When either one of + The different probing types that can occur. When either one of @GST_PAD_PROBE_TYPE_IDLE or @GST_PAD_PROBE_TYPE_BLOCK is used, the probe will be a blocking probe. - invalid probe type + invalid probe type - probe idle pads and block while the callback is called + probe idle pads and block while the callback is called - probe and block pads + probe and block pads - probe buffers + probe buffers - probe buffer lists + probe buffer lists - probe downstream events + probe downstream events - probe upstream events + probe upstream events - probe flush events. This probe has to be + probe flush events. This probe has to be explicitly enabled and is not included in the @@GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM or @@GST_PAD_PROBE_TYPE_EVENT_UPSTREAM probe types. @@ -28717,116 +43591,157 @@ blocking probe. value="512" c:identifier="GST_PAD_PROBE_TYPE_QUERY_DOWNSTREAM" glib:nick="query-downstream"> - probe downstream queries + probe downstream queries - probe upstream queries + probe upstream queries - probe push + probe push - probe pull + probe pull - probe and block at the next opportunity, at data flow or when idle + probe and block at the next opportunity, at data flow or when idle - probe downstream data (buffers, buffer lists, and events) + probe downstream data (buffers, buffer lists, and events) - probe upstream data (events) + probe upstream data (events) - probe upstream and downstream data (buffers, buffer lists, and events) + probe upstream and downstream data (buffers, buffer lists, and events) - probe and block downstream data (buffers, buffer lists, and events) + probe and block downstream data (buffers, buffer lists, and events) - probe and block upstream data (events) + probe and block upstream data (events) - probe upstream and downstream events + probe upstream and downstream events - probe upstream and downstream queries + probe upstream and downstream queries - probe upstream events and queries and downstream buffers, buffer lists, events and queries + probe upstream events and queries and downstream buffers, buffer lists, events and queries - probe push and pull + probe push and pull - The signature of the query function. + The signature of the query function. + - %TRUE if the query could be performed. + %TRUE if the query could be performed. - the #GstPad to query. + the #GstPad to query. - the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT + the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set, @parent is guaranteed to be not-%NULL and remain valid during the execution of this function. - the #GstQuery object to execute + the #GstQuery object to execute - Callback used by gst_pad_sticky_events_foreach(). + Callback used by gst_pad_sticky_events_foreach(). When this function returns %TRUE, the next event will be returned. When %FALSE is returned, gst_pad_sticky_events_foreach() will return. @@ -28835,20 +43750,27 @@ When @event is set to %NULL, the item will be removed from the list of sticky ev @event can be replaced by assigning a new reference to it. This function is responsible for unreffing the old event when removing or modifying. + - %TRUE if the iteration should continue + %TRUE if the iteration should continue - the #GstPad. + the #GstPad. - a sticky #GstEvent. + a sticky #GstEvent. nullable="1" allow-none="1" closure="2"> - the #gpointer to optional user data. + the #gpointer to optional user data. @@ -28868,7 +43792,9 @@ removing or modifying. glib:type-name="GstPadTemplate" glib:get-type="gst_pad_template_get_type" glib:type-struct="PadTemplateClass"> - Padtemplates describe the possible media types a pad or an elementfactory can + Padtemplates describe the possible media types a pad or an elementfactory can handle. This allows for both inspection of handled types before loading the element plugin as well as identifying pads on elements that are not yet created (request or sometimes pads). @@ -28928,28 +43854,42 @@ element class, this is usually done in the class_init of the class: gst_element_class_add_static_pad_template (gstelement_class, &amp;my_template); } ]| + - Creates a new pad template with a name according to the given template + Creates a new pad template with a name according to the given template and with the given arguments. + - a new #GstPadTemplate. + a new #GstPadTemplate. - the name template. + the name template. - the #GstPadDirection of the template. + the #GstPadDirection of the template. - the #GstPadPresence of the pad. + the #GstPadPresence of the pad. - a #GstCaps set for the template. + a #GstCaps set for the template. @@ -28957,18 +43897,27 @@ and with the given arguments. - Converts a #GstStaticPadTemplate into a #GstPadTemplate with a type. + Converts a #GstStaticPadTemplate into a #GstPadTemplate with a type. + - a new #GstPadTemplate. + a new #GstPadTemplate. - the static pad template + the static pad template - The #GType of the pad to create + The #GType of the pad to create @@ -28976,77 +43925,113 @@ and with the given arguments. - Creates a new pad template with a name according to the given template + Creates a new pad template with a name according to the given template and with the given arguments. + - a new #GstPadTemplate. + a new #GstPadTemplate. - the name template. + the name template. - the #GstPadDirection of the template. + the #GstPadDirection of the template. - the #GstPadPresence of the pad. + the #GstPadPresence of the pad. - a #GstCaps set for the template. + a #GstCaps set for the template. - The #GType of the pad to create + The #GType of the pad to create - Emit the pad-created signal for this template when created by this pad. + Emit the pad-created signal for this template when created by this pad. + - a #GstPadTemplate that has been created + a #GstPadTemplate that has been created - the #GstPad that created it + the #GstPad that created it - Gets the capabilities of the pad template. + Gets the capabilities of the pad template. + - the #GstCaps of the pad template. + the #GstCaps of the pad template. Unref after usage. - a #GstPadTemplate to get capabilities of. + a #GstPadTemplate to get capabilities of. - Emit the pad-created signal for this template when created by this pad. + Emit the pad-created signal for this template when created by this pad. + - a #GstPadTemplate that has been created + a #GstPadTemplate that has been created - the #GstPad that created it + the #GstPad that created it @@ -29055,14 +44040,18 @@ Unref after usage. writable="1" construct-only="1" transfer-ownership="none"> - The capabilities of the pad described by the pad template. + The capabilities of the pad described by the pad template. - The direction of the pad described by the pad template. + The direction of the pad described by the pad template. writable="1" construct-only="1" transfer-ownership="none"> - The type of the pad described by the pad template. + The type of the pad described by the pad template. - The name template of the pad template. + The name template of the pad template. - When the pad described by the pad template will become available. + When the pad described by the pad template will become available. @@ -29103,25 +44098,31 @@ Unref after usage. + - + + - This signal is fired when an element creates a pad from this template. + This signal is fired when an element creates a pad from this template. - the pad that was created. + the pad that was created. @@ -29130,28 +44131,34 @@ Unref after usage. + + - a #GstPadTemplate that has been created + a #GstPadTemplate that has been created - the #GstPad that created it + the #GstPad that created it - + @@ -29160,32 +44167,43 @@ Unref after usage. glib:type-name="GstPadTemplateFlags" glib:get-type="gst_pad_template_flags_get_type" c:type="GstPadTemplateFlags"> - Flags for the padtemplate + Flags for the padtemplate - first flag that can be used by subclasses. + first flag that can be used by subclasses. - Function signature to handle a unlinking the pad prom its peer. + Function signature to handle a unlinking the pad prom its peer. The pad's lock is already held when the unlink function is called, so most pad functions cannot be called from within the callback. + - the #GstPad that is linked. + the #GstPad that is linked. - the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT + the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT flag is set, @parent is guaranteed to be not-%NULL and remain valid during the execution of this function. @@ -29207,50 +44225,76 @@ pad functions cannot be called from within the callback. glib:fundamental="1"> - A GParamSpec derived structure for arrays of values. + A GParamSpec derived structure for arrays of values. + - super class + super class - the #GParamSpec of the type of values in the array + the #GParamSpec of the type of values in the array - A GParamSpec derived structure that contains the meta data for fractional + A GParamSpec derived structure that contains the meta data for fractional properties. + - super class + super class - minimal numerator + minimal numerator - minimal denominator + minimal denominator - maximal numerator + maximal numerator - maximal denominator + maximal denominator - default numerator + default numerator - default denominator + default denominator - The #GstParentBufferMeta is a #GstMeta which can be attached to a #GstBuffer + The #GstParentBufferMeta is a #GstMeta which can be attached to a #GstBuffer to hold a reference to another buffer that is only released when the child #GstBuffer is released. @@ -29258,20 +44302,30 @@ Typically, #GstParentBufferMeta is used when the child buffer is directly using the #GstMemory of the parent buffer, and wants to prevent the parent buffer from being returned to a buffer pool until the #GstMemory is available for re-use. + - the parent #GstMeta structure + the parent #GstMeta structure - the #GstBuffer on which a reference is being held. + the #GstBuffer on which a reference is being held. - Get the global #GstMetaInfo describing the #GstParentBufferMeta meta. + Get the global #GstMetaInfo describing the #GstParentBufferMeta meta. + - The #GstMetaInfo + The #GstMetaInfo @@ -29281,50 +44335,75 @@ for re-use. glib:type-name="GstParseContext" glib:get-type="gst_parse_context_get_type" c:symbol-prefix="parse_context"> - Opaque structure. + Opaque structure. + - Allocates a parse context for use with gst_parse_launch_full() or + Allocates a parse context for use with gst_parse_launch_full() or gst_parse_launchv_full(). Free-function: gst_parse_context_free + - a newly-allocated parse context. Free + a newly-allocated parse context. Free with gst_parse_context_free() when no longer needed. - Copies the @context. + Copies the @context. + - A copied #GstParseContext + A copied #GstParseContext - a #GstParseContext + a #GstParseContext - Frees a parse context previously allocated with gst_parse_context_new(). + Frees a parse context previously allocated with gst_parse_context_new(). + - a #GstParseContext + a #GstParseContext - Retrieve missing elements from a previous run of gst_parse_launch_full() + Retrieve missing elements from a previous run of gst_parse_launch_full() or gst_parse_launchv_full(). Will only return results if an error code of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned. + - a + a %NULL-terminated array of element factory name strings of missing elements. Free with g_strfreev() when no longer needed. @@ -29333,7 +44412,9 @@ of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned. - a #GstParseContext + a #GstParseContext @@ -29344,59 +44425,81 @@ of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned. glib:get-type="gst_parse_error_get_type" c:type="GstParseError" glib:error-domain="gst_parse_error"> - The different parsing errors that can occur. + The different parsing errors that can occur. - A syntax error occurred. + A syntax error occurred. - The description contained an unknown element + The description contained an unknown element - An element did not have a specified property + An element did not have a specified property - There was an error linking two pads. + There was an error linking two pads. - There was an error setting a property + There was an error setting a property - An empty bin was specified. + An empty bin was specified. - An empty description was specified + An empty description was specified - A delayed link did not get resolved. + A delayed link did not get resolved. - Get the error quark used by the parsing subsystem. + Get the error quark used by the parsing subsystem. - the quark of the parse errors. + the quark of the parse errors. @@ -29405,18 +44508,24 @@ of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned. glib:type-name="GstParseFlags" glib:get-type="gst_parse_flags_get_type" c:type="GstParseFlags"> - Parsing options. + Parsing options. - Do not use any special parsing options. + Do not use any special parsing options. - Always return %NULL when an error occurs + Always return %NULL when an error occurs (default behaviour is to return partially constructed bins or elements in some cases) @@ -29424,14 +44533,18 @@ of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned. value="2" c:identifier="GST_PARSE_FLAG_NO_SINGLE_ELEMENT_BINS" glib:nick="no-single-element-bins"> - If a bin only has a single element, + If a bin only has a single element, just return the element. - If more than one toplevel element is described + If more than one toplevel element is described by the pipeline description string, put them in a #GstBin instead of a #GstPipeline. (Since: 1.10) @@ -29443,7 +44556,9 @@ of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned. glib:type-name="GstPipeline" glib:get-type="gst_pipeline_get_type" glib:type-struct="PipelineClass"> - A #GstPipeline is a special #GstBin used as the toplevel container for + A #GstPipeline is a special #GstBin used as the toplevel container for the filter graph. The #GstPipeline will manage the selection and distribution of a global #GstClock as well as provide a #GstBus to the application. @@ -29488,11 +44603,17 @@ to PLAYING again. The effect is that the running time (as the difference between the clock time and the base time) will count how much time was spent in the PLAYING state. This default behaviour can be changed with the gst_element_set_start_time() method. + - Create a new pipeline with the given name. + Create a new pipeline with the given name. + - newly created GstPipeline + newly created GstPipeline MT safe. @@ -29502,13 +44623,17 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - name of new pipeline + name of new pipeline - Let @pipeline select a clock automatically. This is the default + Let @pipeline select a clock automatically. This is the default behaviour. Use this function if you previous forced a fixed clock with @@ -29516,22 +44641,30 @@ gst_pipeline_use_clock() and want to restore the default pipeline clock selection algorithm. MT safe. + - a #GstPipeline + a #GstPipeline - Check if @pipeline will automatically flush messages when going to + Check if @pipeline will automatically flush messages when going to the NULL state. + - whether the pipeline will automatically flush its bus when + whether the pipeline will automatically flush its bus when going from READY to NULL state or not. MT safe. @@ -29539,23 +44672,32 @@ MT safe. - a #GstPipeline + a #GstPipeline - Gets the #GstBus of @pipeline. The bus allows applications to receive + Gets the #GstBus of @pipeline. The bus allows applications to receive #GstMessage packets. + - a #GstBus, unref after usage. + a #GstBus, unref after usage. MT safe. - a #GstPipeline + a #GstPipeline @@ -29563,34 +44705,48 @@ MT safe. - Gets the current clock used by @pipeline. Users of object + Gets the current clock used by @pipeline. Users of object oriented languages should use gst_pipeline_get_pipeline_clock() to avoid confusion with gst_element_get_clock() which has a different behavior. Unlike gst_element_get_clock(), this function will always return a clock, even if the pipeline is not in the PLAYING state. + - a #GstClock, unref after usage. + a #GstClock, unref after usage. - a #GstPipeline + a #GstPipeline - Get the configured delay (see gst_pipeline_set_delay()). + Get the configured delay (see gst_pipeline_set_delay()). + - The configured delay. + The configured delay. MT safe. - a #GstPipeline + a #GstPipeline @@ -29598,15 +44754,22 @@ MT safe. - Gets the latency that should be configured on the pipeline. See + Gets the latency that should be configured on the pipeline. See gst_pipeline_set_latency(). + - Latency to configure on the pipeline or GST_CLOCK_TIME_NONE + Latency to configure on the pipeline or GST_CLOCK_TIME_NONE - a #GstPipeline + a #GstPipeline @@ -29614,24 +44777,33 @@ gst_pipeline_set_latency(). - Gets the current clock used by @pipeline. + Gets the current clock used by @pipeline. Unlike gst_element_get_clock(), this function will always return a clock, even if the pipeline is not in the PLAYING state. + - a #GstClock, unref after usage. + a #GstClock, unref after usage. - a #GstPipeline + a #GstPipeline - Usually, when a pipeline goes from READY to NULL state, it automatically + Usually, when a pipeline goes from READY to NULL state, it automatically flushes all pending messages on the bus, which is done for refcounting purposes, to break circular references. @@ -29645,16 +44817,21 @@ It is important that all messages on the bus are handled when the automatic flushing is disabled else memory leaks will be introduced. MT safe. + - a #GstPipeline + a #GstPipeline - whether or not to automatically flush the bus when + whether or not to automatically flush the bus when the pipeline goes from READY to NULL state @@ -29663,10 +44840,15 @@ the pipeline goes from READY to NULL state - Set the clock for @pipeline. The clock will be distributed + Set the clock for @pipeline. The clock will be distributed to all the elements managed by the pipeline. + - %TRUE if the clock could be set on the pipeline. %FALSE if + %TRUE if the clock could be set on the pipeline. %FALSE if some element did not accept the clock. MT safe. @@ -29674,17 +44856,23 @@ MT safe. - a #GstPipeline + a #GstPipeline - the clock to set + the clock to set - Set the expected delay needed for all elements to perform the + Set the expected delay needed for all elements to perform the PAUSED to PLAYING state change. @delay will be added to the base time of the elements so that they wait an additional @delay amount of time before starting to process buffers and cannot be @@ -29694,16 +44882,21 @@ This option is used for tuning purposes and should normally not be used. MT safe. + - a #GstPipeline + a #GstPipeline - the delay + the delay @@ -29711,29 +44904,38 @@ MT safe. - Sets the latency that should be configured on the pipeline. Setting + Sets the latency that should be configured on the pipeline. Setting GST_CLOCK_TIME_NONE will restore the default behaviour of using the minimum latency from the LATENCY query. Setting this is usually not required and the pipeline will figure out an appropriate latency automatically. Setting a too low latency, especially lower than the minimum latency from the LATENCY query, will most likely cause the pipeline to fail. + - a #GstPipeline + a #GstPipeline - latency to configure + latency to configure - Force @pipeline to use the given @clock. The pipeline will + Force @pipeline to use the given @clock. The pipeline will always use the given clock even if new clock providers are added to this pipeline. @@ -29741,31 +44943,40 @@ If @clock is %NULL all clocking will be disabled which will make the pipeline run as fast as possible. MT safe. + - a #GstPipeline + a #GstPipeline - the clock to use + the clock to use - Whether or not to automatically flush all messages on the + Whether or not to automatically flush all messages on the pipeline's bus when going from READY to NULL state. Please see gst_pipeline_set_auto_flush_bus() for more information on this option. - The expected delay needed for elements to spin up to the + The expected delay needed for elements to spin up to the PLAYING state expressed in nanoseconds. see gst_pipeline_set_delay() for more information on this option. @@ -29774,26 +44985,34 @@ see gst_pipeline_set_delay() for more information on this option. version="1.6" writable="1" transfer-ownership="none"> - Latency to configure on the pipeline. See gst_pipeline_set_latency(). + Latency to configure on the pipeline. See gst_pipeline_set_latency(). - The fixed clock of the pipeline, used when + The fixed clock of the pipeline, used when GST_PIPELINE_FLAG_FIXED_CLOCK is set. - The stream time of the pipeline. A better name for this + The stream time of the pipeline. A better name for this property would be the running_time, the total time spent in the PLAYING state without being flushed. (deprecated, use the start_time on GstElement). - Extra delay added to base_time to compensate for computing delays + Extra delay added to base_time to compensate for computing delays when setting elements to PLAYING. @@ -29801,7 +45020,7 @@ see gst_pipeline_set_delay() for more information on this option. - + @@ -29809,11 +45028,12 @@ see gst_pipeline_set_delay() for more information on this option. + - + @@ -29822,21 +45042,28 @@ see gst_pipeline_set_delay() for more information on this option. glib:type-name="GstPipelineFlags" glib:get-type="gst_pipeline_flags_get_type" c:type="GstPipelineFlags"> - Pipeline flags + Pipeline flags - this pipeline works with a fixed clock + this pipeline works with a fixed clock - offset to define more flags + offset to define more flags + glib:type-name="GstPlugin" glib:get-type="gst_plugin_get_type" glib:type-struct="PluginClass"> - GStreamer is extensible, so #GstElement instances can be loaded at runtime. + GStreamer is extensible, so #GstElement instances can be loaded at runtime. A plugin system can provide one or more of the basic <application>GStreamer</application> #GstPluginFeature subclasses. @@ -29864,14 +45093,20 @@ gst_plugin_load() explicitly to bring it into memory. There are options to statically link plugins to an app or even use GStreamer without a plugin repository in which case gst_plugin_load() can be needed to bring the plugin into memory. + - Unrefs each member of @list, then frees the list. + Unrefs each member of @list, then frees the list. + - list of #GstPlugin + list of #GstPlugin @@ -29879,15 +45114,22 @@ into memory. - Load the named plugin. Refs the plugin. + Load the named plugin. Refs the plugin. + - a reference to a loaded plugin, or + a reference to a loaded plugin, or %NULL on error. - name of plugin to load + name of plugin to load @@ -29895,82 +45137,116 @@ into memory. - Loads the given plugin and refs it. Caller needs to unref after use. + Loads the given plugin and refs it. Caller needs to unref after use. + - a reference to the existing loaded GstPlugin, a + a reference to the existing loaded GstPlugin, a reference to the newly-loaded GstPlugin, or %NULL if an error occurred. - the plugin filename to load + the plugin filename to load - Registers a static plugin, ie. a plugin which is private to an application + Registers a static plugin, ie. a plugin which is private to an application or library and contained within the application or library (as opposed to being shipped as a separate module file). You must make sure that GStreamer has been initialised (with gst_init() or via gst_init_get_option_group()) before calling this function. + - %TRUE if the plugin was registered correctly, otherwise %FALSE. + %TRUE if the plugin was registered correctly, otherwise %FALSE. - the major version number of the GStreamer core that the + the major version number of the GStreamer core that the plugin was compiled for, you can just use GST_VERSION_MAJOR here - the minor version number of the GStreamer core that the + the minor version number of the GStreamer core that the plugin was compiled for, you can just use GST_VERSION_MINOR here - a unique name of the plugin (ideally prefixed with an application- or + a unique name of the plugin (ideally prefixed with an application- or library-specific namespace prefix in order to avoid name conflicts in case a similar plugin with the same name ever gets added to GStreamer) - description of the plugin + description of the plugin - pointer to the init function of this plugin. + pointer to the init function of this plugin. - version string of the plugin + version string of the plugin - effective license of plugin. Must be one of the approved licenses + effective license of plugin. Must be one of the approved licenses (see #GstPluginDesc above) or the plugin will not be registered. - source module plugin belongs to + source module plugin belongs to - shipped package plugin belongs to + shipped package plugin belongs to - URL to provider of plugin + URL to provider of plugin - Registers a static plugin, ie. a plugin which is private to an application + Registers a static plugin, ie. a plugin which is private to an application or library and contained within the application or library (as opposed to being shipped as a separate module file) with a #GstPluginInitFullFunc which allows user data to be passed to the callback function (useful @@ -29978,71 +45254,98 @@ for bindings). You must make sure that GStreamer has been initialised (with gst_init() or via gst_init_get_option_group()) before calling this function. + - %TRUE if the plugin was registered correctly, otherwise %FALSE. + %TRUE if the plugin was registered correctly, otherwise %FALSE. - the major version number of the GStreamer core that the + the major version number of the GStreamer core that the plugin was compiled for, you can just use GST_VERSION_MAJOR here - the minor version number of the GStreamer core that the + the minor version number of the GStreamer core that the plugin was compiled for, you can just use GST_VERSION_MINOR here - a unique name of the plugin (ideally prefixed with an application- or + a unique name of the plugin (ideally prefixed with an application- or library-specific namespace prefix in order to avoid name conflicts in case a similar plugin with the same name ever gets added to GStreamer) - description of the plugin + description of the plugin - pointer to the init function with user data + pointer to the init function with user data of this plugin. - version string of the plugin + version string of the plugin - effective license of plugin. Must be one of the approved licenses + effective license of plugin. Must be one of the approved licenses (see #GstPluginDesc above) or the plugin will not be registered. - source module plugin belongs to + source module plugin belongs to - shipped package plugin belongs to + shipped package plugin belongs to - URL to provider of plugin + URL to provider of plugin - gpointer to user data + gpointer to user data - Make GStreamer aware of external dependencies which affect the feature + Make GStreamer aware of external dependencies which affect the feature set of this plugin (ie. the elements or typefinders associated with it). GStreamer will re-inspect plugins with external dependencies whenever any @@ -30051,19 +45354,24 @@ other plugin systems, e.g. a plugin which wraps a plugin-based visualisation library and makes visualisations available as GStreamer elements, or a codec loader which exposes elements and/or caps dependent on what external codec libraries are currently installed. + - a #GstPlugin + a #GstPlugin - %NULL-terminated array of environment variables affecting the + %NULL-terminated array of environment variables affecting the feature set of the plugin (e.g. an environment variable containing paths where to look for additional modules/plugins of a library), or %NULL. Environment variable names may be followed by a path component @@ -30077,7 +45385,9 @@ codec libraries are currently installed. transfer-ownership="none" nullable="1" allow-none="1"> - %NULL-terminated array of directories/paths where dependent files + %NULL-terminated array of directories/paths where dependent files may be, or %NULL. @@ -30087,7 +45397,9 @@ codec libraries are currently installed. transfer-ownership="none" nullable="1" allow-none="1"> - %NULL-terminated array of file names (or file name suffixes, + %NULL-terminated array of file names (or file name suffixes, depending on @flags) to be used in combination with the paths from @paths and/or the paths extracted from the environment variables in @env_vars, or %NULL. @@ -30096,7 +45408,9 @@ codec libraries are currently installed. - optional flags, or #GST_PLUGIN_DEPENDENCY_FLAG_NONE + optional flags, or #GST_PLUGIN_DEPENDENCY_FLAG_NONE @@ -30104,7 +45418,9 @@ codec libraries are currently installed. - Make GStreamer aware of external dependencies which affect the feature + Make GStreamer aware of external dependencies which affect the feature set of this plugin (ie. the elements or typefinders associated with it). GStreamer will re-inspect plugins with external dependencies whenever any @@ -30117,19 +45433,24 @@ codec libraries are currently installed. Convenience wrapper function for gst_plugin_add_dependency() which takes simple strings as arguments instead of string arrays, with multiple arguments separated by predefined delimiters (see above). + - the #GstPlugin + the #GstPlugin - one or more environment variables (separated by ':', ';' or ','), + one or more environment variables (separated by ':', ';' or ','), or %NULL. Environment variable names may be followed by a path component which will be added to the content of the environment variable, e.g. "HOME/.mystuff/plugins:MYSTUFF_PLUGINS_PATH" @@ -30139,7 +45460,9 @@ arguments separated by predefined delimiters (see above). transfer-ownership="none" nullable="1" allow-none="1"> - one ore more directory paths (separated by ':' or ';' or ','), + one ore more directory paths (separated by ':' or ';' or ','), or %NULL. Example: "/usr/lib/mystuff/plugins" @@ -30147,113 +45470,168 @@ arguments separated by predefined delimiters (see above). transfer-ownership="none" nullable="1" allow-none="1"> - one or more file names or file name suffixes (separated by commas), + one or more file names or file name suffixes (separated by commas), or %NULL - optional flags, or #GST_PLUGIN_DEPENDENCY_FLAG_NONE + optional flags, or #GST_PLUGIN_DEPENDENCY_FLAG_NONE - Gets the plugin specific data cache. If it is %NULL there is no cached data + Gets the plugin specific data cache. If it is %NULL there is no cached data stored. This is the case when the registry is getting rebuilt. + - The cached data as a + The cached data as a #GstStructure or %NULL. - a plugin + a plugin - Get the long descriptive name of the plugin + Get the long descriptive name of the plugin + - the long name of the plugin + the long name of the plugin - plugin to get long name of + plugin to get long name of - get the filename of the plugin + get the filename of the plugin + - the filename of the plugin + the filename of the plugin - plugin to get the filename of + plugin to get the filename of - get the license of the plugin + get the license of the plugin + - the license of the plugin + the license of the plugin - plugin to get the license of + plugin to get the license of - Get the short name of the plugin + Get the short name of the plugin + - the name of the plugin + the name of the plugin - plugin to get the name of + plugin to get the name of - get the URL where the plugin comes from + get the URL where the plugin comes from + - the origin of the plugin + the origin of the plugin - plugin to get the origin of + plugin to get the origin of - get the package the plugin belongs to. + get the package the plugin belongs to. + - the package of the plugin + the package of the plugin - plugin to get the package of + plugin to get the package of - Get the release date (and possibly time) in form of a string, if available. + Get the release date (and possibly time) in form of a string, if available. For normal GStreamer plugin releases this will usually just be a date in the form of "YYYY-MM-DD", while pre-releases and builds from git may contain @@ -30261,59 +45639,87 @@ a time component after the date as well, in which case the string will be formatted like "YYYY-MM-DDTHH:MMZ" (e.g. "2012-04-30T09:30Z"). There may be plugins that do not have a valid release date set on them. + - the date string of the plugin, or %NULL if not + the date string of the plugin, or %NULL if not available. - plugin to get the release date of + plugin to get the release date of - get the source module the plugin belongs to. + get the source module the plugin belongs to. + - the source of the plugin + the source of the plugin - plugin to get the source of + plugin to get the source of - get the version of the plugin + get the version of the plugin + - the version of the plugin + the version of the plugin - plugin to get the version of + plugin to get the version of - queries if the plugin is loaded into memory + queries if the plugin is loaded into memory + - %TRUE is loaded, %FALSE otherwise + %TRUE is loaded, %FALSE otherwise - plugin to query + plugin to query - Loads @plugin. Note that the *return value* is the loaded plugin; @plugin is + Loads @plugin. Note that the *return value* is the loaded plugin; @plugin is untouched. The normal use pattern of this function goes like this: |[ @@ -30323,33 +45729,45 @@ loaded_plugin = gst_plugin_load (plugin); gst_object_unref (plugin); plugin = loaded_plugin; ]| + - a reference to a loaded plugin, or + a reference to a loaded plugin, or %NULL on error. - plugin to load + plugin to load - Adds plugin specific data to cache. Passes the ownership of the structure to + Adds plugin specific data to cache. Passes the ownership of the structure to the @plugin. The cache is flushed every time the registry is rebuilt. + - a plugin + a plugin - a structure containing the data to cache + a structure containing the data to cache @@ -30359,36 +45777,47 @@ The cache is flushed every time the registry is rebuilt. c:type="GstPluginClass" disguised="1" glib:is-gtype-struct-for="Plugin"> + - Flags used in connection with gst_plugin_add_dependency(). + Flags used in connection with gst_plugin_add_dependency(). - no special flags + no special flags - recurse into subdirectories + recurse into subdirectories - use paths + use paths argument only if none of the environment variables is set - interpret + interpret filename argument as filter suffix and check all matching files in the directory @@ -30396,7 +45825,9 @@ The cache is flushed every time the registry is rebuilt. value="8" c:identifier="GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_PREFIX" glib:nick="file-name-is-prefix"> - interpret + interpret filename argument as filter prefix and check all matching files in the directory. Since: 1.8. @@ -30404,59 +45835,86 @@ The cache is flushed every time the registry is rebuilt. value="16" c:identifier="GST_PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_RELATIVE_TO_EXE" glib:nick="paths-are-relative-to-exe"> - interpret + interpret non-absolute paths as relative to the main executable directory. Since 1.14. - A plugin should export a variable of this type called plugin_desc. The plugin + A plugin should export a variable of this type called plugin_desc. The plugin loader will use the data provided there to initialize the plugin. The @licence parameter must be one of: LGPL, GPL, QPL, GPL/QPL, MPL, BSD, MIT/X11, Proprietary, unknown. + - the major version number of core that plugin was compiled for + the major version number of core that plugin was compiled for - the minor version number of core that plugin was compiled for + the minor version number of core that plugin was compiled for - a unique name of the plugin + a unique name of the plugin - description of plugin + description of plugin - pointer to the init function of this plugin. + pointer to the init function of this plugin. - version of the plugin + version of the plugin - effective license of plugin + effective license of plugin - source module plugin belongs to + source module plugin belongs to - shipped package plugin belongs to + shipped package plugin belongs to - URL to provider of plugin + URL to provider of plugin - date time string in ISO 8601 + date time string in ISO 8601 format (or rather, a subset thereof), or %NULL. Allowed are the following formats: "YYYY-MM-DD" and "YYY-MM-DDTHH:MMZ" (with 'T' a separator and 'Z' indicating UTC/Zulu time). This field @@ -30465,7 +45923,7 @@ BSD, MIT/X11, Proprietary, unknown. - + @@ -30475,29 +45933,41 @@ BSD, MIT/X11, Proprietary, unknown. glib:get-type="gst_plugin_error_get_type" c:type="GstPluginError" glib:error-domain="gst_plugin_error"> - The plugin loading errors + The plugin loading errors - The plugin could not be loaded + The plugin could not be loaded - The plugin has unresolved dependencies + The plugin has unresolved dependencies - The plugin has already be loaded from a different file + The plugin has already be loaded from a different file - Get the error quark. + Get the error quark. - The error quark used in GError messages + The error quark used in GError messages @@ -30510,12 +45980,20 @@ BSD, MIT/X11, Proprietary, unknown. glib:type-name="GstPluginFeature" glib:get-type="gst_plugin_feature_get_type" glib:type-struct="PluginFeatureClass"> - This is a base class for anything that can be added to a #GstPlugin. + This is a base class for anything that can be added to a #GstPlugin. + - Copies the list of features. Caller should call @gst_plugin_feature_list_free + Copies the list of features. Caller should call @gst_plugin_feature_list_free when done with the list. + - a copy of @list, + a copy of @list, with each feature's reference count incremented. @@ -30523,7 +46001,9 @@ when done with the list. - list + list of #GstPluginFeature @@ -30532,13 +46012,18 @@ when done with the list. - Debug the plugin feature names in @list. + Debug the plugin feature names in @list. + - a #GList of + a #GList of plugin features @@ -30547,13 +46032,18 @@ when done with the list. - Unrefs each member of @list, then frees the list. + Unrefs each member of @list, then frees the list. + - list + list of #GstPluginFeature @@ -30563,10 +46053,15 @@ when done with the list. - Compares the two given #GstPluginFeature instances. This function can be + Compares the two given #GstPluginFeature instances. This function can be used as a #GCompareFunc when sorting by rank and then by name. + - negative value if the rank of p1 > the rank of p2 or the ranks are + negative value if the rank of p1 > the rank of p2 or the ranks are equal but the name of p1 comes before the name of p2; zero if the rank and names are equal; positive value if the rank of p1 < the rank of p2 or the ranks are equal but the name of p2 comes before the name of p1 @@ -30577,57 +46072,81 @@ ranks are equal but the name of p2 comes before the name of p1 transfer-ownership="none" nullable="1" allow-none="1"> - a #GstPluginFeature + a #GstPluginFeature - a #GstPluginFeature + a #GstPluginFeature - Checks whether the given plugin feature is at least + Checks whether the given plugin feature is at least the required version + - %TRUE if the plugin feature has at least + %TRUE if the plugin feature has at least the required version, otherwise %FALSE. - a feature + a feature - minimum required major version + minimum required major version - minimum required minor version + minimum required minor version - minimum required micro version + minimum required micro version - Get the plugin that provides this feature. + Get the plugin that provides this feature. + - the plugin that provides this + the plugin that provides this feature, or %NULL. Unref with gst_object_unref() when no longer needed. - a feature + a feature @@ -30635,35 +46154,51 @@ ranks are equal but the name of p2 comes before the name of p1 - Get the name of the plugin that provides this feature. + Get the name of the plugin that provides this feature. + - the name of the plugin that provides this + the name of the plugin that provides this feature, or %NULL if the feature is not associated with a plugin. - a feature + a feature - Gets the rank of a plugin feature. + Gets the rank of a plugin feature. + - The rank of the feature + The rank of the feature - a feature + a feature - Loads the plugin containing @feature if it's not already loaded. @feature is + Loads the plugin containing @feature if it's not already loaded. @feature is unaffected; use the return value instead. Normally this function is used like this: @@ -30675,31 +46210,43 @@ loaded_feature = gst_plugin_feature_load (feature); gst_object_unref (feature); feature = loaded_feature; ]| + - a reference to the loaded + a reference to the loaded feature, or %NULL on error - the plugin feature to check + the plugin feature to check - Specifies a rank for a plugin feature, so that autoplugging uses + Specifies a rank for a plugin feature, so that autoplugging uses the most appropriate feature. + - feature to rank + feature to rank - rank value - higher number means more priority rank + rank value - higher number means more priority rank @@ -30709,17 +46256,25 @@ the most appropriate feature. c:type="GstPluginFeatureClass" disguised="1" glib:is-gtype-struct-for="PluginFeature"> + - A function that can be used with e.g. gst_registry_feature_filter() + A function that can be used with e.g. gst_registry_feature_filter() to get a list of pluginfeature that match certain criteria. + - %TRUE for a positive match, %FALSE otherwise + %TRUE for a positive match, %FALSE otherwise - the pluginfeature to check + the pluginfeature to check nullable="1" allow-none="1" closure="1"> - the user_data that has been passed on e.g. + the user_data that has been passed on e.g. gst_registry_feature_filter() - A function that can be used with e.g. gst_registry_plugin_filter() + A function that can be used with e.g. gst_registry_plugin_filter() to get a list of plugins that match certain criteria. + - %TRUE for a positive match, %FALSE otherwise + %TRUE for a positive match, %FALSE otherwise - the plugin to check + the plugin to check nullable="1" allow-none="1" closure="1"> - the user_data that has been passed on e.g. gst_registry_plugin_filter() + the user_data that has been passed on e.g. gst_registry_plugin_filter() @@ -30759,33 +46325,46 @@ to get a list of plugins that match certain criteria. glib:type-name="GstPluginFlags" glib:get-type="gst_plugin_flags_get_type" c:type="GstPluginFlags"> - The plugin loading state + The plugin loading state - Temporarily loaded plugins + Temporarily loaded plugins - The plugin won't be scanned (again) + The plugin won't be scanned (again) - A plugin should provide a pointer to a function of either #GstPluginInitFunc + A plugin should provide a pointer to a function of either #GstPluginInitFunc or this type in the plugin_desc struct. The function will be called by the loader at startup. One would then register each #GstPluginFeature. This version allows user data to be passed to init function (useful for bindings). + - %TRUE if plugin initialised successfully + %TRUE if plugin initialised successfully - The plugin object + The plugin object nullable="1" allow-none="1" closure="1"> - extra data + extra data - A plugin should provide a pointer to a function of this type in the + A plugin should provide a pointer to a function of this type in the plugin_desc struct. This function will be called by the loader at startup. One would then register each #GstPluginFeature. + - %TRUE if plugin initialised successfully + %TRUE if plugin initialised successfully - The plugin object + The plugin object - A #GstPoll keeps track of file descriptors much like fd_set (used with + A #GstPoll keeps track of file descriptors much like fd_set (used with select()) or a struct pollfd array (used with poll()). Once created with gst_poll_new(), the set can be used to wait for file descriptors to be readable and/or writable. It is possible to make this wait be controlled @@ -30838,53 +46428,81 @@ gst_poll_fd_has_error() to see if it has generated an error, gst_poll_fd_can_read() to see if it is possible to read from the file descriptor, and gst_poll_fd_can_write() to see if it is possible to write to it. + - Add a file descriptor to the file descriptor set. + Add a file descriptor to the file descriptor set. + - %TRUE if the file descriptor was successfully added to the set. + %TRUE if the file descriptor was successfully added to the set. - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. - Check if @fd in @set has data to be read. + Check if @fd in @set has data to be read. + - %TRUE if the descriptor has data to be read. + %TRUE if the descriptor has data to be read. - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. - Check if @fd in @set can be used for writing. + Check if @fd in @set can be used for writing. + - %TRUE if the descriptor can be used for writing. + %TRUE if the descriptor can be used for writing. - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. @@ -30892,103 +46510,154 @@ write to it. - Control whether the descriptor @fd in @set will be monitored for + Control whether the descriptor @fd in @set will be monitored for exceptional conditions (POLLPRI). Not implemented on Windows (will just return %FALSE there). + - %TRUE if the descriptor was successfully updated. + %TRUE if the descriptor was successfully updated. - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. - a new status. + a new status. - Control whether the descriptor @fd in @set will be monitored for + Control whether the descriptor @fd in @set will be monitored for readability. + - %TRUE if the descriptor was successfully updated. + %TRUE if the descriptor was successfully updated. - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. - a new status. + a new status. - Control whether the descriptor @fd in @set will be monitored for + Control whether the descriptor @fd in @set will be monitored for writability. + - %TRUE if the descriptor was successfully updated. + %TRUE if the descriptor was successfully updated. - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. - a new status. + a new status. - Check if @fd in @set has closed the connection. + Check if @fd in @set has closed the connection. + - %TRUE if the connection was closed. + %TRUE if the connection was closed. - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. - Check if @fd in @set has an error. + Check if @fd in @set has an error. + - %TRUE if the descriptor has an error. + %TRUE if the descriptor has an error. - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. @@ -30996,26 +46665,37 @@ writability. - Check if @fd in @set has an exceptional condition (POLLPRI). + Check if @fd in @set has an exceptional condition (POLLPRI). Not implemented on Windows (will just return %FALSE there). + - %TRUE if the descriptor has an exceptional condition. + %TRUE if the descriptor has an exceptional condition. - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. - Mark @fd as ignored so that the next call to gst_poll_wait() will yield + Mark @fd as ignored so that the next call to gst_poll_wait() will yield the same result for @fd as last time. This function must be called if no operation (read/write/recv/send/etc.) will be performed on @fd before the next call to gst_poll_wait(). @@ -31023,56 +46703,78 @@ the next call to gst_poll_wait(). The reason why this is needed is because the underlying implementation might not allow querying the fd more than once between calls to one of the re-enabling operations. + - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. - Free a file descriptor set. + Free a file descriptor set. + - a file descriptor set. + a file descriptor set. - Get a GPollFD for the reading part of the control socket. This is useful when + Get a GPollFD for the reading part of the control socket. This is useful when integrating with a GSource and GMainLoop. + - a #GstPoll + a #GstPoll - a #GPollFD + a #GPollFD - Read a byte from the control socket of the controllable @set. + Read a byte from the control socket of the controllable @set. This function only works for timer #GstPoll objects created with gst_poll_new_timer(). + - %TRUE on success. %FALSE when when there was no byte to read or + %TRUE on success. %FALSE when when there was no byte to read or reading the byte failed. If there was no byte to read, and only then, errno will contain EWOULDBLOCK or EAGAIN. For all other values of errno this always signals a critical error. @@ -31080,92 +46782,126 @@ critical error. - a #GstPoll. + a #GstPoll. - Remove a file descriptor from the file descriptor set. + Remove a file descriptor from the file descriptor set. + - %TRUE if the file descriptor was successfully removed from the set. + %TRUE if the file descriptor was successfully removed from the set. - a file descriptor set. + a file descriptor set. - a file descriptor. + a file descriptor. - Restart any gst_poll_wait() that is in progress. This function is typically + Restart any gst_poll_wait() that is in progress. This function is typically used after adding or removing descriptors to @set. If @set is not controllable, then this call will have no effect. This function only works for non-timer #GstPoll objects created with gst_poll_new(). + - a #GstPoll. + a #GstPoll. - When @controllable is %TRUE, this function ensures that future calls to + When @controllable is %TRUE, this function ensures that future calls to gst_poll_wait() will be affected by gst_poll_restart() and gst_poll_set_flushing(). This function only works for non-timer #GstPoll objects created with gst_poll_new(). + - %TRUE if the controllability of @set could be updated. + %TRUE if the controllability of @set could be updated. - a #GstPoll. + a #GstPoll. - new controllable state. + new controllable state. - When @flushing is %TRUE, this function ensures that current and future calls + When @flushing is %TRUE, this function ensures that current and future calls to gst_poll_wait() will return -1, with errno set to EBUSY. Unsetting the flushing state will restore normal operation of @set. This function only works for non-timer #GstPoll objects created with gst_poll_new(). + - a #GstPoll. + a #GstPoll. - new flushing state. + new flushing state. - Wait for activity on the file descriptors in @set. This function waits up to + Wait for activity on the file descriptors in @set. This function waits up to the specified @timeout. A timeout of #GST_CLOCK_TIME_NONE waits forever. For #GstPoll objects created with gst_poll_new(), this function can only be @@ -31175,25 +46911,34 @@ called from a single thread at a time. If called from multiple threads, This is not true for timer #GstPoll objects created with gst_poll_new_timer(), where it is allowed to have multiple threads waiting simultaneously. + - The number of #GstPollFD in @set that have activity or 0 when no + The number of #GstPollFD in @set that have activity or 0 when no activity was detected after @timeout. If an error occurs, -1 is returned and errno is set. - a #GstPoll. + a #GstPoll. - a timeout in nanoseconds. + a timeout in nanoseconds. - Write a byte to the control socket of the controllable @set. + Write a byte to the control socket of the controllable @set. This function is mostly useful for timer #GstPoll objects created with gst_poll_new_timer(). @@ -31204,33 +46949,45 @@ block again until their timeout expired. This function only works for timer #GstPoll objects created with gst_poll_new_timer(). + - %TRUE on success. %FALSE when when the byte could not be written. + %TRUE on success. %FALSE when when the byte could not be written. errno contains the detailed error code but will never be EAGAIN, EINTR or EWOULDBLOCK. %FALSE always signals a critical error. - a #GstPoll. + a #GstPoll. - Create a new file descriptor set. If @controllable, it + Create a new file descriptor set. If @controllable, it is possible to restart or flush a call to gst_poll_wait() with gst_poll_restart() and gst_poll_set_flushing() respectively. Free-function: gst_poll_free + - a new #GstPoll, or %NULL in + a new #GstPoll, or %NULL in case of an error. Free with gst_poll_free(). - whether it should be possible to control a wait. + whether it should be possible to control a wait. @@ -31238,38 +46995,53 @@ Free-function: gst_poll_free - Create a new poll object that can be used for scheduling cancellable + Create a new poll object that can be used for scheduling cancellable timeouts. A timeout is performed with gst_poll_wait(). Multiple timeouts can be performed from different threads. Free-function: gst_poll_free + - a new #GstPoll, or %NULL in + a new #GstPoll, or %NULL in case of an error. Free with gst_poll_free(). - A file descriptor object. + A file descriptor object. + - a file descriptor + a file descriptor - Initializes @fd. Alternatively you can initialize it with + Initializes @fd. Alternatively you can initialize it with #GST_POLL_FD_INIT. + - a #GstPollFD + a #GstPollFD @@ -31281,7 +47053,9 @@ Free-function: gst_poll_free glib:type-name="GstPreset" glib:get-type="gst_preset_get_type" glib:type-struct="PresetInterface"> - This interface offers methods to query and manipulate parameter preset sets. + This interface offers methods to query and manipulate parameter preset sets. A preset is a bunch of property settings, together with meta data and a name. The name of a preset serves as key for subsequent method calls to manipulate single presets. @@ -31304,81 +47078,121 @@ a list of presets individual presets are read and overlaid in 1) system, later entries will be updated. Since 1.8 you can also provide extra paths where to find presets through the GST_PRESET_PATH environment variable. Presets found in those paths will be considered as "app presets". + - Gets the directory for application specific presets if set by the + Gets the directory for application specific presets if set by the application. + - the directory or %NULL, don't free or modify + the directory or %NULL, don't free or modify the string - Sets an extra directory as an absolute path that should be considered when + Sets an extra directory as an absolute path that should be considered when looking for presets. Any presets in the application dir will shadow the system presets. + - %TRUE for success, %FALSE if the dir already has been set + %TRUE for success, %FALSE if the dir already has been set - the application specific preset dir + the application specific preset dir - Delete the given preset. + Delete the given preset. + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name to remove + preset name to remove - Gets the @value for an existing meta data @tag. Meta data @tag names can be + Gets the @value for an existing meta data @tag. Meta data @tag names can be something like e.g. "comment". Returned values need to be released when done. + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name or no value for the given @tag - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name + preset name - meta data item name + meta data item name - value + value - Get a copy of preset names as a %NULL terminated string array. + Get a copy of preset names as a %NULL terminated string array. + - + list with names, use g_strfreev() after usage. @@ -31386,15 +47200,22 @@ or no value for the given @tag - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - Get a the names of the GObject properties that can be used for presets. + Get a the names of the GObject properties that can be used for presets. + - an + an array of property names which should be freed with g_strfreev() after use. @@ -31402,150 +47223,221 @@ or no value for the given @tag - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - Load the given preset. + Load the given preset. + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name to load + preset name to load - Renames a preset. If there is already a preset by the @new_name it will be + Renames a preset. If there is already a preset by the @new_name it will be overwritten. + - %TRUE for success, %FALSE if e.g. there is no preset with @old_name + %TRUE for success, %FALSE if e.g. there is no preset with @old_name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - current preset name + current preset name - new preset name + new preset name - Save the current object settings as a preset under the given name. If there + Save the current object settings as a preset under the given name. If there is already a preset by this @name it will be overwritten. + - %TRUE for success, %FALSE + %TRUE for success, %FALSE - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name to save + preset name to save - Sets a new @value for an existing meta data item or adds a new item. Meta + Sets a new @value for an existing meta data item or adds a new item. Meta data @tag names can be something like e.g. "comment". Supplying %NULL for the @value will unset an existing value. + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name + preset name - meta data item name + meta data item name - new value + new value - Delete the given preset. + Delete the given preset. + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name to remove + preset name to remove - Gets the @value for an existing meta data @tag. Meta data @tag names can be + Gets the @value for an existing meta data @tag. Meta data @tag names can be something like e.g. "comment". Returned values need to be released when done. + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name or no value for the given @tag - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name + preset name - meta data item name + meta data item name - value + value - Get a copy of preset names as a %NULL terminated string array. + Get a copy of preset names as a %NULL terminated string array. + - + list with names, use g_strfreev() after usage. @@ -31553,16 +47445,23 @@ or no value for the given @tag - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - Get a the names of the GObject properties that can be used for presets. + Get a the names of the GObject properties that can be used for presets. + - an + an array of property names which should be freed with g_strfreev() after use. @@ -31570,7 +47469,9 @@ or no value for the given @tag - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset @@ -31578,101 +47479,150 @@ or no value for the given @tag - Check if one can add new presets, change existing ones and remove presets. + Check if one can add new presets, change existing ones and remove presets. + - %TRUE if presets are editable or %FALSE if they are static + %TRUE if presets are editable or %FALSE if they are static - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - Load the given preset. + Load the given preset. + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name to load + preset name to load - Renames a preset. If there is already a preset by the @new_name it will be + Renames a preset. If there is already a preset by the @new_name it will be overwritten. + - %TRUE for success, %FALSE if e.g. there is no preset with @old_name + %TRUE for success, %FALSE if e.g. there is no preset with @old_name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - current preset name + current preset name - new preset name + new preset name - Save the current object settings as a preset under the given name. If there + Save the current object settings as a preset under the given name. If there is already a preset by this @name it will be overwritten. + - %TRUE for success, %FALSE + %TRUE for success, %FALSE - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name to save + preset name to save - Sets a new @value for an existing meta data item or adds a new item. Meta + Sets a new @value for an existing meta data item or adds a new item. Meta data @tag names can be something like e.g. "comment". Supplying %NULL for the @value will unset an existing value. + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name + preset name - meta data item name + meta data item name - new value + new value @@ -31681,15 +47631,23 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the - #GstPreset interface. + #GstPreset interface. + - parent interface type. + parent interface type. + - + list with names, use g_strfreev() after usage. @@ -31697,7 +47655,9 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset @@ -31705,8 +47665,11 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the + - an + an array of property names which should be freed with g_strfreev() after use. @@ -31714,7 +47677,9 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset @@ -31722,17 +47687,24 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name to load + preset name to load @@ -31740,17 +47712,24 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the + - %TRUE for success, %FALSE + %TRUE for success, %FALSE - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name to save + preset name to save @@ -31758,21 +47737,30 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the + - %TRUE for success, %FALSE if e.g. there is no preset with @old_name + %TRUE for success, %FALSE if e.g. there is no preset with @old_name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - current preset name + current preset name - new preset name + new preset name @@ -31780,17 +47768,24 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name to remove + preset name to remove @@ -31798,28 +47793,39 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name + preset name - meta data item name + meta data item name - new value + new value @@ -31827,36 +47833,47 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the + - %TRUE for success, %FALSE if e.g. there is no preset with that @name + %TRUE for success, %FALSE if e.g. there is no preset with that @name or no value for the given @tag - a #GObject that implements #GstPreset + a #GObject that implements #GstPreset - preset name + preset name - meta data item name + meta data item name - value + value - + @@ -31865,37 +47882,49 @@ or no value for the given @tag glib:type-name="GstProgressType" glib:get-type="gst_progress_type_get_type" c:type="GstProgressType"> - The type of a %GST_MESSAGE_PROGRESS. The progress messages inform the + The type of a %GST_MESSAGE_PROGRESS. The progress messages inform the application of the status of asynchronous tasks. - A new task started. + A new task started. - A task completed and a new one continues. + A task completed and a new one continues. - A task completed. + A task completed. - A task was canceled. + A task was canceled. - A task caused an error. An error message is also + A task caused an error. An error message is also posted on the bus. @@ -31905,7 +47934,9 @@ application of the status of asynchronous tasks. glib:type-name="GstPromise" glib:get-type="gst_promise_get_type" c:symbol-prefix="promise"> - The #GstPromise object implements the container for values that may + The #GstPromise object implements the container for values that may be available later. i.e. a Future or a Promise in <ulink url="https://en.wikipedia.org/wiki/Futures_and_promises">https://en.wikipedia.org/wiki/Futures_and_promises</ulink> As with all Future/Promise-like functionality, there is the concept of the @@ -31956,24 +47987,35 @@ gst_promise_interrupt() or gst_promise_expire() and can be called from an arbitrary thread. #GstPromise using APIs can restrict this to a single thread or a subset of threads but that is entirely up to the API that uses #GstPromise. + - parent #GstMiniObject + parent #GstMiniObject + - a new #GstPromise + a new #GstPromise - @func will be called exactly once when transitioning out of + @func will be called exactly once when transitioning out of %GST_PROMISE_RESULT_PENDING into any of the other #GstPromiseResult states. + - a new #GstPromise + a new #GstPromise @@ -31982,32 +48024,43 @@ states. scope="notified" closure="1" destroy="2"> - a #GstPromiseChangeFunc to call + a #GstPromiseChangeFunc to call - argument to call @func with + argument to call @func with - notification function that @user_data is no longer needed + notification function that @user_data is no longer needed - Expire a @promise. This will wake up any waiters with + Expire a @promise. This will wake up any waiters with %GST_PROMISE_RESULT_EXPIRED. Called by a message loop when the parent message is handled and/or destroyed (possibly unanswered). + - a #GstPromise + a #GstPromise @@ -32015,15 +48068,22 @@ message is handled and/or destroyed (possibly unanswered). - Retrieve the reply set on @promise. @promise must be in + Retrieve the reply set on @promise. @promise must be in %GST_PROMISE_RESULT_REPLIED and the returned structure is owned by @promise + - The reply set on @promise + The reply set on @promise - a #GstPromise + a #GstPromise @@ -32031,26 +48091,34 @@ message is handled and/or destroyed (possibly unanswered). - Interrupt waiting for a @promise. This will wake up any waiters with + Interrupt waiting for a @promise. This will wake up any waiters with %GST_PROMISE_RESULT_INTERRUPTED. Called when the consumer does not want the value produced anymore. + - a #GstPromise + a #GstPromise - Set a reply on @promise. This will wake up any waiters with + Set a reply on @promise. This will wake up any waiters with %GST_PROMISE_RESULT_REPLIED. Called by the producer of the value to indicate success (or failure). If @promise has already been interrupted by the consumer, then this reply is not visible to the consumer. + @@ -32059,26 +48127,37 @@ is not visible to the consumer. transfer-ownership="none" nullable="1" allow-none="1"> - a #GstPromise + a #GstPromise - a #GstStructure with the the reply contents + a #GstStructure with the the reply contents - Wait for @promise to move out of the %GST_PROMISE_RESULT_PENDING state. + Wait for @promise to move out of the %GST_PROMISE_RESULT_PENDING state. If @promise is not in %GST_PROMISE_RESULT_PENDING then it will return immediately with the current result. + - the result of the promise + the result of the promise - a #GstPromise + a #GstPromise @@ -32087,12 +48166,15 @@ immediately with the current result. + - a #GstPromise + a #GstPromise nullable="1" allow-none="1" closure="1"> - user data + user data @@ -32110,47 +48194,65 @@ immediately with the current result. glib:type-name="GstPromiseResult" glib:get-type="gst_promise_result_get_type" c:type="GstPromiseResult"> - The result of a #GstPromise + The result of a #GstPromise - Initial state. Waiting for transition to any + Initial state. Waiting for transition to any other state. - Interrupted by the consumer as it doesn't + Interrupted by the consumer as it doesn't want the value anymore. - A producer marked a reply + A producer marked a reply - The promise expired (the carrying object + The promise expired (the carrying object lost all refs) and the promise will never be fulfilled. - Metadata type that holds information about a sample from a protection-protected + Metadata type that holds information about a sample from a protection-protected track, including the information needed to decrypt it (if it is encrypted). + - the parent #GstMeta. + the parent #GstMeta. - the cryptographic information needed to decrypt the sample. + the cryptographic information needed to decrypt the sample. + @@ -32163,27 +48265,39 @@ track, including the information needed to decrypt it (if it is encrypted). + - Invoke the default chain function of the proxy pad. + Invoke the default chain function of the proxy pad. + - a #GstFlowReturn from the pad. + a #GstFlowReturn from the pad. - a sink #GstPad, returns GST_FLOW_ERROR if not. + a sink #GstPad, returns GST_FLOW_ERROR if not. - the parent of @pad or %NULL + the parent of @pad or %NULL - the #GstBuffer to send, return GST_FLOW_ERROR + the #GstBuffer to send, return GST_FLOW_ERROR if not. @@ -32191,25 +48305,36 @@ track, including the information needed to decrypt it (if it is encrypted). - Invoke the default chain list function of the proxy pad. + Invoke the default chain list function of the proxy pad. + - a #GstFlowReturn from the pad. + a #GstFlowReturn from the pad. - a sink #GstPad, returns GST_FLOW_ERROR if not. + a sink #GstPad, returns GST_FLOW_ERROR if not. - the parent of @pad or %NULL + the parent of @pad or %NULL - the #GstBufferList to send, return GST_FLOW_ERROR + the #GstBufferList to send, return GST_FLOW_ERROR if not. @@ -32217,33 +48342,48 @@ track, including the information needed to decrypt it (if it is encrypted). - Invoke the default getrange function of the proxy pad. + Invoke the default getrange function of the proxy pad. + - a #GstFlowReturn from the pad. + a #GstFlowReturn from the pad. - a src #GstPad, returns #GST_FLOW_ERROR if not. + a src #GstPad, returns #GST_FLOW_ERROR if not. - the parent of @pad + the parent of @pad - The start offset of the buffer + The start offset of the buffer - The length of the buffer + The length of the buffer - a pointer to hold the #GstBuffer, + a pointer to hold the #GstBuffer, returns #GST_FLOW_ERROR if %NULL. @@ -32251,39 +48391,55 @@ track, including the information needed to decrypt it (if it is encrypted). - Invoke the default iterate internal links function of the proxy pad. + Invoke the default iterate internal links function of the proxy pad. + - a #GstIterator of #GstPad, or %NULL if @pad + a #GstIterator of #GstPad, or %NULL if @pad has no parent. Unref each returned pad with gst_object_unref(). - the #GstPad to get the internal links of. + the #GstPad to get the internal links of. - the parent of @pad or %NULL + the parent of @pad or %NULL - Get the internal pad of @pad. Unref target pad after usage. + Get the internal pad of @pad. Unref target pad after usage. The internal pad of a #GstGhostPad is the internally used pad of opposite direction, which is used to link to the target. + - the target #GstProxyPad, can + the target #GstProxyPad, can be %NULL. Unref target pad after usage. - the #GstProxyPad + the #GstProxyPad @@ -32298,28 +48454,34 @@ be %NULL. Unref target pad after usage. + - + + - The different types of QoS events that can be given to the + The different types of QoS events that can be given to the gst_event_new_qos() method. - The QoS event type that is produced when upstream + The QoS event type that is produced when upstream elements are producing data too quickly and the element can't keep up processing the data. Upstream should reduce their production rate. This type is also used when buffers arrive early or in time. @@ -32328,7 +48490,9 @@ gst_event_new_qos() method. value="1" c:identifier="GST_QOS_TYPE_UNDERFLOW" glib:nick="underflow"> - The QoS event type that is produced when upstream + The QoS event type that is produced when upstream elements are producing data too slowly and need to speed up their production rate. @@ -32336,23 +48500,143 @@ gst_event_new_qos() method. value="2" c:identifier="GST_QOS_TYPE_THROTTLE" glib:nick="throttle"> - The QoS event type that is produced when the + The QoS event type that is produced when the application enabled throttling to limit the data rate. + + + + + + + + + + + + + + + + Check if an query can travel downstream. + + + + the query to query + + + + + Check if an query is serialized with the data stream. + + + + the query to query + + + + + Check if an query can travel upstream. + + + + the query to query + + + + + when making custom query types, use this macro with the num and +the given flags + + + + the query number to create + + + the query flags + + + + + + Get the #GstQueryType of the query. + + + + the query to query + + + - The same thing as #GST_QUERY_TYPE_UPSTREAM | #GST_QUERY_TYPE_DOWNSTREAM. + The same thing as #GST_QUERY_TYPE_UPSTREAM | #GST_QUERY_TYPE_DOWNSTREAM. + + + Get a constant string representation of the #GstQueryType of the query. + + + + the query to query + + + - Queries can be performed on pads (gst_pad_query()) and elements + Queries can be performed on pads (gst_pad_query()) and elements (gst_element_query()). Please note that some queries might need a running pipeline to work. @@ -32375,46 +48659,67 @@ The following example shows how to query the duration of a pipeline: } gst_query_unref (query); ]| + - The parent #GstMiniObject type + The parent #GstMiniObject type - the #GstQueryType + the #GstQueryType - Constructs a new query object for querying if @caps are accepted. + Constructs a new query object for querying if @caps are accepted. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - a fixed #GstCaps + a fixed #GstCaps - Constructs a new query object for querying the allocation properties. + Constructs a new query object for querying the allocation properties. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - the negotiated caps + the negotiated caps - return a pool + return a pool @@ -32422,32 +48727,46 @@ Free-function: gst_query_unref() - Constructs a new query object for querying the bitrate. + Constructs a new query object for querying the bitrate. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - Constructs a new query object for querying the buffering status of + Constructs a new query object for querying the buffering status of a stream. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - the default #GstFormat for the new query + the default #GstFormat for the new query - Constructs a new query object for querying the caps. + Constructs a new query object for querying the caps. The CAPS query should return the allowable caps for a pad in the context of the element's state, its link to other elements, and the devices or files @@ -32467,13 +48786,18 @@ The @filter is used to restrict the result caps, only the caps matching greatly reduce the amount of processing an element needs to do. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - a filter + a filter @@ -32481,326 +48805,464 @@ Free-function: gst_query_unref() - Constructs a new query object for querying the pipeline-local context. + Constructs a new query object for querying the pipeline-local context. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - Context type to query + Context type to query - Constructs a new convert query object. Use gst_query_unref() + Constructs a new convert query object. Use gst_query_unref() when done with it. A convert query is used to ask for a conversion between one format and another. Free-function: gst_query_unref() + - a #GstQuery + a #GstQuery - the source #GstFormat for the new query + the source #GstFormat for the new query - the value to convert + the value to convert - the target #GstFormat + the target #GstFormat - Constructs a new custom query object. Use gst_query_unref() + Constructs a new custom query object. Use gst_query_unref() when done with it. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - the query type + the query type - a structure for the query + a structure for the query - Constructs a new query object for querying the drain state. + Constructs a new query object for querying the drain state. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - Constructs a new stream duration query object to query in the given format. + Constructs a new stream duration query object to query in the given format. Use gst_query_unref() when done with it. A duration query will give the total length of the stream. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - the #GstFormat for this duration query + the #GstFormat for this duration query - Constructs a new query object for querying formats of + Constructs a new query object for querying formats of the stream. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - Constructs a new latency query object. + Constructs a new latency query object. Use gst_query_unref() when done with it. A latency query is usually performed by sinks to compensate for additional latency introduced by elements in the pipeline. Free-function: gst_query_unref() + - a #GstQuery + a #GstQuery - Constructs a new query stream position query object. Use gst_query_unref() + Constructs a new query stream position query object. Use gst_query_unref() when done with it. A position query is used to query the current position of playback in the streams, in some format. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - the default #GstFormat for the new query + the default #GstFormat for the new query - Constructs a new query object for querying the scheduling properties. + Constructs a new query object for querying the scheduling properties. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - Constructs a new query object for querying seeking properties of + Constructs a new query object for querying seeking properties of the stream. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - the default #GstFormat for the new query + the default #GstFormat for the new query - Constructs a new segment query object. Use gst_query_unref() + Constructs a new segment query object. Use gst_query_unref() when done with it. A segment query is used to discover information about the currently configured segment for playback. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - the #GstFormat for the new query + the #GstFormat for the new query - Constructs a new query URI query object. Use gst_query_unref() + Constructs a new query URI query object. Use gst_query_unref() when done with it. An URI query is used to query the current URI that is used by the source or sink. Free-function: gst_query_unref() + - a new #GstQuery + a new #GstQuery - Add @api with @params as one of the supported metadata API to @query. + Add @api with @params as one of the supported metadata API to @query. + - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - the metadata API + the metadata API - API specific parameters + API specific parameters - Add @allocator and its @params as a supported memory allocator. + Add @allocator and its @params as a supported memory allocator. + - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - the memory allocator + the memory allocator - a #GstAllocationParams + a #GstAllocationParams - Set the pool parameters in @query. + Set the pool parameters in @query. + - A valid #GstQuery of type GST_QUERY_ALLOCATION. + A valid #GstQuery of type GST_QUERY_ALLOCATION. - the #GstBufferPool + the #GstBufferPool - the buffer size + the buffer size - the min buffers + the min buffers - the max buffers + the max buffers - Set the buffering-ranges array field in @query. The current last + Set the buffering-ranges array field in @query. The current last start position of the array should be inferior to @start. + - a #gboolean indicating if the range was added or not. + a #gboolean indicating if the range was added or not. - a GST_QUERY_BUFFERING type query #GstQuery + a GST_QUERY_BUFFERING type query #GstQuery - start position of the range + start position of the range - stop position of the range + stop position of the range - Add @mode as one of the supported scheduling modes to @query. + Add @mode as one of the supported scheduling modes to @query. + - a GST_QUERY_SCHEDULING type query #GstQuery + a GST_QUERY_SCHEDULING type query #GstQuery - a #GstPadMode + a #GstPadMode - Check if @query has metadata @api set. When this function returns %TRUE, + Check if @query has metadata @api set. When this function returns %TRUE, @index will contain the index where the requested API and the parameters can be found. + - %TRUE when @api is in the list of metadata. + %TRUE when @api is in the list of metadata. - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - the metadata API + the metadata API transfer-ownership="none" optional="1" allow-none="1"> - the index + the index - Retrieve the number of values currently stored in the + Retrieve the number of values currently stored in the meta API array of the query's structure. + - the metadata API array size as a #guint. + the metadata API array size as a #guint. - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - Retrieve the number of values currently stored in the + Retrieve the number of values currently stored in the allocator params array of the query's structure. If no memory allocator is specified, the downstream element can handle the default memory allocator. The first memory allocator in the query should be generic and allow mapping to system memory, all following allocators should be ordered by preference with the preferred one first. + - the allocator array size as a #guint. + the allocator array size as a #guint. - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - Retrieve the number of values currently stored in the + Retrieve the number of values currently stored in the pool array of the query's structure. + - the pool array size as a #guint. + the pool array size as a #guint. - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - Retrieve the number of values currently stored in the + Retrieve the number of values currently stored in the buffered-ranges array of the query's structure. + - the range array size as a #guint. + the range array size as a #guint. - a GST_QUERY_BUFFERING type query #GstQuery + a GST_QUERY_BUFFERING type query #GstQuery - Retrieve the number of values currently stored in the + Retrieve the number of values currently stored in the scheduling mode array of the query's structure. + - the scheduling mode array size as a #guint. + the scheduling mode array size as a #guint. - a GST_QUERY_SCHEDULING type query #GstQuery + a GST_QUERY_SCHEDULING type query #GstQuery - Get the structure of a query. + Get the structure of a query. + - the #GstStructure of the query. The + the #GstStructure of the query. The structure is still owned by the query and will therefore be freed when the query is unreffed. - a #GstQuery + a #GstQuery - Check if @query has scheduling mode set. + Check if @query has scheduling mode set. > When checking if upstream supports pull mode, it is usually not > enough to just check for GST_PAD_MODE_PULL with this function, you > also want to check whether the scheduling flags returned by > gst_query_parse_scheduling() have the seeking flag set (meaning > random access is supported, not only sequential pulls). + - %TRUE when @mode is in the list of scheduling modes. + %TRUE when @mode is in the list of scheduling modes. - a GST_QUERY_SCHEDULING type query #GstQuery + a GST_QUERY_SCHEDULING type query #GstQuery - the scheduling mode + the scheduling mode - Check if @query has scheduling mode set and @flags is set in + Check if @query has scheduling mode set and @flags is set in query scheduling flags. + - %TRUE when @mode is in the list of scheduling modes + %TRUE when @mode is in the list of scheduling modes and @flags are compatible with query flags. - a GST_QUERY_SCHEDULING type query #GstQuery + a GST_QUERY_SCHEDULING type query #GstQuery - the scheduling mode + the scheduling mode - #GstSchedulingFlags + #GstSchedulingFlags - Get the caps from @query. The caps remains valid as long as @query remains + Get the caps from @query. The caps remains valid as long as @query remains valid. + - The query to parse + The query to parse - A pointer to the caps + A pointer to the caps - Parse the result from @query and store in @result. + Parse the result from @query and store in @result. + - a GST_QUERY_ACCEPT_CAPS type query #GstQuery + a GST_QUERY_ACCEPT_CAPS type query #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - location for the result + location for the result - Parse an allocation query, writing the requested caps in @caps and + Parse an allocation query, writing the requested caps in @caps and whether a pool is needed in @need_pool, if the respective parameters are non-%NULL. Pool details can be retrieved using gst_query_get_n_allocation_pools() and gst_query_parse_nth_allocation_pool(). + - a #GstQuery + a #GstQuery transfer-ownership="none" optional="1" allow-none="1"> - The #GstCaps + The #GstCaps transfer-ownership="full" optional="1" allow-none="1"> - Whether a #GstBufferPool is needed + Whether a #GstBufferPool is needed @@ -33039,13 +49588,18 @@ gst_query_parse_nth_allocation_pool(). - Get the results of a bitrate query. See also gst_query_set_bitrate(). + Get the results of a bitrate query. See also gst_query_set_bitrate(). + - a GST_QUERY_BITRATE type #GstQuery + a GST_QUERY_BITRATE type #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - The resulting bitrate in bits per second + The resulting bitrate in bits per second - Get the percentage of buffered data. This is a value between 0 and 100. + Get the percentage of buffered data. This is a value between 0 and 100. The @busy indicator is %TRUE when the buffering is in progress. + - A valid #GstQuery of type GST_QUERY_BUFFERING. + A valid #GstQuery of type GST_QUERY_BUFFERING. transfer-ownership="full" optional="1" allow-none="1"> - if buffering is busy, or %NULL + if buffering is busy, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - a buffering percent, or %NULL + a buffering percent, or %NULL - Parse an available query, writing the format into @format, and + Parse an available query, writing the format into @format, and other results into the passed parameters, if the respective parameters are non-%NULL + - a GST_QUERY_BUFFERING type query #GstQuery + a GST_QUERY_BUFFERING type query #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - the format to set for the @segment_start + the format to set for the @segment_start and @segment_end values, or %NULL @@ -33120,7 +49692,9 @@ are non-%NULL transfer-ownership="full" optional="1" allow-none="1"> - the start to set, or %NULL + the start to set, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the stop to set, or %NULL + the stop to set, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - estimated total amount of download + estimated total amount of download time remaining in milliseconds, or %NULL @@ -33146,13 +49724,18 @@ are non-%NULL - Extracts the buffering stats values from @query. + Extracts the buffering stats values from @query. + - A valid #GstQuery of type GST_QUERY_BUFFERING. + A valid #GstQuery of type GST_QUERY_BUFFERING. transfer-ownership="full" optional="1" allow-none="1"> - a buffering mode, or %NULL + a buffering mode, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the average input rate, or %NULL + the average input rate, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the average output rat, or %NULL + the average output rat, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - amount of buffering time left in + amount of buffering time left in milliseconds, or %NULL - Get the filter from the caps @query. The caps remains valid as long as + Get the filter from the caps @query. The caps remains valid as long as @query remains valid. + - The query to parse + The query to parse - A pointer to the caps filter + A pointer to the caps filter - Get the caps result from @query. The caps remains valid as long as + Get the caps result from @query. The caps remains valid as long as @query remains valid. + - The query to parse + The query to parse - A pointer to the caps + A pointer to the caps @@ -33238,21 +49843,28 @@ are non-%NULL - Get the context from the context @query. The context remains valid as long as + Get the context from the context @query. The context remains valid as long as @query remains valid. + - The query to parse + The query to parse - A pointer to store the #GstContext + A pointer to store the #GstContext @@ -33260,14 +49872,21 @@ are non-%NULL - Parse a context type from an existing GST_QUERY_CONTEXT query. + Parse a context type from an existing GST_QUERY_CONTEXT query. + - a #gboolean indicating if the parsing succeeded. + a #gboolean indicating if the parsing succeeded. - a GST_QUERY_CONTEXT type query + a GST_QUERY_CONTEXT type query transfer-ownership="none" optional="1" allow-none="1"> - the context type, or %NULL + the context type, or %NULL - Parse a convert query answer. Any of @src_format, @src_value, @dest_format, + Parse a convert query answer. Any of @src_format, @src_value, @dest_format, and @dest_value may be %NULL, in which case that value is omitted. + - a #GstQuery + a #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - the storage for the #GstFormat of the + the storage for the #GstFormat of the source value, or %NULL @@ -33308,7 +49936,9 @@ and @dest_value may be %NULL, in which case that value is omitted. transfer-ownership="full" optional="1" allow-none="1"> - the storage for the source value, or %NULL + the storage for the source value, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the storage for the #GstFormat of the + the storage for the #GstFormat of the destination value, or %NULL @@ -33327,21 +49959,28 @@ and @dest_value may be %NULL, in which case that value is omitted. transfer-ownership="full" optional="1" allow-none="1"> - the storage for the destination value, + the storage for the destination value, or %NULL - Parse a duration query answer. Write the format of the duration into @format, + Parse a duration query answer. Write the format of the duration into @format, and the value into @duration, if the respective variables are non-%NULL. + - a #GstQuery + a #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - the storage for the #GstFormat of the duration + the storage for the #GstFormat of the duration value, or %NULL. @@ -33360,19 +50001,26 @@ and the value into @duration, if the respective variables are non-%NULL. transfer-ownership="full" optional="1" allow-none="1"> - the storage for the total duration, or %NULL. + the storage for the total duration, or %NULL. - Parse a latency query answer. + Parse a latency query answer. + - a #GstQuery + a #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - storage for live or %NULL + storage for live or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the storage for the min latency or %NULL + the storage for the min latency or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the storage for the max latency or %NULL + the storage for the max latency or %NULL - Parse the number of formats in the formats @query. + Parse the number of formats in the formats @query. + - a #GstQuery + a #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - the number of formats in this query. + the number of formats in this query. - Parse an available query and get the metadata API + Parse an available query and get the metadata API at @index of the metadata API array. + - a #GType of the metadata API at @index. + a #GType of the metadata API at @index. - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - position in the metadata API array to read + position in the metadata API array to read transfer-ownership="none" optional="1" allow-none="1"> - API specific parameters + API specific parameters - Parse an available query and get the allocator and its params + Parse an available query and get the allocator and its params at @index of the allocator array. + - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - position in the allocator array to read + position in the allocator array to read transfer-ownership="full" optional="1" allow-none="1"> - variable to hold the result + variable to hold the result transfer-ownership="none" optional="1" allow-none="1"> - parameters for the allocator + parameters for the allocator - Get the pool parameters in @query. + Get the pool parameters in @query. Unref @pool with gst_object_unref() when it's not needed any more. + - A valid #GstQuery of type GST_QUERY_ALLOCATION. + A valid #GstQuery of type GST_QUERY_ALLOCATION. - index to parse + index to parse transfer-ownership="full" optional="1" allow-none="1"> - the #GstBufferPool + the #GstBufferPool transfer-ownership="full" optional="1" allow-none="1"> - the buffer size + the buffer size transfer-ownership="full" optional="1" allow-none="1"> - the min buffers + the min buffers transfer-ownership="full" optional="1" allow-none="1"> - the max buffers + the max buffers - Parse an available query and get the start and stop values stored + Parse an available query and get the start and stop values stored at the @index of the buffered ranges array. + - a #gboolean indicating if the parsing succeeded. + a #gboolean indicating if the parsing succeeded. - a GST_QUERY_BUFFERING type query #GstQuery + a GST_QUERY_BUFFERING type query #GstQuery - position in the buffered-ranges array to read + position in the buffered-ranges array to read transfer-ownership="full" optional="1" allow-none="1"> - the start position to set, or %NULL + the start position to set, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the stop position to set, or %NULL + the stop position to set, or %NULL - Parse the format query and retrieve the @nth format from it into + Parse the format query and retrieve the @nth format from it into @format. If the list contains less elements than @nth, @format will be set to GST_FORMAT_UNDEFINED. + - a #GstQuery + a #GstQuery - the nth format to retrieve. + the nth format to retrieve. transfer-ownership="full" optional="1" allow-none="1"> - a pointer to store the nth format + a pointer to store the nth format - Parse an available query and get the scheduling mode + Parse an available query and get the scheduling mode at @index of the scheduling modes array. + - a #GstPadMode of the scheduling mode at @index. + a #GstPadMode of the scheduling mode at @index. - a GST_QUERY_SCHEDULING type query #GstQuery + a GST_QUERY_SCHEDULING type query #GstQuery - position in the scheduling modes array to read + position in the scheduling modes array to read - Parse a position query, writing the format into @format, and the position + Parse a position query, writing the format into @format, and the position into @cur, if the respective parameters are non-%NULL. + - a #GstQuery + a #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - the storage for the #GstFormat of the + the storage for the #GstFormat of the position values (may be %NULL) @@ -33655,20 +50391,27 @@ into @cur, if the respective parameters are non-%NULL. transfer-ownership="full" optional="1" allow-none="1"> - the storage for the current position (may be %NULL) + the storage for the current position (may be %NULL) - Set the scheduling properties. + Set the scheduling properties. + - A valid #GstQuery of type GST_QUERY_SCHEDULING. + A valid #GstQuery of type GST_QUERY_SCHEDULING. transfer-ownership="full" optional="1" allow-none="1"> - #GstSchedulingFlags + #GstSchedulingFlags transfer-ownership="full" optional="1" allow-none="1"> - the suggested minimum size of pull requests + the suggested minimum size of pull requests transfer-ownership="full" optional="1" allow-none="1"> - the suggested maximum size of pull requests: + the suggested maximum size of pull requests: transfer-ownership="full" optional="1" allow-none="1"> - the suggested alignment of pull requests + the suggested alignment of pull requests - Parse a seeking query, writing the format into @format, and + Parse a seeking query, writing the format into @format, and other results into the passed parameters, if the respective parameters are non-%NULL + - a GST_QUERY_SEEKING type query #GstQuery + a GST_QUERY_SEEKING type query #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - the format to set for the @segment_start + the format to set for the @segment_start and @segment_end values, or %NULL @@ -33737,7 +50495,9 @@ are non-%NULL transfer-ownership="full" optional="1" allow-none="1"> - the seekable flag to set, or %NULL + the seekable flag to set, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the segment_start to set, or %NULL + the segment_start to set, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the segment_end to set, or %NULL + the segment_end to set, or %NULL - Parse a segment query answer. Any of @rate, @format, @start_value, and + Parse a segment query answer. Any of @rate, @format, @start_value, and @stop_value may be %NULL, which will cause this value to be omitted. See gst_query_set_segment() for an explanation of the function arguments. + - a #GstQuery + a #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - the storage for the rate of the segment, or %NULL + the storage for the rate of the segment, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the storage for the #GstFormat of the values, + the storage for the #GstFormat of the values, or %NULL @@ -33798,7 +50571,9 @@ See gst_query_set_segment() for an explanation of the function arguments. transfer-ownership="full" optional="1" allow-none="1"> - the storage for the start value, or %NULL + the storage for the start value, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - the storage for the stop value, or %NULL + the storage for the stop value, or %NULL - Parse an URI query, writing the URI into @uri as a newly + Parse an URI query, writing the URI into @uri as a newly allocated string, if the respective parameters are non-%NULL. Free the string with g_free() after usage. + - a #GstQuery + a #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - the storage for the current URI + the storage for the current URI (may be %NULL) @@ -33839,15 +50623,20 @@ Free the string with g_free() after usage. - Parse an URI query, writing the URI into @uri as a newly + Parse an URI query, writing the URI into @uri as a newly allocated string, if the respective parameters are non-%NULL. Free the string with g_free() after usage. + - a #GstQuery + a #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - the storage for the redirect URI + the storage for the redirect URI (may be %NULL) @@ -33865,16 +50656,21 @@ Free the string with g_free() after usage. - Parse an URI query, and set @permanent to %TRUE if there is a redirection + Parse an URI query, and set @permanent to %TRUE if there is a redirection and it should be considered permanent. If a redirection is permanent, applications should update their internal storage of the URI, otherwise they should make all future requests to the original URI. + - a #GstQuery + a #GstQuery transfer-ownership="full" optional="1" allow-none="1"> - if the URI redirection is permanent + if the URI redirection is permanent (may be %NULL) @@ -33891,17 +50689,24 @@ they should make all future requests to the original URI. - Remove the metadata API at @index of the metadata API array. + Remove the metadata API at @index of the metadata API array. + - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - position in the metadata API array to remove + position in the metadata API array to remove @@ -33909,17 +50714,24 @@ they should make all future requests to the original URI. - Remove the allocation param at @index of the allocation param array. + Remove the allocation param at @index of the allocation param array. + - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - position in the allocation param array to remove + position in the allocation param array to remove @@ -33927,34 +50739,48 @@ they should make all future requests to the original URI. - Remove the allocation pool at @index of the allocation pool array. + Remove the allocation pool at @index of the allocation pool array. + - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - position in the allocation pool array to remove + position in the allocation pool array to remove - Set @result as the result for the @query. + Set @result as the result for the @query. + - a GST_QUERY_ACCEPT_CAPS type query #GstQuery + a GST_QUERY_ACCEPT_CAPS type query #GstQuery - the result to set + the result to set @@ -33962,70 +50788,99 @@ they should make all future requests to the original URI. - Set the results of a bitrate query. The nominal bitrate is the average + Set the results of a bitrate query. The nominal bitrate is the average bitrate expected over the length of the stream as advertised in file headers (or similar). + - a GST_QUERY_BITRATE type #GstQuery + a GST_QUERY_BITRATE type #GstQuery - the nominal bitrate in bits per second + the nominal bitrate in bits per second - Set the percentage of buffered data. This is a value between 0 and 100. + Set the percentage of buffered data. This is a value between 0 and 100. The @busy indicator is %TRUE when the buffering is in progress. + - A valid #GstQuery of type GST_QUERY_BUFFERING. + A valid #GstQuery of type GST_QUERY_BUFFERING. - if buffering is busy + if buffering is busy - a buffering percent + a buffering percent - Set the available query result fields in @query. + Set the available query result fields in @query. + - a #GstQuery + a #GstQuery - the format to set for the @start and @stop values + the format to set for the @start and @stop values - the start to set + the start to set - the stop to set + the stop to set - estimated total amount of download time remaining in + estimated total amount of download time remaining in milliseconds @@ -34033,45 +50888,65 @@ The @busy indicator is %TRUE when the buffering is in progress. - Configures the buffering stats values in @query. + Configures the buffering stats values in @query. + - A valid #GstQuery of type GST_QUERY_BUFFERING. + A valid #GstQuery of type GST_QUERY_BUFFERING. - a buffering mode + a buffering mode - the average input rate + the average input rate - the average output rate + the average output rate - amount of buffering time left in milliseconds + amount of buffering time left in milliseconds - Set the @caps result in @query. + Set the @caps result in @query. + - The query to use + The query to use - A pointer to the caps + A pointer to the caps @@ -34079,65 +50954,94 @@ The @busy indicator is %TRUE when the buffering is in progress. - Answer a context query by setting the requested context. + Answer a context query by setting the requested context. + - a #GstQuery with query type GST_QUERY_CONTEXT + a #GstQuery with query type GST_QUERY_CONTEXT - the requested #GstContext + the requested #GstContext - Answer a convert query by setting the requested values. + Answer a convert query by setting the requested values. + - a #GstQuery + a #GstQuery - the source #GstFormat + the source #GstFormat - the source value + the source value - the destination #GstFormat + the destination #GstFormat - the destination value + the destination value - Answer a duration query by setting the requested value in the given format. + Answer a duration query by setting the requested value in the given format. + - a #GstQuery + a #GstQuery - the #GstFormat for the duration + the #GstFormat for the duration - the duration of the stream + the duration of the stream @@ -34145,43 +51049,61 @@ The @busy indicator is %TRUE when the buffering is in progress. - Set the formats query result fields in @query. The number of formats passed + Set the formats query result fields in @query. The number of formats passed must be equal to @n_formats. + - a #GstQuery + a #GstQuery - the number of formats to set. + the number of formats to set. - A number of @GstFormats equal to @n_formats. + A number of @GstFormats equal to @n_formats. - Set the formats query result fields in @query. The number of formats passed + Set the formats query result fields in @query. The number of formats passed in the @formats array must be equal to @n_formats. + - a #GstQuery + a #GstQuery - the number of formats to set. + the number of formats to set. - an array containing @n_formats + an array containing @n_formats @GstFormat values. @@ -34190,175 +51112,249 @@ in the @formats array must be equal to @n_formats. - Answer a latency query by setting the requested values in the given format. + Answer a latency query by setting the requested values in the given format. + - a #GstQuery + a #GstQuery - if there is a live element upstream + if there is a live element upstream - the minimal latency of the upstream elements + the minimal latency of the upstream elements - the maximal latency of the upstream elements + the maximal latency of the upstream elements - Parse an available query and get the allocator and its params + Parse an available query and get the allocator and its params at @index of the allocator array. + - a GST_QUERY_ALLOCATION type query #GstQuery + a GST_QUERY_ALLOCATION type query #GstQuery - position in the allocator array to set + position in the allocator array to set - new allocator to set + new allocator to set - parameters for the allocator + parameters for the allocator - Set the pool parameters in @query. + Set the pool parameters in @query. + - A valid #GstQuery of type GST_QUERY_ALLOCATION. + A valid #GstQuery of type GST_QUERY_ALLOCATION. - index to modify + index to modify - the #GstBufferPool + the #GstBufferPool - the buffer size + the buffer size - the min buffers + the min buffers - the max buffers + the max buffers - Answer a position query by setting the requested value in the given format. + Answer a position query by setting the requested value in the given format. + - a #GstQuery with query type GST_QUERY_POSITION + a #GstQuery with query type GST_QUERY_POSITION - the requested #GstFormat + the requested #GstFormat - the position to set + the position to set - Set the scheduling properties. + Set the scheduling properties. + - A valid #GstQuery of type GST_QUERY_SCHEDULING. + A valid #GstQuery of type GST_QUERY_SCHEDULING. - #GstSchedulingFlags + #GstSchedulingFlags - the suggested minimum size of pull requests + the suggested minimum size of pull requests - the suggested maximum size of pull requests + the suggested maximum size of pull requests - the suggested alignment of pull requests + the suggested alignment of pull requests - Set the seeking query result fields in @query. + Set the seeking query result fields in @query. + - a #GstQuery + a #GstQuery - the format to set for the @segment_start and @segment_end values + the format to set for the @segment_start and @segment_end values - the seekable flag to set + the seekable flag to set - the segment_start to set + the segment_start to set - the segment_end to set + the segment_end to set - Answer a segment query by setting the requested values. The normal + Answer a segment query by setting the requested values. The normal playback segment of a pipeline is 0 to duration at the default rate of 1.0. If a seek was performed on the pipeline to play a different segment, this query will return the range specified in the last seek. @@ -34369,44 +51365,62 @@ The values are always between 0 and the duration of the media and @start_value <= @stop_value. @rate will contain the playback rate. For negative rates, playback will actually happen from @stop_value to @start_value. + - a #GstQuery + a #GstQuery - the rate of the segment + the rate of the segment - the #GstFormat of the segment values (@start_value and @stop_value) + the #GstFormat of the segment values (@start_value and @stop_value) - the start value + the start value - the stop value + the stop value - Answer a URI query by setting the requested URI. + Answer a URI query by setting the requested URI. + - a #GstQuery with query type GST_QUERY_URI + a #GstQuery with query type GST_QUERY_URI - the URI to set + the URI to set @@ -34414,17 +51428,24 @@ negative rates, playback will actually happen from @stop_value to - Answer a URI query by setting the requested URI redirection. + Answer a URI query by setting the requested URI redirection. + - a #GstQuery with query type GST_QUERY_URI + a #GstQuery with query type GST_QUERY_URI - the URI to set + the URI to set @@ -34432,35 +51453,49 @@ negative rates, playback will actually happen from @stop_value to - Answer a URI query by setting the requested URI redirection + Answer a URI query by setting the requested URI redirection to permanent or not. + - a #GstQuery with query type %GST_QUERY_URI + a #GstQuery with query type %GST_QUERY_URI - whether the redirect is permanent or not + whether the redirect is permanent or not - Get the structure of a query. This method should be called with a writable + Get the structure of a query. This method should be called with a writable @query so that the returned structure is guaranteed to be writable. + - the #GstStructure of the query. The structure is + the #GstStructure of the query. The structure is still owned by the query and will therefore be freed when the query is unreffed. - a #GstQuery + a #GstQuery @@ -34470,163 +51505,226 @@ to permanent or not. glib:type-name="GstQueryType" glib:get-type="gst_query_type_get_type" c:type="GstQueryType"> - Standard predefined Query types + Standard predefined Query types - unknown query type + unknown query type - current position in stream + current position in stream - total duration of the stream + total duration of the stream - latency of stream + latency of stream - current jitter of stream + current jitter of stream - current rate of the stream + current rate of the stream - seeking capabilities + seeking capabilities - segment start/stop positions + segment start/stop positions - convert values between formats + convert values between formats - query supported formats for convert + query supported formats for convert - query available media for efficient seeking. + query available media for efficient seeking. - a custom application or element defined query. + a custom application or element defined query. - query the URI of the source or sink. + query the URI of the source or sink. - the buffer allocation properties + the buffer allocation properties - the scheduling properties + the scheduling properties - the accept caps query + the accept caps query - the caps query + the caps query - wait till all serialized data is consumed downstream + wait till all serialized data is consumed downstream - query the pipeline-local context from + query the pipeline-local context from downstream or upstream (since 1.2) - the bitrate query (since 1.16) + the bitrate query (since 1.16) - Gets the #GstQueryTypeFlags associated with @type. + Gets the #GstQueryTypeFlags associated with @type. + - a #GstQueryTypeFlags. + a #GstQueryTypeFlags. - a #GstQueryType + a #GstQueryType - Get a printable name for the given query type. Do not modify or free. + Get a printable name for the given query type. Do not modify or free. + - a reference to the static name of the query. + a reference to the static name of the query. - the query type + the query type - Get the unique quark for the given query type. + Get the unique quark for the given query type. + - the quark associated with the query type + the quark associated with the query type - the query type + the query type @@ -34636,34 +51734,460 @@ to permanent or not. glib:type-name="GstQueryTypeFlags" glib:get-type="gst_query_type_flags_get_type" c:type="GstQueryTypeFlags"> - #GstQueryTypeFlags indicate the aspects of the different #GstQueryType + #GstQueryTypeFlags indicate the aspects of the different #GstQueryType values. You can get the type flags of a #GstQueryType with the gst_query_type_get_flags() function. - Set if the query can travel upstream. + Set if the query can travel upstream. - Set if the query can travel downstream. + Set if the query can travel downstream. - Set if the query should be serialized with data + Set if the query should be serialized with data flow. + + Read a 16 bit unsigned integer value in big endian format from the memory buffer. + + + + memory location + + + + + Read a 16 bit unsigned integer value in little endian format from the memory buffer. + + + + memory location + + + + + Read a 24 bit unsigned integer value in big endian format from the memory buffer. + + + + memory location + + + + + Read a 24 bit unsigned integer value in little endian format from the memory buffer. + + + + memory location + + + + + Read a 32 bit unsigned integer value in big endian format from the memory buffer. + + + + memory location + + + + + Read a 32 bit unsigned integer value in little endian format from the memory buffer. + + + + memory location + + + + + Read a 64 bit unsigned integer value in big endian format from the memory buffer. + + + + memory location + + + + + Read a 64 bit unsigned integer value in little endian format from the memory buffer. + + + + memory location + + + + + Read an 8 bit unsigned integer value from the memory buffer. + + + + memory location + + + + + + + + + + + + + + + + + + + + + + + + + + Rounds an integer value down to the next multiple of 128. + + + + integer value to round down + + + + + Rounds an integer value down to the next multiple of 16. + + + + integer value to round down + + + + + Rounds an integer value down to the next multiple of 2. + + + + integer value to round down + + + + + Rounds an integer value down to the next multiple of 32. + + + + integer value to round down + + + + + Rounds an integer value down to the next multiple of 4. + + + + integer value to round down + + + + + Rounds an integer value down to the next multiple of 64. + + + + integer value to round down + + + + + Rounds an integer value down to the next multiple of 8. + + + + integer value to round down + + + + + Rounds an integer value down to the next multiple of @align. @align MUST be a +power of two. + + + + integrer value to round down + + + a power of two to round down to + + + + + Rounds an integer value up to the next multiple of 128. + + + + integer value to round up + + + + + Rounds an integer value up to the next multiple of 16. + + + + integer value to round up + + + + + Rounds an integer value up to the next multiple of 2. + + + + integer value to round up + + + + + Rounds an integer value up to the next multiple of 32. + + + + integer value to round up + + + + + Rounds an integer value up to the next multiple of 4. + + + + integer value to round up + + + + + Rounds an integer value up to the next multiple of 64. + + + + integer value to round up + + + + + Rounds an integer value up to the next multiple of 8. + + + + integer value to round up + + + + + Rounds an integer value up to the next multiple of @align. @align MUST be a +power of two. + + + + integrer value to round up + + + a power of two to round up to + + + - Element priority ranks. Defines the order in which the autoplugger (or + Element priority ranks. Defines the order in which the autoplugger (or similar rank-picking mechanisms, such as e.g. gst_element_make_from_uri()) will choose this element over an alternative one with the same function. @@ -34674,31 +52198,41 @@ These constants serve as a rough guidance for defining the rank of a value="0" c:identifier="GST_RANK_NONE" glib:nick="none"> - will be chosen last or not at all + will be chosen last or not at all - unlikely to be chosen + unlikely to be chosen - likely to be chosen + likely to be chosen - will be chosen first + will be chosen first - #GstReferenceTimestampMeta can be used to attach alternative timestamps and + #GstReferenceTimestampMeta can be used to attach alternative timestamps and possibly durations to a #GstBuffer. These are generally not according to the pipeline clock and could be e.g. the NTP timestamp when the media was captured. @@ -34708,28 +52242,42 @@ references would be "timestamp/x-drivername-stream" for timestamps that are loca generated by some driver named "drivername" when generating the stream, e.g. based on a frame counter, or "timestamp/x-ntp, host=pool.ntp.org, port=123" for timestamps based on a specific NTP server. + - the parent #GstMeta structure + the parent #GstMeta structure - identifier for the timestamp reference. + identifier for the timestamp reference. - timestamp + timestamp - duration, or %GST_CLOCK_TIME_NONE + duration, or %GST_CLOCK_TIME_NONE - Get the global #GstMetaInfo describing the #GstReferenceTimestampMeta meta. + Get the global #GstMetaInfo describing the #GstReferenceTimestampMeta meta. + - The #GstMetaInfo + The #GstMetaInfo @@ -34741,7 +52289,9 @@ port=123" for timestamps based on a specific NTP server. glib:type-name="GstRegistry" glib:get-type="gst_registry_get_type" glib:type-struct="RegistryClass"> - One registry holds the metadata of a set of plugins. + One registry holds the metadata of a set of plugins. <emphasis role="bold">Design:</emphasis> @@ -34799,128 +52349,182 @@ different sets of plugins. For various reasons, at init time, the cache is stored in the default registry, and plugins not relevant to the current process are marked with the %GST_PLUGIN_FLAG_CACHED bit. These plugins are removed at the end of initialization. + - By default GStreamer will perform scanning and rebuilding of the + By default GStreamer will perform scanning and rebuilding of the registry file using a helper child process. Applications might want to disable this behaviour with the gst_registry_fork_set_enabled() function, in which case new plugins are scanned (and loaded) into the application process. + - %TRUE if GStreamer will use the child helper process when + %TRUE if GStreamer will use the child helper process when rebuilding the registry. - Applications might want to disable/enable spawning of a child helper process + Applications might want to disable/enable spawning of a child helper process when rebuilding the registry. See gst_registry_fork_is_enabled() for more information. + - whether rebuilding the registry can use a temporary child helper process. + whether rebuilding the registry can use a temporary child helper process. - Retrieves the singleton plugin registry. The caller does not own a + Retrieves the singleton plugin registry. The caller does not own a reference on the registry, as it is alive as long as GStreamer is initialized. + - the #GstRegistry. + the #GstRegistry. - Add the feature to the registry. The feature-added signal will be emitted. + Add the feature to the registry. The feature-added signal will be emitted. @feature's reference count will be incremented, and any floating reference will be removed (see gst_object_ref_sink()) + - %TRUE on success. + %TRUE on success. MT safe. - the registry to add the plugin to + the registry to add the plugin to - the feature to add + the feature to add - Add the plugin to the registry. The plugin-added signal will be emitted. + Add the plugin to the registry. The plugin-added signal will be emitted. @plugin's reference count will be incremented, and any floating reference will be removed (see gst_object_ref_sink()) + - %TRUE on success. + %TRUE on success. MT safe. - the registry to add the plugin to + the registry to add the plugin to - the plugin to add + the plugin to add - Checks whether a plugin feature by the given name exists in + Checks whether a plugin feature by the given name exists in @registry and whether its version is at least the version required. + - %TRUE if the feature could be found and the version is + %TRUE if the feature could be found and the version is the same as the required version or newer, and %FALSE otherwise. - a #GstRegistry + a #GstRegistry - the name of the feature (e.g. "oggdemux") + the name of the feature (e.g. "oggdemux") - the minimum major version number + the minimum major version number - the minimum minor version number + the minimum minor version number - the minimum micro version number + the minimum micro version number - Runs a filter against all features of the plugins in the registry + Runs a filter against all features of the plugins in the registry and returns a GList with the results. If the first flag is set, only the first match is returned (as a list with a single object). + - a #GList of + a #GList of #GstPluginFeature. Use gst_plugin_feature_list_free() after usage. MT safe. @@ -34930,33 +52534,46 @@ MT safe. - registry to query + registry to query - the filter to use + the filter to use - only return first match + only return first match - user data passed to the filter function + user data passed to the filter function - Find the pluginfeature with the given name and type in the registry. + Find the pluginfeature with the given name and type in the registry. + - the pluginfeature with the + the pluginfeature with the given name and type or %NULL if the plugin was not found. gst_object_unref() after usage. @@ -34965,24 +52582,35 @@ MT safe. - the registry to search + the registry to search - the pluginfeature name to find + the pluginfeature name to find - the pluginfeature type to find + the pluginfeature type to find - Find the plugin with the given name in the registry. + Find the plugin with the given name in the registry. The plugin will be reffed; caller is responsible for unreffing. + - the plugin with the given name + the plugin with the given name or %NULL if the plugin was not found. gst_object_unref() after usage. @@ -34991,20 +52619,29 @@ MT safe. - the registry to search + the registry to search - the plugin name to find + the plugin name to find - Retrieves a #GList of #GstPluginFeature of @type. + Retrieves a #GList of #GstPluginFeature of @type. + - a #GList of + a #GList of #GstPluginFeature of @type. Use gst_plugin_feature_list_free() after use MT safe. @@ -35014,20 +52651,29 @@ MT safe. - a #GstRegistry + a #GstRegistry - a #GType. + a #GType. - Retrieves a #GList of features of the plugin with name @name. + Retrieves a #GList of features of the plugin with name @name. + - a #GList of + a #GList of #GstPluginFeature. Use gst_plugin_feature_list_free() after usage. @@ -35035,36 +52681,52 @@ MT safe. - a #GstRegistry. + a #GstRegistry. - a plugin name. + a plugin name. - Returns the registry's feature list cookie. This changes + Returns the registry's feature list cookie. This changes every time a feature is added or removed from the registry. + - the feature list cookie. + the feature list cookie. - the registry + the registry - Get a copy of all plugins registered in the given registry. The refcount + Get a copy of all plugins registered in the given registry. The refcount of each element in the list in incremented. + - a #GList of #GstPlugin. + a #GList of #GstPlugin. Use gst_plugin_list_free() after usage. MT safe. @@ -35074,34 +52736,50 @@ MT safe. - the registry to search + the registry to search - Look up a plugin in the given registry with the given filename. + Look up a plugin in the given registry with the given filename. If found, plugin is reffed. + - the #GstPlugin if found, or + the #GstPlugin if found, or %NULL if not. gst_object_unref() after usage. - the registry to look up in + the registry to look up in - the name of the file to look up + the name of the file to look up - Find a #GstPluginFeature with @name in @registry. + Find a #GstPluginFeature with @name in @registry. + - a #GstPluginFeature with its refcount incremented, + a #GstPluginFeature with its refcount incremented, use gst_object_unref() after usage. MT safe. @@ -35109,23 +52787,32 @@ MT safe. - a #GstRegistry + a #GstRegistry - a #GstPluginFeature name + a #GstPluginFeature name - Runs a filter against all plugins in the registry and returns a #GList with + Runs a filter against all plugins in the registry and returns a #GList with the results. If the first flag is set, only the first match is returned (as a list with a single object). Every plugin is reffed; use gst_plugin_list_free() after use, which will unref again. + - a #GList of #GstPlugin. + a #GList of #GstPlugin. Use gst_plugin_list_free() after usage. MT safe. @@ -35135,79 +52822,110 @@ MT safe. - registry to query + registry to query - the filter to use + the filter to use - only return first match + only return first match - user data passed to the filter function + user data passed to the filter function - Remove the feature from the registry. + Remove the feature from the registry. MT safe. + - the registry to remove the feature from + the registry to remove the feature from - the feature to remove + the feature to remove - Remove the plugin from the registry. + Remove the plugin from the registry. MT safe. + - the registry to remove the plugin from + the registry to remove the plugin from - the plugin to remove + the plugin to remove - Scan the given path for plugins to add to the registry. The syntax of the + Scan the given path for plugins to add to the registry. The syntax of the path is specific to the registry. + - %TRUE if registry changed + %TRUE if registry changed - the registry to add found plugins to + the registry to add found plugins to - the path to scan + the path to scan @@ -35219,27 +52937,35 @@ path is specific to the registry. - Signals that a feature has been added to the registry (possibly + Signals that a feature has been added to the registry (possibly replacing a previously-added one by the same name) - the feature that has been added + the feature that has been added - Signals that a plugin has been added to the registry (possibly + Signals that a plugin has been added to the registry (possibly replacing a previously-added one by the same name) - the plugin that has been added + the plugin that has been added @@ -35248,112 +52974,146 @@ replacing a previously-added one by the same name) + + - Resource errors are for any resource used by an element: + Resource errors are for any resource used by an element: memory, files, network connections, process space, ... They're typically used by source and sink elements. - a general error which doesn't fit in any other + a general error which doesn't fit in any other category. Make sure you add a custom message to the error call. - do not use this except as a placeholder for + do not use this except as a placeholder for deciding where to go while developing code. - used when the resource could not be found. + used when the resource could not be found. - used when resource is busy. + used when resource is busy. - used when resource fails to open for reading. + used when resource fails to open for reading. - used when resource fails to open for writing. + used when resource fails to open for writing. - used when resource cannot be opened for + used when resource cannot be opened for both reading and writing, or either (but unspecified which). - used when the resource can't be closed. + used when the resource can't be closed. - used when the resource can't be read from. + used when the resource can't be read from. - used when the resource can't be written to. + used when the resource can't be written to. - used when a seek on the resource fails. + used when a seek on the resource fails. - used when a synchronize on the resource fails. + used when a synchronize on the resource fails. - used when settings can't be manipulated on. + used when settings can't be manipulated on. - used when the resource has no space left. + used when the resource has no space left. - used when the resource can't be opened + used when the resource can't be opened due to missing authorization. (Since: 1.2.4) @@ -35361,7 +53121,9 @@ both reading and writing, or either (but unspecified which). value="16" c:identifier="GST_RESOURCE_ERROR_NUM_ERRORS" glib:nick="num-errors"> - the number of resource error types. + the number of resource error types. @@ -35369,37 +53131,376 @@ both reading and writing, or either (but unspecified which). + + + + + + + + + + + + + + - Constant that defines one GStreamer second. + Constant that defines one GStreamer second. + - printf format type used to debug GStreamer segments. You can use this in + printf format type used to debug GStreamer segments. You can use this in combination with GStreamer's debug logging system as well as the functions gst_info_vasprintf(), gst_info_strdup_vprintf() and gst_info_strdup_printf() to pretty-print #GstSegment structures. This can only be used on pointers to GstSegment structures. + - A value which is guaranteed to never be returned by + A value which is guaranteed to never be returned by gst_util_seqnum_next(). Can be used as a default value in variables used to store seqnum. + + + This macro returns the current #GstState of the element. + + + + a #GstElement to return state for. + + + + + + + + + + + + Get the conditional used to signal the completion of a state change. + + + + a #GstElement + + + + + Get a reference to the state lock of @elem. +This lock is used by the core. It is taken while getting or setting +the state, during state changes, and while finalizing. + + + + a #GstElement + + + + + Given a current state @cur and a target state @pending, calculate the next (intermediate) +#GstState. + + + + A starting #GstState + + + A target #GstState + + + + + + + + + + + + This macro returns the next #GstState of the element. + + + + a #GstElement to return the next state for. + + + + + This macro returns the currently pending #GstState of the element. + + + + a #GstElement to return the pending state for. + + + + + This macro returns the last #GstStateChangeReturn value. + + + + a #GstElement to return the last state result for. + + + + + + + + + + + + This macro returns the target #GstState of the element. + + + + a #GstElement to return the target state for. + + + + + Given a current state @cur and a next state @next, calculate the associated +#GstStateChange transition. + + + + A current state + + + A next state + + + + + Given a state transition @trans, extract the current #GstState. + + + + A #GstStateChange + + + + + Given a state transition @trans, extract the next #GstState. + + + + A #GstStateChange + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new #GstCaps static caps from an input string. +This can be used in pad templates. + + + + the string describing the caps + + + + + Convenience macro to fill the values of a #GstStaticPadTemplate +structure. +Example: +|[<!-- language="C" --> +static GstStaticPadTemplate my_src_template = * GST_STATIC_PAD_TEMPLATE("src", GST_PAD_SRC, GST_PAD_ALWAYS, +, + GST_STATIC_CAPS_ANY); +]| + + + + the name template of the pad + + + the GstPadDirection of the pad + + + the GstPadPresence of the pad + + + the GstStaticCaps of the pad + + + + + Format @t for the #GST_STIME_FORMAT format string. Note: @t will be +evaluated more than once. + + + + a #GstClockTimeDiff or #gint64 + + + - A string that can be used in printf-like format strings to display a signed + A string that can be used in printf-like format strings to display a signed #GstClockTimeDiff or #gint64 value in h:m:s format. Use GST_TIME_ARGS() to construct the matching arguments. @@ -35407,21 +53508,195 @@ Example: |[ printf("%" GST_STIME_FORMAT "\n", GST_STIME_ARGS(ts)); ]| + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Transform an input string into a #guint32 fourcc value with host +endianness. +Caller is responsible for ensuring the input string consists of at least +four characters. + +|[ +guint32 fourcc = GST_STR_FOURCC ("MJPG"); +]| + + + + a string with at least four characters + + + + + Macro to use when a string must not be %NULL, but may be %NULL. If the string +is %NULL, "(NULL)" is printed instead. +In GStreamer printf string arguments may not be %NULL, because on some +platforms (ie Solaris) the libc crashes in that case. This includes debugging +strings. + + + + The string to check. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - A #GstSample is a small object containing data, a type, timing and + A #GstSample is a small object containing data, a type, timing and extra arbitrary information. + - Create a new #GstSample with the provided details. + Create a new #GstSample with the provided details. Free-function: gst_sample_unref + - the new #GstSample. gst_sample_unref() + the new #GstSample. gst_sample_unref() after usage. @@ -35430,36 +53705,49 @@ Free-function: gst_sample_unref transfer-ownership="none" nullable="1" allow-none="1"> - a #GstBuffer, or %NULL + a #GstBuffer, or %NULL - a #GstCaps, or %NULL + a #GstCaps, or %NULL - a #GstSegment, or %NULL + a #GstSegment, or %NULL - a #GstStructure, or %NULL + a #GstStructure, or %NULL - Get the buffer associated with @sample + Get the buffer associated with @sample + - the buffer of @sample or %NULL + the buffer of @sample or %NULL when there is no buffer. The buffer remains valid as long as @sample is valid. If you need to hold on to it for longer than that, take a ref to the buffer with gst_buffer_ref(). @@ -35467,7 +53755,9 @@ Free-function: gst_sample_unref - a #GstSample + a #GstSample @@ -35475,9 +53765,14 @@ Free-function: gst_sample_unref - Get the buffer list associated with @sample + Get the buffer list associated with @sample + - the buffer list of @sample or %NULL + the buffer list of @sample or %NULL when there is no buffer list. The buffer list remains valid as long as @sample is valid. If you need to hold on to it for longer than that, take a ref to the buffer list with gst_mini_object_ref (). @@ -35485,15 +53780,22 @@ Free-function: gst_sample_unref - a #GstSample + a #GstSample - Get the caps associated with @sample + Get the caps associated with @sample + - the caps of @sample or %NULL + the caps of @sample or %NULL when there is no caps. The caps remain valid as long as @sample is valid. If you need to hold on to the caps for longer than that, take a ref to the caps with gst_caps_ref(). @@ -35501,35 +53803,51 @@ Free-function: gst_sample_unref - a #GstSample + a #GstSample - Get extra information associated with @sample. + Get extra information associated with @sample. + - the extra info of @sample. + the extra info of @sample. The info remains valid as long as @sample is valid. - a #GstSample + a #GstSample - Get the segment associated with @sample + Get the segment associated with @sample + - the segment of @sample. + the segment of @sample. The segment remains valid as long as @sample is valid. - a #GstSample + a #GstSample @@ -35537,17 +53855,24 @@ Free-function: gst_sample_unref - Set the buffer associated with @sample. @sample must be writable. + Set the buffer associated with @sample. @sample must be writable. + - A #GstSample + A #GstSample - A #GstBuffer + A #GstBuffer @@ -35555,17 +53880,24 @@ Free-function: gst_sample_unref - Set the buffer list associated with @sample. @sample must be writable. + Set the buffer list associated with @sample. @sample must be writable. + - a #GstSample + a #GstSample - a #GstBufferList + a #GstBufferList @@ -35573,17 +53905,24 @@ Free-function: gst_sample_unref - Set the caps associated with @sample. @sample must be writable. + Set the caps associated with @sample. @sample must be writable. + - A #GstSample + A #GstSample - A #GstCaps + A #GstCaps @@ -35591,18 +53930,25 @@ Free-function: gst_sample_unref - Set the info structure associated with @sample. @sample must be writable, + Set the info structure associated with @sample. @sample must be writable, and @info must not have a parent set already. + - A #GstSample + A #GstSample - A #GstStructure + A #GstStructure @@ -35610,17 +53956,24 @@ and @info must not have a parent set already. - Set the segment associated with @sample. @sample must be writable. + Set the segment associated with @sample. @sample must be writable. + - A #GstSample + A #GstSample - A #GstSegment + A #GstSegment @@ -35630,55 +53983,73 @@ and @info must not have a parent set already. glib:type-name="GstSchedulingFlags" glib:get-type="gst_scheduling_flags_get_type" c:type="GstSchedulingFlags"> - The different scheduling flags. + The different scheduling flags. - if seeking is possible + if seeking is possible - if sequential access is recommended + if sequential access is recommended - if bandwidth is limited and buffering possible (since 1.2) + if bandwidth is limited and buffering possible (since 1.2) - The different search modes. + The different search modes. - Only search for exact matches. + Only search for exact matches. - Search for an exact match or the element just before. + Search for an exact match or the element just before. - Search for an exact match or the element just after. + Search for an exact match or the element just after. - Flags to be used with gst_element_seek() or gst_event_new_seek(). All flags + Flags to be used with gst_element_seek() or gst_event_new_seek(). All flags can be used together. A non flushing seek might take some time to perform as the currently @@ -35723,39 +54094,51 @@ elements that handle them. value="0" c:identifier="GST_SEEK_FLAG_NONE" glib:nick="none"> - no flag + no flag - flush pipeline + flush pipeline - accurate position is requested, this might + accurate position is requested, this might be considerably slower for some formats. - seek to the nearest keyframe. This might be + seek to the nearest keyframe. This might be faster but less accurate. - perform a segment seek. + perform a segment seek. - when doing fast forward or fast reverse playback, allow + when doing fast forward or fast reverse playback, allow elements to skip frames instead of generating all frames. (Since: 1.6) @@ -35763,14 +54146,18 @@ elements that handle them. value="16" c:identifier="GST_SEEK_FLAG_SKIP" glib:nick="skip"> - Deprecated backward compatibility flag, replaced + Deprecated backward compatibility flag, replaced by %GST_SEEK_FLAG_TRICKMODE - go to a location before the requested position, + go to a location before the requested position, if %GST_SEEK_FLAG_KEY_UNIT this means the keyframe at or before the requested position the one at or before the seek target. @@ -35778,7 +54165,9 @@ elements that handle them. value="64" c:identifier="GST_SEEK_FLAG_SNAP_AFTER" glib:nick="snap-after"> - go to a location after the requested position, + go to a location after the requested position, if %GST_SEEK_FLAG_KEY_UNIT this means the keyframe at of after the requested position. @@ -35786,7 +54175,9 @@ elements that handle them. value="96" c:identifier="GST_SEEK_FLAG_SNAP_NEAREST" glib:nick="snap-nearest"> - go to a position near the requested position, + go to a position near the requested position, if %GST_SEEK_FLAG_KEY_UNIT this means the keyframe closest to the requested position, if both keyframes are at an equal distance, behaves like %GST_SEEK_FLAG_SNAP_BEFORE. @@ -35795,7 +54186,9 @@ elements that handle them. value="128" c:identifier="GST_SEEK_FLAG_TRICKMODE_KEY_UNITS" glib:nick="trickmode-key-units"> - when doing fast forward or fast reverse + when doing fast forward or fast reverse playback, request that elements only decode keyframes and skip all other content, for formats that have keyframes. (Since: 1.6) @@ -35804,7 +54197,9 @@ elements that handle them. value="256" c:identifier="GST_SEEK_FLAG_TRICKMODE_NO_AUDIO" glib:nick="trickmode-no-audio"> - when doing fast forward or fast reverse + when doing fast forward or fast reverse playback, request that audio decoder elements skip decoding and output only gap events or silence. (Since: 1.6) @@ -35813,25 +54208,33 @@ elements that handle them. glib:type-name="GstSeekType" glib:get-type="gst_seek_type_get_type" c:type="GstSeekType"> - The different types of seek events. When constructing a seek event with + The different types of seek events. When constructing a seek event with gst_event_new_seek() or when doing gst_segment_do_seek (). - no change in position is required + no change in position is required - absolute position is requested + absolute position is requested - relative position to duration is requested + relative position to duration is requested glib:type-name="GstSegment" glib:get-type="gst_segment_get_type" c:symbol-prefix="segment"> - This helper structure holds the relevant values for tracking the region of + This helper structure holds the relevant values for tracking the region of interest in a media file, called a segment. The structure can be used for two purposes: @@ -35885,69 +54290,99 @@ any rate or applied_rate conversions. For elements that need to perform operations on media data in stream_time, gst_segment_to_stream_time() can be used to convert a timestamp and the segment info to stream time (which is always between 0 and the duration of the stream). + - flags for this segment + flags for this segment - the playback rate of the segment + the playback rate of the segment - the already applied rate to the segment + the already applied rate to the segment - the format of the segment values + the format of the segment values - the running time (plus elapsed time, see offset) of the segment start + the running time (plus elapsed time, see offset) of the segment start - the amount (in buffer timestamps) that has already been elapsed in + the amount (in buffer timestamps) that has already been elapsed in the segment - the start of the segment in buffer timestamp time (PTS) + the start of the segment in buffer timestamp time (PTS) - the stop of the segment in buffer timestamp time (PTS) + the stop of the segment in buffer timestamp time (PTS) - the stream time of the segment start + the stream time of the segment start - the buffer timestamp position in the segment (used internally by + the buffer timestamp position in the segment (used internally by elements such as sources, demuxers or parsers to track progress) - the duration of the stream + the duration of the stream - + - Allocate a new #GstSegment structure and initialize it using + Allocate a new #GstSegment structure and initialize it using gst_segment_init(). Free-function: gst_segment_free + - a new #GstSegment, free with gst_segment_free(). + a new #GstSegment, free with gst_segment_free(). - Clip the given @start and @stop values to the segment boundaries given + Clip the given @start and @stop values to the segment boundaries given in @segment. @start and @stop are compared and clipped to @segment start and stop values. @@ -35960,27 +54395,38 @@ respectively, the region fell partially in the segment. Note that when @stop is -1, @clip_stop will be set to the end of the segment. Depending on the use case, this may or may not be what you want. + - %TRUE if the given @start and @stop times fall partially or + %TRUE if the given @start and @stop times fall partially or completely in @segment, %FALSE if the values are completely outside of the segment. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the start position in the segment + the start position in the segment - the stop position in the segment + the stop position in the segment transfer-ownership="full" optional="1" allow-none="1"> - the clipped start position in the segment + the clipped start position in the segment transfer-ownership="full" optional="1" allow-none="1"> - the clipped stop position in the segment + the clipped stop position in the segment - Create a copy of given @segment. + Create a copy of given @segment. Free-function: gst_segment_free + - a new #GstSegment, free with gst_segment_free(). + a new #GstSegment, free with gst_segment_free(). - a #GstSegment + a #GstSegment - Copy the contents of @src into @dest. + Copy the contents of @src into @dest. + - a #GstSegment + a #GstSegment - a #GstSegment + a #GstSegment - Update the segment structure with the field values of a seek event (see + Update the segment structure with the field values of a seek event (see gst_event_new_seek()). After calling this method, the segment field position and time will @@ -36062,41 +54528,60 @@ rate and applied_rate after calling this function. @update will be set to %TRUE if a seek should be performed to the segment position field. This field can be %FALSE if, for example, only the @rate has been changed but not the playback position. + - %TRUE if the seek could be performed. + %TRUE if the seek could be performed. - a #GstSegment structure. + a #GstSegment structure. - the rate of the segment. + the rate of the segment. - the format of the segment. + the format of the segment. - the segment flags for the segment + the segment flags for the segment - the seek method + the seek method - the seek start value + the seek start value - the seek method + the seek method - the seek stop value + the seek stop value transfer-ownership="full" optional="1" allow-none="1"> - boolean holding whether position was updated. + boolean holding whether position was updated. - Free the allocated segment @segment. + Free the allocated segment @segment. + - a #GstSegment + a #GstSegment - The start/position fields are set to 0 and the stop/duration + The start/position fields are set to 0 and the stop/duration fields are set to -1 (unknown). The default rate of 1.0 and no flags are set. Initialize @segment to its default values. + - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. @@ -36145,19 +54644,28 @@ Initialize @segment to its default values. - Checks for two segments being equal. Equality here is defined + Checks for two segments being equal. Equality here is defined as perfect equality, including floating point values. + - %TRUE if the segments are equal, %FALSE otherwise. + %TRUE if the segments are equal, %FALSE otherwise. - a #GstSegment structure. + a #GstSegment structure. - a #GstSegment structure. + a #GstSegment structure. @@ -36165,24 +54673,35 @@ as perfect equality, including floating point values. - Adjust the values in @segment so that @offset is applied to all + Adjust the values in @segment so that @offset is applied to all future running-time calculations. + - %TRUE if the segment could be updated successfully. If %FALSE is + %TRUE if the segment could be updated successfully. If %FALSE is returned, @offset is not in @segment. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the offset to apply in the segment + the offset to apply in the segment @@ -36190,24 +54709,35 @@ returned, @offset is not in @segment. - Convert @running_time into a position in the segment so that + Convert @running_time into a position in the segment so that gst_segment_to_running_time() with that position returns @running_time. + - the position in the segment for @running_time. This function returns + the position in the segment for @running_time. This function returns -1 when @running_time is -1 or when it is not inside @segment. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the running_time in the segment + the running_time in the segment @@ -36215,7 +54745,9 @@ gst_segment_to_running_time() with that position returns @running_time. - Translate @running_time to the segment position using the currently configured + Translate @running_time to the segment position using the currently configured segment. Compared to gst_segment_position_from_running_time() this function can return negative segment position. @@ -36231,28 +54763,39 @@ in @position. When this function returns -1, the returned @position was < 0, and the value in the position variable should be negated to get the real negative segment position. + - a 1 or -1 on success, 0 on failure. + a 1 or -1 on success, 0 on failure. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the running-time + the running-time - the resulting position in the segment + the resulting position in the segment @@ -36260,24 +54803,35 @@ position. - Convert @stream_time into a position in the segment so that + Convert @stream_time into a position in the segment so that gst_segment_to_stream_time() with that position returns @stream_time. + - the position in the segment for @stream_time. This function returns + the position in the segment for @stream_time. This function returns -1 when @stream_time is -1 or when it is not inside @segment. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the stream_time in the segment + the stream_time in the segment @@ -36285,7 +54839,9 @@ gst_segment_to_stream_time() with that position returns @stream_time. - Translate @stream_time to the segment position using the currently configured + Translate @stream_time to the segment position using the currently configured segment. Compared to gst_segment_position_from_stream_time() this function can return negative segment position. @@ -36300,52 +54856,74 @@ in @position. When this function returns -1, the returned @position should be negated to get the real negative segment position. + - a 1 or -1 on success, 0 on failure. + a 1 or -1 on success, 0 on failure. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the stream-time + the stream-time - the resulting position in the segment + the resulting position in the segment - Adjust the start/stop and base values of @segment such that the next valid + Adjust the start/stop and base values of @segment such that the next valid buffer will be one with @running_time. + - %TRUE if the segment could be updated successfully. If %FALSE is + %TRUE if the segment could be updated successfully. If %FALSE is returned, @running_time is -1 or not in @segment. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the running_time in the segment + the running_time in the segment @@ -36353,32 +54931,45 @@ returned, @running_time is -1 or not in @segment. - Convert @running_time into a position in the segment so that + Convert @running_time into a position in the segment so that gst_segment_to_running_time() with that position returns @running_time. Use gst_segment_position_from_running_time() instead. + - the position in the segment for @running_time. This function returns + the position in the segment for @running_time. This function returns -1 when @running_time is -1 or when it is not inside @segment. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the running_time in the segment + the running_time in the segment - Translate @position to the total running time using the currently configured + Translate @position to the total running time using the currently configured segment. Position is a value between @segment start and stop time. This function is typically used by elements that need to synchronize to the @@ -36387,22 +54978,31 @@ starting from 0. When gst_segment_init() is called, this value will reset to 0. This function returns -1 if the position is outside of @segment start and stop. + - the position as the total running time or -1 when an invalid position + the position as the total running time or -1 when an invalid position was given. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the position in the segment + the position in the segment @@ -36410,7 +55010,9 @@ was given. - Translate @position to the total running time using the currently configured + Translate @position to the total running time using the currently configured segment. Compared to gst_segment_to_running_time() this function can return negative running-time. @@ -36425,21 +55027,30 @@ in @running_time. When this function returns -1, the returned @running_time should be negated to get the real negative running time. + - a 1 or -1 on success, 0 on failure. + a 1 or -1 on success, 0 on failure. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the position in the segment + the position in the segment transfer-ownership="full" optional="1" allow-none="1"> - result running-time + result running-time @@ -36456,7 +55069,9 @@ to get the real negative running time. - Translate @position to stream time using the currently configured + Translate @position to stream time using the currently configured segment. The @position value must be between @segment start and stop value. @@ -36466,22 +55081,31 @@ In those use cases, @position is typically the buffer timestamp or clock time that one wants to convert to the stream time. The stream time is always between 0 and the total duration of the media stream. + - the position in stream_time or -1 when an invalid position + the position in stream_time or -1 when an invalid position was given. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the position in the segment + the position in the segment @@ -36489,7 +55113,9 @@ was given. - Translate @position to the total stream time using the currently configured + Translate @position to the total stream time using the currently configured segment. Compared to gst_segment_to_stream_time() this function can return negative stream-time. @@ -36504,28 +55130,39 @@ in @stream_time. When this function returns -1, the returned @stream_time should be negated to get the real negative stream time. + - a 1 or -1 on success, 0 on failure. + a 1 or -1 on success, 0 on failure. - a #GstSegment structure. + a #GstSegment structure. - the format of the segment. + the format of the segment. - the position in the segment + the position in the segment - result stream-time + result stream-time @@ -36535,52 +55172,68 @@ to get the real negative stream time. glib:type-name="GstSegmentFlags" glib:get-type="gst_segment_flags_get_type" c:type="GstSegmentFlags"> - Flags for the GstSegment structure. Currently mapped to the corresponding + Flags for the GstSegment structure. Currently mapped to the corresponding values of the seek flags. - no flags + no flags - reset the pipeline running_time to the segment + reset the pipeline running_time to the segment running_time - perform skip playback (Since: 1.6) + perform skip playback (Since: 1.6) - Deprecated backward compatibility flag, replaced + Deprecated backward compatibility flag, replaced by @GST_SEGMENT_FLAG_TRICKMODE - send SEGMENT_DONE instead of EOS + send SEGMENT_DONE instead of EOS - Decode only keyframes, where + Decode only keyframes, where possible (Since: 1.6) - Do not decode any audio, where + Do not decode any audio, where possible (Since: 1.6) @@ -36593,7 +55246,9 @@ values of the seek flags. value="1" c:identifier="GST_STACK_TRACE_SHOW_FULL" glib:nick="full"> - Try to retrieve as much information as + Try to retrieve as much information as possible when getting the stack trace @@ -36601,31 +55256,41 @@ values of the seek flags. glib:type-name="GstState" glib:get-type="gst_state_get_type" c:type="GstState"> - The possible states an element can be in. States can be changed using + The possible states an element can be in. States can be changed using gst_element_set_state() and checked using gst_element_get_state(). - no pending state. + no pending state. - the NULL state or initial state of an element. + the NULL state or initial state of an element. - the element is ready to go to PAUSED. + the element is ready to go to PAUSED. - the element is PAUSED, it is ready to accept and + the element is PAUSED, it is ready to accept and process data. Sink elements however only accept one buffer and then block. @@ -36633,7 +55298,9 @@ gst_element_set_state() and checked using gst_element_get_state(). value="4" c:identifier="GST_STATE_PLAYING" glib:nick="playing"> - the element is PLAYING, the #GstClock is running and + the element is PLAYING, the #GstClock is running and the data is flowing. @@ -36641,14 +55308,18 @@ gst_element_set_state() and checked using gst_element_get_state(). glib:type-name="GstStateChange" glib:get-type="gst_state_change_get_type" c:type="GstStateChange"> - These are the different state changes an element goes through. + These are the different state changes an element goes through. %GST_STATE_NULL &rArr; %GST_STATE_PLAYING is called an upwards state change and %GST_STATE_PLAYING &rArr; %GST_STATE_NULL a downwards state change. - state change from NULL to READY. + state change from NULL to READY. * The element must check if the resources it needs are available. Device sinks and -sources typically try to probe the device to constrain their caps. @@ -36658,7 +55329,9 @@ and %GST_STATE_PLAYING &rArr; %GST_STATE_NULL a downwards state change. - state change from READY to PAUSED. + state change from READY to PAUSED. * The element pads are activated in order to receive data in PAUSED. Streaming threads are started. * Some elements might need to return %GST_STATE_CHANGE_ASYNC and complete @@ -36673,7 +55346,9 @@ and %GST_STATE_PLAYING &rArr; %GST_STATE_NULL a downwards state change. - state change from PAUSED to PLAYING. + state change from PAUSED to PLAYING. * Most elements ignore this state change. * The pipeline selects a #GstClock and distributes this to all the children before setting them to PLAYING. This means that it is only allowed to @@ -36693,7 +55368,9 @@ and %GST_STATE_PLAYING &rArr; %GST_STATE_NULL a downwards state change. - state change from PLAYING to PAUSED. + state change from PLAYING to PAUSED. * Most elements ignore this state change. * The pipeline calculates the running_time based on the last selected #GstClock and the base_time. It stores this information to continue @@ -36711,7 +55388,9 @@ and %GST_STATE_PLAYING &rArr; %GST_STATE_NULL a downwards state change. - state change from PAUSED to READY. + state change from PAUSED to READY. * Sinks unblock any waits in the preroll. * Elements unblock any waits on devices * Chain or get_range functions return %GST_FLOW_FLUSHING. @@ -36724,7 +55403,9 @@ and %GST_STATE_PLAYING &rArr; %GST_STATE_NULL a downwards state change. - state change from READY to NULL. + state change from READY to NULL. * Elements close devices * Elements reset any internal state. @@ -36732,13 +55413,17 @@ and %GST_STATE_PLAYING &rArr; %GST_STATE_NULL a downwards state change. - state change from NULL to NULL. (Since: 1.14) + state change from NULL to NULL. (Since: 1.14) - state change from READY to READY, + state change from READY to READY, This might happen when going to PAUSED asynchronously failed, in that case elements should make sure they are in a proper, coherent READY state. (Since: 1.14) @@ -36746,7 +55431,9 @@ elements should make sure they are in a proper, coherent READY state. (Since: 1. value="27" c:identifier="GST_STATE_CHANGE_PAUSED_TO_PAUSED" glib:nick="paused-to-paused"> - state change from PAUSED to PAUSED. + state change from PAUSED to PAUSED. This might happen when elements were in PLAYING state and 'lost state', they should make sure to go back to real 'PAUSED' state (prerolling for example). (Since: 1.14) @@ -36754,20 +55441,29 @@ they should make sure to go back to real 'PAUSED' state (prerolling for example) value="36" c:identifier="GST_STATE_CHANGE_PLAYING_TO_PLAYING" glib:nick="playing-to-playing"> - state change from PLAYING to PLAYING. (Since: 1.14) + state change from PLAYING to PLAYING. (Since: 1.14) - Gets a string representing the given state transition. + Gets a string representing the given state transition. + - a string with the name of the state + a string with the name of the state result. - a #GstStateChange to get the name of. + a #GstStateChange to get the name of. @@ -36777,68 +55473,95 @@ they should make sure to go back to real 'PAUSED' state (prerolling for example) glib:type-name="GstStateChangeReturn" glib:get-type="gst_state_change_return_get_type" c:type="GstStateChangeReturn"> - The possible return values from a state change function such as + The possible return values from a state change function such as gst_element_set_state(). Only @GST_STATE_CHANGE_FAILURE is a real failure. - the state change failed + the state change failed - the state change succeeded + the state change succeeded - the state change will happen asynchronously + the state change will happen asynchronously - the state change succeeded but the element + the state change succeeded but the element cannot produce data in %GST_STATE_PAUSED. This typically happens with live sources. - Datastructure to initialize #GstCaps from a string description usually + Datastructure to initialize #GstCaps from a string description usually used in conjunction with GST_STATIC_CAPS() and gst_static_caps_get() to instantiate a #GstCaps. + - the cached #GstCaps + the cached #GstCaps - a string describing a caps + a string describing a caps - + - Clean up the cached caps contained in @static_caps. + Clean up the cached caps contained in @static_caps. + - the #GstStaticCaps to clean + the #GstStaticCaps to clean - Converts a #GstStaticCaps to a #GstCaps. + Converts a #GstStaticCaps to a #GstCaps. + - a pointer to the #GstCaps. Unref + a pointer to the #GstCaps. Unref after usage. Since the core holds an additional ref to the returned caps, use gst_caps_make_writable() on the returned caps to modify it. @@ -36846,47 +55569,72 @@ instantiate a #GstCaps. - the #GstStaticCaps to convert + the #GstStaticCaps to convert - Structure describing the #GstStaticPadTemplate. + Structure describing the #GstStaticPadTemplate. + - the name of the template + the name of the template - the direction of the template + the direction of the template - the presence of the template + the presence of the template - the caps of the template. + the caps of the template. - Converts a #GstStaticPadTemplate into a #GstPadTemplate. + Converts a #GstStaticPadTemplate into a #GstPadTemplate. + - a new #GstPadTemplate. + a new #GstPadTemplate. - the static pad template + the static pad template - Gets the capabilities of the static pad template. + Gets the capabilities of the static pad template. + - the #GstCaps of the static pad template. + the #GstCaps of the static pad template. Unref after usage. Since the core holds an additional ref to the returned caps, use gst_caps_make_writable() on the returned caps to modify it. @@ -36894,7 +55642,9 @@ on the returned caps to modify it. - a #GstStaticPadTemplate to get capabilities of. + a #GstStaticPadTemplate to get capabilities of. @@ -36908,7 +55658,9 @@ on the returned caps to modify it. glib:type-name="GstStream" glib:get-type="gst_stream_get_type" glib:type-struct="StreamClass"> - A high-level object representing a single stream. It might be backed, or + A high-level object representing a single stream. It might be backed, or not, by an actual flow of data in a pipeline (#GstPad). A #GstStream does not care about data changes (such as decoding, encoding, @@ -36920,11 +55672,17 @@ stream-id, tags, caps, type, ... Elements can subclass a #GstStream for internal usage (to contain information pertinent to streams of data). + - Create a new #GstStream for the given @stream_id, @caps, @type + Create a new #GstStream for the given @stream_id, @caps, @type and @flags + - The new #GstStream + The new #GstStream @@ -36932,7 +55690,9 @@ and @flags transfer-ownership="none" nullable="1" allow-none="1"> - the id for the new stream. If %NULL, + the id for the new stream. If %NULL, a new one will be automatically generated @@ -36940,15 +55700,21 @@ a new one will be automatically generated transfer-ownership="none" nullable="1" allow-none="1"> - the #GstCaps of the stream + the #GstCaps of the stream - the #GstStreamType of the stream + the #GstStreamType of the stream - the #GstStreamFlags of the stream + the #GstStreamFlags of the stream @@ -36956,14 +55722,21 @@ a new one will be automatically generated - Retrieve the caps for @stream, if any + Retrieve the caps for @stream, if any + - The #GstCaps for @stream + The #GstCaps for @stream - a #GstStream + a #GstStream @@ -36971,14 +55744,21 @@ a new one will be automatically generated - Retrieve the current stream flags for @stream + Retrieve the current stream flags for @stream + - The #GstStreamFlags for @stream + The #GstStreamFlags for @stream - a #GstStream + a #GstStream @@ -36986,15 +55766,22 @@ a new one will be automatically generated - Returns the stream ID of @stream. + Returns the stream ID of @stream. + - the stream ID of @stream. Only valid + the stream ID of @stream. Only valid during the lifetime of @stream. - a #GstStream + a #GstStream @@ -37002,14 +55789,21 @@ during the lifetime of @stream. - Retrieve the stream type for @stream + Retrieve the stream type for @stream + - The #GstStreamType for @stream + The #GstStreamType for @stream - a #GstStream + a #GstStream @@ -37017,14 +55811,21 @@ during the lifetime of @stream. - Retrieve the tags for @stream, if any + Retrieve the tags for @stream, if any + - The #GstTagList for @stream + The #GstTagList for @stream - a #GstStream + a #GstStream @@ -37032,20 +55833,27 @@ during the lifetime of @stream. - Set the caps for the #GstStream + Set the caps for the #GstStream + - a #GstStream + a #GstStream - a #GstCaps + a #GstCaps @@ -37053,17 +55861,24 @@ during the lifetime of @stream. - Set the @flags for the @stream. + Set the @flags for the @stream. + - a #GstStream + a #GstStream - the flags to set on @stream + the flags to set on @stream @@ -37071,17 +55886,24 @@ during the lifetime of @stream. - Set the stream type of @stream + Set the stream type of @stream + - a #GstStream + a #GstStream - the type to set on @stream + the type to set on @stream @@ -37089,26 +55911,35 @@ during the lifetime of @stream. - Set the tags for the #GstStream + Set the tags for the #GstStream + - a #GstStream + a #GstStream - a #GstTagList + a #GstTagList - The #GstCaps of the #GstStream. + The #GstCaps of the #GstStream. writable="1" construct-only="1" transfer-ownership="none"> - The unique identifier of the #GstStream. Can only be set at construction + The unique identifier of the #GstStream. Can only be set at construction time. @@ -37129,25 +55962,31 @@ time. writable="1" construct="1" transfer-ownership="none"> - The #GstStreamType of the #GstStream. Can only be set at construction time. + The #GstStreamType of the #GstStream. Can only be set at construction time. - The #GstTagList of the #GstStream. + The #GstTagList of the #GstStream. - The Stream Identifier for this #GstStream + The Stream Identifier for this #GstStream - + @@ -37155,13 +55994,18 @@ time. - GstStream class structure + GstStream class structure + - the parent class structure + the parent class structure - + @@ -37174,7 +56018,9 @@ time. glib:type-name="GstStreamCollection" glib:get-type="gst_stream_collection_get_type" glib:type-struct="StreamCollectionClass"> - A collection of #GstStream that are available. + A collection of #GstStream that are available. A #GstStreamCollection will be provided by elements that can make those streams available. Applications can use the collection to show the user @@ -37190,12 +56036,18 @@ Several elements in a pipeline can provide #GstStreamCollection. Applications can activate streams from a collection by using the #GST_EVENT_SELECT_STREAMS event on a pipeline, bin or element. + - Create a new #GstStreamCollection. + Create a new #GstStreamCollection. + - The new #GstStreamCollection. + The new #GstStreamCollection. @@ -37203,12 +56055,15 @@ Applications can activate streams from a collection by using the transfer-ownership="none" nullable="1" allow-none="1"> - The stream id of the parent stream + The stream id of the parent stream + @@ -37227,18 +56082,27 @@ Applications can activate streams from a collection by using the - Add the given @stream to the @collection. + Add the given @stream to the @collection. + - %TRUE if the @stream was properly added, else %FALSE + %TRUE if the @stream was properly added, else %FALSE - a #GstStreamCollection + a #GstStreamCollection - the #GstStream to add + the #GstStream to add @@ -37246,14 +56110,21 @@ Applications can activate streams from a collection by using the - Get the number of streams this collection contains + Get the number of streams this collection contains + - The number of streams that @collection contains + The number of streams that @collection contains - a #GstStreamCollection + a #GstStreamCollection @@ -37261,20 +56132,29 @@ Applications can activate streams from a collection by using the - Retrieve the #GstStream with index @index from the collection. + Retrieve the #GstStream with index @index from the collection. The caller should not modify the returned #GstStream + - A #GstStream + A #GstStream - a #GstStreamCollection + a #GstStreamCollection - Index of the stream to retrieve + Index of the stream to retrieve @@ -37282,14 +56162,21 @@ The caller should not modify the returned #GstStream - Returns the upstream id of the @collection. + Returns the upstream id of the @collection. + - The upstream id + The upstream id - a #GstStreamCollection + a #GstStreamCollection @@ -37311,7 +56198,7 @@ The caller should not modify the returned #GstStream c:type="GstStreamCollectionPrivate*"/> - + @@ -37336,13 +56223,19 @@ The caller should not modify the returned #GstStream - GstStreamCollection class structure + GstStreamCollection class structure + - the parent class structure + the parent class structure + @@ -37360,7 +56253,7 @@ The caller should not modify the returned #GstStream - + @@ -37368,107 +56261,138 @@ The caller should not modify the returned #GstStream + - Stream errors are for anything related to the stream being processed: + Stream errors are for anything related to the stream being processed: format errors, media type errors, ... They're typically used by decoders, demuxers, converters, ... - a general error which doesn't fit in any other + a general error which doesn't fit in any other category. Make sure you add a custom message to the error call. - do not use this except as a placeholder for + do not use this except as a placeholder for deciding where to go while developing code. - use this when you do not want to implement + use this when you do not want to implement this functionality yet. - used when the element doesn't know the + used when the element doesn't know the stream's type. - used when the element doesn't handle this type + used when the element doesn't handle this type of stream. - used when there's no codec to handle the + used when there's no codec to handle the stream's type. - used when decoding fails. + used when decoding fails. - used when encoding fails. + used when encoding fails. - used when demuxing fails. + used when demuxing fails. - used when muxing fails. + used when muxing fails. - used when the stream is of the wrong format + used when the stream is of the wrong format (for example, wrong caps). - used when the stream is encrypted and can't be + used when the stream is encrypted and can't be decrypted because this is not supported by the element. - used when the stream is encrypted and + used when the stream is encrypted and can't be decrypted because no suitable key is available. - the number of stream error types. + the number of stream error types. @@ -37485,13 +56409,17 @@ can't be decrypted because no suitable key is available. value="0" c:identifier="GST_STREAM_FLAG_NONE" glib:nick="none"> - This stream has no special attributes + This stream has no special attributes - This stream is a sparse stream (e.g. a subtitle + This stream is a sparse stream (e.g. a subtitle stream), data may flow only in irregular intervals with large gaps in between. @@ -37499,7 +56427,9 @@ can't be decrypted because no suitable key is available. value="2" c:identifier="GST_STREAM_FLAG_SELECT" glib:nick="select"> - This stream should be selected by default. This + This stream should be selected by default. This flag may be used by demuxers to signal that a stream should be selected by default in a playback scenario. @@ -37507,7 +56437,9 @@ can't be decrypted because no suitable key is available. value="4" c:identifier="GST_STREAM_FLAG_UNSELECT" glib:nick="unselect"> - This stream should not be selected by default. + This stream should not be selected by default. This flag may be used by demuxers to signal that a stream should not be selected by default in a playback scenario, but only if explicitly selected by the user (e.g. an audio track for the hard of hearing or @@ -37515,54 +56447,71 @@ can't be decrypted because no suitable key is available. + - The type of a %GST_MESSAGE_STREAM_STATUS. The stream status messages inform the + The type of a %GST_MESSAGE_STREAM_STATUS. The stream status messages inform the application of new streaming threads and their status. - A new thread need to be created. + A new thread need to be created. - a thread entered its loop function + a thread entered its loop function - a thread left its loop function + a thread left its loop function - a thread is destroyed + a thread is destroyed - a thread is started + a thread is started - a thread is paused + a thread is paused - a thread is stopped + a thread is stopped glib:type-name="GstStreamType" glib:get-type="gst_stream_type_get_type" c:type="GstStreamType"> - #GstStreamType describes a high level classification set for + #GstStreamType describes a high level classification set for flows of data in #GstStream objects. Note that this is a flag, and therefore users should not assume it @@ -37580,43 +56531,60 @@ whether a stream is of a certain type. value="1" c:identifier="GST_STREAM_TYPE_UNKNOWN" glib:nick="unknown"> - The stream is of unknown (unclassified) type. + The stream is of unknown (unclassified) type. - The stream is of audio data + The stream is of audio data - The stream carries video data + The stream carries video data - The stream is a muxed container type + The stream is a muxed container type - The stream contains subtitle / subpicture data. + The stream contains subtitle / subpicture data. - Get a descriptive string for a given #GstStreamType + Get a descriptive string for a given #GstStreamType + - A string describing the stream type + A string describing the stream type - a #GstStreamType + a #GstStreamType @@ -37627,7 +56595,9 @@ whether a stream is of a certain type. glib:type-name="GstStructure" glib:get-type="gst_structure_get_type" c:symbol-prefix="structure"> - A #GstStructure is a collection of key/value pairs. The keys are expressed + A #GstStructure is a collection of key/value pairs. The keys are expressed as GQuarks and the values can be of any GType. In addition to the key/value pairs, a #GstStructure also has a name. The name @@ -37661,8 +56631,11 @@ has limited support for nested #GstCaps / #GstStructure fields. It can only support one level of nesting. Using more levels will lead to unexpected behavior when using serialization features, such as gst_caps_to_string() or gst_value_serialize() and their counterparts. + - the GType of a structure + the GType of a structure @@ -37671,44 +56644,62 @@ gst_value_serialize() and their counterparts. - Creates a new #GstStructure with the given name. Parses the + Creates a new #GstStructure with the given name. Parses the list of variable arguments and sets fields to the values listed. Variable arguments should be passed as field name, field type, and value. Last variable argument should be %NULL. Free-function: gst_structure_free + - a new #GstStructure + a new #GstStructure - name of new structure + name of new structure - name of first field to set + name of first field to set - additional arguments + additional arguments - Creates a new, empty #GstStructure with the given @name. + Creates a new, empty #GstStructure with the given @name. See gst_structure_set_name() for constraints on the @name parameter. Free-function: gst_structure_free + - a new, empty #GstStructure + a new, empty #GstStructure - name of new structure + name of new structure @@ -37716,7 +56707,9 @@ Free-function: gst_structure_free - Creates a #GstStructure from a string representation. + Creates a #GstStructure from a string representation. If end is not %NULL, a pointer to the place inside the given string where parsing ended will be returned. @@ -37724,15 +56717,20 @@ The current implementation of serialization will lead to unexpected results when there are nested #GstCaps / #GstStructure deeper than one level. Free-function: gst_structure_free + - a new #GstStructure or %NULL + a new #GstStructure or %NULL when the string could not be parsed. Free with gst_structure_free() after use. - a string representation of a #GstStructure + a string representation of a #GstStructure @@ -37740,7 +56738,9 @@ Free-function: gst_structure_free - Creates a new #GstStructure with the given name as a GQuark, followed by + Creates a new #GstStructure with the given name as a GQuark, followed by fieldname quark, GType, argument(s) "triplets" in the same format as gst_structure_id_set(). Basically a convenience wrapper around gst_structure_new_id_empty() and gst_structure_id_set(). @@ -37748,37 +56748,53 @@ gst_structure_new_id_empty() and gst_structure_id_set(). The last variable argument must be %NULL (or 0). Free-function: gst_structure_free + - a new #GstStructure + a new #GstStructure - name of new structure + name of new structure - the GQuark for the name of the field to set + the GQuark for the name of the field to set - variable arguments + variable arguments - Creates a new, empty #GstStructure with the given name as a GQuark. + Creates a new, empty #GstStructure with the given name as a GQuark. Free-function: gst_structure_free + - a new, empty #GstStructure + a new, empty #GstStructure - name of new structure + name of new structure @@ -37786,61 +56802,88 @@ Free-function: gst_structure_free - Creates a new #GstStructure with the given @name. Structure fields + Creates a new #GstStructure with the given @name. Structure fields are set according to the varargs in a manner similar to gst_structure_new(). See gst_structure_set_name() for constraints on the @name parameter. Free-function: gst_structure_free + - a new #GstStructure + a new #GstStructure - name of new structure + name of new structure - name of first field to set + name of first field to set - variable argument list + variable argument list - Tries intersecting @struct1 and @struct2 and reports whether the result + Tries intersecting @struct1 and @struct2 and reports whether the result would not be empty. + - %TRUE if intersection would not be empty + %TRUE if intersection would not be empty - a #GstStructure + a #GstStructure - a #GstStructure + a #GstStructure - Duplicates a #GstStructure and all its fields and values. + Duplicates a #GstStructure and all its fields and values. Free-function: gst_structure_free + - a new #GstStructure. + a new #GstStructure. - a #GstStructure to duplicate + a #GstStructure to duplicate @@ -37848,24 +56891,31 @@ Free-function: gst_structure_free - Calls the provided function once for each field in the #GstStructure. In + Calls the provided function once for each field in the #GstStructure. In contrast to gst_structure_foreach(), the function may modify the fields. In contrast to gst_structure_map_in_place(), the field is removed from the structure if %FALSE is returned from the function. The structure must be mutable. + - a #GstStructure + a #GstStructure - a function to call for each field + a function to call for each field @@ -37873,180 +56923,262 @@ The structure must be mutable. transfer-ownership="none" nullable="1" allow-none="1"> - private data + private data - Fixate all values in @structure using gst_value_fixate(). + Fixate all values in @structure using gst_value_fixate(). @structure will be modified in-place and should be writable. + - a #GstStructure + a #GstStructure - Fixates a #GstStructure by changing the given field with its fixated value. + Fixates a #GstStructure by changing the given field with its fixated value. + - %TRUE if the structure field could be fixated + %TRUE if the structure field could be fixated - a #GstStructure + a #GstStructure - a field in @structure + a field in @structure - Fixates a #GstStructure by changing the given @field_name field to the given + Fixates a #GstStructure by changing the given @field_name field to the given @target boolean if that field is not fixed yet. + - %TRUE if the structure could be fixated + %TRUE if the structure could be fixated - a #GstStructure + a #GstStructure - a field in @structure + a field in @structure - the target value of the fixation + the target value of the fixation - Fixates a #GstStructure by changing the given field to the nearest + Fixates a #GstStructure by changing the given field to the nearest double to @target that is a subset of the existing field. + - %TRUE if the structure could be fixated + %TRUE if the structure could be fixated - a #GstStructure + a #GstStructure - a field in @structure + a field in @structure - the target value of the fixation + the target value of the fixation - Fixates a #GstStructure by changing the given field to the nearest + Fixates a #GstStructure by changing the given field to the nearest fraction to @target_numerator/@target_denominator that is a subset of the existing field. + - %TRUE if the structure could be fixated + %TRUE if the structure could be fixated - a #GstStructure + a #GstStructure - a field in @structure + a field in @structure - The numerator of the target value of the fixation + The numerator of the target value of the fixation - The denominator of the target value of the fixation + The denominator of the target value of the fixation - Fixates a #GstStructure by changing the given field to the nearest + Fixates a #GstStructure by changing the given field to the nearest integer to @target that is a subset of the existing field. + - %TRUE if the structure could be fixated + %TRUE if the structure could be fixated - a #GstStructure + a #GstStructure - a field in @structure + a field in @structure - the target value of the fixation + the target value of the fixation - Fixates a #GstStructure by changing the given @field_name field to the given + Fixates a #GstStructure by changing the given @field_name field to the given @target string if that field is not fixed yet. + - %TRUE if the structure could be fixated + %TRUE if the structure could be fixated - a #GstStructure + a #GstStructure - a field in @structure + a field in @structure - the target value of the fixation + the target value of the fixation - Calls the provided function once for each field in the #GstStructure. The + Calls the provided function once for each field in the #GstStructure. The function must not modify the fields. Also see gst_structure_map_in_place() and gst_structure_filter_and_map_in_place(). + - %TRUE if the supplied function returns %TRUE For each of the fields, + %TRUE if the supplied function returns %TRUE For each of the fields, %FALSE otherwise. - a #GstStructure + a #GstStructure - a function to call for each field + a function to call for each field @@ -38054,26 +57186,35 @@ and gst_structure_filter_and_map_in_place(). transfer-ownership="none" nullable="1" allow-none="1"> - private data + private data - Frees a #GstStructure and all its fields and values. The structure must not + Frees a #GstStructure and all its fields and values. The structure must not have a parent when this function is called. + - the #GstStructure to free + the #GstStructure to free - Parses the variable arguments and reads fields from @structure accordingly. + Parses the variable arguments and reads fields from @structure accordingly. Variable arguments should be in the form field name, field type (as a GType), pointer(s) to a variable(s) to hold the return value(s). The last variable argument should be %NULL. @@ -38082,115 +57223,159 @@ For refcounted (mini)objects you will receive a new reference which you must release with a suitable _unref() when no longer needed. For strings and boxed types you will receive a copy which you will need to release with either g_free() or the suitable function for the boxed type. + - %FALSE if there was a problem reading any of the fields (e.g. + %FALSE if there was a problem reading any of the fields (e.g. because the field requested did not exist, or was of a type other than the type specified), otherwise %TRUE. - a #GstStructure + a #GstStructure - the name of the first field to read + the name of the first field to read - variable arguments + variable arguments - This is useful in language bindings where unknown #GValue types are not + This is useful in language bindings where unknown #GValue types are not supported. This function will convert the %GST_TYPE_ARRAY into a newly allocated #GValueArray and return it through @array. Be aware that this is slower then getting the #GValue directly. + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain a %GST_TYPE_ARRAY, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a #GValueArray + a pointer to a #GValueArray - Sets the boolean pointed to by @value corresponding to the value of the + Sets the boolean pointed to by @value corresponding to the value of the given field. Caller is responsible for making sure the field exists and has the correct type. + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain a boolean, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a #gboolean to set + a pointer to a #gboolean to set - Sets the clock time pointed to by @value corresponding to the clock time + Sets the clock time pointed to by @value corresponding to the clock time of the given field. Caller is responsible for making sure the field exists and has the correct type. + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain a #GstClockTime, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a #GstClockTime to set + a pointer to a #GstClockTime to set - Sets the date pointed to by @value corresponding to the date of the + Sets the date pointed to by @value corresponding to the date of the given field. Caller is responsible for making sure the field exists and has the correct type. @@ -38198,32 +57383,43 @@ On success @value will point to a newly-allocated copy of the date which should be freed with g_date_free() when no longer needed (note: this is inconsistent with e.g. gst_structure_get_string() which doesn't return a copy of the string). + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain a data, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a #GDate to set + a pointer to a #GDate to set - Sets the datetime pointed to by @value corresponding to the datetime of the + Sets the datetime pointed to by @value corresponding to the datetime of the given field. Caller is responsible for making sure the field exists and has the correct type. @@ -38231,106 +57427,148 @@ On success @value will point to a reference of the datetime which should be unreffed with gst_date_time_unref() when no longer needed (note: this is inconsistent with e.g. gst_structure_get_string() which doesn't return a copy of the string). + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain a data, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a #GstDateTime to set + a pointer to a #GstDateTime to set - Sets the double pointed to by @value corresponding to the value of the + Sets the double pointed to by @value corresponding to the value of the given field. Caller is responsible for making sure the field exists and has the correct type. + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain a double, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a gdouble to set + a pointer to a gdouble to set - Sets the int pointed to by @value corresponding to the value of the + Sets the int pointed to by @value corresponding to the value of the given field. Caller is responsible for making sure the field exists, has the correct type and that the enumtype is correct. + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain an enum of the given type, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - the enum type of a field + the enum type of a field - a pointer to an int to set + a pointer to an int to set - Finds the field with the given name, and returns the type of the + Finds the field with the given name, and returns the type of the value it contains. If the field is not found, G_TYPE_INVALID is returned. + - the #GValue of the field + the #GValue of the field - a #GstStructure + a #GstStructure - the name of the field + the name of the field @@ -38338,21 +57576,30 @@ returned. - Read the GstFlagSet flags and mask out of the structure into the + Read the GstFlagSet flags and mask out of the structure into the provided pointers. + - %TRUE if the values could be set correctly. If there was no field + %TRUE if the values could be set correctly. If there was no field with @fieldname or the existing field did not contain a GstFlagSet, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field transfer-ownership="full" optional="1" allow-none="1"> - a pointer to a guint for the flags field + a pointer to a guint for the flags field transfer-ownership="full" optional="1" allow-none="1"> - a pointer to a guint for the mask field + a pointer to a guint for the mask field - Sets the integers pointed to by @value_numerator and @value_denominator + Sets the integers pointed to by @value_numerator and @value_denominator corresponding to the value of the given field. Caller is responsible for making sure the field exists and has the correct type. + - %TRUE if the values could be set correctly. If there was no field + %TRUE if the values could be set correctly. If there was no field with @fieldname or the existing field did not contain a GstFraction, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to an int to set + a pointer to an int to set - a pointer to an int to set + a pointer to an int to set - Sets the int pointed to by @value corresponding to the value of the + Sets the int pointed to by @value corresponding to the value of the given field. Caller is responsible for making sure the field exists and has the correct type. + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain an int, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to an int to set + a pointer to an int to set @@ -38441,29 +57716,40 @@ returns %FALSE. - Sets the #gint64 pointed to by @value corresponding to the value of the + Sets the #gint64 pointed to by @value corresponding to the value of the given field. Caller is responsible for making sure the field exists and has the correct type. + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain a #gint64, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a #gint64 to set + a pointer to a #gint64 to set @@ -38471,107 +57757,152 @@ returns %FALSE. - This is useful in language bindings where unknown #GValue types are not + This is useful in language bindings where unknown #GValue types are not supported. This function will convert the %GST_TYPE_LIST into a newly allocated GValueArray and return it through @array. Be aware that this is slower then getting the #GValue directly. + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain a %GST_TYPE_LIST, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a #GValueArray + a pointer to a #GValueArray - Get the name of @structure as a string. + Get the name of @structure as a string. + - the name of the structure. + the name of the structure. - a #GstStructure + a #GstStructure - Get the name of @structure as a GQuark. + Get the name of @structure as a GQuark. + - the quark representing the name of the structure. + the quark representing the name of the structure. - a #GstStructure + a #GstStructure - Finds the field corresponding to @fieldname, and returns the string + Finds the field corresponding to @fieldname, and returns the string contained in the field's value. Caller is responsible for making sure the field exists and has the correct type. The string should not be modified, and remains valid until the next call to a gst_structure_*() function with the given structure. + - a pointer to the string or %NULL when the + a pointer to the string or %NULL when the field did not exist or did not contain a string. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - Sets the uint pointed to by @value corresponding to the value of the + Sets the uint pointed to by @value corresponding to the value of the given field. Caller is responsible for making sure the field exists and has the correct type. + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain a uint, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a uint to set + a pointer to a uint to set @@ -38579,29 +57910,40 @@ returns %FALSE. - Sets the #guint64 pointed to by @value corresponding to the value of the + Sets the #guint64 pointed to by @value corresponding to the value of the given field. Caller is responsible for making sure the field exists and has the correct type. + - %TRUE if the value could be set correctly. If there was no field + %TRUE if the value could be set correctly. If there was no field with @fieldname or the existing field did not contain a #guint64, this function returns %FALSE. - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a #guint64 to set + a pointer to a #guint64 to set @@ -38609,98 +57951,147 @@ returns %FALSE. - Parses the variable arguments and reads fields from @structure accordingly. + Parses the variable arguments and reads fields from @structure accordingly. valist-variant of gst_structure_get(). Look at the documentation of gst_structure_get() for more details. + - %TRUE, or %FALSE if there was a problem reading any of the fields + %TRUE, or %FALSE if there was a problem reading any of the fields - a #GstStructure + a #GstStructure - the name of the first field to read + the name of the first field to read - variable arguments + variable arguments - Get the value of the field with name @fieldname. + Get the value of the field with name @fieldname. + - the #GValue corresponding to the field with the given + the #GValue corresponding to the field with the given name. - a #GstStructure + a #GstStructure - the name of the field to get + the name of the field to get - Check if @structure contains a field named @fieldname. + Check if @structure contains a field named @fieldname. + - %TRUE if the structure contains a field with the given name + %TRUE if the structure contains a field with the given name - a #GstStructure + a #GstStructure - the name of a field + the name of a field - Check if @structure contains a field named @fieldname and with GType @type. + Check if @structure contains a field named @fieldname and with GType @type. + - %TRUE if the structure contains a field with the given name and type + %TRUE if the structure contains a field with the given name and type - a #GstStructure + a #GstStructure - the name of a field + the name of a field - the type of a value + the type of a value - Checks if the structure has the given name + Checks if the structure has the given name + - %TRUE if @name matches the name of the structure. + %TRUE if @name matches the name of the structure. - a #GstStructure + a #GstStructure - structure name to check for + structure name to check for @@ -38708,7 +58099,9 @@ name. - Parses the variable arguments and reads fields from @structure accordingly. + Parses the variable arguments and reads fields from @structure accordingly. Variable arguments should be in the form field id quark, field type (as a GType), pointer(s) to a variable(s) to hold the return value(s). The last variable argument should be %NULL (technically it should be a @@ -38723,23 +58116,32 @@ For refcounted (mini)objects you will receive a new reference which you must release with a suitable _unref() when no longer needed. For strings and boxed types you will receive a copy which you will need to release with either g_free() or the suitable function for the boxed type. + - %FALSE if there was a problem reading any of the fields (e.g. + %FALSE if there was a problem reading any of the fields (e.g. because the field requested did not exist, or was of a type other than the type specified), otherwise %TRUE. - a #GstStructure + a #GstStructure - the quark of the first field to read + the quark of the first field to read - variable arguments + variable arguments @@ -38747,81 +58149,121 @@ release with either g_free() or the suitable function for the boxed type. - Parses the variable arguments and reads fields from @structure accordingly. + Parses the variable arguments and reads fields from @structure accordingly. valist-variant of gst_structure_id_get(). Look at the documentation of gst_structure_id_get() for more details. + - %TRUE, or %FALSE if there was a problem reading any of the fields + %TRUE, or %FALSE if there was a problem reading any of the fields - a #GstStructure + a #GstStructure - the quark of the first field to read + the quark of the first field to read - variable arguments + variable arguments - Get the value of the field with GQuark @field. + Get the value of the field with GQuark @field. + - the #GValue corresponding to the field with the given + the #GValue corresponding to the field with the given name identifier. - a #GstStructure + a #GstStructure - the #GQuark of the field to get + the #GQuark of the field to get - Check if @structure contains a field named @field. + Check if @structure contains a field named @field. + - %TRUE if the structure contains a field with the given name + %TRUE if the structure contains a field with the given name - a #GstStructure + a #GstStructure - #GQuark of the field name + #GQuark of the field name - Check if @structure contains a field named @field and with GType @type. + Check if @structure contains a field named @field and with GType @type. + - %TRUE if the structure contains a field with the given name and type + %TRUE if the structure contains a field with the given name and type - a #GstStructure + a #GstStructure - #GQuark of the field name + #GQuark of the field name - the type of a value + the type of a value @@ -38829,25 +58271,34 @@ name identifier. - Identical to gst_structure_set, except that field names are + Identical to gst_structure_set, except that field names are passed using the GQuark for the field name. This allows more efficient setting of the structure if the caller already knows the associated quark values. The last variable argument must be %NULL. + - a #GstStructure + a #GstStructure - the GQuark for the name of the field to set + the GQuark for the name of the field to set - variable arguments + variable arguments @@ -38855,209 +58306,302 @@ The last variable argument must be %NULL. - va_list form of gst_structure_id_set(). + va_list form of gst_structure_id_set(). + - a #GstStructure + a #GstStructure - the name of the field to set + the name of the field to set - variable arguments + variable arguments - Sets the field with the given GQuark @field to @value. If the field + Sets the field with the given GQuark @field to @value. If the field does not exist, it is created. If the field exists, the previous value is replaced and freed. + - a #GstStructure + a #GstStructure - a #GQuark representing a field + a #GQuark representing a field - the new value of the field + the new value of the field - Sets the field with the given GQuark @field to @value. If the field + Sets the field with the given GQuark @field to @value. If the field does not exist, it is created. If the field exists, the previous value is replaced and freed. + - a #GstStructure + a #GstStructure - a #GQuark representing a field + a #GQuark representing a field - the new value of the field + the new value of the field - Intersects @struct1 and @struct2 and returns the intersection. + Intersects @struct1 and @struct2 and returns the intersection. + - Intersection of @struct1 and @struct2 + Intersection of @struct1 and @struct2 - a #GstStructure + a #GstStructure - a #GstStructure + a #GstStructure - Tests if the two #GstStructure are equal. + Tests if the two #GstStructure are equal. + - %TRUE if the two structures have the same name and field. + %TRUE if the two structures have the same name and field. - a #GstStructure. + a #GstStructure. - a #GstStructure. + a #GstStructure. - Checks if @subset is a subset of @superset, i.e. has the same + Checks if @subset is a subset of @superset, i.e. has the same structure name and for all fields that are existing in @superset, @subset has a value that is a subset of the value in @superset. + - %TRUE if @subset is a subset of @superset + %TRUE if @subset is a subset of @superset - a #GstStructure + a #GstStructure - a potentially greater #GstStructure + a potentially greater #GstStructure - Calls the provided function once for each field in the #GstStructure. In + Calls the provided function once for each field in the #GstStructure. In contrast to gst_structure_foreach(), the function may modify but not delete the fields. The structure must be mutable. + - %TRUE if the supplied function returns %TRUE For each of the fields, + %TRUE if the supplied function returns %TRUE For each of the fields, %FALSE otherwise. - a #GstStructure + a #GstStructure - a function to call for each field + a function to call for each field - private data + private data - Get the number of fields in the structure. + Get the number of fields in the structure. + - the number of fields in the structure + the number of fields in the structure - a #GstStructure + a #GstStructure - Get the name of the given field number, counting from 0 onwards. + Get the name of the given field number, counting from 0 onwards. + - the name of the given field number + the name of the given field number - a #GstStructure + a #GstStructure - the index to get the name of + the index to get the name of - Removes all fields in a GstStructure. + Removes all fields in a GstStructure. + - a #GstStructure + a #GstStructure - Removes the field with the given name. If the field with the given + Removes the field with the given name. If the field with the given name does not exist, the structure is unchanged. + - a #GstStructure + a #GstStructure - the name of the field to remove + the name of the field to remove @@ -39065,22 +58609,31 @@ name does not exist, the structure is unchanged. - Removes the fields with the given names. If a field does not exist, the + Removes the fields with the given names. If a field does not exist, the argument is ignored. + - a #GstStructure + a #GstStructure - the name of the field to remove + the name of the field to remove - %NULL-terminated list of more fieldnames to remove + %NULL-terminated list of more fieldnames to remove @@ -39088,44 +58641,62 @@ argument is ignored. - va_list form of gst_structure_remove_fields(). + va_list form of gst_structure_remove_fields(). + - a #GstStructure + a #GstStructure - the name of the field to remove + the name of the field to remove - %NULL-terminated list of more fieldnames to remove + %NULL-terminated list of more fieldnames to remove - Parses the variable arguments and sets fields accordingly. Fields that + Parses the variable arguments and sets fields accordingly. Fields that weren't already part of the structure are added as needed. Variable arguments should be in the form field name, field type (as a GType), value(s). The last variable argument should be %NULL. + - a #GstStructure + a #GstStructure - the name of the field to set + the name of the field to set - variable arguments + variable arguments @@ -39133,24 +58704,33 @@ Variable arguments should be in the form field name, field type - This is useful in language bindings where unknown GValue types are not + This is useful in language bindings where unknown GValue types are not supported. This function will convert a @array to %GST_TYPE_ARRAY and set the field specified by @fieldname. Be aware that this is slower then using %GST_TYPE_ARRAY in a #GValue directly. + - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a #GValueArray + a pointer to a #GValueArray @@ -39158,63 +58738,88 @@ the field specified by @fieldname. Be aware that this is slower then using - This is useful in language bindings where unknown GValue types are not + This is useful in language bindings where unknown GValue types are not supported. This function will convert a @array to %GST_TYPE_LIST and set the field specified by @fieldname. Be aware that this is slower then using %GST_TYPE_LIST in a #GValue directly. + - a #GstStructure + a #GstStructure - the name of a field + the name of a field - a pointer to a #GValueArray + a pointer to a #GValueArray - Sets the name of the structure to the given @name. The string + Sets the name of the structure to the given @name. The string provided is copied before being used. It must not be empty, start with a letter and can be followed by letters, numbers and any of "/-_.:". + - a #GstStructure + a #GstStructure - the new name of the structure + the new name of the structure - Sets the parent_refcount field of #GstStructure. This field is used to + Sets the parent_refcount field of #GstStructure. This field is used to determine whether a structure is mutable or not. This function should only be called by code implementing parent objects of #GstStructure, as described in the MT Refcounting section of the design documents. + - %TRUE if the parent refcount could be set. + %TRUE if the parent refcount could be set. - a #GstStructure + a #GstStructure - a pointer to the parent's refcount + a pointer to the parent's refcount @@ -39222,71 +58827,100 @@ the MT Refcounting section of the design documents. - va_list form of gst_structure_set(). + va_list form of gst_structure_set(). + - a #GstStructure + a #GstStructure - the name of the field to set + the name of the field to set - variable arguments + variable arguments - Sets the field with the given name @field to @value. If the field + Sets the field with the given name @field to @value. If the field does not exist, it is created. If the field exists, the previous value is replaced and freed. + - a #GstStructure + a #GstStructure - the name of the field to set + the name of the field to set - the new value of the field + the new value of the field - Sets the field with the given name @field to @value. If the field + Sets the field with the given name @field to @value. If the field does not exist, it is created. If the field exists, the previous value is replaced and freed. The function will take ownership of @value. + - a #GstStructure + a #GstStructure - the name of the field to set + the name of the field to set - the new value of the field + the new value of the field - Converts @structure to a human-readable string representation. + Converts @structure to a human-readable string representation. For debugging purposes its easier to do something like this: |[<!-- language="C" --> @@ -39298,33 +58932,45 @@ The current implementation of serialization will lead to unexpected results when there are nested #GstCaps / #GstStructure deeper than one level. Free-function: g_free + - a pointer to string allocated by g_malloc(). + a pointer to string allocated by g_malloc(). g_free() after usage. - a #GstStructure + a #GstStructure - Creates a #GstStructure from a string representation. + Creates a #GstStructure from a string representation. If end is not %NULL, a pointer to the place inside the given string where parsing ended will be returned. Free-function: gst_structure_free + - a new #GstStructure or %NULL + a new #GstStructure or %NULL when the string could not be parsed. Free with gst_structure_free() after use. - a string representation of a #GstStructure. + a string representation of a #GstStructure. optional="1" allow-none="1" skip="1"> - pointer to store the end of the string in. + pointer to store the end of the string in. @@ -39344,36 +58992,51 @@ Free-function: gst_structure_free glib:type-name="GstStructureChangeType" glib:get-type="gst_structure_change_type_get_type" c:type="GstStructureChangeType"> - The type of a %GST_MESSAGE_STRUCTURE_CHANGE. + The type of a %GST_MESSAGE_STRUCTURE_CHANGE. - Pad linking is starting or done. + Pad linking is starting or done. - Pad unlinking is starting or done. + Pad unlinking is starting or done. - A function that will be called in gst_structure_filter_and_map_in_place(). + A function that will be called in gst_structure_filter_and_map_in_place(). The function may modify @value, and the value will be removed from the structure if %FALSE is returned. + - %TRUE if the field should be preserved, %FALSE if it + %TRUE if the field should be preserved, %FALSE if it should be removed. - the #GQuark of the field name + the #GQuark of the field name - the #GValue of the field + the #GValue of the field nullable="1" allow-none="1" closure="2"> - user data + user data - A function that will be called in gst_structure_foreach(). The function may + A function that will be called in gst_structure_foreach(). The function may not modify @value. + - %TRUE if the foreach operation should continue, %FALSE if + %TRUE if the foreach operation should continue, %FALSE if the foreach operation should stop with %FALSE. - the #GQuark of the field name + the #GQuark of the field name - the #GValue of the field + the #GValue of the field nullable="1" allow-none="1" closure="2"> - user data + user data - A function that will be called in gst_structure_map_in_place(). The function + A function that will be called in gst_structure_map_in_place(). The function may modify @value. + - %TRUE if the map operation should continue, %FALSE if + %TRUE if the map operation should continue, %FALSE if the map operation should stop with %FALSE. - the #GQuark of the field name + the #GQuark of the field name - the #GValue of the field + the #GValue of the field nullable="1" allow-none="1" closure="2"> - user data + user data @@ -39447,7 +59134,9 @@ the map operation should stop with %FALSE. glib:type-name="GstSystemClock" glib:get-type="gst_system_clock_get_type" glib:type-struct="SystemClockClass"> - The GStreamer core provides a GstSystemClock based on the system time. + The GStreamer core provides a GstSystemClock based on the system time. Asynchronous callbacks are scheduled from an internal thread. Clock implementors are encouraged to subclass this systemclock as it @@ -39456,12 +59145,18 @@ implements the async notification. Subclasses can however override all of the important methods for sync and async notifications to implement their own callback methods or blocking wait operations. + - Get a handle to the default system clock. The refcount of the + Get a handle to the default system clock. The refcount of the clock will be increased so you need to unref the clock after usage. + - the default clock. + the default clock. MT safe. @@ -39470,7 +59165,9 @@ MT safe. - Sets the default system clock that can be obtained with + Sets the default system clock that can be obtained with gst_system_clock_obtain(). This is mostly used for testing and debugging purposes when you @@ -39478,6 +59175,7 @@ want to have control over the time reported by the default system clock. MT safe. + @@ -39486,7 +59184,9 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - a #GstClock + a #GstClock @@ -39501,7 +59201,7 @@ MT safe. - + @@ -39509,11 +59209,12 @@ MT safe. + - + @@ -39521,214 +59222,319 @@ MT safe. + - album containing this data (string) + album containing this data (string) The album name as it should be displayed, e.g. 'The Jazz Guitar' + - The artist of the entire album, as it should be displayed. + The artist of the entire album, as it should be displayed. + - The artist of the entire album, as it should be sorted. + The artist of the entire album, as it should be sorted. + - album gain in db (double) + album gain in db (double) + - peak of the album (double) + peak of the album (double) + - album containing this data, as used for sorting (string) + album containing this data, as used for sorting (string) The album name as it should be sorted, e.g. 'Jazz Guitar, The' + - count of discs inside collection this disc belongs to (unsigned integer) + count of discs inside collection this disc belongs to (unsigned integer) + - disc number inside a collection (unsigned integer) + disc number inside a collection (unsigned integer) + - Arbitrary application data (sample) + Arbitrary application data (sample) Some formats allow applications to add their own arbitrary data into files. This data is application dependent. + - Name of the application used to create the media (string) + Name of the application used to create the media (string) + - person(s) responsible for the recording (string) + person(s) responsible for the recording (string) The artist name as it should be displayed, e.g. 'Jimi Hendrix' or 'The Guitar Heroes' + - person(s) responsible for the recording, as used for sorting (string) + person(s) responsible for the recording, as used for sorting (string) The artist name as it should be sorted, e.g. 'Hendrix, Jimi' or 'Guitar Heroes, The' + - generic file attachment (sample) (sample taglist should specify the content + generic file attachment (sample) (sample taglist should specify the content type and if possible set "filename" to the file name of the attachment) + - codec the audio data is stored in (string) + codec the audio data is stored in (string) + - number of beats per minute in audio (double) + number of beats per minute in audio (double) + - exact or average bitrate in bits/s (unsigned integer) + exact or average bitrate in bits/s (unsigned integer) + - codec the data is stored in (string) + codec the data is stored in (string) + - free text commenting the data (string) + free text commenting the data (string) + - person(s) who composed the recording (string) + person(s) who composed the recording (string) + - The composer's name, used for sorting (string) + The composer's name, used for sorting (string) + - conductor/performer refinement (string) + conductor/performer refinement (string) + - contact information (string) + contact information (string) + - container format the data is stored in (string) + container format the data is stored in (string) + - copyright notice of the data (string) + copyright notice of the data (string) + - URI to location where copyright details can be found (string) + URI to location where copyright details can be found (string) + - date the data was created (#GDate structure) + date the data was created (#GDate structure) + - date and time the data was created (#GstDateTime structure) + date and time the data was created (#GstDateTime structure) + - short text describing the content of the data (string) + short text describing the content of the data (string) + - Manufacturer of the device used to create the media (string) + Manufacturer of the device used to create the media (string) + - Model of the device used to create the media (string) + Model of the device used to create the media (string) + - length in GStreamer time units (nanoseconds) (unsigned 64-bit integer) + length in GStreamer time units (nanoseconds) (unsigned 64-bit integer) + - name of the person or organisation that encoded the file. May contain a + name of the person or organisation that encoded the file. May contain a copyright message if the person or organisation also holds the copyright (string) Note: do not use this field to describe the encoding application. Use #GST_TAG_APPLICATION_NAME or #GST_TAG_COMMENT for that. + - encoder used to encode this stream (string) + encoder used to encode this stream (string) + - version of the encoder used to encode this stream (unsigned integer) + version of the encoder used to encode this stream (unsigned integer) + - key/value text commenting the data (string) + key/value text commenting the data (string) Must be in the form of 'key=comment' or 'key[lc]=comment' where 'lc' is an ISO-639 @@ -39736,118 +59542,175 @@ language code. This tag is used for unknown Vorbis comment tags, unknown APE tags and certain ID3v2 comment fields. + + + + + + + + - genre this data belongs to (string) + genre this data belongs to (string) + - Indicates the direction the device is pointing to when capturing + Indicates the direction the device is pointing to when capturing a media. It is represented as degrees in floating point representation, 0 means the geographic north, and increases clockwise (double from 0 to 360) See also #GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION + - The city (english name) where the media has been produced (string). + The city (english name) where the media has been produced (string). + - The country (english name) where the media has been produced (string). + The country (english name) where the media has been produced (string). + - geo elevation of where the media has been recorded or produced in meters + geo elevation of where the media has been recorded or produced in meters according to WGS84 (zero is average sea level) (double). + - Represents the expected error on the horizontal positioning in + Represents the expected error on the horizontal positioning in meters (double). + - geo latitude location of where the media has been recorded or produced in + geo latitude location of where the media has been recorded or produced in degrees according to WGS84 (zero at the equator, negative values for southern latitudes) (double). + - geo longitude location of where the media has been recorded or produced in + geo longitude location of where the media has been recorded or produced in degrees according to WGS84 (zero at the prime meridian in Greenwich/UK, negative values for western longitudes). (double). + - Indicates the movement direction of the device performing the capture + Indicates the movement direction of the device performing the capture of a media. It is represented as degrees in floating point representation, 0 means the geographic north, and increases clockwise (double from 0 to 360) See also #GST_TAG_GEO_LOCATION_CAPTURE_DIRECTION + - Speed of the capturing device when performing the capture. + Speed of the capturing device when performing the capture. Represented in m/s. (double) See also #GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION + - human readable descriptive location of where the media has been recorded or + human readable descriptive location of where the media has been recorded or produced. (string). + - A location 'smaller' than GST_TAG_GEO_LOCATION_CITY that specifies better + A location 'smaller' than GST_TAG_GEO_LOCATION_CITY that specifies better where the media has been produced. (e.g. the neighborhood) (string). This tag has been added as this is how it is handled/named in XMP's Iptc4xmpcore schema. + - Groups together media that are related and spans multiple tracks. An + Groups together media that are related and spans multiple tracks. An example are multiple pieces of a concerto. (string) + - Homepage for this media (i.e. artist or movie homepage) (string) + Homepage for this media (i.e. artist or movie homepage) (string) + - image (sample) (sample taglist should specify the content type and preferably + image (sample) (sample taglist should specify the content type and preferably also set "image-type" field as #GstTagImageType) + - Represents the 'Orientation' tag from EXIF. Defines how the image + Represents the 'Orientation' tag from EXIF. Defines how the image should be rotated and mirrored for display. (string) This tag has a predefined set of allowed values: @@ -39866,114 +59729,183 @@ yield the same result. Rotations indicated by the values are in clockwise direction and 'flip' means an horizontal mirroring. + - Information about the people behind a remix and similar + Information about the people behind a remix and similar interpretations of another existing piece (string) + - International Standard Recording Code - see http://www.ifpi.org/isrc/ (string) + International Standard Recording Code - see http://www.ifpi.org/isrc/ (string) + - comma separated keywords describing the content (string). + comma separated keywords describing the content (string). + - ISO-639-2 or ISO-639-1 code for the language the content is in (string) + ISO-639-2 or ISO-639-1 code for the language the content is in (string) There is utility API in libgsttag in gst-plugins-base to obtain a translated language name from the language code: gst_tag_get_language_name() + - Name of the language the content is in (string) + Name of the language the content is in (string) Free-form name of the language the content is in, if a language code is not available. This tag should not be set in addition to a language code. It is undefined what language or locale the language name is in. + - license of data (string) + license of data (string) + - URI to location where license details can be found (string) + URI to location where license details can be found (string) + + + + + + + + - Origin of media as a URI (location, where the original of the file or stream + Origin of media as a URI (location, where the original of the file or stream is hosted) (string) + - The lyrics of the media (string) + The lyrics of the media (string) + - maximum bitrate in bits/s (unsigned integer) + maximum bitrate in bits/s (unsigned integer) + - <ulink url="http://en.wikipedia.org/wiki/Note#Note_designation_in_accordance_with_octave_name">Midi note number</ulink> + <ulink url="http://en.wikipedia.org/wiki/Note#Note_designation_in_accordance_with_octave_name">Midi note number</ulink> of the audio track. This is useful for sample instruments and in particular for multi-samples. + - minimum bitrate in bits/s (unsigned integer) + minimum bitrate in bits/s (unsigned integer) + + + + + + + + - nominal bitrate in bits/s (unsigned integer). The actual bitrate might be + nominal bitrate in bits/s (unsigned integer). The actual bitrate might be different from this target bitrate. + - organization (string) + organization (string) + - person(s) performing (string) + person(s) performing (string) + - image that is meant for preview purposes, e.g. small icon-sized version + image that is meant for preview purposes, e.g. small icon-sized version (sample) (sample taglist should specify the content type) + - Any private data that may be contained in tags (sample). + Any private data that may be contained in tags (sample). It is represented by #GstSample in which #GstBuffer contains the binary data and the sample's info #GstStructure may contain any @@ -39983,116 +59915,454 @@ Private frames in ID3v2 tags ('PRIV' frames) will be represented using this tag, in which case the GstStructure will be named "ID3PrivateFrame" and contain a field named "owner" of type string which contains the owner-identification string from the tag. + - Name of the label or publisher (string) + Name of the label or publisher (string) + - reference level of track and album gain values (double) + reference level of track and album gain values (double) + - serial number of track (unsigned integer) + serial number of track (unsigned integer) + + + + + + + + + + + + + + + - Number of the episode within a season/show (unsigned integer) + Number of the episode within a season/show (unsigned integer) + - Name of the show, used for displaying (string) + Name of the show, used for displaying (string) + - Number of the season of a show/series (unsigned integer) + Number of the season of a show/series (unsigned integer) + - Name of the show, used for sorting (string) + Name of the show, used for sorting (string) + - codec/format the subtitle data is stored in (string) + codec/format the subtitle data is stored in (string) + - commonly used title (string) + commonly used title (string) The title as it should be displayed, e.g. 'The Doll House' + - commonly used title, as used for sorting (string) + commonly used title, as used for sorting (string) The title as it should be sorted, e.g. 'Doll House, The' + - count of tracks inside collection this track belongs to (unsigned integer) + count of tracks inside collection this track belongs to (unsigned integer) + - track gain in db (double) + track gain in db (double) + - track number inside a collection (unsigned integer) + track number inside a collection (unsigned integer) + - peak of the track (double) + peak of the track (double) + - Rating attributed by a person (likely the application user). + Rating attributed by a person (likely the application user). The higher the value, the more the user likes this media (unsigned int from 0 to 100) + - version of this data (string) + version of this data (string) + - codec the video data is stored in (string) + codec the video data is stored in (string) + + + + + + + + + + Send a broadcast signal to all waiting task conds + + + + Task to broadcast + + + + + + + + + + + + + + + + + + + + + + + + + + Get access to the cond of the task. + + + + Task to get the cond of + + + + + Get access to the task lock. + + + + Task to get the lock of + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Signal the task cond + + + + Task to signal + + + + + Get access to the state of the task. + + + + Task to get the state of + + + + + Wait for the task cond to be signalled + + + + Task to wait for + + + + + Convert a struct timespec (see man pselect) to a #GstClockTime. + + + + the timespec to convert + + + + + Convert a #GTimeVal to a #GstClockTime. + + + + the timeval to convert + + + + + Format @t for the #GST_TIME_FORMAT format string. Note: @t will be +evaluated more than once. + + + + a #GstClockTime + + + + + Convert a #GstClockTime to milliseconds (1/1000 of a second). + + + + the time + + + + + Convert a #GstClockTime to nanoseconds (1/1000000000 of a second). + + + + the time + + + + + Convert a #GstClockTime to seconds. + + + + the time + + + + + Convert a #GstClockTime to microseconds (1/1000000 of a second). + + + + the time + + + - A string that can be used in printf-like format strings to display a + A string that can be used in printf-like format strings to display a #GstClockTime value in h:m:s format. Use GST_TIME_ARGS() to construct the matching arguments. @@ -40100,65 +60370,313 @@ Example: |[<!-- language="C" --> printf("%" GST_TIME_FORMAT "\n", GST_TIME_ARGS(ts)); ]| + + + Convert a #GstClockTime to a struct timespec (see man pselect) + + + + The #GstClockTime to convert + + + The target timespec + + + + + Convert a #GstClockTime to a #GTimeVal + +> on 32-bit systems, a timeval has a range of only 2^32 - 1 seconds, +> which is about 68 years. Expect trouble if you want to schedule stuff +> in your pipeline for 2038. + + + + The #GstClockTime to convert + + + The target timeval + + + + + Checks if @entry_type indicates that its #GstTocEntry is an alternative. + + + + The #GstTocEntryType from a #GstTocEntry + + + + + Checks if @entry_type indicates that its #GstTocEntry is a sequence. + + + + The #GstTocEntryType from a #GstTocEntry + + + - Special value for the repeat_count set in gst_toc_entry_set_loop() or + Special value for the repeat_count set in gst_toc_entry_set_loop() or returned by gst_toc_entry_set_loop() to indicate infinite looping. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Extra tag flags used when registering tags. + Extra tag flags used when registering tags. - undefined flag + undefined flag - tag is meta data + tag is meta data - tag is encoded + tag is encoded - tag is decoded + tag is decoded - number of tag flags + number of tag flags - A function that will be called in gst_tag_list_foreach(). The function may + A function that will be called in gst_tag_list_foreach(). The function may not modify the tag list. + - the #GstTagList + the #GstTagList - a name of a tag in @list + a name of a tag in @list nullable="1" allow-none="1" closure="2"> - user data + user data @@ -40176,18 +60696,25 @@ not modify the tag list. glib:type-name="GstTagList" glib:get-type="gst_tag_list_get_type" c:symbol-prefix="tag_list"> - List of tags and values used to describe media metadata. + List of tags and values used to describe media metadata. Strings in structures must be ASCII or UTF-8 encoded. Other encodings are not allowed. Strings must not be empty or %NULL. + - the parent type + the parent type - Creates a new taglist and appends the values for the given tags. It expects + Creates a new taglist and appends the values for the given tags. It expects tag-value pairs like gst_tag_list_add(), and a %NULL terminator after the last pair. The type of the values is implicit and is documented in the API reference, but can also be queried at runtime with gst_tag_get_type(). It @@ -40200,42 +60727,61 @@ taglist to signal if the contained tags are global or stream tags. By default stream scope is assumes. See gst_tag_list_set_scope(). Free-function: gst_tag_list_unref + - a new #GstTagList. Free with gst_tag_list_unref() + a new #GstTagList. Free with gst_tag_list_unref() when no longer needed. - tag + tag - %NULL-terminated list of values to set + %NULL-terminated list of values to set - Creates a new empty GstTagList. + Creates a new empty GstTagList. Free-function: gst_tag_list_unref + - An empty tag list + An empty tag list - Deserializes a tag list. + Deserializes a tag list. + - a new #GstTagList, or %NULL in case of an + a new #GstTagList, or %NULL in case of an error. - a string created with gst_tag_list_to_string() + a string created with gst_tag_list_to_string() @@ -40243,42 +60789,60 @@ error. - Just like gst_tag_list_new(), only that it takes a va_list argument. + Just like gst_tag_list_new(), only that it takes a va_list argument. Useful mostly for language bindings. Free-function: gst_tag_list_unref + - a new #GstTagList. Free with gst_tag_list_unref() + a new #GstTagList. Free with gst_tag_list_unref() when no longer needed. - tag / value pairs to set + tag / value pairs to set - Sets the values for the given tags using the specified mode. + Sets the values for the given tags using the specified mode. + - list to set tags in + list to set tags in - the mode to use + the mode to use - tag + tag - %NULL-terminated list of values to set + %NULL-terminated list of values to set @@ -40286,25 +60850,36 @@ Free-function: gst_tag_list_unref - Sets the values for the given tags using the specified mode. + Sets the values for the given tags using the specified mode. + - list to set tags in + list to set tags in - the mode to use + the mode to use - tag + tag - tag / value pairs to set + tag / value pairs to set @@ -40312,49 +60887,71 @@ Free-function: gst_tag_list_unref - Sets the GValues for the given tags using the specified mode. + Sets the GValues for the given tags using the specified mode. + - list to set tags in + list to set tags in - the mode to use + the mode to use - tag + tag - tag / GValue pairs to set + tag / GValue pairs to set - Sets the GValue for a given tag using the specified mode. + Sets the GValue for a given tag using the specified mode. + - list to set tags in + list to set tags in - the mode to use + the mode to use - tag + tag - GValue for this tag + GValue for this tag @@ -40362,201 +60959,280 @@ Free-function: gst_tag_list_unref - Sets the GValues for the given tags using the specified mode. + Sets the GValues for the given tags using the specified mode. + - list to set tags in + list to set tags in - the mode to use + the mode to use - tag + tag - GValues to set + GValues to set - Calls the given function for each tag inside the tag list. Note that if there + Calls the given function for each tag inside the tag list. Note that if there is no tag, the function won't be called at all. + - list to iterate over + list to iterate over - function to be called for each tag + function to be called for each tag - user specified data + user specified data - Copies the contents for the given tag into the value, merging multiple values + Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - location for the result + location for the result - Gets the value that is at the given index for the given tag in the given + Gets the value that is at the given index for the given tag in the given list. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Copies the first date for the given tag in the taglist into the variable + Copies the first date for the given tag in the taglist into the variable pointed to by @value. Free the date with g_date_free() when it is no longer needed. Free-function: g_date_free + - %TRUE, if a date was copied, %FALSE if the tag didn't exist in the + %TRUE, if a date was copied, %FALSE if the tag didn't exist in the given list or if it was %NULL. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - address of a GDate pointer + address of a GDate pointer variable to store the result into - Gets the date that is at the given index for the given tag in the given + Gets the date that is at the given index for the given tag in the given list and copies it into the variable pointed to by @value. Free the date with g_date_free() when it is no longer needed. Free-function: g_date_free + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list or if it was %NULL. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Copies the first datetime for the given tag in the taglist into the variable + Copies the first datetime for the given tag in the taglist into the variable pointed to by @value. Unref the date with gst_date_time_unref() when it is no longer needed. Free-function: gst_date_time_unref + - %TRUE, if a datetime was copied, %FALSE if the tag didn't exist in + %TRUE, if a datetime was copied, %FALSE if the tag didn't exist in the given list or if it was %NULL. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - address of a #GstDateTime + address of a #GstDateTime pointer variable to store the result into @@ -40564,280 +61240,398 @@ Free-function: gst_date_time_unref - Gets the datetime that is at the given index for the given tag in the given + Gets the datetime that is at the given index for the given tag in the given list and copies it into the variable pointed to by @value. Unref the datetime with gst_date_time_unref() when it is no longer needed. Free-function: gst_date_time_unref + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list or if it was %NULL. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Copies the contents for the given tag into the value, merging multiple values + Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - location for the result + location for the result - Gets the value that is at the given index for the given tag in the given + Gets the value that is at the given index for the given tag in the given list. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Copies the contents for the given tag into the value, merging multiple values + Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - location for the result + location for the result - Gets the value that is at the given index for the given tag in the given + Gets the value that is at the given index for the given tag in the given list. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Copies the contents for the given tag into the value, merging multiple values + Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - location for the result + location for the result - Copies the contents for the given tag into the value, merging multiple values + Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - location for the result + location for the result - Gets the value that is at the given index for the given tag in the given + Gets the value that is at the given index for the given tag in the given list. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Gets the value that is at the given index for the given tag in the given + Gets the value that is at the given index for the given tag in the given list. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Copies the contents for the given tag into the value, merging multiple values + Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out caller-allocates="0" transfer-ownership="none" nullable="1"> - location for the result + location for the result - Gets the value that is at the given index for the given tag in the given + Gets the value that is at the given index for the given tag in the given list. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out caller-allocates="0" transfer-ownership="none" nullable="1"> - location for the result + location for the result - Copies the first sample for the given tag in the taglist into the variable + Copies the first sample for the given tag in the taglist into the variable pointed to by @sample. Free the sample with gst_sample_unref() when it is no longer needed. You can retrieve the buffer from the sample using gst_sample_get_buffer() and the associated caps (if any) with gst_sample_get_caps(). Free-function: gst_sample_unref + - %TRUE, if a sample was returned, %FALSE if the tag didn't exist in + %TRUE, if a sample was returned, %FALSE if the tag didn't exist in the given list or if it was %NULL. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - address of a GstSample + address of a GstSample pointer variable to store the result into @@ -40916,56 +61736,78 @@ Free-function: gst_sample_unref - Gets the sample that is at the given index for the given tag in the given + Gets the sample that is at the given index for the given tag in the given list and copies it into the variable pointed to by @sample. Free the sample with gst_sample_unref() when it is no longer needed. You can retrieve the buffer from the sample using gst_sample_get_buffer() and the associated caps (if any) with gst_sample_get_caps(). Free-function: gst_sample_unref + - %TRUE, if a sample was copied, %FALSE if the tag didn't exist in the + %TRUE, if a sample was copied, %FALSE if the tag didn't exist in the given list or if it was %NULL. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - address of a GstSample + address of a GstSample pointer variable to store the result into - Gets the scope of @list. + Gets the scope of @list. + - The scope of @list + The scope of @list - a #GstTagList + a #GstTagList - Copies the contents for the given tag into the value, possibly merging + Copies the contents for the given tag into the value, possibly merging multiple values into one if multiple values are associated with the tag. Use gst_tag_list_get_string_index (list, tag, 0, value) if you want @@ -40976,32 +61818,43 @@ freed by the caller using g_free when no longer needed. The returned string is also guaranteed to be non-%NULL and non-empty. Free-function: g_free + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - location for the result + location for the result - Gets the value that is at the given index for the given tag in the given + Gets the value that is at the given index for the given tag in the given list. The resulting string in @value will be in UTF-8 encoding and should be @@ -41009,245 +61862,354 @@ freed by the caller using g_free when no longer needed. The returned string is also guaranteed to be non-%NULL and non-empty. Free-function: g_free + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Checks how many value are stored in this tag list for the given tag. + Checks how many value are stored in this tag list for the given tag. + - The number of tags stored + The number of tags stored - a taglist + a taglist - the tag to query + the tag to query - Copies the contents for the given tag into the value, merging multiple values + Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - location for the result + location for the result - Copies the contents for the given tag into the value, merging multiple values + Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - location for the result + location for the result - Gets the value that is at the given index for the given tag in the given + Gets the value that is at the given index for the given tag in the given list. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Gets the value that is at the given index for the given tag in the given + Gets the value that is at the given index for the given tag in the given list. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Gets the value that is at the given index for the given tag in the given + Gets the value that is at the given index for the given tag in the given list. + - The GValue for the specified + The GValue for the specified entry or %NULL if the tag wasn't available or the tag doesn't have as many entries - a #GstTagList + a #GstTagList - tag to read out + tag to read out - number of entry to read out + number of entry to read out - Inserts the tags of the @from list into the first list using the given mode. + Inserts the tags of the @from list into the first list using the given mode. + - list to merge into + list to merge into - list to merge from + list to merge from - the mode to use + the mode to use - Checks if the given taglist is empty. + Checks if the given taglist is empty. + - %TRUE if the taglist is empty, otherwise %FALSE. + %TRUE if the taglist is empty, otherwise %FALSE. - A #GstTagList. + A #GstTagList. - Checks if the two given taglists are equal. + Checks if the two given taglists are equal. + - %TRUE if the taglists are equal, otherwise %FALSE + %TRUE if the taglists are equal, otherwise %FALSE - a #GstTagList. + a #GstTagList. - a #GstTagList. + a #GstTagList. - Merges the two given lists into a new list. If one of the lists is %NULL, a + Merges the two given lists into a new list. If one of the lists is %NULL, a copy of the other is returned. If both lists are %NULL, %NULL is returned. Free-function: gst_tag_list_unref + - the new list + the new list @@ -41255,142 +62217,203 @@ Free-function: gst_tag_list_unref transfer-ownership="none" nullable="1" allow-none="1"> - first list to merge + first list to merge - second list to merge + second list to merge - the mode to use + the mode to use - Get the number of tags in @list. + Get the number of tags in @list. + - The number of tags in @list. + The number of tags in @list. - A #GstTagList. + A #GstTagList. - Get the name of the tag in @list at @index. + Get the name of the tag in @list at @index. + - The name of the tag at @index. + The name of the tag at @index. - A #GstTagList. + A #GstTagList. - the index + the index - Peeks at the value that is at the given index for the given tag in the given + Peeks at the value that is at the given index for the given tag in the given list. The resulting string in @value will be in UTF-8 encoding and doesn't need to be freed by the caller. The returned string is also guaranteed to be non-%NULL and non-empty. + - %TRUE, if a value was set, %FALSE if the tag didn't exist in the + %TRUE, if a value was set, %FALSE if the tag didn't exist in the given list. - a #GstTagList to get the tag from + a #GstTagList to get the tag from - tag to read out + tag to read out - number of entry to read out + number of entry to read out - location for the result + location for the result - Removes the given tag from the taglist. + Removes the given tag from the taglist. + - list to remove tag from + list to remove tag from - tag to remove + tag to remove - Sets the scope of @list to @scope. By default the scope + Sets the scope of @list to @scope. By default the scope of a taglist is stream scope. + - a #GstTagList + a #GstTagList - new scope for @list + new scope for @list - Serializes a tag list to a string. + Serializes a tag list to a string. + - a newly-allocated string, or %NULL in case of + a newly-allocated string, or %NULL in case of an error. The string must be freed with g_free() when no longer needed. - a #GstTagList + a #GstTagList - Copies the contents for the given tag into the value, + Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. You must g_value_unset() the value after use. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. @@ -41399,33 +62422,46 @@ You must g_value_unset() the value after use. direction="out" caller-allocates="1" transfer-ownership="none"> - uninitialized #GValue to copy into + uninitialized #GValue to copy into - list to get the tag from + list to get the tag from - tag to read out + tag to read out - A function for merging multiple values of a tag used when registering + A function for merging multiple values of a tag used when registering tags. + - the destination #GValue + the destination #GValue - the source #GValue + the source #GValue @@ -41434,7 +62470,9 @@ tags. glib:type-name="GstTagMergeMode" glib:get-type="gst_tag_merge_mode_get_type" c:type="GstTagMergeMode"> - The different tag merging modes are basically replace, overwrite and append, + The different tag merging modes are basically replace, overwrite and append, but they can be seen from two directions. Given two taglists: (A) the tags already in the element and (B) the ones that are supplied to the element ( e.g. via gst_tag_setter_merge_tags() / gst_tag_setter_add_tags() or a @@ -41504,68 +62542,90 @@ In the table below this is shown for the cases that a tag exists in the list value="0" c:identifier="GST_TAG_MERGE_UNDEFINED" glib:nick="undefined"> - undefined merge mode + undefined merge mode - replace all tags (clear list and append) + replace all tags (clear list and append) - replace tags + replace tags - append tags + append tags - prepend tags + prepend tags - keep existing tags + keep existing tags - keep all existing tags + keep all existing tags - the number of merge modes + the number of merge modes - GstTagScope specifies if a taglist applies to the complete + GstTagScope specifies if a taglist applies to the complete medium or only to one single stream. - tags specific to this single stream + tags specific to this single stream - global tags for the complete medium + global tags for the complete medium glib:type-name="GstTagSetter" glib:get-type="gst_tag_setter_get_type" glib:type-struct="TagSetterInterface"> - Element interface that allows setting of media metadata. + Element interface that allows setting of media metadata. Elements that support changing a stream's metadata will implement this interface. Examples of such elements are 'vorbisenc', 'theoraenc' and @@ -41614,30 +62676,42 @@ result = gst_tag_list_merge (application_tags, event_tags, merge_mode); GST_LOG_OBJECT (tagsetter, "final tags: %" GST_PTR_FORMAT, result); ]| + - Adds the given tag / value pairs on the setter using the given merge mode. + Adds the given tag / value pairs on the setter using the given merge mode. The list must be terminated with %NULL. + - a #GstTagSetter + a #GstTagSetter - the mode to use + the mode to use - tag to set + tag to set - tag / value pairs to set + tag / value pairs to set @@ -41645,50 +62719,72 @@ The list must be terminated with %NULL. - Adds the given tag / GValue pairs on the setter using the given merge mode. + Adds the given tag / GValue pairs on the setter using the given merge mode. The list must be terminated with %NULL. + - a #GstTagSetter + a #GstTagSetter - the mode to use + the mode to use - tag to set + tag to set - tag / GValue pairs to set + tag / GValue pairs to set - Adds the given tag / GValue pair on the setter using the given merge mode. + Adds the given tag / GValue pair on the setter using the given merge mode. + - a #GstTagSetter + a #GstTagSetter - the mode to use + the mode to use - tag to set + tag to set - GValue to set for the tag + GValue to set for the tag @@ -41696,26 +62792,37 @@ The list must be terminated with %NULL. - Adds the given tag / GValue pairs on the setter using the given merge mode. + Adds the given tag / GValue pairs on the setter using the given merge mode. The list must be terminated with %NULL. + - a #GstTagSetter + a #GstTagSetter - the mode to use + the mode to use - tag to set + tag to set - more tag / GValue pairs to set + more tag / GValue pairs to set @@ -41723,110 +62830,156 @@ The list must be terminated with %NULL. - Adds the given tag / value pairs on the setter using the given merge mode. + Adds the given tag / value pairs on the setter using the given merge mode. The list must be terminated with %NULL. + - a #GstTagSetter + a #GstTagSetter - the mode to use + the mode to use - tag to set + tag to set - more tag / value pairs to set + more tag / value pairs to set - Returns the current list of tags the setter uses. The list should not be + Returns the current list of tags the setter uses. The list should not be modified or freed. This function is not thread-safe. + - a current snapshot of the + a current snapshot of the taglist used in the setter or %NULL if none is used. - a #GstTagSetter + a #GstTagSetter - Queries the mode by which tags inside the setter are overwritten by tags + Queries the mode by which tags inside the setter are overwritten by tags from events + - the merge mode used inside the element. + the merge mode used inside the element. - a #GstTagSetter + a #GstTagSetter - Merges the given list into the setter's list using the given mode. + Merges the given list into the setter's list using the given mode. + - a #GstTagSetter + a #GstTagSetter - a tag list to merge from + a tag list to merge from - the mode to merge with + the mode to merge with - Reset the internal taglist. Elements should call this from within the + Reset the internal taglist. Elements should call this from within the state-change handler. + - a #GstTagSetter + a #GstTagSetter - Sets the given merge mode that is used for adding tags from events to tags + Sets the given merge mode that is used for adding tags from events to tags specified by this interface. The default is #GST_TAG_MERGE_KEEP, which keeps the tags set with this interface and discards tags from events. + - a #GstTagSetter + a #GstTagSetter - The mode with which tags are added + The mode with which tags are added @@ -41835,9 +62988,14 @@ the tags set with this interface and discards tags from events. - #GstTagSetterInterface interface. + #GstTagSetterInterface interface. + - parent interface type. + parent interface type. @@ -41848,7 +63006,9 @@ the tags set with this interface and discards tags from events. glib:type-name="GstTask" glib:get-type="gst_task_get_type" glib:type-struct="TaskClass"> - #GstTask is used by #GstElement and #GstPad to provide the data passing + #GstTask is used by #GstElement and #GstPad to provide the data passing threads in a #GstPipeline. A #GstPad will typically start a #GstTask to push or pull data to/from the @@ -41887,8 +63047,11 @@ For debugging purposes, the task will configure its object name as the thread name on Linux. Please note that the object name should be configured before the task is started; changing the object name after the task has been started, has no effect on the thread name. + - Create a new Task that will repeatedly call the provided @func + Create a new Task that will repeatedly call the provided @func with @user_data as a parameter. Typically the task will run in a new thread. @@ -41901,8 +63064,11 @@ gst_task_pause() to create and start the GThread. Before the task can be used, a #GRecMutex must be configured using the gst_task_set_lock() function. This lock will always be acquired while @func is called. + - A new #GstTask. + A new #GstTask. MT safe. @@ -41913,65 +63079,90 @@ MT safe. scope="notified" closure="1" destroy="2"> - The #GstTaskFunction to use + The #GstTaskFunction to use - User data to pass to @func + User data to pass to @func - the function to call when @user_data is no longer needed. + the function to call when @user_data is no longer needed. - Wait for all tasks to be stopped. This is mainly used internally + Wait for all tasks to be stopped. This is mainly used internally to ensure proper cleanup of internal data structures in test suites. MT safe. + - Get the #GstTaskPool that this task will use for its streaming + Get the #GstTaskPool that this task will use for its streaming threads. MT safe. + - the #GstTaskPool used by @task. gst_object_unref() + the #GstTaskPool used by @task. gst_object_unref() after usage. - a #GstTask + a #GstTask - Get the current state of the task. + Get the current state of the task. + - The #GstTaskState of the task + The #GstTaskState of the task MT safe. - The #GstTask to query + The #GstTask to query - Joins @task. After this call, it is safe to unref the task + Joins @task. After this call, it is safe to unref the task and clean up the lock set with gst_task_set_lock(). The task will automatically be stopped with this call. @@ -41979,48 +63170,65 @@ The task will automatically be stopped with this call. This function cannot be called from within a task function as this would cause a deadlock. The function will detect this and print a g_warning. + - %TRUE if the task could be joined. + %TRUE if the task could be joined. MT safe. - The #GstTask to join + The #GstTask to join - Pauses @task. This method can also be called on a task in the + Pauses @task. This method can also be called on a task in the stopped state, in which case a thread will be started and will remain in the paused state. This function does not wait for the task to complete the paused state. + - %TRUE if the task could be paused. + %TRUE if the task could be paused. MT safe. - The #GstTask to pause + The #GstTask to pause - Call @enter_func when the task function of @task is entered. @user_data will + Call @enter_func when the task function of @task is entered. @user_data will be passed to @enter_func and @notify will be called when @user_data is no longer referenced. + - The #GstTask to use + The #GstTask to use scope="notified" closure="1" destroy="2"> - a #GstTaskThreadFunc + a #GstTaskThreadFunc - user data passed to @enter_func + user data passed to @enter_func - called when @user_data is no longer referenced + called when @user_data is no longer referenced - Call @leave_func when the task function of @task is left. @user_data will + Call @leave_func when the task function of @task is left. @user_data will be passed to @leave_func and @notify will be called when @user_data is no longer referenced. + - The #GstTask to use + The #GstTask to use scope="notified" closure="1" destroy="2"> - a #GstTaskThreadFunc + a #GstTaskThreadFunc - user data passed to @leave_func + user data passed to @leave_func - called when @user_data is no longer referenced + called when @user_data is no longer referenced - Set the mutex used by the task. The mutex will be acquired before + Set the mutex used by the task. The mutex will be acquired before calling the #GstTaskFunction. This function has to be called before calling gst_task_pause() or gst_task_start(). MT safe. + - The #GstTask to use + The #GstTask to use - The #GRecMutex to use + The #GRecMutex to use - Set @pool as the new GstTaskPool for @task. Any new streaming threads that + Set @pool as the new GstTaskPool for @task. Any new streaming threads that will be created by @task will now use @pool. MT safe. + - a #GstTask + a #GstTask - a #GstTaskPool + a #GstTaskPool - Sets the state of @task to @state. + Sets the state of @task to @state. The @task must have a lock associated with it using gst_task_set_lock() when going to GST_TASK_STARTED or GST_TASK_PAUSED or this function will return %FALSE. MT safe. + - %TRUE if the state could be changed. + %TRUE if the state could be changed. - a #GstTask + a #GstTask - the new task state + the new task state - Starts @task. The @task must have a lock associated with it using + Starts @task. The @task must have a lock associated with it using gst_task_set_lock() or this function will return %FALSE. + - %TRUE if the task could be started. + %TRUE if the task could be started. MT safe. - The #GstTask to start + The #GstTask to start - Stops @task. This method merely schedules the task to stop and + Stops @task. This method merely schedules the task to stop and will not wait for the task to have completely stopped. Use gst_task_join() to stop and wait for completion. + - %TRUE if the task could be stopped. + %TRUE if the task could be stopped. MT safe. - The #GstTask to stop + The #GstTask to stop @@ -42179,31 +63441,45 @@ MT safe. - the state of the task + the state of the task - used to pause/resume the task + used to pause/resume the task - The lock taken when iterating the task function + The lock taken when iterating the task function - the function executed by this task + the function executed by this task - user_data passed to the task function + user_data passed to the task function - GDestroyNotify for @user_data + GDestroyNotify for @user_data - a flag indicating that the task is running + a flag indicating that the task is running @@ -42213,7 +63489,7 @@ MT safe. - + @@ -42221,6 +63497,7 @@ MT safe. + @@ -42228,14 +63505,17 @@ MT safe. - + - A function that will repeatedly be called in the thread created by + A function that will repeatedly be called in the thread created by a #GstTask. + @@ -42245,7 +63525,9 @@ a #GstTask. nullable="1" allow-none="1" closure="0"> - user data passed to the function + user data passed to the function @@ -42257,85 +63539,119 @@ a #GstTask. glib:type-name="GstTaskPool" glib:get-type="gst_task_pool_get_type" glib:type-struct="TaskPoolClass"> - This object provides an abstraction for creating threads. The default + This object provides an abstraction for creating threads. The default implementation uses a regular GThreadPool to start tasks. Subclasses can be made to create custom threads. + - Create a new default task pool. The default task pool will use a regular + Create a new default task pool. The default task pool will use a regular GThreadPool for threads. + - a new #GstTaskPool. gst_object_unref() after usage. + a new #GstTaskPool. gst_object_unref() after usage. - Wait for all tasks to be stopped. This is mainly used internally + Wait for all tasks to be stopped. This is mainly used internally to ensure proper cleanup of internal data structures in test suites. MT safe. + - a #GstTaskPool + a #GstTaskPool - Join a task and/or return it to the pool. @id is the id obtained from + Join a task and/or return it to the pool. @id is the id obtained from gst_task_pool_push(). + - a #GstTaskPool + a #GstTaskPool - the id + the id - Prepare the taskpool for accepting gst_task_pool_push() operations. + Prepare the taskpool for accepting gst_task_pool_push() operations. MT safe. + - a #GstTaskPool + a #GstTaskPool - Start the execution of a new thread from @pool. + Start the execution of a new thread from @pool. + - a pointer that should be used + a pointer that should be used for the gst_task_pool_join function. This pointer can be %NULL, you must check @error to detect errors. - a #GstTaskPool + a #GstTaskPool - the function to call + the function to call nullable="1" allow-none="1" closure="1"> - data to pass to @func + data to pass to @func - Wait for all tasks to be stopped. This is mainly used internally + Wait for all tasks to be stopped. This is mainly used internally to ensure proper cleanup of internal data structures in test suites. MT safe. + - a #GstTaskPool + a #GstTaskPool - Join a task and/or return it to the pool. @id is the id obtained from + Join a task and/or return it to the pool. @id is the id obtained from gst_task_pool_push(). + - a #GstTaskPool + a #GstTaskPool - the id + the id - Prepare the taskpool for accepting gst_task_pool_push() operations. + Prepare the taskpool for accepting gst_task_pool_push() operations. MT safe. + - a #GstTaskPool + a #GstTaskPool - Start the execution of a new thread from @pool. + Start the execution of a new thread from @pool. + - a pointer that should be used + a pointer that should be used for the gst_task_pool_join function. This pointer can be %NULL, you must check @error to detect errors. - a #GstTaskPool + a #GstTaskPool - the function to call + the function to call - data to pass to @func + data to pass to @func @@ -42433,7 +63779,7 @@ must check @error to detect errors. - + @@ -42441,19 +63787,27 @@ must check @error to detect errors. - The #GstTaskPoolClass object. + The #GstTaskPoolClass object. + - the parent class structure + the parent class structure + - a #GstTaskPool + a #GstTaskPool @@ -42461,12 +63815,15 @@ must check @error to detect errors. + - a #GstTaskPool + a #GstTaskPool @@ -42474,22 +63831,29 @@ must check @error to detect errors. + - a pointer that should be used + a pointer that should be used for the gst_task_pool_join function. This pointer can be %NULL, you must check @error to detect errors. - a #GstTaskPool + a #GstTaskPool - the function to call + the function to call nullable="1" allow-none="1" closure="2"> - data to pass to @func + data to pass to @func @@ -42505,32 +63871,40 @@ must check @error to detect errors. + - a #GstTaskPool + a #GstTaskPool - the id + the id - + - Task function, see gst_task_pool_push(). + Task function, see gst_task_pool_push(). + @@ -42540,49 +63914,67 @@ must check @error to detect errors. nullable="1" allow-none="1" closure="0"> - user data for the task function + user data for the task function + - The different states a task can be in + The different states a task can be in - the task is started and running + the task is started and running - the task is stopped + the task is stopped - the task is paused + the task is paused - Custom GstTask thread callback functions that can be installed. + Custom GstTask thread callback functions that can be installed. + - The #GstTask + The #GstTask - The #GThread + The #GThread nullable="1" allow-none="1" closure="2"> - user data + user data - Structure for saving a timestamp and a value. + Structure for saving a timestamp and a value. + - timestamp of the value change + timestamp of the value change - the corresponding value + the corresponding value @@ -42611,7 +64012,9 @@ must check @error to detect errors. glib:type-name="GstToc" glib:get-type="gst_toc_get_type" c:symbol-prefix="toc"> - #GstToc functions are used to create/free #GstToc and #GstTocEntry structures. + #GstToc functions are used to create/free #GstToc and #GstTocEntry structures. Also they are used to convert #GstToc into #GstStructure and vice versa. #GstToc lets you to inform other elements in pipeline or application that playing @@ -42656,37 +64059,53 @@ alternative type entry) with track entries underneath that node; or even multiple top-level edition nodes (or some other alternative type entries) each with track entries underneath, in case the source file has extracted a track listing from different sources). + - Create a new #GstToc structure. + Create a new #GstToc structure. + - newly allocated #GstToc structure, free it + newly allocated #GstToc structure, free it with gst_toc_unref(). - scope of this TOC + scope of this TOC - Appends the #GstTocEntry @entry to @toc. + Appends the #GstTocEntry @entry to @toc. + - A #GstToc instance + A #GstToc instance - A #GstTocEntry + A #GstTocEntry + @@ -42697,101 +64116,145 @@ a track listing from different sources). - Find #GstTocEntry with given @uid in the @toc. + Find #GstTocEntry with given @uid in the @toc. + - #GstTocEntry with specified + #GstTocEntry with specified @uid from the @toc, or %NULL if not found. - #GstToc to search in. + #GstToc to search in. - UID to find #GstTocEntry with. + UID to find #GstTocEntry with. - Gets the list of #GstTocEntry of @toc. + Gets the list of #GstTocEntry of @toc. + - A #GList of #GstTocEntry for @entry + A #GList of #GstTocEntry for @entry - A #GstToc instance + A #GstToc instance + - scope of @toc + scope of @toc - a #GstToc instance + a #GstToc instance - Gets the tags for @toc. + Gets the tags for @toc. + - A #GstTagList for @entry + A #GstTagList for @entry - A #GstToc instance + A #GstToc instance - Merge @tags into the existing tags of @toc using @mode. + Merge @tags into the existing tags of @toc using @mode. + - A #GstToc instance + A #GstToc instance - A #GstTagList or %NULL + A #GstTagList or %NULL - A #GstTagMergeMode + A #GstTagMergeMode - Set a #GstTagList with tags for the complete @toc. + Set a #GstTagList with tags for the complete @toc. + - A #GstToc instance + A #GstToc instance - A #GstTagList or %NULL + A #GstTagList or %NULL @@ -42802,49 +64265,71 @@ a track listing from different sources). glib:type-name="GstTocEntry" glib:get-type="gst_toc_entry_get_type" c:symbol-prefix="toc_entry"> + - Create new #GstTocEntry structure. + Create new #GstTocEntry structure. + - newly allocated #GstTocEntry structure, free it with gst_toc_entry_unref(). + newly allocated #GstTocEntry structure, free it with gst_toc_entry_unref(). - entry type. + entry type. - unique ID (UID) in the whole TOC. + unique ID (UID) in the whole TOC. - Appends the #GstTocEntry @subentry to @entry. + Appends the #GstTocEntry @subentry to @entry. + - A #GstTocEntry instance + A #GstTocEntry instance - A #GstTocEntry + A #GstTocEntry + - @entry's entry type + @entry's entry type - a #GstTocEntry + a #GstTocEntry @@ -42852,18 +64337,25 @@ a track listing from different sources). - Get @loop_type and @repeat_count values from the @entry and write them into + Get @loop_type and @repeat_count values from the @entry and write them into appropriate storages. Loops are e.g. used by sampled instruments. GStreamer is not automatically applying the loop. The application can process this meta data and use it e.g. to send a seek-event to loop a section. + - %TRUE if all non-%NULL storage pointers were filled with appropriate + %TRUE if all non-%NULL storage pointers were filled with appropriate values, %FALSE otherwise. - #GstTocEntry to get values from. + #GstTocEntry to get values from. transfer-ownership="full" optional="1" allow-none="1"> - the storage for the loop_type + the storage for the loop_type value, leave %NULL if not need. @@ -42882,37 +64376,53 @@ values, %FALSE otherwise. transfer-ownership="full" optional="1" allow-none="1"> - the storage for the repeat_count + the storage for the repeat_count value, leave %NULL if not need. - Gets the parent #GstTocEntry of @entry. + Gets the parent #GstTocEntry of @entry. + - The parent #GstTocEntry of @entry + The parent #GstTocEntry of @entry - A #GstTocEntry instance + A #GstTocEntry instance - Get @start and @stop values from the @entry and write them into appropriate + Get @start and @stop values from the @entry and write them into appropriate storages. + - %TRUE if all non-%NULL storage pointers were filled with appropriate + %TRUE if all non-%NULL storage pointers were filled with appropriate values, %FALSE otherwise. - #GstTocEntry to get values from. + #GstTocEntry to get values from. transfer-ownership="full" optional="1" allow-none="1"> - the storage for the start value, leave + the storage for the start value, leave %NULL if not need. @@ -42931,7 +64443,9 @@ values, %FALSE otherwise. transfer-ownership="full" optional="1" allow-none="1"> - the storage for the stop value, leave + the storage for the stop value, leave %NULL if not need. @@ -42939,103 +64453,150 @@ values, %FALSE otherwise. - Gets the sub-entries of @entry. + Gets the sub-entries of @entry. + - A #GList of #GstTocEntry of @entry + A #GList of #GstTocEntry of @entry - A #GstTocEntry instance + A #GstTocEntry instance - Gets the tags for @entry. + Gets the tags for @entry. + - A #GstTagList for @entry + A #GstTagList for @entry - A #GstTocEntry instance + A #GstTocEntry instance - Gets the parent #GstToc of @entry. + Gets the parent #GstToc of @entry. + - The parent #GstToc of @entry + The parent #GstToc of @entry - A #GstTocEntry instance + A #GstTocEntry instance - Gets the UID of @entry. + Gets the UID of @entry. + - The UID of @entry + The UID of @entry - A #GstTocEntry instance + A #GstTocEntry instance + - %TRUE if @entry's type is an alternative type, otherwise %FALSE + %TRUE if @entry's type is an alternative type, otherwise %FALSE - a #GstTocEntry + a #GstTocEntry + - %TRUE if @entry's type is a sequence type, otherwise %FALSE + %TRUE if @entry's type is a sequence type, otherwise %FALSE - a #GstTocEntry + a #GstTocEntry - Merge @tags into the existing tags of @entry using @mode. + Merge @tags into the existing tags of @entry using @mode. + - A #GstTocEntry instance + A #GstTocEntry instance - A #GstTagList or %NULL + A #GstTagList or %NULL - A #GstTagMergeMode + A #GstTagMergeMode @@ -43043,61 +64604,86 @@ values, %FALSE otherwise. - Set @loop_type and @repeat_count values for the @entry. + Set @loop_type and @repeat_count values for the @entry. + - #GstTocEntry to set values. + #GstTocEntry to set values. - loop_type value to set. + loop_type value to set. - repeat_count value to set. + repeat_count value to set. - Set @start and @stop values for the @entry. + Set @start and @stop values for the @entry. + - #GstTocEntry to set values. + #GstTocEntry to set values. - start value to set. + start value to set. - stop value to set. + stop value to set. - Set a #GstTagList with tags for the complete @entry. + Set a #GstTagList with tags for the complete @entry. + - A #GstTocEntry instance + A #GstTocEntry instance - A #GstTagList or %NULL + A #GstTagList or %NULL @@ -43107,62 +64693,85 @@ values, %FALSE otherwise. glib:type-name="GstTocEntryType" glib:get-type="gst_toc_entry_type_get_type" c:type="GstTocEntryType"> - The different types of TOC entries (see #GstTocEntry). + The different types of TOC entries (see #GstTocEntry). There are two types of TOC entries: alternatives or parts in a sequence. - entry is an angle (i.e. an alternative) + entry is an angle (i.e. an alternative) - entry is a version (i.e. alternative) + entry is a version (i.e. alternative) - entry is an edition (i.e. alternative) + entry is an edition (i.e. alternative) - invalid entry type value + invalid entry type value - entry is a title (i.e. a part of a sequence) + entry is a title (i.e. a part of a sequence) - entry is a track (i.e. a part of a sequence) + entry is a track (i.e. a part of a sequence) - entry is a chapter (i.e. a part of a sequence) + entry is a chapter (i.e. a part of a sequence) - Converts @type to a string representation. + Converts @type to a string representation. + - Returns a human-readable string for @type. This string is + Returns a human-readable string for @type. This string is only for debugging purpose and should not be displayed in a user interface. - a #GstTocEntryType. + a #GstTocEntryType. @@ -43173,50 +64782,66 @@ There are two types of TOC entries: alternatives or parts in a sequence. glib:type-name="GstTocLoopType" glib:get-type="gst_toc_loop_type_get_type" c:type="GstTocLoopType"> - How a #GstTocEntry should be repeated. By default, entries are played a + How a #GstTocEntry should be repeated. By default, entries are played a single time. - single forward playback + single forward playback - repeat forward + repeat forward - repeat backward + repeat backward - repeat forward and backward + repeat forward and backward - The scope of a TOC. + The scope of a TOC. - global TOC representing all selectable options + global TOC representing all selectable options (this is what applications are usually interested in) - TOC for the currently active/selected stream + TOC for the currently active/selected stream (this is a TOC representing the current stream from start to EOS, and is what a TOC writer / muxer is usually interested in; it will usually be a subset of the global TOC, e.g. just the chapters of @@ -43230,7 +64855,9 @@ single time. glib:type-name="GstTocSetter" glib:get-type="gst_toc_setter_get_type" glib:type-struct="TocSetterInterface"> - Element interface that allows setting of the TOC. + Element interface that allows setting of the TOC. Elements that support some kind of chapters or editions (or tracks like in the FLAC cue sheet) will implement this interface. @@ -43244,51 +64871,71 @@ and set TOC using gst_toc_setter_set_toc(). Elements implementing the #GstTocSetter interface can extend existing TOC by getting extend UID for that (you can use gst_toc_find_entry() to retrieve it) with any TOC entries received from downstream. + - Return current TOC the setter uses. The TOC should not be + Return current TOC the setter uses. The TOC should not be modified without making it writable first. + - TOC set, or %NULL. Unref with + TOC set, or %NULL. Unref with gst_toc_unref() when no longer needed - a #GstTocSetter. + a #GstTocSetter. - Reset the internal TOC. Elements should call this from within the + Reset the internal TOC. Elements should call this from within the state-change handler. + - a #GstTocSetter. + a #GstTocSetter. - Set the given TOC on the setter. Previously set TOC will be + Set the given TOC on the setter. Previously set TOC will be unreffed before setting a new one. + - a #GstTocSetter. + a #GstTocSetter. - a #GstToc to set. + a #GstToc to set. @@ -43297,24 +64944,33 @@ unreffed before setting a new one. - #GstTocSetterInterface interface. + #GstTocSetterInterface interface. + - parent interface type. + parent interface type. - Tracing modules will subclass #GstTracer and register through + Tracing modules will subclass #GstTracer and register through gst_tracer_register(). Modules can attach to various hook-types - see gst_tracing_register_hook(). When invoked they receive hook specific contextual data, which they must not modify. + - + @@ -43336,11 +64992,12 @@ contextual data, which they must not modify. + - + @@ -43353,19 +65010,27 @@ contextual data, which they must not modify. glib:type-name="GstTracerFactory" glib:get-type="gst_tracer_factory_get_type" glib:type-struct="TracerFactoryClass"> - Use gst_tracer_factory_get_list() to get a list of tracer factories known to + Use gst_tracer_factory_get_list() to get a list of tracer factories known to GStreamer. + - Gets the list of all registered tracer factories. You must free the + Gets the list of all registered tracer factories. You must free the list using gst_plugin_feature_list_free(). The returned factories are sorted by factory name. Free-function: gst_plugin_feature_list_free + - the list of all + the list of all registered #GstTracerFactory. @@ -43374,17 +65039,24 @@ Free-function: gst_plugin_feature_list_free - Get the #GType for elements managed by this factory. The type can + Get the #GType for elements managed by this factory. The type can only be retrieved if the element factory is loaded, which can be assured with gst_plugin_feature_load(). + - the #GType for tracers managed by this factory or 0 if + the #GType for tracers managed by this factory or 0 if the factory is not loaded. - factory to get managed #GType from + factory to get managed #GType from @@ -43394,41 +65066,54 @@ the factory is not loaded. c:type="GstTracerFactoryClass" disguised="1" glib:is-gtype-struct-for="TracerFactory"> + + - Tracing modules will create instances of this class to announce the data they + Tracing modules will create instances of this class to announce the data they will log and create a log formatter. + + - Flag that describe the value. These flags help applications processing the + Flag that describe the value. These flags help applications processing the logs to understand the values. - no flags + no flags - the value is optional. When using this flag + the value is optional. When using this flag one need to have an additional boolean arg before this value in the var-args list passed to gst_tracer_record_log(). @@ -43436,7 +65121,9 @@ logs to understand the values. value="2" c:identifier="GST_TRACER_VALUE_FLAGS_AGGREGATED" glib:nick="aggregated"> - the value is a combined figure, since the + the value is a combined figure, since the start of tracing. Examples are averages or timestamps. @@ -43445,7 +65132,9 @@ logs to understand the values. glib:type-name="GstTracerValueScope" glib:get-type="gst_tracer_value_scope_get_type" c:type="GstTracerValueScope"> - Tracing record will contain fields that contain a measured value or extra + Tracing record will contain fields that contain a measured value or extra meta-data. One such meta data are values that tell where a measurement was taken. This enumerating declares to which scope such a meta data field relates to. If it is e.g. %GST_TRACER_VALUE_SCOPE_PAD, then each of the log @@ -43454,32 +65143,44 @@ events may contain values for different #GstPads. value="0" c:identifier="GST_TRACER_VALUE_SCOPE_PROCESS" glib:nick="process"> - the value is related to the process + the value is related to the process - the value is related to a thread + the value is related to a thread - the value is related to an #GstElement + the value is related to an #GstElement - the value is related to a #GstPad + the value is related to a #GstPad - The following functions allow you to detect the media type of an unknown + The following functions allow you to detect the media type of an unknown stream. + + @@ -43498,6 +65199,7 @@ stream. + @@ -43515,11 +65217,14 @@ stream. - The data used by the caller of the typefinding function. + The data used by the caller of the typefinding function. + @@ -43531,31 +65236,43 @@ stream. - + - Get the length of the data stream. + Get the length of the data stream. + - The length of the data stream, or 0 if it is not available. + The length of the data stream, or 0 if it is not available. - The #GstTypeFind the function was called with + The #GstTypeFind the function was called with - Returns the @size bytes of the stream to identify beginning at offset. If + Returns the @size bytes of the stream to identify beginning at offset. If offset is a positive number, the offset is relative to the beginning of the stream, if offset is a negative number the offset is relative to the end of the stream. The returned memory is valid until the typefinding function returns and must not be freed. + - the + the requested data, or %NULL if that data is not available. @@ -43563,41 +65280,56 @@ returns and must not be freed. - The #GstTypeFind object the function was called with + The #GstTypeFind object the function was called with - The offset + The offset - The number of bytes to return + The number of bytes to return - If a #GstTypeFindFunction calls this function it suggests the caps with the + If a #GstTypeFindFunction calls this function it suggests the caps with the given probability. A #GstTypeFindFunction may supply different suggestions in one call. It is up to the caller of the #GstTypeFindFunction to interpret these values. + - The #GstTypeFind object the function was called with + The #GstTypeFind object the function was called with - The probability in percent that the suggestion is right + The probability in percent that the suggestion is right - The fixed #GstCaps to suggest + The fixed #GstCaps to suggest @@ -43605,7 +65337,9 @@ It is up to the caller of the #GstTypeFindFunction to interpret these values. - If a #GstTypeFindFunction calls this function it suggests the caps with the + If a #GstTypeFindFunction calls this function it suggests the caps with the given probability. A #GstTypeFindFunction may supply different suggestions in one call. It is up to the caller of the #GstTypeFindFunction to interpret these values. @@ -43618,31 +65352,42 @@ Make sure you terminate the list of arguments with a %NULL argument and that the values passed have the correct type (in terms of width in bytes when passed to the vararg function - this applies particularly to gdouble and guint64 arguments). + - The #GstTypeFind object the function was called with + The #GstTypeFind object the function was called with - The probability in percent that the suggestion is right + The probability in percent that the suggestion is right - the media type of the suggested caps + the media type of the suggested caps - first field of the suggested caps, or %NULL + first field of the suggested caps, or %NULL - additional arguments to the suggested caps in the same format as the + additional arguments to the suggested caps in the same format as the arguments passed to gst_structure_new() (ie. triplets of field name, field GType and field value) @@ -43650,11 +65395,16 @@ guint64 arguments). - Registers a new typefind function to be used for typefinding. After + Registers a new typefind function to be used for typefinding. After registering this function will be available for typefinding. This function is typically called during an element's plugin initialization. + - %TRUE on success, %FALSE otherwise + %TRUE on success, %FALSE otherwise @@ -43662,15 +65412,21 @@ This function is typically called during an element's plugin initialization. - A #GstPlugin, or %NULL for a static typefind function + A #GstPlugin, or %NULL for a static typefind function - The name for registering + The name for registering - The rank (or importance) of this typefind function + The rank (or importance) of this typefind function - The #GstTypeFindFunction to use + The #GstTypeFindFunction to use - Optional comma-separated list of extensions + Optional comma-separated list of extensions that could belong to this type - Optionally the caps that could be returned when typefinding + Optionally the caps that could be returned when typefinding succeeds @@ -43698,14 +65460,18 @@ This function is typically called during an element's plugin initialization. - Optional user data. This user data must be available until the plugin + Optional user data. This user data must be available until the plugin is unloaded. - a #GDestroyNotify that will be called on @data when the plugin + a #GDestroyNotify that will be called on @data when the plugin is unloaded. @@ -43719,7 +65485,9 @@ This function is typically called during an element's plugin initialization. - These functions allow querying information about registered typefind + These functions allow querying information about registered typefind functions. How to create and register these functions is described in the section <link linkend="gstreamer-Writing-typefind-functions"> "Writing typefind functions"</link>. @@ -43768,16 +65536,22 @@ that though. return find.caps; }; ]| + - Gets the list of all registered typefind factories. You must free the + Gets the list of all registered typefind factories. You must free the list using gst_plugin_feature_list_free(). The returned factories are sorted by highest rank first, and then by factory name. Free-function: gst_plugin_feature_list_free + - the list of all + the list of all registered #GstTypeFindFactory. @@ -43786,43 +65560,62 @@ Free-function: gst_plugin_feature_list_free - Calls the #GstTypeFindFunction associated with this factory. + Calls the #GstTypeFindFunction associated with this factory. + - A #GstTypeFindFactory + A #GstTypeFindFactory - a properly setup #GstTypeFind entry. The get_data + a properly setup #GstTypeFind entry. The get_data and suggest_type members must be set. - Gets the #GstCaps associated with a typefind factory. + Gets the #GstCaps associated with a typefind factory. + - the #GstCaps associated with this factory + the #GstCaps associated with this factory - A #GstTypeFindFactory + A #GstTypeFindFactory - Gets the extensions associated with a #GstTypeFindFactory. The returned + Gets the extensions associated with a #GstTypeFindFactory. The returned array should not be changed. If you need to change stuff in it, you should copy it using g_strdupv(). This function may return %NULL to indicate a 0-length list. + - + a %NULL-terminated array of extensions associated with this factory @@ -43830,23 +65623,32 @@ a 0-length list. - A #GstTypeFindFactory + A #GstTypeFindFactory - Check whether the factory has a typefind function. Typefind factories + Check whether the factory has a typefind function. Typefind factories without typefind functions are a last-effort fallback mechanism to e.g. assume a certain media type based on the file extension. + - %TRUE if the factory has a typefind functions set, otherwise %FALSE + %TRUE if the factory has a typefind functions set, otherwise %FALSE - A #GstTypeFindFactory + A #GstTypeFindFactory @@ -43856,15 +65658,21 @@ e.g. assume a certain media type based on the file extension. c:type="GstTypeFindFactoryClass" disguised="1" glib:is-gtype-struct-for="TypeFindFactory"> + - A function that will be called by typefinding. + A function that will be called by typefinding. + - A #GstTypeFind structure + A #GstTypeFind structure nullable="1" allow-none="1" closure="1"> - optional data to pass to the function + optional data to pass to the function @@ -43881,75 +65691,106 @@ e.g. assume a certain media type based on the file extension. glib:type-name="GstTypeFindProbability" glib:get-type="gst_type_find_probability_get_type" c:type="GstTypeFindProbability"> - The probability of the typefind function. Higher values have more certainty + The probability of the typefind function. Higher values have more certainty in doing a reliable typefind. - type undetected. + type undetected. - unlikely typefind. + unlikely typefind. - possible type detected. + possible type detected. - likely a type was detected. + likely a type was detected. - nearly certain that a type was detected. + nearly certain that a type was detected. - very certain a type was detected. + very certain a type was detected. + + + + + + + - Different URI-related errors that can occur. + Different URI-related errors that can occur. - The protocol is not supported + The protocol is not supported - There was a problem with the URI + There was a problem with the URI - Could not set or change the URI because the + Could not set or change the URI because the URI handler was in a state where that is not possible or not permitted - There was a problem with the entity that + There was a problem with the entity that the URI references @@ -43964,7 +65805,9 @@ in doing a reliable typefind. glib:type-name="GstURIHandler" glib:get-type="gst_uri_handler_get_type" glib:type-struct="URIHandlerInterface"> - The #GstURIHandler is an interface that is implemented by Source and Sink + The #GstURIHandler is an interface that is implemented by Source and Sink #GstElement to unify handling of URI. An application can use the following functions to quickly get an element @@ -43972,10 +65815,16 @@ that handles the given URI for reading or writing (gst_element_make_from_uri()). Source and Sink plugins should implement this interface when possible. + - Gets the currently handled URI. + Gets the currently handled URI. + - the URI currently handled by + the URI currently handled by the @handler. Returns %NULL if there are no URI currently handled. The returned string must be freed with g_free() when no longer needed. @@ -43983,34 +65832,50 @@ Source and Sink plugins should implement this interface when possible. - A #GstURIHandler + A #GstURIHandler - Tries to set the URI of the given handler. + Tries to set the URI of the given handler. + - %TRUE if the URI was set successfully, else %FALSE. + %TRUE if the URI was set successfully, else %FALSE. - A #GstURIHandler + A #GstURIHandler - URI to set + URI to set - Gets the list of protocols supported by @handler. This list may not be + Gets the list of protocols supported by @handler. This list may not be modified. + - the + the supported protocols. Returns %NULL if the @handler isn't implemented properly, or the @handler doesn't support any protocols. @@ -44020,15 +65885,22 @@ modified. - A #GstURIHandler. + A #GstURIHandler. - Gets the currently handled URI. + Gets the currently handled URI. + - the URI currently handled by + the URI currently handled by the @handler. Returns %NULL if there are no URI currently handled. The returned string must be freed with g_free() when no longer needed. @@ -44036,38 +65908,56 @@ modified. - A #GstURIHandler + A #GstURIHandler - Gets the type of the given URI handler + Gets the type of the given URI handler + - the #GstURIType of the URI handler. + the #GstURIType of the URI handler. Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly. - A #GstURIHandler. + A #GstURIHandler. - Tries to set the URI of the given handler. + Tries to set the URI of the given handler. + - %TRUE if the URI was set successfully, else %FALSE. + %TRUE if the URI was set successfully, else %FALSE. - A #GstURIHandler + A #GstURIHandler - URI to set + URI to set @@ -44076,13 +65966,19 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly. - Any #GstElement using this interface should implement these methods. + Any #GstElement using this interface should implement these methods. + - The parent interface type + The parent interface type + @@ -44095,6 +65991,7 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly. + @@ -44109,8 +66006,11 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly. + - the URI currently handled by + the URI currently handled by the @handler. Returns %NULL if there are no URI currently handled. The returned string must be freed with g_free() when no longer needed. @@ -44118,7 +66018,9 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly. - A #GstURIHandler + A #GstURIHandler @@ -44126,17 +66028,24 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly. + - %TRUE if the URI was set successfully, else %FALSE. + %TRUE if the URI was set successfully, else %FALSE. - A #GstURIHandler + A #GstURIHandler - URI to set + URI to set @@ -44147,29 +66056,94 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly. glib:type-name="GstURIType" glib:get-type="gst_uri_type_get_type" c:type="GstURIType"> - The different types of URI direction. + The different types of URI direction. - The URI direction is unknown + The URI direction is unknown - The URI is a consumer. + The URI is a consumer. - The URI is a producer. + The URI is a producer. + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Value for #GstUri<!-- -->.port to indicate no port number. + Value for #GstUri<!-- -->.port to indicate no port number. + + + Tests if the type direction is valid. + + + + A #GstURIType + + + - Constant that defines one GStreamer microsecond. + Constant that defines one GStreamer microsecond. + glib:type-name="GstUri" glib:get-type="gst_uri_get_type" c:symbol-prefix="uri"> - A #GstUri object can be used to parse and split a URI string into its + A #GstUri object can be used to parse and split a URI string into its constituent parts. Two #GstUri objects can be joined to make a new #GstUri using the algorithm described in RFC3986. + - Creates a new #GstUri object with the given URI parts. The path and query + Creates a new #GstUri object with the given URI parts. The path and query strings will be broken down into their elements. All strings should not be escaped except where indicated. + - A new #GstUri object. + A new #GstUri object. @@ -44193,32 +66175,42 @@ escaped except where indicated. transfer-ownership="none" nullable="1" allow-none="1"> - The scheme for the new URI. + The scheme for the new URI. - The user-info for the new URI. + The user-info for the new URI. - The host name for the new URI. + The host name for the new URI. - The port number for the new URI or %GST_URI_NO_PORT. + The port number for the new URI or %GST_URI_NO_PORT. - The path for the new URI with '/' separating path + The path for the new URI with '/' separating path elements. @@ -44226,7 +66218,9 @@ escaped except where indicated. transfer-ownership="none" nullable="1" allow-none="1"> - The query string for the new URI with '&' separating + The query string for the new URI with '&' separating query elements. Elements containing '&' characters should encode them as "&percnt;26". @@ -44235,7 +66229,9 @@ escaped except where indicated. transfer-ownership="none" nullable="1" allow-none="1"> - The fragment name for the new URI. + The fragment name for the new URI. @@ -44243,10 +66239,15 @@ escaped except where indicated. - Append a path onto the end of the path in the URI. The path is not + Append a path onto the end of the path in the URI. The path is not normalized, call #gst_uri_normalize() to normalize the path. + - %TRUE if the path was appended successfully. + %TRUE if the path was appended successfully. @@ -44254,11 +66255,15 @@ normalized, call #gst_uri_normalize() to normalize the path. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - Relative path to append to the end of the current path. + Relative path to append to the end of the current path. @@ -44266,9 +66271,14 @@ normalized, call #gst_uri_normalize() to normalize the path. - Append a single path segment onto the end of the URI path. + Append a single path segment onto the end of the URI path. + - %TRUE if the path was appended successfully. + %TRUE if the path was appended successfully. @@ -44276,29 +66286,42 @@ normalized, call #gst_uri_normalize() to normalize the path. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The path segment string to append to the URI path. + The path segment string to append to the URI path. - Compares two #GstUri objects to see if they represent the same normalized + Compares two #GstUri objects to see if they represent the same normalized URI. + - %TRUE if the normalized versions of the two URI's would be equal. + %TRUE if the normalized versions of the two URI's would be equal. - First #GstUri to compare. + First #GstUri to compare. - Second #GstUri to compare. + Second #GstUri to compare. @@ -44306,9 +66329,14 @@ URI. - Like gst_uri_from_string() but also joins with a base URI. + Like gst_uri_from_string() but also joins with a base URI. + - A new #GstUri object. + A new #GstUri object. @@ -44316,11 +66344,15 @@ URI. transfer-ownership="none" nullable="1" allow-none="1"> - The base URI to join the new URI with. + The base URI to join the new URI with. - The URI string to parse. + The URI string to parse. @@ -44328,10 +66360,15 @@ URI. - Get the fragment name from the URI or %NULL if it doesn't exist. + Get the fragment name from the URI or %NULL if it doesn't exist. If @uri is %NULL then returns %NULL. + - The host name from the #GstUri object or %NULL. + The host name from the #GstUri object or %NULL. @@ -44339,16 +66376,23 @@ If @uri is %NULL then returns %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - This #GstUri object. + This #GstUri object. - Get the host name from the URI or %NULL if it doesn't exist. + Get the host name from the URI or %NULL if it doesn't exist. If @uri is %NULL then returns %NULL. + - The host name from the #GstUri object or %NULL. + The host name from the #GstUri object or %NULL. @@ -44356,7 +66400,9 @@ If @uri is %NULL then returns %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - This #GstUri object. + This #GstUri object. @@ -44364,7 +66410,9 @@ If @uri is %NULL then returns %NULL. - Get the media fragment table from the URI, as defined by "Media Fragments URI 1.0". + Get the media fragment table from the URI, as defined by "Media Fragments URI 1.0". Hash table returned by this API is a list of "key-value" pairs, and the each pair is generated by splitting "URI fragment" per "&" sub-delims, then "key" and "value" are split by "=" sub-delims. The "key" returned by this API may @@ -44375,8 +66423,11 @@ with #g_hash_table_unref() when it is no longer required. Modifying this hash table does not affect the fragment in the URI. See more about Media Fragments URI 1.0 (W3C) at https://www.w3.org/TR/media-frags/ + - The + The fragment hash table from the URI. @@ -44388,21 +66439,30 @@ See more about Media Fragments URI 1.0 (W3C) at https://www.w3.org/TR/media-frag transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to get the fragment table from. + The #GstUri to get the fragment table from. - Extract the path string from the URI object. + Extract the path string from the URI object. + - The path from the URI. Once finished + The path from the URI. Once finished with the string should be g_free()'d. - The #GstUri to get the path from. + The #GstUri to get the path from. @@ -44410,9 +66470,14 @@ See more about Media Fragments URI 1.0 (W3C) at https://www.w3.org/TR/media-frag - Get a list of path segments from the URI. + Get a list of path segments from the URI. + - A #GList of path segment + A #GList of path segment strings or %NULL if no path segments are available. Free the list when no longer needed with g_list_free_full(list, g_free). @@ -44424,7 +66489,9 @@ See more about Media Fragments URI 1.0 (W3C) at https://www.w3.org/TR/media-frag transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to get the path from. + The #GstUri to get the path from. @@ -44432,24 +66499,36 @@ See more about Media Fragments URI 1.0 (W3C) at https://www.w3.org/TR/media-frag - Extract the path string from the URI object as a percent encoded URI path. + Extract the path string from the URI object as a percent encoded URI path. + - The path from the URI. Once finished + The path from the URI. Once finished with the string should be g_free()'d. - The #GstUri to get the path from. + The #GstUri to get the path from. - Get the port number from the URI or %GST_URI_NO_PORT if it doesn't exist. + Get the port number from the URI or %GST_URI_NO_PORT if it doesn't exist. If @uri is %NULL then returns %GST_URI_NO_PORT. + - The port number from the #GstUri object or %GST_URI_NO_PORT. + The port number from the #GstUri object or %GST_URI_NO_PORT. @@ -44457,7 +66536,9 @@ If @uri is %NULL then returns %GST_URI_NO_PORT. transfer-ownership="none" nullable="1" allow-none="1"> - This #GstUri object. + This #GstUri object. @@ -44465,9 +66546,14 @@ If @uri is %NULL then returns %GST_URI_NO_PORT. - Get a list of the query keys from the URI. + Get a list of the query keys from the URI. + - A list of keys from + A list of keys from the URI query. Free the list with g_list_free(). @@ -44478,7 +66564,9 @@ If @uri is %NULL then returns %GST_URI_NO_PORT. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to examine. + The #GstUri to examine. @@ -44486,9 +66574,14 @@ If @uri is %NULL then returns %GST_URI_NO_PORT. - Get a percent encoded URI query string from the @uri. + Get a percent encoded URI query string from the @uri. + - A percent encoded query string. Use + A percent encoded query string. Use g_free() when no longer needed. @@ -44497,7 +66590,9 @@ If @uri is %NULL then returns %GST_URI_NO_PORT. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to get the query string from. + The #GstUri to get the query string from. @@ -44505,14 +66600,19 @@ If @uri is %NULL then returns %GST_URI_NO_PORT. - Get the query table from the URI. Keys and values in the table are freed + Get the query table from the URI. Keys and values in the table are freed with g_free when they are deleted. A value may be %NULL to indicate that the key should appear in the query string in the URI, but does not have a value. Free the returned #GHashTable with #g_hash_table_unref() when it is no longer required. Modifying this hash table will modify the query in the URI. + - The query + The query hash table from the URI. @@ -44524,7 +66624,9 @@ URI. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to get the query table from. + The #GstUri to get the query table from. @@ -44532,13 +66634,18 @@ URI. - Get the value associated with the @query_key key. Will return %NULL if the + Get the value associated with the @query_key key. Will return %NULL if the key has no value or if the key does not exist in the URI query table. Because %NULL is returned for both missing keys and keys with no value, you should use gst_uri_query_has_key() to determine if a key is present in the URI query. + - The value for the given key, or %NULL if not found. + The value for the given key, or %NULL if not found. @@ -44546,20 +66653,29 @@ query. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to examine. + The #GstUri to examine. - The key to lookup. + The key to lookup. - Get the scheme name from the URI or %NULL if it doesn't exist. + Get the scheme name from the URI or %NULL if it doesn't exist. If @uri is %NULL then returns %NULL. + - The scheme from the #GstUri object or %NULL. + The scheme from the #GstUri object or %NULL. @@ -44567,7 +66683,9 @@ If @uri is %NULL then returns %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - This #GstUri object. + This #GstUri object. @@ -44575,10 +66693,15 @@ If @uri is %NULL then returns %NULL. - Get the userinfo (usually in the form "username:password") from the URI + Get the userinfo (usually in the form "username:password") from the URI or %NULL if it doesn't exist. If @uri is %NULL then returns %NULL. + - The userinfo from the #GstUri object or %NULL. + The userinfo from the #GstUri object or %NULL. @@ -44586,7 +66709,9 @@ or %NULL if it doesn't exist. If @uri is %NULL then returns %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - This #GstUri object. + This #GstUri object. @@ -44594,15 +66719,22 @@ or %NULL if it doesn't exist. If @uri is %NULL then returns %NULL. - Tests the @uri to see if it is normalized. A %NULL @uri is considered to be + Tests the @uri to see if it is normalized. A %NULL @uri is considered to be normalized. + - TRUE if the URI is normalized or is %NULL. + TRUE if the URI is normalized or is %NULL. - The #GstUri to test to see if it is normalized. + The #GstUri to test to see if it is normalized. @@ -44610,30 +66742,42 @@ normalized. - Check if it is safe to write to this #GstUri. + Check if it is safe to write to this #GstUri. Check if the refcount of @uri is exactly 1, meaning that no other reference exists to the #GstUri and that the #GstUri is therefore writable. Modification of a #GstUri should only be done after verifying that it is writable. + - %TRUE if it is safe to write to the object. + %TRUE if it is safe to write to the object. - The #GstUri object to test. + The #GstUri object to test. - Join a reference URI onto a base URI using the method from RFC 3986. + Join a reference URI onto a base URI using the method from RFC 3986. If either URI is %NULL then the other URI will be returned with the ref count increased. + - A #GstUri which represents the base + A #GstUri which represents the base with the reference URI joined on. @@ -44642,14 +66786,18 @@ increased. transfer-ownership="none" nullable="1" allow-none="1"> - The base URI to join another to. + The base URI to join another to. - The reference URI to join onto the + The reference URI to join onto the base URI. @@ -44658,19 +66806,26 @@ increased. - Make the #GstUri writable. + Make the #GstUri writable. Checks if @uri is writable, and if so the original object is returned. If not, then a writable copy is made and returned. This gives away the reference to @uri and returns a reference to the new #GstUri. If @uri is %NULL then %NULL is returned. + - A writable version of @uri. + A writable version of @uri. - The #GstUri object to make writable. + The #GstUri object to make writable. @@ -44678,9 +66833,14 @@ If @uri is %NULL then %NULL is returned. - Like gst_uri_new(), but joins the new URI onto a base URI. + Like gst_uri_new(), but joins the new URI onto a base URI. + - The new URI joined onto @base. + The new URI joined onto @base. @@ -44688,39 +66848,51 @@ If @uri is %NULL then %NULL is returned. transfer-ownership="none" nullable="1" allow-none="1"> - The base URI to join the new URI to. + The base URI to join the new URI to. - The scheme for the new URI. + The scheme for the new URI. - The user-info for the new URI. + The user-info for the new URI. - The host name for the new URI. + The host name for the new URI. - The port number for the new URI or %GST_URI_NO_PORT. + The port number for the new URI or %GST_URI_NO_PORT. - The path for the new URI with '/' separating path + The path for the new URI with '/' separating path elements. @@ -44728,7 +66900,9 @@ If @uri is %NULL then %NULL is returned. transfer-ownership="none" nullable="1" allow-none="1"> - The query string for the new URI with '&' separating + The query string for the new URI with '&' separating query elements. Elements containing '&' characters should encode them as "&percnt;26". @@ -44737,25 +66911,34 @@ If @uri is %NULL then %NULL is returned. transfer-ownership="none" nullable="1" allow-none="1"> - The fragment name for the new URI. + The fragment name for the new URI. - Normalization will remove extra path segments ("." and "..") from the URI. It + Normalization will remove extra path segments ("." and "..") from the URI. It will also convert the scheme and host name to lower case and any percent-encoded values to uppercase. The #GstUri object must be writable. Check with gst_uri_is_writable() or use gst_uri_make_writable() first. + - TRUE if the URI was modified. + TRUE if the URI was modified. - The #GstUri to normalize. + The #GstUri to normalize. @@ -44763,9 +66946,14 @@ gst_uri_make_writable() first. - Check if there is a query table entry for the @query_key key. + Check if there is a query table entry for the @query_key key. + - %TRUE if @query_key exists in the URI query table. + %TRUE if @query_key exists in the URI query table. @@ -44773,11 +66961,15 @@ gst_uri_make_writable() first. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to examine. + The #GstUri to examine. - The key to lookup. + The key to lookup. @@ -44785,9 +66977,14 @@ gst_uri_make_writable() first. - Remove an entry from the query table by key. + Remove an entry from the query table by key. + - %TRUE if the key existed in the table and was removed. + %TRUE if the key existed in the table and was removed. @@ -44795,11 +66992,15 @@ gst_uri_make_writable() first. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The key to remove. + The key to remove. @@ -44807,10 +67008,15 @@ gst_uri_make_writable() first. - Sets the fragment string in the URI. Use a value of %NULL in @fragment to + Sets the fragment string in the URI. Use a value of %NULL in @fragment to unset the fragment string. + - %TRUE if the fragment was set/unset successfully. + %TRUE if the fragment was set/unset successfully. @@ -44818,22 +67024,31 @@ unset the fragment string. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The fragment string to set. + The fragment string to set. - Set or unset the host for the URI. + Set or unset the host for the URI. + - %TRUE if the host was set/unset successfully. + %TRUE if the host was set/unset successfully. @@ -44841,19 +67056,28 @@ unset the fragment string. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The new host string to set or %NULL to unset. + The new host string to set or %NULL to unset. - Sets or unsets the path in the URI. + Sets or unsets the path in the URI. + - %TRUE if the path was set successfully. + %TRUE if the path was set successfully. @@ -44861,11 +67085,15 @@ unset the fragment string. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The new path to set with path segments separated by '/', or use %NULL + The new path to set with path segments separated by '/', or use %NULL to unset the path. @@ -44874,9 +67102,14 @@ unset the fragment string. - Replace the path segments list in the URI. + Replace the path segments list in the URI. + - %TRUE if the path segments were set successfully. + %TRUE if the path segments were set successfully. @@ -44884,14 +67117,18 @@ unset the fragment string. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The new + The new path list to set. @@ -44902,9 +67139,14 @@ unset the fragment string. - Sets or unsets the path in the URI. + Sets or unsets the path in the URI. + - %TRUE if the path was set successfully. + %TRUE if the path was set successfully. @@ -44912,20 +67154,29 @@ unset the fragment string. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The new percent encoded path to set with path segments separated by + The new percent encoded path to set with path segments separated by '/', or use %NULL to unset the path. - Set or unset the port number for the URI. + Set or unset the port number for the URI. + - %TRUE if the port number was set/unset successfully. + %TRUE if the port number was set/unset successfully. @@ -44933,11 +67184,15 @@ unset the fragment string. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The new port number to set or %GST_URI_NO_PORT to unset. + The new port number to set or %GST_URI_NO_PORT to unset. @@ -44945,9 +67200,14 @@ unset the fragment string. - Sets or unsets the query table in the URI. + Sets or unsets the query table in the URI. + - %TRUE if the query table was set successfully. + %TRUE if the query table was set successfully. @@ -44955,11 +67215,15 @@ unset the fragment string. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The new percent encoded query string to use to populate the query + The new percent encoded query string to use to populate the query table, or use %NULL to unset the query table. @@ -44968,11 +67232,16 @@ unset the fragment string. - Set the query table to use in the URI. The old table is unreferenced and a + Set the query table to use in the URI. The old table is unreferenced and a reference to the new one is used instead. A value if %NULL for @query_table will remove the query string from the URI. + - %TRUE if the new table was successfully used for the query table. + %TRUE if the new table was successfully used for the query table. @@ -44980,14 +67249,18 @@ will remove the query string from the URI. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The new + The new query table to use. @@ -44999,11 +67272,16 @@ will remove the query string from the URI. - This inserts or replaces a key in the query table. A @query_value of %NULL + This inserts or replaces a key in the query table. A @query_value of %NULL indicates that the key has no associated value, but will still be present in the query string. + - %TRUE if the query table was successfully updated. + %TRUE if the query table was successfully updated. @@ -45011,18 +67289,24 @@ the query string. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The key for the query entry. + The key for the query entry. - The value for the key. + The value for the key. @@ -45030,9 +67314,14 @@ the query string. - Set or unset the scheme for the URI. + Set or unset the scheme for the URI. + - %TRUE if the scheme was set/unset successfully. + %TRUE if the scheme was set/unset successfully. @@ -45040,11 +67329,15 @@ the query string. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The new scheme to set or %NULL to unset the scheme. + The new scheme to set or %NULL to unset the scheme. @@ -45052,9 +67345,14 @@ the query string. - Set or unset the user information for the URI. + Set or unset the user information for the URI. + - %TRUE if the user information was set/unset successfully. + %TRUE if the user information was set/unset successfully. @@ -45062,28 +67360,39 @@ the query string. transfer-ownership="none" nullable="1" allow-none="1"> - The #GstUri to modify. + The #GstUri to modify. - The new user-information string to set or %NULL to unset. + The new user-information string to set or %NULL to unset. - Convert the URI to a string. + Convert the URI to a string. Returns the URI as held in this object as a #gchar* nul-terminated string. The caller should g_free() the string once they are finished with it. The string is put together as described in RFC 3986. + - The string version of the URI. + The string version of the URI. - This #GstUri to convert to a string. + This #GstUri to convert to a string. @@ -45091,22 +67400,31 @@ The string is put together as described in RFC 3986. - Constructs a URI for a given valid protocol and location. + Constructs a URI for a given valid protocol and location. Free-function: g_free Use GstURI instead. + - a new string for this URI. Returns %NULL if the + a new string for this URI. Returns %NULL if the given URI protocol is not valid, or the given location is %NULL. - Protocol for URI + Protocol for URI - Location for URI + Location for URI @@ -45114,80 +67432,117 @@ Free-function: g_free - Parses a URI string into a new #GstUri object. Will return NULL if the URI + Parses a URI string into a new #GstUri object. Will return NULL if the URI cannot be parsed. + - A new #GstUri object, or NULL. + A new #GstUri object, or NULL. - The URI string to parse. + The URI string to parse. - Extracts the location out of a given valid URI, ie. the protocol and "://" + Extracts the location out of a given valid URI, ie. the protocol and "://" are stripped from the URI, which means that the location returned includes the hostname if one is specified. The returned string must be freed using g_free(). Free-function: g_free + - the location for this URI. Returns + the location for this URI. Returns %NULL if the URI isn't valid. If the URI does not contain a location, an empty string is returned. - A URI string + A URI string - Extracts the protocol out of a given valid URI. The returned string must be + Extracts the protocol out of a given valid URI. The returned string must be freed using g_free(). + - The protocol for this URI. + The protocol for this URI. - A URI string + A URI string - Checks if the protocol of a given valid URI matches @protocol. + Checks if the protocol of a given valid URI matches @protocol. + - %TRUE if the protocol matches. + %TRUE if the protocol matches. - a URI string + a URI string - a protocol string (e.g. "http") + a protocol string (e.g. "http") - Tests if the given string is a valid URI identifier. URIs start with a valid + Tests if the given string is a valid URI identifier. URIs start with a valid scheme followed by ":" and maybe a string identifying the location. + - %TRUE if the string is a valid URI + %TRUE if the string is a valid URI - A URI string + A URI string @@ -45195,98 +67550,371 @@ scheme followed by ":" and maybe a string identifying the location. - This is a convenience function to join two URI strings and return the result. + This is a convenience function to join two URI strings and return the result. The returned string should be g_free()'d after use. + - A string representing the percent-encoded join of + A string representing the percent-encoded join of the two URIs. - The percent-encoded base URI. + The percent-encoded base URI. - The percent-encoded reference URI to join to the @base_uri. + The percent-encoded reference URI to join to the @base_uri. - Checks if an element exists that supports the given URI protocol. Note + Checks if an element exists that supports the given URI protocol. Note that a positive return value does not imply that a subsequent call to gst_element_make_from_uri() is guaranteed to work. + - %TRUE + %TRUE - Whether to check for a source or a sink + Whether to check for a source or a sink - Protocol that should be checked for (e.g. "http" or "smb") + Protocol that should be checked for (e.g. "http" or "smb") - Tests if the given string is a valid protocol identifier. Protocols + Tests if the given string is a valid protocol identifier. Protocols must consist of alphanumeric characters, '+', '-' and '.' and must start with a alphabetic character. See RFC 3986 Section 3.1. + - %TRUE if the string is a valid protocol identifier, %FALSE otherwise. + %TRUE if the string is a valid protocol identifier, %FALSE otherwise. - A string + A string - Indicates that the first value provided to a comparison function + Indicates that the first value provided to a comparison function (gst_value_compare()) is equal to the second one. + - Indicates that the first value provided to a comparison function + Indicates that the first value provided to a comparison function (gst_value_compare()) is greater than the second one. + + + Checks if the given #GValue contains a #GST_TYPE_ARRAY value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_BITMASK value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_BUFFER value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_CAPS value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_CAPS_FEATURES value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_DATE_TIME value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_DOUBLE_RANGE value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_FLAG_SET value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_FRACTION value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_FRACTION_RANGE value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_INT64_RANGE value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_INT_RANGE value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_LIST value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_SAMPLE value. + + + + the #GValue to check + + + + + Checks if the given #GValue contains a #GST_TYPE_STRUCTURE value. + + + + the #GValue to check + + + - Indicates that the first value provided to a comparison function + Indicates that the first value provided to a comparison function (gst_value_compare()) is lesser than the second one. + - Indicates that the comparison function (gst_value_compare()) can not + Indicates that the comparison function (gst_value_compare()) can not determine a order for the two provided values. + - The major version of GStreamer at compile time: + The major version of GStreamer at compile time: + - - The micro version of GStreamer at compile time: + + The micro version of GStreamer at compile time: + - The minor version of GStreamer at compile time: + The minor version of GStreamer at compile time: + - The nano version of GStreamer at compile time: + The nano version of GStreamer at compile time: Actual releases have 0, GIT versions have 1, prerelease versions have 2-... + - Appends @append_value to the GstValueArray in @value. + Appends @append_value to the GstValueArray in @value. + - a #GValue of type #GST_TYPE_ARRAY + a #GValue of type #GST_TYPE_ARRAY - the value to append + the value to append - Appends @append_value to the GstValueArray in @value. + Appends @append_value to the GstValueArray in @value. + - a #GValue of type #GST_TYPE_ARRAY + a #GValue of type #GST_TYPE_ARRAY - the value to append + the value to append - Gets the number of values contained in @value. + Gets the number of values contained in @value. + - the number of values + the number of values - a #GValue of type #GST_TYPE_ARRAY + a #GValue of type #GST_TYPE_ARRAY - Gets the value that is a member of the array contained in @value and + Gets the value that is a member of the array contained in @value and has the index @index. + - the value at the given index + the value at the given index - a #GValue of type #GST_TYPE_ARRAY + a #GValue of type #GST_TYPE_ARRAY - index of value to get from the array + index of value to get from the array - Prepends @prepend_value to the GstValueArray in @value. + Prepends @prepend_value to the GstValueArray in @value. + - a #GValue of type #GST_TYPE_ARRAY + a #GValue of type #GST_TYPE_ARRAY - the value to prepend + the value to prepend - Used together with gst_value_compare() to compare #GValue items. + Used together with gst_value_compare() to compare #GValue items. + - one of GST_VALUE_LESS_THAN, GST_VALUE_EQUAL, GST_VALUE_GREATER_THAN + one of GST_VALUE_LESS_THAN, GST_VALUE_EQUAL, GST_VALUE_GREATER_THAN or GST_VALUE_UNORDERED - first value for comparison + first value for comparison - second value for comparison + second value for comparison - Used by gst_value_deserialize() to parse a non-binary form into the #GValue. + Used by gst_value_deserialize() to parse a non-binary form into the #GValue. + - %TRUE for success + %TRUE for success - a #GValue + a #GValue - a string + a string @@ -45422,41 +68105,58 @@ or GST_VALUE_UNORDERED - Appends @append_value to the GstValueList in @value. + Appends @append_value to the GstValueList in @value. + - a #GValue of type #GST_TYPE_LIST + a #GValue of type #GST_TYPE_LIST - the value to append + the value to append - Appends @append_value to the GstValueList in @value. + Appends @append_value to the GstValueList in @value. + - a #GValue of type #GST_TYPE_LIST + a #GValue of type #GST_TYPE_LIST - the value to append + the value to append - Concatenates copies of @value1 and @value2 into a list. Values that are not + Concatenates copies of @value1 and @value2 into a list. Values that are not of type #GST_TYPE_LIST are treated as if they were lists of length 1. @dest will be initialized to the type #GST_TYPE_LIST. + @@ -45465,57 +68165,82 @@ of type #GST_TYPE_LIST are treated as if they were lists of length 1. direction="out" caller-allocates="1" transfer-ownership="none"> - an uninitialized #GValue to take the result + an uninitialized #GValue to take the result - a #GValue + a #GValue - a #GValue + a #GValue - Gets the number of values contained in @value. + Gets the number of values contained in @value. + - the number of values + the number of values - a #GValue of type #GST_TYPE_LIST + a #GValue of type #GST_TYPE_LIST - Gets the value that is a member of the list contained in @value and + Gets the value that is a member of the list contained in @value and has the index @index. + - the value at the given index + the value at the given index - a #GValue of type #GST_TYPE_LIST + a #GValue of type #GST_TYPE_LIST - index of value to get from the list + index of value to get from the list - Merges copies of @value1 and @value2. Values that are not + Merges copies of @value1 and @value2. Values that are not of type #GST_TYPE_LIST are treated as if they were lists of length 1. The result will be put into @dest and will either be a list that will not contain any duplicates, or a non-list type (if @value1 and @value2 were equal). + @@ -45524,95 +68249,448 @@ were equal). direction="out" caller-allocates="1" transfer-ownership="none"> - an uninitialized #GValue to take the result + an uninitialized #GValue to take the result - a #GValue + a #GValue - a #GValue + a #GValue - Prepends @prepend_value to the GstValueList in @value. + Prepends @prepend_value to the GstValueList in @value. + - a #GValue of type #GST_TYPE_LIST + a #GValue of type #GST_TYPE_LIST - the value to prepend + the value to prepend - Used by gst_value_serialize() to obtain a non-binary form of the #GValue. + Used by gst_value_serialize() to obtain a non-binary form of the #GValue. Free-function: g_free + - the string representation of the value + the string representation of the value - a #GValue + a #GValue - VTable for the #GValue @type. + VTable for the #GValue @type. + - a #GType + a #GType - a #GstValueCompareFunc + a #GstValueCompareFunc - a #GstValueSerializeFunc + a #GstValueSerializeFunc - a #GstValueDeserializeFunc + a #GstValueDeserializeFunc - + + + Store a 16 bit unsigned integer value in big endian format into the memory buffer. + + + + memory location + + + value to store + + + + + Store a 16 bit unsigned integer value in little endian format into the memory buffer. + + + + memory location + + + value to store + + + + + Store a 24 bit unsigned integer value in big endian format into the memory buffer. + + + + memory location + + + value to store + + + + + Store a 24 bit unsigned integer value in little endian format into the memory buffer. + + + + memory location + + + value to store + + + + + Store a 32 bit unsigned integer value in big endian format into the memory buffer. + + + + memory location + + + value to store + + + + + Store a 32 bit unsigned integer value in little endian format into the memory buffer. + + + + memory location + + + value to store + + + + + Store a 64 bit unsigned integer value in big endian format into the memory buffer. + + + + memory location + + + value to store + + + + + Store a 64 bit unsigned integer value in little endian format into the memory buffer. + + + + memory location + + + value to store + + + + + Store an 8 bit unsigned integer value into the memory buffer. + + + + memory location + + + value to store + + + - Get the maximum amount of memory blocks that a buffer can hold. This is a + Get the maximum amount of memory blocks that a buffer can hold. This is a compile time constant that can be queried with the function. When more memory blocks are added, existing memory blocks will be merged together to make room for the new block. + - the maximum amount of memory blocks that a buffer can hold. + the maximum amount of memory blocks that a buffer can hold. + + Find and return a #GstParentBufferMeta if one exists on the +buffer + + + + a #GstBuffer + + + + + + + + + + + + Tests if you can safely write to a buffer's metadata or its memory array. +It is only safe to change buffer metadata when the current reference is +writable, i.e. nobody can see the modifications you will make. + + + + a #GstBuffer + + + + + Append @b at the end of @l. + + + + a #GstBufferList + + + a #GstBuffer + + + + + Tests if you can safely add buffers and groups into a buffer list. + + + + a #GstBufferList + + + + + Makes a writable buffer list from the given buffer list. If the source buffer +list is already writable, this will simply return the same buffer list. A +copy will otherwise be made using gst_buffer_list_copy(). + + + + a #GstBufferList + + + + + Returns a writable copy of @buf. If the source buffer is +already writable, this will simply return the same buffer. + +Use this function to ensure that a buffer can be safely modified before +making changes to it, including changing the metadata such as PTS/DTS. + +If the reference count of the source buffer @buf is exactly one, the caller +is the sole owner and this function will return the buffer object unchanged. + +If there is more than one reference on the object, a copy will be made using +gst_buffer_copy(). The passed-in @buf will be unreffed in that case, and the +caller will now own a reference to the new returned buffer object. Note +that this just copies the buffer structure itself, the underlying memory is +not copied if it can be shared amongst multiple buffers. + +In short, this function unrefs the buf in the argument and refs the buffer +that it returns. Don't access the argument after calling this function unless +you have an additional reference to it. + + + + a #GstBuffer + + + + + + + + + + - Calculates the linear regression of the values @xy and places the + Calculates the linear regression of the values @xy and places the result in @m_num, @m_denom, @b and @xbase, representing the function y(x) = m_num/m_denom * (x - xbase) + b that has the least-square distance from all points @x and @y. @@ -45628,56 +68706,75 @@ amount of memory allocated as @xy, i.e. 2*n*sizeof(GstClockTime). > between them. It will not calculate the exact results if the differences > between neighbouring values are too small due to not being able to > represent sub-integer values during the calculations. + - %TRUE if the linear regression was successfully calculated + %TRUE if the linear regression was successfully calculated - Pairs of (x,y) values + Pairs of (x,y) values - Temporary scratch space used by the function + Temporary scratch space used by the function - number of (x,y) pairs + number of (x,y) pairs - numerator of calculated slope + numerator of calculated slope - denominator of calculated slope + denominator of calculated slope - Offset at Y-axis + Offset at Y-axis - Offset at X-axis + Offset at X-axis - R-squared + R-squared @@ -45686,18 +68783,25 @@ amount of memory allocated as @xy, i.e. 2*n*sizeof(GstClockTime). c:identifier="gst_caps_features_from_string" moved-to="CapsFeatures.from_string" version="1.2"> - Creates a #GstCapsFeatures from a string representation. + Creates a #GstCapsFeatures from a string representation. Free-function: gst_caps_features_free + - a new #GstCapsFeatures or + a new #GstCapsFeatures or %NULL when the string could not be parsed. Free with gst_caps_features_free() after use. - a string representation of a #GstCapsFeatures. + a string representation of a #GstCapsFeatures. @@ -45705,26 +68809,76 @@ Free-function: gst_caps_features_free - Converts @caps from a string representation. + Converts @caps from a string representation. The current implementation of serialization will lead to unexpected results when there are nested #GstCaps / #GstStructure deeper than one level. + - a newly allocated #GstCaps + a newly allocated #GstCaps - a string to convert to #GstCaps + a string to convert to #GstCaps + + Tests if you can safely modify @caps. It is only safe to modify caps when +there is only one owner of the caps - ie, the object is writable. + + + + a #GstCaps + + + + + Returns a writable copy of @caps. + +If there is only one reference count on @caps, the caller must be the owner, +and so this function will return the caps object unchanged. If on the other +hand there is more than one reference on the object, a new caps object will +be returned. The caller's reference on @caps will be removed, and instead the +caller will own a reference to the returned object. + +In short, this function unrefs the caps in the argument and refs the caps +that it returns. Don't access the argument after calling this function. See +also: gst_caps_ref(). + + + + a #GstCaps + + + - Clears a reference to a #GstMiniObject. + Clears a reference to a #GstMiniObject. @object_ptr must not be %NULL. @@ -45734,12 +68888,15 @@ gst_mini_object_unref() and the pointer is set to %NULL. A macro is also included that allows this function to be used without pointer casts. + - a pointer to a #GstMiniObject reference + a pointer to a #GstMiniObject reference @@ -45748,7 +68905,9 @@ pointer casts. c:identifier="gst_clear_object" version="1.16" introspectable="0"> - Clears a reference to a #GstObject. + Clears a reference to a #GstObject. @object_ptr must not be %NULL. @@ -45758,12 +68917,15 @@ gst_object_unref() and the pointer is set to %NULL. A macro is also included that allows this function to be used without pointer casts. + - a pointer to a #GstObject reference + a pointer to a #GstObject reference @@ -45772,7 +68934,9 @@ pointer casts. c:identifier="gst_clear_structure" version="1.16" introspectable="0"> - Clears a reference to a #GstStructure. + Clears a reference to a #GstStructure. @structure_ptr must not be %NULL. @@ -45782,16 +68946,51 @@ pointer is set to %NULL. A macro is also included that allows this function to be used without pointer casts. + - a pointer to a #GstStructure reference + a pointer to a #GstStructure reference + + Tests if you can safely write into a context's structure or validly +modify the seqnum and timestamp fields. + + + + a #GstContext + + + + + Checks if a context is writable. If not, a writable copy is made and +returned. + + + + the context to make writable + + + @@ -45801,8 +69000,11 @@ pointer casts. - Adds the logging function to the list of logging functions. + Adds the logging function to the list of logging functions. Be sure to use #G_GNUC_NO_INSTRUMENT on that function, it is needed. + @@ -45812,18 +69014,24 @@ Be sure to use #G_GNUC_NO_INSTRUMENT on that function, it is needed. scope="notified" closure="1" destroy="2"> - the function to use + the function to use - user data + user data - called when @user_data is not used anymore + called when @user_data is not used anymore @@ -45831,138 +69039,191 @@ Be sure to use #G_GNUC_NO_INSTRUMENT on that function, it is needed. - Adds a memory ringbuffer based debug logger that stores up to + Adds a memory ringbuffer based debug logger that stores up to @max_size_per_thread bytes of logs per thread and times out threads after @thread_timeout seconds of inactivity. Logs can be fetched with gst_debug_ring_buffer_logger_get_logs() and the logger can be removed again with gst_debug_remove_ring_buffer_logger(). Only one logger at a time is possible. + - Maximum size of log per thread in bytes + Maximum size of log per thread in bytes - Timeout for threads in seconds + Timeout for threads in seconds - To aid debugging applications one can use this method to obtain the whole + To aid debugging applications one can use this method to obtain the whole network of gstreamer elements that form the pipeline into an dot file. This data can be processed with graphviz to get an image. + - a string containing the pipeline in graphviz + a string containing the pipeline in graphviz dot format. - the top-level pipeline that should be analyzed + the top-level pipeline that should be analyzed - type of #GstDebugGraphDetails to use + type of #GstDebugGraphDetails to use - To aid debugging applications one can use this method to write out the whole + To aid debugging applications one can use this method to write out the whole network of gstreamer elements that form the pipeline into an dot file. This file can be processed with graphviz to get an image. <informalexample><programlisting> dot -Tpng -oimage.png graph_lowlevel.dot </programlisting></informalexample> + - the top-level pipeline that should be analyzed + the top-level pipeline that should be analyzed - type of #GstDebugGraphDetails to use + type of #GstDebugGraphDetails to use - output base filename (e.g. "myplayer") + output base filename (e.g. "myplayer") - This works like gst_debug_bin_to_dot_file(), but adds the current timestamp + This works like gst_debug_bin_to_dot_file(), but adds the current timestamp to the filename, so that it can be used to take multiple snapshots. + - the top-level pipeline that should be analyzed + the top-level pipeline that should be analyzed - type of #GstDebugGraphDetails to use + type of #GstDebugGraphDetails to use - output base filename (e.g. "myplayer") + output base filename (e.g. "myplayer") - Constructs a string that can be used for getting the desired color in color + Constructs a string that can be used for getting the desired color in color terminals. You need to free the string after use. + - a string containing the color + a string containing the color definition - the color info + the color info - Constructs an integer that can be used for getting the desired color in + Constructs an integer that can be used for getting the desired color in windows' terminals (cmd.exe). As there is no mean to underline, we simply ignore this attribute. This function returns 0 on non-windows machines. + - an integer containing the color definition + an integer containing the color definition - the color info + the color info - Returns a snapshot of a all categories that are currently in use . This list + Returns a snapshot of a all categories that are currently in use . This list may change anytime. The caller has to free the list after use. + - the list of + the list of debug categories @@ -45972,111 +69233,164 @@ The caller has to free the list after use. - Changes the coloring mode for debug output. + Changes the coloring mode for debug output. + - see @GstDebugColorMode for possible values. + see @GstDebugColorMode for possible values. - Returns the default threshold that is used for new categories. + Returns the default threshold that is used for new categories. + - the default threshold level + the default threshold level + - a stack trace, if libunwind or glibc backtrace are + a stack trace, if libunwind or glibc backtrace are present, else %NULL. - A set of #GstStackTraceFlags to determine how the stack + A set of #GstStackTraceFlags to determine how the stack trace should look like. Pass 0 to retrieve a minimal backtrace. - Checks if debugging output is activated. + Checks if debugging output is activated. + - %TRUE, if debugging is activated + %TRUE, if debugging is activated - Checks if the debugging output should be colored. + Checks if the debugging output should be colored. + - %TRUE, if the debug output should be colored. + %TRUE, if the debug output should be colored. - Get the string representation of a debugging level + Get the string representation of a debugging level + - the name + the name - the level to get the name for + the level to get the name for - Logs the given message using the currently registered debugging handlers. + Logs the given message using the currently registered debugging handlers. + - category to log + category to log - level of the message is in + level of the message is in - the file that emitted the message, usually the __FILE__ identifier + the file that emitted the message, usually the __FILE__ identifier - the function that emitted the message + the function that emitted the message - the line from that the message was emitted, usually __LINE__ + the line from that the message was emitted, usually __LINE__ - the object this message relates to, + the object this message relates to, or %NULL if none - a printf style format string + a printf style format string - optional arguments for the format + optional arguments for the format - The default logging handler used by GStreamer. Logging functions get called + The default logging handler used by GStreamer. Logging functions get called whenever a macro like GST_DEBUG or similar is used. By default this function is setup to output the message and additional info to stderr (or the log file specified via the GST_DEBUG_FILE environment variable) as received via @@ -46085,47 +69399,64 @@ specified via the GST_DEBUG_FILE environment variable) as received via You can add other handlers by using gst_debug_add_log_function(). And you can remove this handler by calling gst_debug_remove_log_function(gst_debug_log_default); + - category to log + category to log - level of the message + level of the message - the file that emitted the message, usually the __FILE__ identifier + the file that emitted the message, usually the __FILE__ identifier - the function that emitted the message + the function that emitted the message - the line from that the message was emitted, usually __LINE__ + the line from that the message was emitted, usually __LINE__ - the object this message relates to, + the object this message relates to, or %NULL if none - the actual message + the actual message - the FILE* to log to + the FILE* to log to @@ -46133,62 +69464,89 @@ gst_debug_remove_log_function(gst_debug_log_default); - Logs the given message using the currently registered debugging handlers. + Logs the given message using the currently registered debugging handlers. + - category to log + category to log - level of the message is in + level of the message is in - the file that emitted the message, usually the __FILE__ identifier + the file that emitted the message, usually the __FILE__ identifier - the function that emitted the message + the function that emitted the message - the line from that the message was emitted, usually __LINE__ + the line from that the message was emitted, usually __LINE__ - the object this message relates to, + the object this message relates to, or %NULL if none - a printf style format string + a printf style format string - optional arguments for the format + optional arguments for the format - If libunwind, glibc backtrace or DbgHelp are present + If libunwind, glibc backtrace or DbgHelp are present a stack trace is printed. + - Removes all registered instances of the given logging functions. + Removes all registered instances of the given logging functions. + - How many instances of the function were removed + How many instances of the function were removed @@ -46197,7 +69555,9 @@ a stack trace is printed. nullable="1" allow-none="1" scope="call"> - the log function to remove, or %NULL to + the log function to remove, or %NULL to remove the default log function @@ -46205,9 +69565,14 @@ a stack trace is printed. - Removes all registered instances of log functions with the given user data. + Removes all registered instances of log functions with the given user data. + - How many instances of the function were removed + How many instances of the function were removed @@ -46215,7 +69580,9 @@ a stack trace is printed. transfer-ownership="none" nullable="1" allow-none="1"> - user data of the log function to remove + user data of the log function to remove @@ -46223,8 +69590,11 @@ a stack trace is printed. - Removes any previously added ring buffer logger with + Removes any previously added ring buffer logger with gst_debug_add_ring_buffer_logger(). + @@ -46232,10 +69602,15 @@ gst_debug_add_ring_buffer_logger(). - Fetches the current logs per thread from the ring buffer logger. See + Fetches the current logs per thread from the ring buffer logger. See gst_debug_add_ring_buffer_logger() for details. + - NULL-terminated array of + NULL-terminated array of strings with the debug output per thread @@ -46243,17 +69618,22 @@ strings with the debug output per thread - If activated, debugging messages are sent to the debugging + If activated, debugging messages are sent to the debugging handlers. It makes sense to deactivate it for speed issues. > This function is not threadsafe. It makes sense to only call it during initialization. + - Whether to use debugging output or not + Whether to use debugging output or not @@ -46261,15 +69641,20 @@ during initialization. - Changes the coloring mode for debug output. + Changes the coloring mode for debug output. This function may be called before gst_init(). + - The coloring mode for debug output. See @GstDebugColorMode. + The coloring mode for debug output. See @GstDebugColorMode. @@ -46277,66 +69662,88 @@ This function may be called before gst_init(). - Changes the coloring mode for debug output. + Changes the coloring mode for debug output. This function may be called before gst_init(). + - The coloring mode for debug output. One of the following: + The coloring mode for debug output. One of the following: "on", "auto", "off", "disable", "unix". - Sets or unsets the use of coloured debugging output. + Sets or unsets the use of coloured debugging output. Same as gst_debug_set_color_mode () with the argument being being GST_DEBUG_COLOR_MODE_ON or GST_DEBUG_COLOR_MODE_OFF. This function may be called before gst_init(). + - Whether to use colored output or not + Whether to use colored output or not - Sets the default threshold to the given level and updates all categories to + Sets the default threshold to the given level and updates all categories to use this threshold. This function may be called before gst_init(). + - level to set + level to set - Sets all categories which match the given glob style pattern to the given + Sets all categories which match the given glob style pattern to the given level. + - name of the categories to set + name of the categories to set - level to set them to + level to set them to @@ -46344,21 +69751,28 @@ level. - Sets the debug logging wanted in the same form as with the GST_DEBUG + Sets the debug logging wanted in the same form as with the GST_DEBUG environment variable. You can use wildcards such as '*', but note that the order matters when you use wild cards, e.g. "foosrc:6,*src:3,*:2" sets everything to log level 2. + - comma-separated list of "category:level" pairs to be used + comma-separated list of "category:level" pairs to be used as debug logging levels - %TRUE to clear all previously-set debug levels before setting + %TRUE to clear all previously-set debug levels before setting new thresholds %FALSE if adding the threshold described by @list to the one already set. @@ -46367,19 +69781,26 @@ everything to log level 2. - Resets all categories with the given name back to the default level. + Resets all categories with the given name back to the default level. + - name of the categories to set + name of the categories to set - Clean up any resources created by GStreamer in gst_init(). + Clean up any resources created by GStreamer in gst_init(). It is normally not needed to call this function in a normal application as the resources will automatically be freed when the program terminates. @@ -46387,12 +69808,14 @@ This function is therefore mostly used by testsuites and other memory profiling tools. After this call GStreamer (including this method) should not be used anymore. + + @@ -46405,35 +69828,211 @@ After this call GStreamer (including this method) should not be used anymore. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a copy of the name of @elem. +Caller should g_free() the return value after usage. +For a nameless element, this returns %NULL, which you can safely g_free() +as well. + + + + a #GstElement to get the name of @elem. + + + + + Get the parent of an element. + + + + a #GstElement to get the parent of. + + + + + Sets the name of the element, getting rid of the old name if there was one. + + + + a #GstElement to set the name of. + + + the new name + + + + + Sets the parent of an element. + + + + a #GstElement to set the parent of. + + + the new parent #GstObject of the element. + + + - Get a string describing the error message in the current locale. + Get a string describing the error message in the current locale. + - a newly allocated string describing + a newly allocated string describing the error message (in UTF-8 encoding) - the GStreamer error domain this error belongs to. + the GStreamer error domain this error belongs to. - the error code belonging to the domain. + the error code belonging to the domain. + + Tests if you can safely write data into a event's structure or validly +modify the seqnum and timestamp field. + + + + a #GstEvent + + + + + Makes a writable event from the given event. If the source event is +already writable, this will simply return the same event. A copy will +otherwise be made using gst_event_copy(). + + + + a #GstEvent + + + - Gets the #GstEventTypeFlags associated with @type. + Gets the #GstEventTypeFlags associated with @type. + - a #GstEventTypeFlags. + a #GstEventTypeFlags. - a #GstEventType + a #GstEventType @@ -46441,14 +70040,21 @@ After this call GStreamer (including this method) should not be used anymore. - Get a printable name for the given event type. Do not modify or free. + Get a printable name for the given event type. Do not modify or free. + - a reference to the static name of the event. + a reference to the static name of the event. - the event type + the event type @@ -46456,14 +70062,21 @@ After this call GStreamer (including this method) should not be used anymore. - Get the unique quark for the given event type. + Get the unique quark for the given event type. + - the quark associated with the event type + the quark associated with the event type - the event type + the event type @@ -46471,47 +70084,68 @@ After this call GStreamer (including this method) should not be used anymore. - Similar to g_filename_to_uri(), but attempts to handle relative file paths + Similar to g_filename_to_uri(), but attempts to handle relative file paths as well. Before converting @filename into an URI, it will be prefixed by the current working directory if it is a relative path, and then the path will be canonicalised so that it doesn't contain any './' or '../' segments. On Windows #filename should be in UTF-8 encoding. + - newly-allocated URI string, or NULL on error. The caller must + newly-allocated URI string, or NULL on error. The caller must free the URI string with g_free() when no longer needed. - absolute or relative file name path + absolute or relative file name path - Gets a string representing the given flow return. + Gets a string representing the given flow return. + - a static string with the name of the flow return. + a static string with the name of the flow return. - a #GstFlowReturn to get the name of. + a #GstFlowReturn to get the name of. - Get the unique quark for the given GstFlowReturn. + Get the unique quark for the given GstFlowReturn. + - the quark associated with the flow return or 0 if an + the quark associated with the flow return or 0 if an invalid return was specified. - a #GstFlowReturn to get the quark of. + a #GstFlowReturn to get the quark of. @@ -46519,15 +70153,22 @@ invalid return was specified. - Return the format registered with the given nick. + Return the format registered with the given nick. + - The format with @nick or GST_FORMAT_UNDEFINED + The format with @nick or GST_FORMAT_UNDEFINED if the format was not registered. - The nick of the format + The nick of the format @@ -46535,9 +70176,14 @@ if the format was not registered. - Get details about the given format. + Get details about the given format. + - The #GstFormatDefinition for @format or %NULL + The #GstFormatDefinition for @format or %NULL on failure. MT safe. @@ -46545,7 +70191,9 @@ MT safe. - The format to get details of + The format to get details of @@ -46553,15 +70201,22 @@ MT safe. - Get a printable name for the given format. Do not modify or free. + Get a printable name for the given format. Do not modify or free. + - a reference to the static name of the format + a reference to the static name of the format or %NULL if the format is unknown. - a #GstFormat + a #GstFormat @@ -46569,20 +70224,30 @@ or %NULL if the format is unknown. - Iterate all the registered formats. The format definition is read + Iterate all the registered formats. The format definition is read only. + - a GstIterator of #GstFormatDefinition. + a GstIterator of #GstFormatDefinition. - Create a new GstFormat based on the nick or return an + Create a new GstFormat based on the nick or return an already registered format with that nick. + - A new GstFormat or an already registered format + A new GstFormat or an already registered format with the same nick. MT safe. @@ -46590,11 +70255,15 @@ MT safe. - The nick of the new format + The nick of the new format - The description of the new format + The description of the new format @@ -46602,75 +70271,135 @@ MT safe. - Get the unique quark for the given format. + Get the unique quark for the given format. + - the quark associated with the format or 0 if the format + the quark associated with the format or 0 if the format is unknown. - a #GstFormat + a #GstFormat - See if the given format is inside the format array. + See if the given format is inside the format array. + - %TRUE if the format is found inside the array + %TRUE if the format is found inside the array - The format array to search + The format array to search - the format to find + the format to find + + Convert @value to a guint64. + + + + the #gdouble value to convert + + + - This helper is mostly helpful for plugins that need to + This helper is mostly helpful for plugins that need to inspect the folder of the main executable to determine their set of features. When a plugin is initialized from the gst-plugin-scanner external process, the returned path will be the same as from the parent process. + - The path of the executable that + The path of the executable that initialized GStreamer, or %NULL if it could not be determined. + + Convert @value to a gdouble. + + + + the #guint64 value to convert + + + - Allocates, fills and returns a 0-terminated string from the printf style + Allocates, fills and returns a 0-terminated string from the printf style @format string and corresponding arguments. See gst_info_vasprintf() for when this function is required. Free with g_free(). + - a newly allocated null terminated string or %NULL on any error + a newly allocated null terminated string or %NULL on any error - a printf style format string + a printf style format string - the printf arguments for @format + the printf arguments for @format @@ -46679,23 +70408,32 @@ Free with g_free(). c:identifier="gst_info_strdup_vprintf" version="1.8" introspectable="0"> - Allocates, fills and returns a null terminated string from the printf style + Allocates, fills and returns a null terminated string from the printf style @format string and @args. See gst_info_vasprintf() for when this function is required. Free with g_free(). + - a newly allocated null terminated string or %NULL on any error + a newly allocated null terminated string or %NULL on any error - a printf style format string + a printf style format string - the va_list of printf arguments for @format + the va_list of printf arguments for @format @@ -46704,7 +70442,9 @@ Free with g_free(). c:identifier="gst_info_vasprintf" version="1.8" introspectable="0"> - Allocates and fills a string large enough (including the terminating null + Allocates and fills a string large enough (including the terminating null byte) to hold the specified printf style @format and @args. This function deals with the GStreamer specific printf specifiers @@ -46713,8 +70453,11 @@ in your @format string, you do not need to use this function and can use alternatives such as g_vasprintf(). Free @result with g_free(). + - the length of the string allocated into @result or -1 on any error + the length of the string allocated into @result or -1 on any error @@ -46722,21 +70465,29 @@ Free @result with g_free(). direction="out" caller-allocates="0" transfer-ownership="full"> - the resulting string + the resulting string - a printf style format string + a printf style format string - the va_list of printf arguments for @format + the va_list of printf arguments for @format - Initializes the GStreamer library, setting up internal path lists, + Initializes the GStreamer library, setting up internal path lists, registering built-in elements, and loading standard plugins. Unless the plugin registry is disabled at compile time, the registry will be @@ -46754,6 +70505,7 @@ WARNING: This function does not work in the same way as corresponding functions in other glib-style libraries, such as gtk_init\(\). In particular, unknown command line options cause this function to abort program execution. + @@ -46764,7 +70516,9 @@ abort program execution. transfer-ownership="full" nullable="1" allow-none="1"> - pointer to application's argc + pointer to application's argc transfer-ownership="full" nullable="1" allow-none="1"> - pointer to application's argv + pointer to application's argv @@ -46781,14 +70537,19 @@ abort program execution. - Initializes the GStreamer library, setting up internal path lists, + Initializes the GStreamer library, setting up internal path lists, registering built-in elements, and loading standard plugins. This function will return %FALSE if GStreamer could not be initialized for some reason. If you want your program to fail fatally, use gst_init() instead. + - %TRUE if GStreamer could be initialized. + %TRUE if GStreamer could be initialized. @@ -46798,7 +70559,9 @@ use gst_init() instead. transfer-ownership="full" nullable="1" allow-none="1"> - pointer to application's argc + pointer to application's argc transfer-ownership="full" nullable="1" allow-none="1"> - pointer to application's argv + pointer to application's argv @@ -46817,7 +70582,9 @@ use gst_init() instead. - Returns a #GOptionGroup with GStreamer's argument specifications. The + Returns a #GOptionGroup with GStreamer's argument specifications. The group is set up to use standard GOption callbacks, so when using this group in combination with GOption parsing methods, all argument parsing and initialization is automated. @@ -46828,12 +70595,16 @@ libraries that use GOption (see g_option_context_add_group() ). If you use this function, you should make sure you initialise the GLib threading system as one of the very first things in your program (see the example at the beginning of this section). + - a pointer to GStreamer's option group. + a pointer to GStreamer's option group. + @@ -46847,10 +70618,15 @@ threading system as one of the very first things in your program - Use this function to check if GStreamer has been initialized with gst_init() + Use this function to check if GStreamer has been initialized with gst_init() or gst_init_check(). + - %TRUE if initialization has been done, %FALSE otherwise. + %TRUE if initialization has been done, %FALSE otherwise. @@ -46864,6 +70640,7 @@ or gst_init_check(). + @@ -46876,17 +70653,122 @@ or gst_init_check(). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tests if you can safely write into a message's structure or validly +modify the seqnum and timestamp fields. + + + + a #GstMessage + + + + + Checks if a message is writable. If not, a writable copy is made and +returned. + + + + the message to make writable + + + + + + + + + + + + + + + + + + + + + + + + + - Get a printable name for the given message type. Do not modify or free. + Get a printable name for the given message type. Do not modify or free. + - a reference to the static name of the message. + a reference to the static name of the message. - the message type + the message type @@ -46894,14 +70776,21 @@ or gst_init_check(). - Get the unique quark for the given message type. + Get the unique quark for the given message type. + - the quark associated with the message type + the quark associated with the message type - the message type + the message type @@ -46910,15 +70799,20 @@ or gst_init_check(). c:identifier="gst_meta_api_type_get_tags" moved-to="Meta.api_type_get_tags" version="1.2"> + - an array of tags as strings. + an array of tags as strings. - an API + an API @@ -46926,18 +70820,27 @@ or gst_init_check(). - Check if @api was registered with @tag. + Check if @api was registered with @tag. + - %TRUE if @api was registered with @tag. + %TRUE if @api was registered with @tag. - an API + an API - the tag to check + the tag to check @@ -46945,19 +70848,28 @@ or gst_init_check(). - Register and return a GType for the @api and associate it with + Register and return a GType for the @api and associate it with @tags. + - a unique GType for @api. + a unique GType for @api. - an API to register + an API to register - tags for @api + tags for @api @@ -46967,16 +70879,23 @@ or gst_init_check(). - Lookup a previously registered meta info structure by its implementation name + Lookup a previously registered meta info structure by its implementation name @impl. + - a #GstMetaInfo with @impl, or + a #GstMetaInfo with @impl, or %NULL when no such metainfo exists. - the name + the name @@ -46984,40 +70903,57 @@ or gst_init_check(). - Register a new #GstMeta implementation. + Register a new #GstMeta implementation. The same @info can be retrieved later with gst_meta_get_info() by using @impl as the key. + - a #GstMetaInfo that can be used to + a #GstMetaInfo that can be used to access metadata. - the type of the #GstMeta API + the type of the #GstMeta API - the name of the #GstMeta implementation + the name of the #GstMeta implementation - the size of the #GstMeta structure + the size of the #GstMeta structure - a #GstMetaInitFunction + a #GstMetaInitFunction - a #GstMetaFreeFunction + a #GstMetaFreeFunction - a #GstMetaTransformFunction + a #GstMetaTransformFunction @@ -47026,13 +70962,18 @@ access metadata. - Atomically modifies a pointer to point to a new mini-object. + Atomically modifies a pointer to point to a new mini-object. The reference count of @olddata is decreased and the reference count of @newdata is increased. Either @newdata and the value pointed to by @olddata may be %NULL. + - %TRUE if @newdata was different from @olddata + %TRUE if @newdata was different from @olddata @@ -47042,7 +70983,9 @@ Either @newdata and the value pointed to by @olddata may be %NULL. transfer-ownership="full" nullable="1" allow-none="1"> - pointer to a pointer to a + pointer to a pointer to a mini-object to be replaced @@ -47050,7 +70993,9 @@ Either @newdata and the value pointed to by @olddata may be %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - pointer to new mini-object + pointer to new mini-object @@ -47059,10 +71004,15 @@ Either @newdata and the value pointed to by @olddata may be %NULL. c:identifier="gst_mini_object_steal" moved-to="MiniObject.steal" introspectable="0"> - Replace the current #GstMiniObject pointer to by @olddata with %NULL and + Replace the current #GstMiniObject pointer to by @olddata with %NULL and return the old value. + - the #GstMiniObject at @oldata + the #GstMiniObject at @oldata @@ -47070,7 +71020,9 @@ return the old value. direction="inout" caller-allocates="0" transfer-ownership="full"> - pointer to a pointer to a mini-object to + pointer to a pointer to a mini-object to be stolen @@ -47079,14 +71031,19 @@ return the old value. - Modifies a pointer to point to a new mini-object. The modification + Modifies a pointer to point to a new mini-object. The modification is done atomically. This version is similar to gst_mini_object_replace() except that it does not increase the refcount of @newdata and thus takes ownership of @newdata. Either @newdata and the value pointed to by @olddata may be %NULL. + - %TRUE if @newdata was different from @olddata + %TRUE if @newdata was different from @olddata @@ -47094,120 +71051,457 @@ Either @newdata and the value pointed to by @olddata may be %NULL. direction="inout" caller-allocates="0" transfer-ownership="full"> - pointer to a pointer to a mini-object to + pointer to a pointer to a mini-object to be replaced - pointer to new mini-object + pointer to new mini-object + + + + + + + + + Get a copy of the name of the pad. g_free() after usage. + +MT safe. + + + + the pad to get the name from + + + + + Get the parent of @pad. This function increases the refcount +of the parent object so you should gst_object_unref() it after usage. +Can return %NULL if the pad did not have a parent. + +MT safe. + + + + the pad to get the parent of + + + - Return the name of a pad mode, for use in debug messages mostly. + Return the name of a pad mode, for use in debug messages mostly. + - short mnemonic for pad mode @mode + short mnemonic for pad mode @mode - the pad mode + the pad mode + + + + + + + + + Calls gst_pad_set_activate_function_full() with %NULL for the user_data and +notify. + + + + a #GstPad. + + + the #GstPadActivateFunction to set. + + + + + Calls gst_pad_set_activatemode_function_full() with %NULL for the user_data and +notify. + + + + a #GstPad. + + + the #GstPadActivateModeFunction to set. + + + + + Calls gst_pad_set_chain_function_full() with %NULL for the user_data and +notify. + + + + a sink #GstPad. + + + the #GstPadChainFunction to set. + + + + + Calls gst_pad_set_chain_list_function_full() with %NULL for the user_data and +notify. + + + + a sink #GstPad. + + + the #GstPadChainListFunction to set. + + + + + Calls gst_pad_set_event_full_function_full() with %NULL for the user_data and +notify. + + + + a #GstPad of either direction. + + + the #GstPadEventFullFunction to set. + + + + + Calls gst_pad_set_event_function_full() with %NULL for the user_data and +notify. + + + + a #GstPad of either direction. + + + the #GstPadEventFunction to set. + + + + + Calls gst_pad_set_getrange_function_full() with %NULL for the user_data and +notify. + + + + a source #GstPad. + + + the #GstPadGetRangeFunction to set. + + + + + Calls gst_pad_set_iterate_internal_links_function_full() with %NULL +for the user_data and notify. + + + + a #GstPad of either direction. + + + the #GstPadIterIntLinkFunction to set. + + + + + Calls gst_pad_set_link_function_full() with %NULL +for the user_data and notify. + + + + a #GstPad. + + + the #GstPadLinkFunction to set. + + + + + Calls gst_pad_set_query_function_full() with %NULL for the user_data and +notify. + + + + a #GstPad of either direction. + + + the #GstPadQueryFunction to set. + + + + + Calls gst_pad_set_unlink_function_full() with %NULL +for the user_data and notify. + + + + a #GstPad. + + + the #GstPadUnlinkFunction to set. + + + - This function creates a GstArray GParamSpec for use by objects/elements + This function creates a GstArray GParamSpec for use by objects/elements that want to expose properties of GstArray type. This function is typically * used in connection with g_object_class_install_property() in a GObjects's instance_init function. + - a newly created parameter specification + a newly created parameter specification - canonical name of the property specified + canonical name of the property specified - nick name for the property specified + nick name for the property specified - description of the property specified + description of the property specified - GParamSpec of the array + GParamSpec of the array - flags for the property specified + flags for the property specified - This function creates a fraction GParamSpec for use by objects/elements + This function creates a fraction GParamSpec for use by objects/elements that want to expose properties of fraction type. This function is typically used in connection with g_object_class_install_property() in a GObjects's instance_init function. + - a newly created parameter specification + a newly created parameter specification - canonical name of the property specified + canonical name of the property specified - nick name for the property specified + nick name for the property specified - description of the property specified + description of the property specified - minimum value (fraction numerator) + minimum value (fraction numerator) - minimum value (fraction denominator) + minimum value (fraction denominator) - maximum value (fraction numerator) + maximum value (fraction numerator) - maximum value (fraction denominator) + maximum value (fraction denominator) - default value (fraction numerator) + default value (fraction numerator) - default value (fraction denominator) + default value (fraction denominator) - flags for the property specified + flags for the property specified + @@ -47216,16 +71510,23 @@ instance_init function. c:identifier="gst_parent_buffer_meta_get_info" moved-to="ParentBufferMeta.get_info" version="1.6"> - Get the global #GstMetaInfo describing the #GstParentBufferMeta meta. + Get the global #GstMetaInfo describing the #GstParentBufferMeta meta. + - The #GstMetaInfo + The #GstMetaInfo - This is a convenience wrapper around gst_parse_launch() to create a + This is a convenience wrapper around gst_parse_launch() to create a #GstBin from a gst-launch-style pipeline description. See gst_parse_launch() and the gst-launch man page for details about the syntax. Ghost pads on the bin for unlinked source or sink pads @@ -47234,18 +71535,25 @@ one ghost pad for each direction will be created; if you expect multiple unlinked source pads or multiple unlinked sink pads and want them all ghosted, you will have to create the ghost pads yourself). + - a + a newly-created bin, or %NULL if an error occurred. - command line describing the bin + command line describing the bin - whether to automatically create ghost pads + whether to automatically create ghost pads for unlinked source or sink pads within the bin @@ -47254,7 +71562,9 @@ yourself). - This is a convenience wrapper around gst_parse_launch() to create a + This is a convenience wrapper around gst_parse_launch() to create a #GstBin from a gst-launch-style pipeline description. See gst_parse_launch() and the gst-launch man page for details about the syntax. Ghost pads on the bin for unlinked source or sink pads @@ -47263,8 +71573,11 @@ one ghost pad for each direction will be created; if you expect multiple unlinked source pads or multiple unlinked sink pads and want them all ghosted, you will have to create the ghost pads yourself). + - a newly-created + a newly-created element, which is guaranteed to be a bin unless GST_FLAG_NO_SINGLE_ELEMENT_BINS was passed, or %NULL if an error occurred. @@ -47272,11 +71585,15 @@ yourself). - command line describing the bin + command line describing the bin - whether to automatically create ghost pads + whether to automatically create ghost pads for unlinked source or sink pads within the bin @@ -47284,12 +71601,16 @@ yourself). transfer-ownership="none" nullable="1" allow-none="1"> - a parse context allocated with + a parse context allocated with gst_parse_context_new(), or %NULL - parsing options, or #GST_PARSE_FLAG_NONE + parsing options, or #GST_PARSE_FLAG_NONE @@ -47297,19 +71618,28 @@ yourself). - Get the error quark used by the parsing subsystem. + Get the error quark used by the parsing subsystem. - the quark of the parse errors. + the quark of the parse errors. - Create a new pipeline based on command line syntax. + Create a new pipeline based on command line syntax. Please note that you might get a return value that is not %NULL even though the @error is set. In this case there was a recoverable parsing error and you can try to play the pipeline. + - a new element on success, %NULL on + a new element on success, %NULL on failure. If more than one toplevel element is specified by the @pipeline_description, all elements are put into a #GstPipeline, which than is returned. @@ -47317,7 +71647,9 @@ can try to play the pipeline. - the command line describing the pipeline + the command line describing the pipeline @@ -47325,12 +71657,17 @@ can try to play the pipeline. - Create a new pipeline based on command line syntax. + Create a new pipeline based on command line syntax. Please note that you might get a return value that is not %NULL even though the @error is set. In this case there was a recoverable parsing error and you can try to play the pipeline. + - a new element on success, %NULL on + a new element on success, %NULL on failure. If more than one toplevel element is specified by the @pipeline_description, all elements are put into a #GstPipeline, which then is returned (unless the GST_PARSE_FLAG_PLACE_IN_BIN flag is set, in @@ -47339,35 +71676,48 @@ can try to play the pipeline. - the command line describing the pipeline + the command line describing the pipeline - a parse context allocated with + a parse context allocated with gst_parse_context_new(), or %NULL - parsing options, or #GST_PARSE_FLAG_NONE + parsing options, or #GST_PARSE_FLAG_NONE - Create a new element based on command line syntax. + Create a new element based on command line syntax. @error will contain an error message if an erroneous pipeline is specified. An error does not mean that the pipeline could not be constructed. + - a new element on success and %NULL + a new element on success and %NULL on failure. - null-terminated array of arguments + null-terminated array of arguments @@ -47377,11 +71727,16 @@ on failure. - Create a new element based on command line syntax. + Create a new element based on command line syntax. @error will contain an error message if an erroneous pipeline is specified. An error does not mean that the pipeline could not be constructed. + - a new element on success; on + a new element on success; on failure, either %NULL or a partially-constructed bin or element will be returned and @error will be set (unless you passed #GST_PARSE_FLAG_FATAL_ERRORS in @flags, then %NULL will always be returned @@ -47390,7 +71745,9 @@ An error does not mean that the pipeline could not be constructed. - null-terminated array of arguments + null-terminated array of arguments @@ -47399,12 +71756,16 @@ An error does not mean that the pipeline could not be constructed. transfer-ownership="none" nullable="1" allow-none="1"> - a parse context allocated with + a parse context allocated with gst_parse_context_new(), or %NULL - parsing options, or #GST_PARSE_FLAG_NONE + parsing options, or #GST_PARSE_FLAG_NONE @@ -47412,29 +71773,76 @@ An error does not mean that the pipeline could not be constructed. - Get the error quark. + Get the error quark. - The error quark used in GError messages + The error quark used in GError messages + + Returns the name of @feature. +For a nameless plugin feature, this returns %NULL. + + + + a #GstPluginFeature to get the name of @feature. + + + + + Sets the name of the plugin feature, getting rid of the old name if there was one. + + + + a #GstPluginFeature to set the name of. + + + the new name + + + - Create a new file descriptor set. If @controllable, it + Create a new file descriptor set. If @controllable, it is possible to restart or flush a call to gst_poll_wait() with gst_poll_restart() and gst_poll_set_flushing() respectively. Free-function: gst_poll_free + - a new #GstPoll, or %NULL in + a new #GstPoll, or %NULL in case of an error. Free with gst_poll_free(). - whether it should be possible to control a wait. + whether it should be possible to control a wait. @@ -47443,15 +71851,20 @@ Free-function: gst_poll_free c:identifier="gst_poll_new_timer" moved-to="Poll.new_timer" introspectable="0"> - Create a new poll object that can be used for scheduling cancellable + Create a new poll object that can be used for scheduling cancellable timeouts. A timeout is performed with gst_poll_wait(). Multiple timeouts can be performed from different threads. Free-function: gst_poll_free + - a new #GstPoll, or %NULL in + a new #GstPoll, or %NULL in case of an error. Free with gst_poll_free(). @@ -47459,10 +71872,15 @@ Free-function: gst_poll_free - Gets the directory for application specific presets if set by the + Gets the directory for application specific presets if set by the application. + - the directory or %NULL, don't free or modify + the directory or %NULL, don't free or modify the string @@ -47470,16 +71888,23 @@ the string - Sets an extra directory as an absolute path that should be considered when + Sets an extra directory as an absolute path that should be considered when looking for presets. Any presets in the application dir will shadow the system presets. + - %TRUE for success, %FALSE if the dir already has been set + %TRUE for success, %FALSE if the dir already has been set - the application specific preset dir + the application specific preset dir @@ -47488,7 +71913,9 @@ system presets. c:identifier="gst_print" version="1.12" introspectable="0"> - Outputs a formatted message via the GLib print handler. The default print + Outputs a formatted message via the GLib print handler. The default print handler simply outputs the message to stdout. This function will not append a new-line character at the end, unlike @@ -47501,16 +71928,21 @@ printf specifiers that are supported by GStreamer's debug logging system, such as #GST_PTR_FORMAT and #GST_SEGMENT_FORMAT. This function is primarily for printing debug output. + - a printf style format string + a printf style format string - the printf arguments for @format + the printf arguments for @format @@ -47519,7 +71951,9 @@ This function is primarily for printing debug output. c:identifier="gst_printerr" version="1.12" introspectable="0"> - Outputs a formatted message via the GLib error message handler. The default + Outputs a formatted message via the GLib error message handler. The default handler simply outputs the message to stderr. This function will not append a new-line character at the end, unlike @@ -47532,16 +71966,21 @@ printf specifiers that are supported by GStreamer's debug logging system, such as #GST_PTR_FORMAT and #GST_SEGMENT_FORMAT. This function is primarily for printing debug output. + - a printf style format string + a printf style format string - the printf arguments for @format + the printf arguments for @format @@ -47550,7 +71989,9 @@ This function is primarily for printing debug output. c:identifier="gst_printerrln" version="1.12" introspectable="0"> - Outputs a formatted message via the GLib error message handler. The default + Outputs a formatted message via the GLib error message handler. The default handler simply outputs the message to stderr. This function will append a new-line character at the end, unlike @@ -47563,16 +72004,21 @@ printf specifiers that are supported by GStreamer's debug logging system, such as #GST_PTR_FORMAT and #GST_SEGMENT_FORMAT. This function is primarily for printing debug output. + - a printf style format string + a printf style format string - the printf arguments for @format + the printf arguments for @format @@ -47581,7 +72027,9 @@ This function is primarily for printing debug output. c:identifier="gst_println" version="1.12" introspectable="0"> - Outputs a formatted message via the GLib print handler. The default print + Outputs a formatted message via the GLib print handler. The default print handler simply outputs the message to stdout. This function will append a new-line character at the end, unlike @@ -47594,16 +72042,21 @@ printf specifiers that are supported by GStreamer's debug logging system, such as #GST_PTR_FORMAT and #GST_SEGMENT_FORMAT. This function is primarily for printing debug output. + - a printf style format string + a printf style format string - the printf arguments for @format + the printf arguments for @format @@ -47611,10 +72064,15 @@ This function is primarily for printing debug output. - Iterates the supplied list of UUIDs and checks the GstRegistry for + Iterates the supplied list of UUIDs and checks the GstRegistry for all the decryptors supporting one of the supplied UUIDs. + - + A null terminated array containing all the @system_identifiers supported by the set of available decryptors, or %NULL if no matches were found. @@ -47624,7 +72082,9 @@ the @system_identifiers supported by the set of available decryptors, or - + A null terminated array of strings that contains the UUID values of each protection system that is to be checked. @@ -47635,6 +72095,7 @@ protection system that is to be checked. + @@ -47642,6 +72103,7 @@ protection system that is to be checked. + @@ -47649,11 +72111,16 @@ protection system that is to be checked. - Iterates the supplied list of UUIDs and checks the GstRegistry for + Iterates the supplied list of UUIDs and checks the GstRegistry for an element that supports one of the supplied UUIDs. If more than one element matches, the system ID of the highest ranked element is selected. + - One of the strings from + One of the strings from @system_identifiers that indicates the highest ranked element that implements the protection system indicated by that system ID, or %NULL if no element has been found. @@ -47661,7 +72128,9 @@ element has been found. - A null terminated array of strings + A null terminated array of strings that contains the UUID values of each protection system that is to be checked. @@ -47670,17 +72139,54 @@ checked. + + Tests if you can safely write data into a query's structure. + + + + a #GstQuery + + + + + Makes a writable query from the given query. + + + + a #GstQuery to make writable + + + - Gets the #GstQueryTypeFlags associated with @type. + Gets the #GstQueryTypeFlags associated with @type. + - a #GstQueryTypeFlags. + a #GstQueryTypeFlags. - a #GstQueryType + a #GstQueryType @@ -47688,14 +72194,21 @@ checked. - Get a printable name for the given query type. Do not modify or free. + Get a printable name for the given query type. Do not modify or free. + - a reference to the static name of the query. + a reference to the static name of the query. - the query type + the query type @@ -47703,20 +72216,28 @@ checked. - Get the unique quark for the given query type. + Get the unique quark for the given query type. + - the quark associated with the query type + the quark associated with the query type - the query type + the query type + @@ -47725,9 +72246,14 @@ checked. c:identifier="gst_reference_timestamp_meta_get_info" moved-to="ReferenceTimestampMeta.get_info" version="1.14"> - Get the global #GstMetaInfo describing the #GstReferenceTimestampMeta meta. + Get the global #GstMetaInfo describing the #GstReferenceTimestampMeta meta. + - The #GstMetaInfo + The #GstMetaInfo @@ -47738,29 +72264,86 @@ checked. + + Tests if you can safely set the buffer and / or buffer list of @sample. + + + + A #GstSample + + + + + Returns a writable copy of @sample. If the source sample is +already writable, this will simply return the same sample. + +Use this function to ensure that a sample can be safely modified before +making changes to it, for example before calling gst_sample_set_buffer() + +If the reference count of the source sample @sample is exactly one, the caller +is the sole owner and this function will return the sample object unchanged. + +If there is more than one reference on the object, a copy will be made using +gst_sample_copy(). The passed-in @sample will be unreffed in that case, and the +caller will now own a reference to the new returned sample object. + +In short, this function unrefs the sample in the argument and refs the sample +that it returns. Don't access the argument after calling this function unless +you have an additional reference to it. + + + + A #GstSample + + + - Some functions in the GStreamer core might install a custom SIGSEGV handler + Some functions in the GStreamer core might install a custom SIGSEGV handler to better catch and report errors to the application. Currently this feature is enabled by default when loading plugins. Applications might want to disable this behaviour with the gst_segtrap_set_enabled() function. This is typically done if the application wants to install its own handler without GStreamer interfering. + - %TRUE if GStreamer is allowed to install a custom SIGSEGV handler. + %TRUE if GStreamer is allowed to install a custom SIGSEGV handler. - Applications might want to disable/enable the SIGSEGV handling of + Applications might want to disable/enable the SIGSEGV handling of the GStreamer core. See gst_segtrap_is_enabled() for more information. + - whether a custom SIGSEGV handler should be installed. + whether a custom SIGSEGV handler should be installed. @@ -47769,27 +72352,36 @@ the GStreamer core. See gst_segtrap_is_enabled() for more information. c:identifier="gst_state_change_get_name" moved-to="StateChange.get_name" version="1.14"> - Gets a string representing the given state transition. + Gets a string representing the given state transition. + - a string with the name of the state + a string with the name of the state result. - a #GstStateChange to get the name of. + a #GstStateChange to get the name of. + + @@ -47805,14 +72397,21 @@ the GStreamer core. See gst_segtrap_is_enabled() for more information. c:identifier="gst_stream_type_get_name" moved-to="StreamType.get_name" version="1.10"> - Get a descriptive string for a given #GstStreamType + Get a descriptive string for a given #GstStreamType + - A string describing the stream type + A string describing the stream type - a #GstStreamType + a #GstStreamType @@ -47820,20 +72419,27 @@ the GStreamer core. See gst_segtrap_is_enabled() for more information. - Creates a #GstStructure from a string representation. + Creates a #GstStructure from a string representation. If end is not %NULL, a pointer to the place inside the given string where parsing ended will be returned. Free-function: gst_structure_free + - a new #GstStructure or %NULL + a new #GstStructure or %NULL when the string could not be parsed. Free with gst_structure_free() after use. - a string representation of a #GstStructure. + a string representation of a #GstStructure. optional="1" allow-none="1" skip="1"> - pointer to store the end of the string in. + pointer to store the end of the string in. - Checks if the given type is already registered. + Checks if the given type is already registered. + - %TRUE if the type is already registered + %TRUE if the type is already registered - name of the tag + name of the tag - Returns the human-readable description of this tag, You must not change or + Returns the human-readable description of this tag, You must not change or free this string. + - the human-readable description of this tag + the human-readable description of this tag - the tag + the tag - Gets the flag of @tag. + Gets the flag of @tag. + - the flag of this tag. + the flag of this tag. - the tag + the tag - Returns the human-readable name of this tag, You must not change or free + Returns the human-readable name of this tag, You must not change or free this string. + - the human-readable name of this tag + the human-readable name of this tag - the tag + the tag - Gets the #GType used for this tag. + Gets the #GType used for this tag. + - the #GType of this tag + the #GType of this tag - the tag + the tag - Checks if the given tag is fixed. A fixed tag can only contain one value. + Checks if the given tag is fixed. A fixed tag can only contain one value. Unfixed tags can contain lists of values. + - %TRUE, if the given tag is fixed. + %TRUE, if the given tag is fixed. - tag to check + tag to check @@ -47933,12 +72583,17 @@ Unfixed tags can contain lists of values. - Copies the contents for the given tag into the value, + Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. You must g_value_unset() the value after use. + - %TRUE, if a value was copied, %FALSE if the tag didn't exist in the + %TRUE, if a value was copied, %FALSE if the tag didn't exist in the given list. @@ -47947,24 +72602,84 @@ You must g_value_unset() the value after use. direction="out" caller-allocates="1" transfer-ownership="none"> - uninitialized #GValue to copy into + uninitialized #GValue to copy into - list to get the tag from + list to get the tag from - tag to read out + tag to read out + + + + + + + + + Tests if you can safely modify @taglist. It is only safe to modify taglist +when there is only one owner of the taglist - ie, the refcount is 1. + + + + a #GstTagList + + + + + Returns a writable copy of @taglist. + +If there is only one reference count on @taglist, the caller must be the +owner, and so this function will return the taglist object unchanged. If on +the other hand there is more than one reference on the object, a new taglist +object will be returned (which will be a copy of @taglist). The caller's +reference on @taglist will be removed, and instead the caller will own a +reference to the returned object. + +In short, this function unrefs the taglist in the argument and refs the +taglist that it returns. Don't access the argument after calling this +function. See also: gst_tag_list_ref(). + + + + a #GstTagList + + + - This is a convenience function for the func argument of gst_tag_register(). + This is a convenience function for the func argument of gst_tag_register(). It concatenates all given strings using a comma. The tag must be registered as a G_TYPE_STRING or this function will fail. + @@ -47973,19 +72688,26 @@ as a G_TYPE_STRING or this function will fail. direction="out" caller-allocates="1" transfer-ownership="none"> - uninitialized GValue to store result in + uninitialized GValue to store result in - GValue to copy from + GValue to copy from - This is a convenience function for the func argument of gst_tag_register(). + This is a convenience function for the func argument of gst_tag_register(). It creates a copy of the first value from the list. + @@ -47994,11 +72716,15 @@ It creates a copy of the first value from the list. direction="out" caller-allocates="1" transfer-ownership="none"> - uninitialized GValue to store result in + uninitialized GValue to store result in - GValue to copy from + GValue to copy from @@ -48006,7 +72732,9 @@ It creates a copy of the first value from the list. - Registers a new tag type for the use with GStreamer's type system. If a type + Registers a new tag type for the use with GStreamer's type system. If a type with that name is already registered, that one is used. The old registration may have used a different type however. So don't rely on your supplied values. @@ -48027,35 +72755,48 @@ merge function was supplied and if so which one. Two default merge functions are provided: gst_tag_merge_use_first() and gst_tag_merge_strings_with_comma(). + - the name or identifier string + the name or identifier string - a flag describing the type of tag info + a flag describing the type of tag info - the type this data is in + the type this data is in - human-readable name + human-readable name - a human-readable description about this tag + a human-readable description about this tag - function for merging multiple values of this tag, or %NULL + function for merging multiple values of this tag, or %NULL @@ -48063,63 +72804,170 @@ gst_tag_merge_strings_with_comma(). - Registers a new tag type for the use with GStreamer's type system. + Registers a new tag type for the use with GStreamer's type system. Same as gst_tag_register(), but @name, @nick, and @blurb must be static strings or inlined strings, as they will not be copied. (GStreamer plugins will be made resident once loaded, so this function can be used even from dynamically loaded plugins.) + - the name or identifier string (string constant) + the name or identifier string (string constant) - a flag describing the type of tag info + a flag describing the type of tag info - the type this data is in + the type this data is in - human-readable name or short description (string constant) + human-readable name or short description (string constant) - a human-readable description for this tag (string constant) + a human-readable description for this tag (string constant) - function for merging multiple values of this tag, or %NULL + function for merging multiple values of this tag, or %NULL + + Copy #GstToc with all subentries (deep copy). + + + + #GstToc to copy. + + + + + Copy #GstTocEntry with all subentries (deep copy). + + + + #GstTocEntry to copy. + + + + + + + + + + + + + + + + + - Converts @type to a string representation. + Converts @type to a string representation. + - Returns a human-readable string for @type. This string is + Returns a human-readable string for @type. This string is only for debugging purpose and should not be displayed in a user interface. - a #GstTocEntryType. + a #GstTocEntryType. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -48127,11 +72975,16 @@ even from dynamically loaded plugins.) - Registers a new typefind function to be used for typefinding. After + Registers a new typefind function to be used for typefinding. After registering this function will be available for typefinding. This function is typically called during an element's plugin initialization. + - %TRUE on success, %FALSE otherwise + %TRUE on success, %FALSE otherwise @@ -48139,15 +72992,21 @@ This function is typically called during an element's plugin initialization. - A #GstPlugin, or %NULL for a static typefind function + A #GstPlugin, or %NULL for a static typefind function - The name for registering + The name for registering - The rank (or importance) of this typefind function + The rank (or importance) of this typefind function - The #GstTypeFindFunction to use + The #GstTypeFindFunction to use - Optional comma-separated list of extensions + Optional comma-separated list of extensions that could belong to this type - Optionally the caps that could be returned when typefinding + Optionally the caps that could be returned when typefinding succeeds @@ -48175,19 +73040,25 @@ This function is typically called during an element's plugin initialization. - Optional user data. This user data must be available until the plugin + Optional user data. This user data must be available until the plugin is unloaded. - a #GDestroyNotify that will be called on @data when the plugin + a #GDestroyNotify that will be called on @data when the plugin is unloaded. - Forces GStreamer to re-scan its plugin paths and update the default + Forces GStreamer to re-scan its plugin paths and update the default plugin registry. Applications will almost never need to call this function, it is only @@ -48203,8 +73074,11 @@ any elements or access the GStreamer registry while the update is in progress. Note that this function may block for a significant amount of time. + - %TRUE if the registry has been updated successfully (does not + %TRUE if the registry has been updated successfully (does not imply that there were changes), otherwise %FALSE. @@ -48213,22 +73087,31 @@ Note that this function may block for a significant amount of time. c:identifier="gst_uri_construct" moved-to="Uri.construct" deprecated="1"> - Constructs a URI for a given valid protocol and location. + Constructs a URI for a given valid protocol and location. Free-function: g_free Use GstURI instead. + - a new string for this URI. Returns %NULL if the + a new string for this URI. Returns %NULL if the given URI protocol is not valid, or the given location is %NULL. - Protocol for URI + Protocol for URI - Location for URI + Location for URI @@ -48244,15 +73127,22 @@ Free-function: g_free c:identifier="gst_uri_from_string" moved-to="Uri.from_string" version="1.6"> - Parses a URI string into a new #GstUri object. Will return NULL if the URI + Parses a URI string into a new #GstUri object. Will return NULL if the URI cannot be parsed. + - A new #GstUri object, or NULL. + A new #GstUri object, or NULL. - The URI string to parse. + The URI string to parse. @@ -48260,21 +73150,28 @@ cannot be parsed. - Extracts the location out of a given valid URI, ie. the protocol and "://" + Extracts the location out of a given valid URI, ie. the protocol and "://" are stripped from the URI, which means that the location returned includes the hostname if one is specified. The returned string must be freed using g_free(). Free-function: g_free + - the location for this URI. Returns + the location for this URI. Returns %NULL if the URI isn't valid. If the URI does not contain a location, an empty string is returned. - A URI string + A URI string @@ -48282,15 +73179,22 @@ Free-function: g_free - Extracts the protocol out of a given valid URI. The returned string must be + Extracts the protocol out of a given valid URI. The returned string must be freed using g_free(). + - The protocol for this URI. + The protocol for this URI. - A URI string + A URI string @@ -48298,18 +73202,27 @@ freed using g_free(). - Checks if the protocol of a given valid URI matches @protocol. + Checks if the protocol of a given valid URI matches @protocol. + - %TRUE if the protocol matches. + %TRUE if the protocol matches. - a URI string + a URI string - a protocol string (e.g. "http") + a protocol string (e.g. "http") @@ -48317,15 +73230,22 @@ freed using g_free(). - Tests if the given string is a valid URI identifier. URIs start with a valid + Tests if the given string is a valid URI identifier. URIs start with a valid scheme followed by ":" and maybe a string identifying the location. + - %TRUE if the string is a valid URI + %TRUE if the string is a valid URI - A URI string + A URI string @@ -48334,20 +73254,29 @@ scheme followed by ":" and maybe a string identifying the location. c:identifier="gst_uri_join_strings" moved-to="Uri.join_strings" version="1.6"> - This is a convenience function to join two URI strings and return the result. + This is a convenience function to join two URI strings and return the result. The returned string should be g_free()'d after use. + - A string representing the percent-encoded join of + A string representing the percent-encoded join of the two URIs. - The percent-encoded base URI. + The percent-encoded base URI. - The percent-encoded reference URI to join to the @base_uri. + The percent-encoded reference URI to join to the @base_uri. @@ -48355,20 +73284,27 @@ The returned string should be g_free()'d after use. - Checks if an element exists that supports the given URI protocol. Note + Checks if an element exists that supports the given URI protocol. Note that a positive return value does not imply that a subsequent call to gst_element_make_from_uri() is guaranteed to work. + - %TRUE + %TRUE - Whether to check for a source or a sink + Whether to check for a source or a sink - Protocol that should be checked for (e.g. "http" or "smb") + Protocol that should be checked for (e.g. "http" or "smb") @@ -48376,31 +73312,43 @@ gst_element_make_from_uri() is guaranteed to work. - Tests if the given string is a valid protocol identifier. Protocols + Tests if the given string is a valid protocol identifier. Protocols must consist of alphanumeric characters, '+', '-' and '.' and must start with a alphabetic character. See RFC 3986 Section 3.1. + - %TRUE if the string is a valid protocol identifier, %FALSE otherwise. + %TRUE if the string is a valid protocol identifier, %FALSE otherwise. - A string + A string - Searches inside @array for @search_data by using the comparison function + Searches inside @array for @search_data by using the comparison function @search_func. @array must be sorted ascending. As @search_data is always passed as second argument to @search_func it's not required that @search_data has the same type as the array elements. The complexity of this search function is O(log (num_elements)). + - The address of the found + The address of the found element or %NULL if nothing was found @@ -48409,68 +73357,91 @@ element or %NULL if nothing was found transfer-ownership="none" nullable="1" allow-none="1"> - the sorted input array + the sorted input array - number of elements in the array + number of elements in the array - size of every element in bytes + size of every element in bytes - function to compare two elements, @search_data will always be passed as second argument + function to compare two elements, @search_data will always be passed as second argument - search mode that should be used + search mode that should be used - element that should be found + element that should be found - data to pass to @search_func + data to pass to @search_func - Transforms a #gdouble to a fraction and simplifies + Transforms a #gdouble to a fraction and simplifies the result. + - #gdouble to transform + #gdouble to transform - pointer to a #gint to hold the result numerator + pointer to a #gint to hold the result numerator - pointer to a #gint to hold the result denominator + pointer to a #gint to hold the result denominator @@ -48478,169 +73449,238 @@ the result. - Dumps the buffer memory into a hex representation. Useful for debugging. + Dumps the buffer memory into a hex representation. Useful for debugging. + - a #GstBuffer whose memory to dump + a #GstBuffer whose memory to dump - Dumps the memory block into a hex representation. Useful for debugging. + Dumps the memory block into a hex representation. Useful for debugging. + - a pointer to the memory to dump + a pointer to the memory to dump - the size of the memory block to dump + the size of the memory block to dump - Adds the fractions @a_n/@a_d and @b_n/@b_d and stores + Adds the fractions @a_n/@a_d and @b_n/@b_d and stores the result in @res_n and @res_d. + - %FALSE on overflow, %TRUE otherwise. + %FALSE on overflow, %TRUE otherwise. - Numerator of first value + Numerator of first value - Denominator of first value + Denominator of first value - Numerator of second value + Numerator of second value - Denominator of second value + Denominator of second value - Pointer to #gint to hold the result numerator + Pointer to #gint to hold the result numerator - Pointer to #gint to hold the result denominator + Pointer to #gint to hold the result denominator - Compares the fractions @a_n/@a_d and @b_n/@b_d and returns + Compares the fractions @a_n/@a_d and @b_n/@b_d and returns -1 if a < b, 0 if a = b and 1 if a > b. + - -1 if a < b; 0 if a = b; 1 if a > b. + -1 if a < b; 0 if a = b; 1 if a > b. - Numerator of first value + Numerator of first value - Denominator of first value + Denominator of first value - Numerator of second value + Numerator of second value - Denominator of second value + Denominator of second value - Multiplies the fractions @a_n/@a_d and @b_n/@b_d and stores + Multiplies the fractions @a_n/@a_d and @b_n/@b_d and stores the result in @res_n and @res_d. + - %FALSE on overflow, %TRUE otherwise. + %FALSE on overflow, %TRUE otherwise. - Numerator of first value + Numerator of first value - Denominator of first value + Denominator of first value - Numerator of second value + Numerator of second value - Denominator of second value + Denominator of second value - Pointer to #gint to hold the result numerator + Pointer to #gint to hold the result numerator - Pointer to #gint to hold the result denominator + Pointer to #gint to hold the result denominator - Transforms a fraction to a #gdouble. + Transforms a fraction to a #gdouble. + - Fraction numerator as #gint + Fraction numerator as #gint - Fraction denominator #gint + Fraction denominator #gint - pointer to a #gdouble for the result + pointer to a #gdouble for the result + @@ -48653,91 +73693,129 @@ the result in @res_n and @res_d. - Get a property of type %GST_TYPE_ARRAY and transform it into a + Get a property of type %GST_TYPE_ARRAY and transform it into a #GValueArray. This allow language bindings to get GST_TYPE_ARRAY properties which are otherwise not an accessible type. + - the object to set the array to + the object to set the array to - the name of the property to set + the name of the property to set - a return #GValueArray + a return #GValueArray - Get a timestamp as GstClockTime to be used for interval measurements. + Get a timestamp as GstClockTime to be used for interval measurements. The timestamp should not be interpreted in any other way. + - the timestamp + the timestamp - Calculates the greatest common divisor of @a + Calculates the greatest common divisor of @a and @b. + - Greatest common divisor of @a and @b + Greatest common divisor of @a and @b - First value as #gint + First value as #gint - Second value as #gint + Second value as #gint - Calculates the greatest common divisor of @a + Calculates the greatest common divisor of @a and @b. + - Greatest common divisor of @a and @b + Greatest common divisor of @a and @b - First value as #gint64 + First value as #gint64 - Second value as #gint64 + Second value as #gint64 - Return a constantly incrementing group id. + Return a constantly incrementing group id. This function is used to generate a new group-id for the stream-start event. This function never returns %GST_GROUP_ID_INVALID (which is 0) + - A constantly incrementing unsigned integer, which might + A constantly incrementing unsigned integer, which might overflow back to 0 at some point. + @@ -48749,27 +73827,38 @@ overflow back to 0 at some point. - Compare two sequence numbers, handling wraparound. + Compare two sequence numbers, handling wraparound. The current implementation just returns (gint32)(@s1 - @s2). + - A negative number if @s1 is before @s2, 0 if they are equal, or a + A negative number if @s1 is before @s2, 0 if they are equal, or a positive number if @s1 is after @s2. - A sequence number. + A sequence number. - Another sequence number. + Another sequence number. - Return a constantly incrementing sequence number. + Return a constantly incrementing sequence number. This function is used internally to GStreamer to be able to determine which events and messages are "the same". For example, elements may set the seqnum @@ -48777,8 +73866,11 @@ on a segment-done message to be the same as that of the last seek event, to indicate that event and the message correspond to the same segment. This function never returns %GST_SEQNUM_INVALID (which is 0). + - A constantly incrementing 32-bit unsigned integer, which might + A constantly incrementing 32-bit unsigned integer, which might overflow at some point. Use gst_util_seqnum_compare() to make sure you handle wraparound correctly. @@ -48786,25 +73878,34 @@ you handle wraparound correctly. - Converts the string value to the type of the objects argument and + Converts the string value to the type of the objects argument and sets the argument with it. Note that this function silently returns if @object has no property named @name or when @value cannot be converted to the type of the property. + - the object to set the argument of + the object to set the argument of - the name of the argument to set + the name of the argument to set - the string value to set + the string value to set @@ -48812,34 +73913,46 @@ Note that this function silently returns if @object has no property named - Transfer a #GValueArray to %GST_TYPE_ARRAY and set this value on the + Transfer a #GValueArray to %GST_TYPE_ARRAY and set this value on the specified property name. This allow language bindings to set GST_TYPE_ARRAY properties which are otherwise not an accessible type. + - the object to set the array to + the object to set the array to - the name of the property to set + the name of the property to set - a #GValueArray containing the values + a #GValueArray containing the values - Converts the string to the type of the value and + Converts the string to the type of the value and sets the value with it. Note that this function is dangerous as it does not return any indication if the conversion worked or not. + @@ -48848,23 +73961,32 @@ if the conversion worked or not. direction="out" caller-allocates="1" transfer-ownership="none"> - the value to set + the value to set - the string to get the value from + the string to get the value from - Scale @val by the rational number @num / @denom, avoiding overflows and + Scale @val by the rational number @num / @denom, avoiding overflows and underflows and without loss of precision. This function can potentially be very slow if val and num are both greater than G_MAXUINT32. + - @val * @num / @denom. In the case of an overflow, this + @val * @num / @denom. In the case of an overflow, this function returns G_MAXUINT64. If the result is not exactly representable as an integer it is truncated. See also gst_util_uint64_scale_round(), gst_util_uint64_scale_ceil(), @@ -48874,28 +73996,39 @@ gst_util_uint64_scale_int_ceil(). - the number to scale + the number to scale - the numerator of the scale ratio + the numerator of the scale ratio - the denominator of the scale ratio + the denominator of the scale ratio - Scale @val by the rational number @num / @denom, avoiding overflows and + Scale @val by the rational number @num / @denom, avoiding overflows and underflows and without loss of precision. This function can potentially be very slow if val and num are both greater than G_MAXUINT32. + - @val * @num / @denom. In the case of an overflow, this + @val * @num / @denom. In the case of an overflow, this function returns G_MAXUINT64. If the result is not exactly representable as an integer, it is rounded up. See also gst_util_uint64_scale(), gst_util_uint64_scale_round(), @@ -48905,26 +74038,37 @@ gst_util_uint64_scale_int_ceil(). - the number to scale + the number to scale - the numerator of the scale ratio + the numerator of the scale ratio - the denominator of the scale ratio + the denominator of the scale ratio - Scale @val by the rational number @num / @denom, avoiding overflows and + Scale @val by the rational number @num / @denom, avoiding overflows and underflows and without loss of precision. @num must be non-negative and @denom must be positive. + - @val * @num / @denom. In the case of an overflow, this + @val * @num / @denom. In the case of an overflow, this function returns G_MAXUINT64. If the result is not exactly representable as an integer, it is truncated. See also gst_util_uint64_scale_int_round(), gst_util_uint64_scale_int_ceil(), @@ -48934,26 +74078,37 @@ gst_util_uint64_scale_ceil(). - guint64 (such as a #GstClockTime) to scale. + guint64 (such as a #GstClockTime) to scale. - numerator of the scale factor. + numerator of the scale factor. - denominator of the scale factor. + denominator of the scale factor. - Scale @val by the rational number @num / @denom, avoiding overflows and + Scale @val by the rational number @num / @denom, avoiding overflows and underflows and without loss of precision. @num must be non-negative and @denom must be positive. + - @val * @num / @denom. In the case of an overflow, this + @val * @num / @denom. In the case of an overflow, this function returns G_MAXUINT64. If the result is not exactly representable as an integer, it is rounded up. See also gst_util_uint64_scale_int(), gst_util_uint64_scale_int_round(), @@ -48963,26 +74118,37 @@ gst_util_uint64_scale_ceil(). - guint64 (such as a #GstClockTime) to scale. + guint64 (such as a #GstClockTime) to scale. - numerator of the scale factor. + numerator of the scale factor. - denominator of the scale factor. + denominator of the scale factor. - Scale @val by the rational number @num / @denom, avoiding overflows and + Scale @val by the rational number @num / @denom, avoiding overflows and underflows and without loss of precision. @num must be non-negative and @denom must be positive. + - @val * @num / @denom. In the case of an overflow, this + @val * @num / @denom. In the case of an overflow, this function returns G_MAXUINT64. If the result is not exactly representable as an integer, it is rounded to the nearest integer (half-way cases are rounded up). See also gst_util_uint64_scale_int(), @@ -48992,28 +74158,39 @@ gst_util_uint64_scale_round(), gst_util_uint64_scale_ceil(). - guint64 (such as a #GstClockTime) to scale. + guint64 (such as a #GstClockTime) to scale. - numerator of the scale factor. + numerator of the scale factor. - denominator of the scale factor. + denominator of the scale factor. - Scale @val by the rational number @num / @denom, avoiding overflows and + Scale @val by the rational number @num / @denom, avoiding overflows and underflows and without loss of precision. This function can potentially be very slow if val and num are both greater than G_MAXUINT32. + - @val * @num / @denom. In the case of an overflow, this + @val * @num / @denom. In the case of an overflow, this function returns G_MAXUINT64. If the result is not exactly representable as an integer, it is rounded to the nearest integer (half-way cases are rounded up). See also gst_util_uint64_scale(), @@ -49023,123 +74200,179 @@ gst_util_uint64_scale_int_round(), gst_util_uint64_scale_int_ceil(). - the number to scale + the number to scale - the numerator of the scale ratio + the numerator of the scale ratio - the denominator of the scale ratio + the denominator of the scale ratio - Determines if @value1 and @value2 can be compared. + Determines if @value1 and @value2 can be compared. + - %TRUE if the values can be compared + %TRUE if the values can be compared - a value to compare + a value to compare - another value to compare + another value to compare - Determines if intersecting two values will produce a valid result. + Determines if intersecting two values will produce a valid result. Two values will produce a valid intersection if they have the same type. + - %TRUE if the values can intersect + %TRUE if the values can intersect - a value to intersect + a value to intersect - another value to intersect + another value to intersect - Checks if it's possible to subtract @subtrahend from @minuend. + Checks if it's possible to subtract @subtrahend from @minuend. + - %TRUE if a subtraction is possible + %TRUE if a subtraction is possible - the value to subtract from + the value to subtract from - the value to subtract + the value to subtract - Determines if @value1 and @value2 can be non-trivially unioned. + Determines if @value1 and @value2 can be non-trivially unioned. Any two values can be trivially unioned by adding both of them to a GstValueList. However, certain types have the possibility to be unioned in a simpler way. For example, an integer range and an integer can be unioned if the integer is a subset of the integer range. If there is the possibility that two values can be unioned, this function returns %TRUE. + - %TRUE if there is a function allowing the two values to + %TRUE if there is a function allowing the two values to be unioned. - a value to union + a value to union - another value to union + another value to union - Compares @value1 and @value2. If @value1 and @value2 cannot be + Compares @value1 and @value2. If @value1 and @value2 cannot be compared, the function returns GST_VALUE_UNORDERED. Otherwise, if @value1 is greater than @value2, GST_VALUE_GREATER_THAN is returned. If @value1 is less than @value2, GST_VALUE_LESS_THAN is returned. If the values are equal, GST_VALUE_EQUAL is returned. + - comparison result + comparison result - a value to compare + a value to compare - another value to compare + another value to compare - Tries to deserialize a string into the type specified by the given GValue. + Tries to deserialize a string into the type specified by the given GValue. If the operation succeeds, %TRUE is returned, %FALSE otherwise. + - %TRUE on success + %TRUE on success @@ -49147,147 +74380,234 @@ If the operation succeeds, %TRUE is returned, %FALSE otherwise. direction="out" caller-allocates="1" transfer-ownership="none"> - #GValue to fill with contents of + #GValue to fill with contents of deserialization - string to deserialize + string to deserialize - Fixate @src into a new value @dest. + Fixate @src into a new value @dest. For ranges, the first element is taken. For lists and arrays, the first item is fixated and returned. If @src is already fixed, this function returns %FALSE. + - %TRUE if @dest contains a fixated version of @src. + %TRUE if @dest contains a fixated version of @src. - the #GValue destination + the #GValue destination - the #GValue to fixate + the #GValue to fixate - Multiplies the two #GValue items containing a #GST_TYPE_FRACTION and sets + Multiplies the two #GValue items containing a #GST_TYPE_FRACTION and sets @product to the product of the two fractions. + - %FALSE in case of an error (like integer overflow), %TRUE otherwise. + %FALSE in case of an error (like integer overflow), %TRUE otherwise. - a GValue initialized to #GST_TYPE_FRACTION + a GValue initialized to #GST_TYPE_FRACTION - a GValue initialized to #GST_TYPE_FRACTION + a GValue initialized to #GST_TYPE_FRACTION - a GValue initialized to #GST_TYPE_FRACTION + a GValue initialized to #GST_TYPE_FRACTION - Subtracts the @subtrahend from the @minuend and sets @dest to the result. + Subtracts the @subtrahend from the @minuend and sets @dest to the result. + - %FALSE in case of an error (like integer overflow), %TRUE otherwise. + %FALSE in case of an error (like integer overflow), %TRUE otherwise. - a GValue initialized to #GST_TYPE_FRACTION + a GValue initialized to #GST_TYPE_FRACTION - a GValue initialized to #GST_TYPE_FRACTION + a GValue initialized to #GST_TYPE_FRACTION - a GValue initialized to #GST_TYPE_FRACTION + a GValue initialized to #GST_TYPE_FRACTION - Gets the bitmask specified by @value. + Gets the bitmask specified by @value. + - the bitmask. + the bitmask. - a GValue initialized to #GST_TYPE_BITMASK + a GValue initialized to #GST_TYPE_BITMASK + + Receives a #GstBuffer as the value of @v. Does not return a reference to +the buffer, so the pointer is only valid for as long as the caller owns +a reference to @v. + + + + a #GValue to query + + + - Gets the contents of @value. The reference count of the returned + Gets the contents of @value. The reference count of the returned #GstCaps will not be modified, therefore the caller must take one before getting rid of the @value. + - the contents of @value + the contents of @value - a GValue initialized to GST_TYPE_CAPS + a GValue initialized to GST_TYPE_CAPS - Gets the contents of @value. + Gets the contents of @value. + - the contents of @value + the contents of @value - a GValue initialized to GST_TYPE_CAPS_FEATURES + a GValue initialized to GST_TYPE_CAPS_FEATURES - Gets the maximum of the range specified by @value. + Gets the maximum of the range specified by @value. + - the maximum of the range + the maximum of the range - a GValue initialized to GST_TYPE_DOUBLE_RANGE + a GValue initialized to GST_TYPE_DOUBLE_RANGE - Gets the minimum of the range specified by @value. + Gets the minimum of the range specified by @value. + - the minimum of the range + the minimum of the range - a GValue initialized to GST_TYPE_DOUBLE_RANGE + a GValue initialized to GST_TYPE_DOUBLE_RANGE @@ -49295,14 +74615,21 @@ before getting rid of the @value. - Retrieve the flags field of a GstFlagSet @value. + Retrieve the flags field of a GstFlagSet @value. + - the flags field of the flagset instance. + the flags field of the flagset instance. - a GValue initialized to #GST_TYPE_FLAG_SET + a GValue initialized to #GST_TYPE_FLAG_SET @@ -49310,176 +74637,280 @@ before getting rid of the @value. - Retrieve the mask field of a GstFlagSet @value. + Retrieve the mask field of a GstFlagSet @value. + - the mask field of the flagset instance. + the mask field of the flagset instance. - a GValue initialized to #GST_TYPE_FLAG_SET + a GValue initialized to #GST_TYPE_FLAG_SET - Gets the denominator of the fraction specified by @value. + Gets the denominator of the fraction specified by @value. + - the denominator of the fraction. + the denominator of the fraction. - a GValue initialized to #GST_TYPE_FRACTION + a GValue initialized to #GST_TYPE_FRACTION - Gets the numerator of the fraction specified by @value. + Gets the numerator of the fraction specified by @value. + - the numerator of the fraction. + the numerator of the fraction. - a GValue initialized to #GST_TYPE_FRACTION + a GValue initialized to #GST_TYPE_FRACTION - Gets the maximum of the range specified by @value. + Gets the maximum of the range specified by @value. + - the maximum of the range + the maximum of the range - a GValue initialized to GST_TYPE_FRACTION_RANGE + a GValue initialized to GST_TYPE_FRACTION_RANGE - Gets the minimum of the range specified by @value. + Gets the minimum of the range specified by @value. + - the minimum of the range + the minimum of the range - a GValue initialized to GST_TYPE_FRACTION_RANGE + a GValue initialized to GST_TYPE_FRACTION_RANGE - Gets the maximum of the range specified by @value. + Gets the maximum of the range specified by @value. + - the maximum of the range + the maximum of the range - a GValue initialized to GST_TYPE_INT64_RANGE + a GValue initialized to GST_TYPE_INT64_RANGE - Gets the minimum of the range specified by @value. + Gets the minimum of the range specified by @value. + - the minimum of the range + the minimum of the range - a GValue initialized to GST_TYPE_INT64_RANGE + a GValue initialized to GST_TYPE_INT64_RANGE - Gets the step of the range specified by @value. + Gets the step of the range specified by @value. + - the step of the range + the step of the range - a GValue initialized to GST_TYPE_INT64_RANGE + a GValue initialized to GST_TYPE_INT64_RANGE - Gets the maximum of the range specified by @value. + Gets the maximum of the range specified by @value. + - the maximum of the range + the maximum of the range - a GValue initialized to GST_TYPE_INT_RANGE + a GValue initialized to GST_TYPE_INT_RANGE - Gets the minimum of the range specified by @value. + Gets the minimum of the range specified by @value. + - the minimum of the range + the minimum of the range - a GValue initialized to GST_TYPE_INT_RANGE + a GValue initialized to GST_TYPE_INT_RANGE - Gets the step of the range specified by @value. + Gets the step of the range specified by @value. + - the step of the range + the step of the range - a GValue initialized to GST_TYPE_INT_RANGE + a GValue initialized to GST_TYPE_INT_RANGE + + Receives a #GstSample as the value of @v. Does not return a reference to +the sample, so the pointer is only valid for as long as the caller owns +a reference to @v. + + + + a #GValue to query + + + - Gets the contents of @value. + Gets the contents of @value. + - the contents of @value + the contents of @value - a GValue initialized to GST_TYPE_STRUCTURE + a GValue initialized to GST_TYPE_STRUCTURE - Initialises the target value to be of the same type as source and then copies + Initialises the target value to be of the same type as source and then copies the contents from source to target. + @@ -49488,22 +74919,31 @@ the contents from source to target. direction="out" caller-allocates="1" transfer-ownership="none"> - the target value + the target value - the source value + the source value - Calculates the intersection of two values. If the values have + Calculates the intersection of two values. If the values have a non-empty intersection, the value representing the intersection is placed in @dest, unless %NULL. If the intersection is non-empty, @dest is not modified. + - %TRUE if the intersection is non-empty + %TRUE if the intersection is non-empty @@ -49513,152 +74953,236 @@ is placed in @dest, unless %NULL. If the intersection is non-empty, transfer-ownership="full" optional="1" allow-none="1"> - + a uninitialized #GValue that will hold the calculated intersection value. May be %NULL if the resulting set if not needed. - a value to intersect + a value to intersect - another value to intersect + another value to intersect - Tests if the given GValue, if available in a GstStructure (or any other + Tests if the given GValue, if available in a GstStructure (or any other container) contains a "fixed" (which means: one value) or an "unfixed" (which means: multiple possible values, such as data lists or data ranges) value. + - true if the value is "fixed". + true if the value is "fixed". - the #GValue to check + the #GValue to check - Check that @value1 is a subset of @value2. + Check that @value1 is a subset of @value2. + - %TRUE is @value1 is a subset of @value2 + %TRUE is @value1 is a subset of @value2 - a #GValue + a #GValue - a #GValue + a #GValue - Registers functions to perform calculations on #GValue items of a given + Registers functions to perform calculations on #GValue items of a given type. Each type can only be added once. + - structure containing functions to register + structure containing functions to register - tries to transform the given @value into a string representation that allows + tries to transform the given @value into a string representation that allows getting back this string later on using gst_value_deserialize(). Free-function: g_free + - the serialization for @value + the serialization for @value or %NULL if none exists - a #GValue to serialize + a #GValue to serialize - Sets @value to the bitmask specified by @bitmask. + Sets @value to the bitmask specified by @bitmask. + - a GValue initialized to #GST_TYPE_BITMASK + a GValue initialized to #GST_TYPE_BITMASK - the bitmask + the bitmask + + Sets @b as the value of @v. Caller retains reference to buffer. + + + + a #GValue to receive the data + + + a #GstBuffer to assign to the GstValue + + + - Sets the contents of @value to @caps. A reference to the + Sets the contents of @value to @caps. A reference to the provided @caps will be taken by the @value. + - a GValue initialized to GST_TYPE_CAPS + a GValue initialized to GST_TYPE_CAPS - the caps to set the value to + the caps to set the value to - Sets the contents of @value to @features. + Sets the contents of @value to @features. + - a GValue initialized to GST_TYPE_CAPS_FEATURES + a GValue initialized to GST_TYPE_CAPS_FEATURES - the features to set the value to + the features to set the value to - Sets @value to the range specified by @start and @end. + Sets @value to the range specified by @start and @end. + - a GValue initialized to GST_TYPE_DOUBLE_RANGE + a GValue initialized to GST_TYPE_DOUBLE_RANGE - the start of the range + the start of the range - the end of the range + the end of the range @@ -49666,214 +75190,326 @@ provided @caps will be taken by the @value. - Sets @value to the flags and mask values provided in @flags and @mask. + Sets @value to the flags and mask values provided in @flags and @mask. The @flags value indicates the values of flags, the @mask represents which bits in the flag value have been set, and which are "don't care" + - a GValue initialized to %GST_TYPE_FLAG_SET + a GValue initialized to %GST_TYPE_FLAG_SET - The value of the flags set or unset + The value of the flags set or unset - The mask indicate which flags bits must match for comparisons + The mask indicate which flags bits must match for comparisons - Sets @value to the fraction specified by @numerator over @denominator. + Sets @value to the fraction specified by @numerator over @denominator. The fraction gets reduced to the smallest numerator and denominator, and if necessary the sign is moved to the numerator. + - a GValue initialized to #GST_TYPE_FRACTION + a GValue initialized to #GST_TYPE_FRACTION - the numerator of the fraction + the numerator of the fraction - the denominator of the fraction + the denominator of the fraction - Sets @value to the range specified by @start and @end. + Sets @value to the range specified by @start and @end. + - a GValue initialized to GST_TYPE_FRACTION_RANGE + a GValue initialized to GST_TYPE_FRACTION_RANGE - the start of the range (a GST_TYPE_FRACTION GValue) + the start of the range (a GST_TYPE_FRACTION GValue) - the end of the range (a GST_TYPE_FRACTION GValue) + the end of the range (a GST_TYPE_FRACTION GValue) - Sets @value to the range specified by @numerator_start/@denominator_start + Sets @value to the range specified by @numerator_start/@denominator_start and @numerator_end/@denominator_end. + - a GValue initialized to GST_TYPE_FRACTION_RANGE + a GValue initialized to GST_TYPE_FRACTION_RANGE - the numerator start of the range + the numerator start of the range - the denominator start of the range + the denominator start of the range - the numerator end of the range + the numerator end of the range - the denominator end of the range + the denominator end of the range - Sets @value to the range specified by @start and @end. + Sets @value to the range specified by @start and @end. + - a GValue initialized to GST_TYPE_INT64_RANGE + a GValue initialized to GST_TYPE_INT64_RANGE - the start of the range + the start of the range - the end of the range + the end of the range - Sets @value to the range specified by @start, @end and @step. + Sets @value to the range specified by @start, @end and @step. + - a GValue initialized to GST_TYPE_INT64_RANGE + a GValue initialized to GST_TYPE_INT64_RANGE - the start of the range + the start of the range - the end of the range + the end of the range - the step of the range + the step of the range - Sets @value to the range specified by @start and @end. + Sets @value to the range specified by @start and @end. + - a GValue initialized to GST_TYPE_INT_RANGE + a GValue initialized to GST_TYPE_INT_RANGE - the start of the range + the start of the range - the end of the range + the end of the range - Sets @value to the range specified by @start, @end and @step. + Sets @value to the range specified by @start, @end and @step. + - a GValue initialized to GST_TYPE_INT_RANGE + a GValue initialized to GST_TYPE_INT_RANGE - the start of the range + the start of the range - the end of the range + the end of the range - the step of the range + the step of the range + + Sets @b as the value of @v. Caller retains reference to sample. + + + + a #GValue to receive the data + + + a #GstSample to assign to the GstValue + + + - Sets the contents of @value to @structure. + Sets the contents of @value to @structure. + - a GValue initialized to GST_TYPE_STRUCTURE + a GValue initialized to GST_TYPE_STRUCTURE - the structure to set the value to + the structure to set the value to - Subtracts @subtrahend from @minuend and stores the result in @dest. + Subtracts @subtrahend from @minuend and stores the result in @dest. Note that this means subtraction as in sets, not as in mathematics. + - %TRUE if the subtraction is not empty + %TRUE if the subtraction is not empty @@ -49883,26 +75519,77 @@ Note that this means subtraction as in sets, not as in mathematics. transfer-ownership="none" optional="1" allow-none="1"> - the destination value + the destination value for the result if the subtraction is not empty. May be %NULL, in which case the resulting set will not be computed, which can give a fair speedup. - the value to subtract from + the value to subtract from - the value to subtract + the value to subtract + + Sets @b as the value of @v. Caller gives away reference to buffer. + + + + a #GValue to receive the data + + + a #GstBuffer to assign to the GstValue + + + + + Sets @b as the value of @v. Caller gives away reference to sample. + + + + a #GValue to receive the data + + + a #GstSample to assign to the GstValue + + + - Creates a GValue corresponding to the union of @value1 and @value2. + Creates a GValue corresponding to the union of @value1 and @value2. + - %TRUE if the union succeeded. + %TRUE if the union succeeded. @@ -49910,21 +75597,30 @@ Note that this means subtraction as in sets, not as in mathematics. direction="out" caller-allocates="1" transfer-ownership="none"> - the destination value + the destination value - a value to union + a value to union - another value to union + another value to union - Gets the version number of the GStreamer library. + Gets the version number of the GStreamer library. + @@ -49933,37 +75629,50 @@ Note that this means subtraction as in sets, not as in mathematics. direction="out" caller-allocates="0" transfer-ownership="full"> - pointer to a guint to store the major version number + pointer to a guint to store the major version number - pointer to a guint to store the minor version number + pointer to a guint to store the minor version number - pointer to a guint to store the micro version number + pointer to a guint to store the micro version number - pointer to a guint to store the nano version number + pointer to a guint to store the nano version number - This function returns a string that is useful for describing this version + This function returns a string that is useful for describing this version of GStreamer to the outside world: user agent strings, logging, ... + - a newly allocated string describing this version + a newly allocated string describing this version of GStreamer. diff --git a/gir-files/GstApp-1.0.gir b/gir-files/GstApp-1.0.gir index 775b6d294..93beb2ca0 100644 --- a/gir-files/GstApp-1.0.gir +++ b/gir-files/GstApp-1.0.gir @@ -15,6 +15,60 @@ and/or use gtk-doc annotations. --> shared-library="libgstapp-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GstAppSink" glib:get-type="gst_app_sink_get_type" glib:type-struct="AppSinkClass"> - Appsink is a sink plugin that supports many different methods for making + 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. @@ -58,8 +114,10 @@ is stopped or in the EOS state. You can check for the EOS state with the The eos signal can also be used to be informed when the EOS state is reached to avoid polling. + + @@ -70,6 +128,7 @@ to avoid polling. + @@ -80,6 +139,7 @@ to avoid polling. + @@ -90,7 +150,9 @@ to avoid polling. - Get the last preroll sample in @appsink. This was the sample that caused the + Get the last preroll sample in @appsink. This was the sample that caused the appsink to preroll in the PAUSED state. This function is typically used when dealing with a pipeline in the PAUSED @@ -108,20 +170,27 @@ If an EOS event was received before any buffers, this function returns This function blocks until a preroll sample or EOS is received or the appsink element is set to the READY/NULL state. + - a #GstSample or NULL when the appsink is stopped or EOS. + a #GstSample or NULL when the appsink is stopped or EOS. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink - This function blocks until a sample or EOS becomes available or the appsink + This function blocks until a sample or EOS becomes available or the appsink element is set to the READY/NULL state. This function will only return samples when the appsink is in the PLAYING @@ -132,14 +201,19 @@ 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. + - a #GstSample or NULL when the appsink is stopped or EOS. + a #GstSample or NULL when the appsink is stopped or EOS. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink @@ -147,7 +221,9 @@ If an EOS event was received before any buffers, this function returns - Get the last preroll sample in @appsink. This was the sample that caused the + Get the last preroll sample in @appsink. This was the sample that caused the appsink to preroll in the PAUSED state. This function is typically used when dealing with a pipeline in the PAUSED @@ -166,18 +242,25 @@ condition. This function blocks until a preroll sample or EOS is received, the appsink element is set to the READY/NULL state, or the timeout expires. + - a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. + a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink - the maximum amount of time to wait for the preroll sample + the maximum amount of time to wait for the preroll sample @@ -185,7 +268,9 @@ element is set to the READY/NULL state, or the timeout expires. - This function blocks until a sample or EOS becomes available or the appsink + This function blocks until a sample or EOS becomes available or the appsink element is set to the READY/NULL state or the timeout expires. This function will only return samples when the appsink is in the PLAYING @@ -197,18 +282,25 @@ especially when dealing with raw video frames. If an EOS event was received before any buffers or the timeout expires, this function returns %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. + - a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. + a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink - the maximum amount of time to wait for a sample + the maximum amount of time to wait for a sample @@ -216,110 +308,161 @@ Call gst_sample_unref() after usage. - Check if @appsink supports buffer lists. + Check if @appsink supports buffer lists. + - %TRUE if @appsink supports buffer lists. + %TRUE if @appsink supports buffer lists. - a #GstAppSink + a #GstAppSink - Get the configured caps on @appsink. + Get the configured caps on @appsink. + - the #GstCaps accepted by the sink. gst_caps_unref() after usage. + the #GstCaps accepted by the sink. gst_caps_unref() after usage. - a #GstAppSink + a #GstAppSink - Check if @appsink will drop old buffers when the maximum amount of queued + Check if @appsink will drop old buffers when the maximum amount of queued buffers is reached. + - %TRUE if @appsink is dropping old buffers when the queue is + %TRUE if @appsink is dropping old buffers when the queue is filled. - a #GstAppSink + a #GstAppSink - Check if appsink will emit the "new-preroll" and "new-sample" signals. + Check if appsink will emit the "new-preroll" and "new-sample" signals. + - %TRUE if @appsink is emiting the "new-preroll" and "new-sample" + %TRUE if @appsink is emiting the "new-preroll" and "new-sample" signals. - a #GstAppSink + a #GstAppSink - Get the maximum amount of buffers that can be queued in @appsink. + Get the maximum amount of buffers that can be queued in @appsink. + - The maximum amount of buffers that can be queued. + The maximum amount of buffers that can be queued. - a #GstAppSink + a #GstAppSink - Check if @appsink will wait for all buffers to be consumed when an EOS is + Check if @appsink will wait for all buffers to be consumed when an EOS is received. + - %TRUE if @appsink will wait for all buffers to be consumed when an + %TRUE if @appsink will wait for all buffers to be consumed when an EOS is received. - a #GstAppSink + a #GstAppSink - Check if @appsink is EOS, which is when no more samples can be pulled because + Check if @appsink is EOS, which is when no more samples can be pulled because an EOS event was received. This function also returns %TRUE when the appsink is not in the PAUSED or PLAYING state. + - %TRUE if no more samples can be pulled and the appsink is EOS. + %TRUE if no more samples can be pulled and the appsink is EOS. - a #GstAppSink + a #GstAppSink - Get the last preroll sample in @appsink. This was the sample that caused the + Get the last preroll sample in @appsink. This was the sample that caused the appsink to preroll in the PAUSED state. This function is typically used when dealing with a pipeline in the PAUSED @@ -337,20 +480,27 @@ If an EOS event was received before any buffers, this function returns This function blocks until a preroll sample or EOS is received or the appsink element is set to the READY/NULL state. + - a #GstSample or NULL when the appsink is stopped or EOS. + a #GstSample or NULL when the appsink is stopped or EOS. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink - This function blocks until a sample or EOS becomes available or the appsink + This function blocks until a sample or EOS becomes available or the appsink element is set to the READY/NULL state. This function will only return samples when the appsink is in the PLAYING @@ -361,14 +511,19 @@ 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. + - a #GstSample or NULL when the appsink is stopped or EOS. + a #GstSample or NULL when the appsink is stopped or EOS. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink @@ -376,20 +531,27 @@ If an EOS event was received before any buffers, this function returns - Instruct @appsink to enable or disable buffer list support. + Instruct @appsink to enable or disable buffer list support. For backwards-compatibility reasons applications need to opt in to indicate that they will be able to handle buffer lists. + - a #GstAppSink + a #GstAppSink - enable or disable buffer list support + enable or disable buffer list support @@ -397,124 +559,170 @@ to indicate that they will be able to handle buffer lists. - Set callbacks which will be executed for each new preroll, new sample and eos. + Set callbacks which will be executed for each new preroll, new sample and eos. This is an alternative to using the signals, it has lower overhead and is thus less expensive, but also less flexible. If callbacks are installed, no signals will be emitted for performance reasons. + - a #GstAppSink + a #GstAppSink - the callbacks + the callbacks - a user_data argument for the callbacks + a user_data argument for the callbacks - a destroy notify function + a destroy notify function - Set the capabilities on the appsink element. This function takes + 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, or incomplete, you must check the caps on the samples to get the actual used caps. + - a #GstAppSink + a #GstAppSink - caps to set + caps to set - Instruct @appsink to drop old buffers when the maximum amount of queued + Instruct @appsink to drop old buffers when the maximum amount of queued buffers is reached. + - a #GstAppSink + a #GstAppSink - the new state + the new state - Make appsink emit the "new-preroll" and "new-sample" signals. This option is + Make appsink emit the "new-preroll" and "new-sample" signals. This option is by default disabled because signal emission is expensive and unneeded when the application prefers to operate in pull mode. + - a #GstAppSink + a #GstAppSink - the new state + the new state - Set the maximum amount of buffers that can be queued in @appsink. After this + Set the maximum amount of buffers that can be queued in @appsink. After this amount of buffers are queued in appsink, any more buffers will block upstream elements until a sample is pulled from @appsink. + - a #GstAppSink + a #GstAppSink - the maximum number of buffers to queue + the maximum number of buffers to queue - Instruct @appsink to wait for all buffers to be consumed when an EOS is received. + Instruct @appsink to wait for all buffers to be consumed when an EOS is received. + - a #GstAppSink + a #GstAppSink - the new state + the new state @@ -522,7 +730,9 @@ elements until a sample is pulled from @appsink. - Get the last preroll sample in @appsink. This was the sample that caused the + Get the last preroll sample in @appsink. This was the sample that caused the appsink to preroll in the PAUSED state. This function is typically used when dealing with a pipeline in the PAUSED @@ -541,18 +751,25 @@ condition. This function blocks until a preroll sample or EOS is received, the appsink element is set to the READY/NULL state, or the timeout expires. + - a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. + a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink - the maximum amount of time to wait for the preroll sample + the maximum amount of time to wait for the preroll sample @@ -560,7 +777,9 @@ element is set to the READY/NULL state, or the timeout expires. - This function blocks until a sample or EOS becomes available or the appsink + This function blocks until a sample or EOS becomes available or the appsink element is set to the READY/NULL state or the timeout expires. This function will only return samples when the appsink is in the PLAYING @@ -572,18 +791,25 @@ especially when dealing with raw video frames. If an EOS event was received before any buffers or the timeout expires, this function returns %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. + - a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. + a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink - the maximum amount of time to wait for a sample + the maximum amount of time to wait for a sample @@ -616,19 +842,23 @@ Call gst_sample_unref() after usage. - + - Signal that the end-of-stream has been reached. This signal is emitted from + Signal that the end-of-stream has been reached. This signal is emitted from the streaming thread. - Signal that a new preroll sample is available. + Signal that a new preroll sample is available. This signal is emitted from the streaming thread and only when the "emit-signals" property is %TRUE. @@ -644,7 +874,9 @@ set to %TRUE, which it is not by default for performance reasons. - Signal that a new sample is available. + Signal that a new sample is available. This signal is emitted from the streaming thread and only when the "emit-signals" property is %TRUE. @@ -660,7 +892,9 @@ set to %TRUE, which it is not by default for performance reasons. - Get the last preroll sample in @appsink. This was the sample that caused the + Get the last preroll sample in @appsink. This was the sample that caused the appsink to preroll in the PAUSED state. This function is typically used when dealing with a pipeline in the PAUSED @@ -679,12 +913,16 @@ If an EOS event was received before any buffers, this function returns This function blocks until a preroll sample or EOS is received or the appsink element is set to the READY/NULL state. - a #GstSample or NULL when the appsink is stopped or EOS. + a #GstSample or NULL when the appsink is stopped or EOS. - This function blocks until a sample or EOS becomes available or the appsink + This function blocks until a sample or EOS becomes available or the appsink element is set to the READY/NULL state. This function will only return samples when the appsink is in the PLAYING @@ -699,7 +937,9 @@ 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. - a #GstSample or NULL when the appsink is stopped or EOS. + a #GstSample or NULL when the appsink is stopped or EOS. @@ -707,7 +947,9 @@ If an EOS event was received before any buffers, this function returns when="last" action="1" version="1.10"> - Get the last preroll sample in @appsink. This was the sample that caused the + Get the last preroll sample in @appsink. This was the sample that caused the appsink to preroll in the PAUSED state. This function is typically used when dealing with a pipeline in the PAUSED @@ -727,12 +969,16 @@ condition. This function blocks until a preroll sample or EOS is received, the appsink element is set to the READY/NULL state, or the timeout expires. - a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. + a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. - the maximum amount of time to wait for the preroll sample + the maximum amount of time to wait for the preroll sample @@ -741,7 +987,9 @@ element is set to the READY/NULL state, or the timeout expires. when="last" action="1" version="1.10"> - This function blocks until a sample or EOS becomes available or the appsink + This function blocks until a sample or EOS becomes available or the appsink element is set to the READY/NULL state or the timeout expires. This function will only return samples when the appsink is in the PLAYING @@ -757,12 +1005,16 @@ If an EOS event was received before any buffers or the timeout expires, this function returns %NULL. Use gst_app_sink_is_eos () to check for the EOS condition. - a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. + a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. - the maximum amount of time to wait for a sample + the maximum amount of time to wait for a sample @@ -771,10 +1023,14 @@ for the EOS condition. - A set of callbacks that can be installed on the appsink with + A set of callbacks that can be installed on the appsink with gst_app_sink_set_callbacks(). + + @@ -794,6 +1050,7 @@ gst_app_sink_set_callbacks(). + @@ -813,6 +1070,7 @@ gst_app_sink_set_callbacks(). + @@ -831,7 +1089,7 @@ gst_app_sink_set_callbacks(). - + @@ -839,11 +1097,13 @@ gst_app_sink_set_callbacks(). + + @@ -856,6 +1116,7 @@ gst_app_sink_set_callbacks(). + @@ -868,6 +1129,7 @@ gst_app_sink_set_callbacks(). + @@ -880,14 +1142,19 @@ gst_app_sink_set_callbacks(). + - a #GstSample or NULL when the appsink is stopped or EOS. + a #GstSample or NULL when the appsink is stopped or EOS. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink @@ -895,14 +1162,19 @@ gst_app_sink_set_callbacks(). + - a #GstSample or NULL when the appsink is stopped or EOS. + a #GstSample or NULL when the appsink is stopped or EOS. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink @@ -910,18 +1182,25 @@ gst_app_sink_set_callbacks(). + - a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. + a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink - the maximum amount of time to wait for the preroll sample + the maximum amount of time to wait for the preroll sample @@ -929,30 +1208,38 @@ gst_app_sink_set_callbacks(). + - a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. + a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires. Call gst_sample_unref() after usage. - a #GstAppSink + a #GstAppSink - the maximum amount of time to wait for a sample + the maximum amount of time to wait for a sample - + + glib:type-name="GstAppSrc" glib:get-type="gst_app_src_get_type" glib:type-struct="AppSrcClass"> - The appsrc element can be used by applications to insert data into a + The appsrc element can be used by applications to insert data into a GStreamer pipeline. Unlike most GStreamer elements, appsrc provides external API functions. @@ -1025,23 +1314,32 @@ When the application has 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 occurs or the state of the appsrc has gone through READY. + - Indicates to the appsrc element that the last buffer queued in the + Indicates to the appsrc element that the last buffer queued in the element is the last buffer of the stream. + - #GST_FLOW_OK when the EOS was successfuly queued. + #GST_FLOW_OK when the EOS was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. - a #GstAppSrc + a #GstAppSrc + @@ -1052,6 +1350,7 @@ element is the last buffer of the stream. + @@ -1065,24 +1364,33 @@ element is the last buffer of the stream. - Adds a buffer to the queue of buffers that the appsrc element will + Adds a buffer to the queue of buffers that the appsrc element will push to its source pad. This function takes ownership of the buffer. When the block property is TRUE, this function can block until free space becomes available in the queue. + - #GST_FLOW_OK when the buffer was successfuly queued. + #GST_FLOW_OK when the buffer was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. #GST_FLOW_EOS when EOS occured. - a #GstAppSrc + a #GstAppSrc - a #GstBuffer to push + a #GstBuffer to push @@ -1090,31 +1398,42 @@ space becomes available in the queue. - Adds a buffer list to the queue of buffers and buffer lists that the + Adds a buffer list to the queue of buffers and buffer lists that the appsrc element will push to its source pad. This function takes ownership of @buffer_list. When the block property is TRUE, this function can block until free space becomes available in the queue. + - #GST_FLOW_OK when the buffer list was successfuly queued. + #GST_FLOW_OK when the buffer list was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. #GST_FLOW_EOS when EOS occured. - a #GstAppSrc + a #GstAppSrc - a #GstBufferList to push + a #GstBufferList to push - Extract a buffer from the provided sample and adds it to the queue of + Extract a buffer from the provided sample and adds it to the queue of buffers that the appsrc element will push to its source pad. Any previous caps that were set on appsrc will be replaced by the caps associated with the sample if not equal. @@ -1124,25 +1443,33 @@ sample so the sample needs to be unreffed after calling this function. When the block property is TRUE, this function can block until free space becomes available in the queue. + - #GST_FLOW_OK when the buffer was successfuly queued. + #GST_FLOW_OK when the buffer was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. #GST_FLOW_EOS when EOS occured. - a #GstAppSrc + a #GstAppSrc - a #GstSample from which buffer and caps may be + a #GstSample from which buffer and caps may be extracted + @@ -1156,29 +1483,43 @@ extracted - Indicates to the appsrc element that the last buffer queued in the + Indicates to the appsrc element that the last buffer queued in the element is the last buffer of the stream. + - #GST_FLOW_OK when the EOS was successfuly queued. + #GST_FLOW_OK when the EOS was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. - a #GstAppSrc + a #GstAppSrc - Get the configured caps on @appsrc. + Get the configured caps on @appsrc. + - the #GstCaps produced by the source. gst_caps_unref() after usage. + the #GstCaps produced by the source. gst_caps_unref() after usage. - a #GstAppSrc + a #GstAppSrc @@ -1186,14 +1527,21 @@ element is the last buffer of the stream. - Get the number of currently queued bytes inside @appsrc. + Get the number of currently queued bytes inside @appsrc. + - The number of currently queued bytes. + The number of currently queued bytes. - a #GstAppSrc + a #GstAppSrc @@ -1201,121 +1549,174 @@ element is the last buffer of the stream. - Get the duration of the stream in nanoseconds. A value of GST_CLOCK_TIME_NONE means that the duration is + Get the duration of the stream in nanoseconds. A value of GST_CLOCK_TIME_NONE means that the duration is not known. + - the duration of the stream previously set with gst_app_src_set_duration(); + the duration of the stream previously set with gst_app_src_set_duration(); - a #GstAppSrc + a #GstAppSrc - Check if appsrc will emit the "new-preroll" and "new-buffer" signals. + Check if appsrc will emit the "new-preroll" and "new-buffer" signals. + - %TRUE if @appsrc is emitting the "new-preroll" and "new-buffer" + %TRUE if @appsrc is emitting the "new-preroll" and "new-buffer" signals. - a #GstAppSrc + a #GstAppSrc - Retrieve the min and max latencies in @min and @max respectively. + Retrieve the min and max latencies in @min and @max respectively. + - a #GstAppSrc + a #GstAppSrc - the min latency + the min latency - the max latency + the max latency - Get the maximum amount of bytes that can be queued in @appsrc. + Get the maximum amount of bytes that can be queued in @appsrc. + - The maximum amount of bytes that can be queued. + The maximum amount of bytes that can be queued. - a #GstAppSrc + a #GstAppSrc - Get the size of the stream in bytes. A value of -1 means that the size is + Get the size of the stream in bytes. A value of -1 means that the size is not known. + - the size of the stream previously set with gst_app_src_set_size(); + the size of the stream previously set with gst_app_src_set_size(); - a #GstAppSrc + a #GstAppSrc - Get the stream type. Control the stream type of @appsrc + Get the stream type. Control the stream type of @appsrc with gst_app_src_set_stream_type(). + - the stream type. + the stream type. - a #GstAppSrc + a #GstAppSrc - Adds a buffer to the queue of buffers that the appsrc element will + Adds a buffer to the queue of buffers that the appsrc element will push to its source pad. This function takes ownership of the buffer. When the block property is TRUE, this function can block until free space becomes available in the queue. + - #GST_FLOW_OK when the buffer was successfuly queued. + #GST_FLOW_OK when the buffer was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. #GST_FLOW_EOS when EOS occured. - a #GstAppSrc + a #GstAppSrc - a #GstBuffer to push + a #GstBuffer to push @@ -1323,25 +1724,34 @@ space becomes available in the queue. - Adds a buffer list to the queue of buffers and buffer lists that the + Adds a buffer list to the queue of buffers and buffer lists that the appsrc element will push to its source pad. This function takes ownership of @buffer_list. When the block property is TRUE, this function can block until free space becomes available in the queue. + - #GST_FLOW_OK when the buffer list was successfuly queued. + #GST_FLOW_OK when the buffer list was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. #GST_FLOW_EOS when EOS occured. - a #GstAppSrc + a #GstAppSrc - a #GstBufferList to push + a #GstBufferList to push @@ -1349,7 +1759,9 @@ space becomes available in the queue. - Extract a buffer from the provided sample and adds it to the queue of + Extract a buffer from the provided sample and adds it to the queue of buffers that the appsrc element will push to its source pad. Any previous caps that were set on appsrc will be replaced by the caps associated with the sample if not equal. @@ -1359,19 +1771,26 @@ sample so the sample needs to be unreffed after calling this function. When the block property is TRUE, this function can block until free space becomes available in the queue. + - #GST_FLOW_OK when the buffer was successfuly queued. + #GST_FLOW_OK when the buffer was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. #GST_FLOW_EOS when EOS occured. - a #GstAppSrc + a #GstAppSrc - a #GstSample from which buffer and caps may be + a #GstSample from which buffer and caps may be extracted @@ -1380,53 +1799,71 @@ extracted - Set callbacks which will be executed when data is needed, enough data has + Set callbacks which will be executed when data is needed, enough data has been collected or when a seek should be performed. This is an alternative to using the signals, it has lower overhead and is thus less expensive, but also less flexible. If callbacks are installed, no signals will be emitted for performance reasons. + - a #GstAppSrc + a #GstAppSrc - the callbacks + the callbacks - a user_data argument for the callbacks + a user_data argument for the callbacks - a destroy notify function + a destroy notify function - Set the capabilities on the appsrc element. This function takes + Set the capabilities on the appsrc element. This function takes 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. + - a #GstAppSrc + a #GstAppSrc - caps to set + caps to set @@ -1434,113 +1871,157 @@ buffers must match the caps or left NULL. - Set the duration of the stream in nanoseconds. A value of GST_CLOCK_TIME_NONE means that the duration is + Set the duration of the stream in nanoseconds. A value of GST_CLOCK_TIME_NONE means that the duration is not known. + - a #GstAppSrc + a #GstAppSrc - the duration to set + the duration to set - Make appsrc emit the "new-preroll" and "new-buffer" signals. This option is + Make appsrc emit the "new-preroll" and "new-buffer" signals. This option is by default disabled because signal emission is expensive and unneeded when the application prefers to operate in pull mode. + - a #GstAppSrc + a #GstAppSrc - the new state + the new state - Configure the @min and @max latency in @src. If @min is set to -1, the + 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. + - a #GstAppSrc + a #GstAppSrc - the min latency + the min latency - the max latency + the max latency - Set the maximum amount of bytes that can be queued in @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. + - a #GstAppSrc + a #GstAppSrc - the maximum number of bytes to queue + the maximum number of bytes to queue - Set the size of the stream in bytes. A value of -1 means that the size is + Set the size of the stream in bytes. A value of -1 means that the size is not known. + - a #GstAppSrc + a #GstAppSrc - the size to set + the size to set - Set the stream type on @appsrc. For seekable streams, the "seek" signal must + Set the stream type on @appsrc. For seekable streams, the "seek" signal must be connected to. A stream_type stream + - a #GstAppSrc + a #GstAppSrc - the new state + the new state @@ -1591,18 +2072,22 @@ A stream_type stream - + - Notify @appsrc that no more buffer are available. + Notify @appsrc that no more buffer are available. - Signal that the source has enough data. It is recommended that the + Signal that the source has enough data. It is recommended that the application stops calling push-buffer until the need-data signal is emitted again to avoid excessive buffer queueing. @@ -1610,7 +2095,9 @@ emitted again to avoid excessive buffer queueing. - Signal that the source needs more data. In the callback or from another + Signal that the source needs more data. In the callback or from another thread you should call push-buffer or end-of-stream. @length is just a hint and when it is set to -1, any number of bytes can be @@ -1623,13 +2110,17 @@ fired. - the amount of bytes needed. + the amount of bytes needed. - Adds a buffer to the queue of buffers that the appsrc element will + Adds a buffer to the queue of buffers that the appsrc element will push to its source pad. This function does not take ownership of the buffer so the buffer needs to be unreffed after calling this function. @@ -1640,7 +2131,9 @@ becomes available in the queue. - a buffer to push + a buffer to push @@ -1649,7 +2142,9 @@ becomes available in the queue. when="last" action="1" version="1.14"> - Adds a buffer list to the queue of buffers and buffer lists that the + Adds a buffer list to the queue of buffers and buffer lists that the appsrc element will push to its source pad. This function does not take ownership of the buffer list so the buffer list needs to be unreffed after calling this function. @@ -1661,13 +2156,17 @@ becomes available in the queue. - a buffer list to push + a buffer list to push - Extract a buffer from the provided sample and adds the extracted buffer + Extract a buffer from the provided sample and adds the extracted buffer to the queue of buffers that the appsrc element will push to its source pad. This function set the appsrc caps based on the caps in the sample and reset the caps if they change. @@ -1683,22 +2182,30 @@ becomes available in the queue. - a sample from which extract buffer to push + a sample from which extract buffer to push - Seek to the given offset. The next push-buffer should produce buffers from + Seek to the given offset. The next push-buffer should produce buffers from the new @offset. This callback is only called for seekable stream types. - %TRUE if the seek succeeded. + %TRUE if the seek succeeded. - the offset to seek to + the offset to seek to @@ -1707,10 +2214,14 @@ This callback is only called for seekable stream types. - A set of callbacks that can be installed on the appsrc with + A set of callbacks that can be installed on the appsrc with gst_app_src_set_callbacks(). + + @@ -1733,6 +2244,7 @@ gst_app_src_set_callbacks(). + @@ -1752,6 +2264,7 @@ gst_app_src_set_callbacks(). + @@ -1773,7 +2286,7 @@ gst_app_src_set_callbacks(). - + @@ -1781,11 +2294,13 @@ gst_app_src_set_callbacks(). + + @@ -1801,6 +2316,7 @@ gst_app_src_set_callbacks(). + @@ -1813,6 +2329,7 @@ gst_app_src_set_callbacks(). + @@ -1828,19 +2345,26 @@ gst_app_src_set_callbacks(). + - #GST_FLOW_OK when the buffer was successfuly queued. + #GST_FLOW_OK when the buffer was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. #GST_FLOW_EOS when EOS occured. - a #GstAppSrc + a #GstAppSrc - a #GstBuffer to push + a #GstBuffer to push @@ -1848,14 +2372,19 @@ gst_app_src_set_callbacks(). + - #GST_FLOW_OK when the EOS was successfuly queued. + #GST_FLOW_OK when the EOS was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. - a #GstAppSrc + a #GstAppSrc @@ -1863,19 +2392,26 @@ gst_app_src_set_callbacks(). + - #GST_FLOW_OK when the buffer was successfuly queued. + #GST_FLOW_OK when the buffer was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. #GST_FLOW_EOS when EOS occured. - a #GstAppSrc + a #GstAppSrc - a #GstSample from which buffer and caps may be + a #GstSample from which buffer and caps may be extracted @@ -1884,58 +2420,110 @@ extracted + - #GST_FLOW_OK when the buffer list was successfuly queued. + #GST_FLOW_OK when the buffer list was successfuly queued. #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING. #GST_FLOW_EOS when EOS occured. - a #GstAppSrc + a #GstAppSrc - a #GstBufferList to push + a #GstBufferList to push - + + - The stream type. + The stream type. - No seeking is supported in the stream, such as a + No seeking is supported in the stream, such as a live stream. - The stream is seekable but seeking might not + The stream is seekable but seeking might not be very fast, such as data from a webserver. - The stream is seekable and seeking is fast, + The stream is seekable and seeking is fast, such as in a local file. + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/gir-files/GstAudio-1.0.gir b/gir-files/GstAudio-1.0.gir index f6658ec68..4df442b50 100644 --- a/gir-files/GstAudio-1.0.gir +++ b/gir-files/GstAudio-1.0.gir @@ -16,24 +16,443 @@ and/or use gtk-doc annotations. --> shared-library="libgstaudio-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Get the #GstClock of @obj. + + + + a #GstAudioBaseSink + + + + + + + + + + + + Get the sink #GstPad of @obj. + + + + a #GstAudioBaseSink + + + + + + + + + + + + + + + + + + + + + + + + + + Get the #GstClock of @obj. + + + + a #GstAudioBaseSrc + + + + + + + + + + + + Get the source #GstPad of @obj. + + + + a #GstAudioBaseSrc + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Generic caps string for audio, for use in pad templates. + + + + string format that describes the sample layout, as string + (e.g. "S16LE", "S8", etc.) + + + + + + + + + + + + + + + + + + + + + + + + - Maximum range of allowed channels, for use in template caps strings. + Maximum range of allowed channels, for use in template caps strings. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - #GST_TYPE_AUDIO_DITHER_METHOD, The dither method to use when + #GST_TYPE_AUDIO_DITHER_METHOD, The dither method to use when changing bit depth. Default is #GST_AUDIO_DITHER_NONE. + - #GST_TYPE_VALUE_LIST, The channel mapping matrix. + #GST_TYPE_VALUE_LIST, The channel mapping matrix. The matrix coefficients must be between -1 and 1: the number of rows is equal to the number of output channels and the number of columns is equal to the @@ -60,94 +479,819 @@ g_value_unset (&v2); g_object_set_property (G_OBJECT (audiomixmatrix), "matrix", &v); g_value_unset (&v); ]| + - #GST_TYPE_AUDIO_NOISE_SHAPING_METHOD, The noise shaping method to use + #GST_TYPE_AUDIO_NOISE_SHAPING_METHOD, The noise shaping method to use to mask noise from quantization errors. Default is #GST_AUDIO_NOISE_SHAPING_NONE. + - #G_TYPE_UINT, The quantization amount. Components will be + #G_TYPE_UINT, The quantization amount. Components will be quantized to multiples of this value. Default is 1 + - #GST_TYPE_AUDIO_RESAMPLER_METHOD, The resampler method to use when + #GST_TYPE_AUDIO_RESAMPLER_METHOD, The resampler method to use when changing sample rates. Default is #GST_AUDIO_RESAMPLER_METHOD_BLACKMAN_NUTTALL. + + + + + + + + + + + + + + + + + + + + + + + + Utility function that audio decoder elements can use in case they encountered +a data processing error that may be fatal for the current "data unit" but +need not prevent subsequent decoding. Such errors are counted and if there +are too many, as configured in the context's max_errors, the pipeline will +post an error message and the application will be requested to stop further +media processing. Otherwise, it is considered a "glitch" and only a warning +is logged. In either case, @ret is set to the proper value to +return to upstream/caller (indicating either GST_FLOW_ERROR or GST_FLOW_OK). + + + + the base audio decoder element that generates the error + + + element defined weight of the error, added to error count + + + like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError) + + + error code defined for that domain (see #gstreamer-GstGError) + + + the message to display (format string and args enclosed in + parentheses) + + + debugging information for the message (format string and args + enclosed in parentheses) + + + variable to receive return value + + + + + + + + + + + + Gives the input segment of the element. + + + + audio decoder instance + + + - Default maximum number of errors tolerated before signaling error. + Default maximum number of errors tolerated before signaling error. + + + Gives the output segment of the element. + + + + audio decoder instance + + + - The name of the templates for the sink pad. + The name of the templates for the sink pad. + + + Gives the pointer to the sink #GstPad object of the element. + + + + base audio codec instance + + + - The name of the templates for the source pad. + The name of the templates for the source pad. + + + Gives the pointer to the source #GstPad object of the element. + + + + base audio codec instance + + + + + + + + + + + + + + + + + - Standard number of channels used in consumer audio. + Standard number of channels used in consumer audio. + - Standard format used in consumer audio. + Standard format used in consumer audio. + - Standard sampling rate used in consumer audio. + Standard sampling rate used in consumer audio. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gives the input segment of the element. + + + + base parse instance + + + + + Gives the output segment of the element. + + + + base parse instance + + + - the name of the templates for the sink pad + the name of the templates for the sink pad + + + Gives the pointer to the sink #GstPad object of the element. + + + + audio encoder instance + + + - the name of the templates for the source pad + the name of the templates for the source pad + + + Gives the pointer to the source #GstPad object of the element. + + + + audio encoder instance + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - List of all audio formats, for use in template caps strings. + List of all audio formats, for use in template caps strings. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Turns audio format string @s into the format string for native endianness. + + + + format string without endianness marker + + + + + Turns audio format string @s into the format string for other endianness. + + + + format string without endianness marker + + + - Maximum range of allowed sample rates, for use in template caps strings. + Maximum range of allowed sample rates, for use in template caps strings. + - G_TYPE_DOUBLE, B parameter of the cubic filter. + G_TYPE_DOUBLE, B parameter of the cubic filter. Values between 0.0 and 2.0 are accepted. 1.0 is the default. Below are some values of popular filters: @@ -155,98 +1299,258 @@ Below are some values of popular filters: Hermite 0.0 0.0 Spline 1.0 0.0 Catmull-Rom 0.0 1/2 + - G_TYPE_DOUBLE, C parameter of the cubic filter. + G_TYPE_DOUBLE, C parameter of the cubic filter. Values between 0.0 and 2.0 are accepted. 0.0 is the default. See #GST_AUDIO_RESAMPLER_OPT_CUBIC_B for some more common values + - G_TYPE_DOUBLE, Cutoff parameter for the filter. 0.940 is the default. + G_TYPE_DOUBLE, Cutoff parameter for the filter. 0.940 is the default. + - GST_TYPE_AUDIO_RESAMPLER_INTERPOLATION: how the filter coeficients should be + GST_TYPE_AUDIO_RESAMPLER_INTERPOLATION: how the filter coeficients should be interpolated. GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_CUBIC is default. + - GST_TYPE_AUDIO_RESAMPLER_FILTER_MODE: how the filter tables should be + GST_TYPE_AUDIO_RESAMPLER_FILTER_MODE: how the filter tables should be constructed. GST_AUDIO_RESAMPLER_FILTER_MODE_AUTO is the default. + - G_TYPE_UINT: the amount of memory to use for full filter tables before + G_TYPE_UINT: the amount of memory to use for full filter tables before switching to interpolated filter tables. 1048576 is the default. + - G_TYPE_UINT, oversampling to use when interpolating filters + G_TYPE_UINT, oversampling to use when interpolating filters 8 is the default. + - G_TYPE_DOUBLE: The maximum allowed phase error when switching sample + G_TYPE_DOUBLE: The maximum allowed phase error when switching sample rates. 0.1 is the default. + - G_TYPE_INT: the number of taps to use for the filter. + G_TYPE_INT: the number of taps to use for the filter. 0 is the default and selects the taps automatically. + - G_TYPE_DOUBLE, stopband attenuation in decibels. The attenuation + G_TYPE_DOUBLE, stopband attenuation in decibels. The attenuation after the stopband for the kaiser window. 85 dB is the default. + - G_TYPE_DOUBLE, transition bandwidth. The width of the + G_TYPE_DOUBLE, transition bandwidth. The width of the transition band for the kaiser window. 0.087 is the default. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GstAudioAggregator" glib:get-type="gst_audio_aggregator_get_type" glib:type-struct="AudioAggregatorClass"> - Subclasses must use (a subclass of) #GstAudioAggregatorPad for both + Subclasses must use (a subclass of) #GstAudioAggregatorPad for both their source and sink pads, gst_element_class_add_static_pad_template_with_gtype() is a convenient helper. @@ -286,7 +1592,9 @@ A notable exception for now is the sample rate, sink pads must have the same sample rate as either the downstream requirement, or the first configured pad, or a combination of both (when downstream specifies a range or a set of acceptable rates). + + @@ -315,6 +1623,7 @@ downstream specifies a range or a set of acceptable rates). + @@ -329,6 +1638,7 @@ downstream specifies a range or a set of acceptable rates). + @@ -361,7 +1671,9 @@ downstream specifies a range or a set of acceptable rates). - The caps set by the subclass + The caps set by the subclass @@ -369,7 +1681,7 @@ downstream specifies a range or a set of acceptable rates). c:type="GstAudioAggregatorPrivate*"/> - + @@ -378,11 +1690,13 @@ downstream specifies a range or a set of acceptable rates). c:type="GstAudioAggregatorClass" glib:is-gtype-struct-for="AudioAggregator" version="1.14"> + + @@ -398,6 +1712,7 @@ downstream specifies a range or a set of acceptable rates). + @@ -427,7 +1742,7 @@ downstream specifies a range or a set of acceptable rates). - + @@ -440,9 +1755,12 @@ downstream specifies a range or a set of acceptable rates). glib:type-name="GstAudioAggregatorConvertPad" glib:get-type="gst_audio_aggregator_convert_pad_get_type" glib:type-struct="AudioAggregatorConvertPadClass"> - An implementation of GstPad that can be used with #GstAudioAggregator. + An implementation of GstPad that can be used with #GstAudioAggregator. See #GstAudioAggregator for more details. + @@ -454,7 +1772,7 @@ See #GstAudioAggregator for more details. c:type="GstAudioAggregatorConvertPadPrivate*"/> - + @@ -463,12 +1781,13 @@ See #GstAudioAggregator for more details. c:type="GstAudioAggregatorConvertPadClass" glib:is-gtype-struct-for="AudioAggregatorConvertPad" version="1.14"> + - + @@ -476,6 +1795,7 @@ See #GstAudioAggregator for more details. + glib:type-name="GstAudioAggregatorPad" glib:get-type="gst_audio_aggregator_pad_get_type" glib:type-struct="AudioAggregatorPadClass"> - The default implementation of GstPad used with #GstAudioAggregator + The default implementation of GstPad used with #GstAudioAggregator + + @@ -506,6 +1830,7 @@ See #GstAudioAggregator for more details. + @@ -519,7 +1844,9 @@ See #GstAudioAggregator for more details. - The audio info for this pad set from the incoming caps + The audio info for this pad set from the incoming caps @@ -527,7 +1854,7 @@ See #GstAudioAggregator for more details. c:type="GstAudioAggregatorPadPrivate*"/> - + @@ -536,12 +1863,14 @@ See #GstAudioAggregator for more details. c:type="GstAudioAggregatorPadClass" glib:is-gtype-struct-for="AudioAggregatorPad" version="1.14"> + + @@ -563,6 +1892,7 @@ See #GstAudioAggregator for more details. + @@ -574,7 +1904,7 @@ See #GstAudioAggregator for more details. - + @@ -582,10 +1912,12 @@ See #GstAudioAggregator for more details. + + glib:type-name="GstAudioBaseSink" glib:get-type="gst_audio_base_sink_get_type" glib:type-struct="AudioBaseSinkClass"> - This is the base class for audio sinks. Subclasses need to implement the + This is the base class for audio sinks. Subclasses need to implement the ::create_ringbuffer vmethod. This base class will then take care of writing samples to the ringbuffer, synchronisation, clipping and flushing. + - Create and return the #GstAudioRingBuffer for @sink. This function will + Create and return the #GstAudioRingBuffer for @sink. This function will call the ::create_ringbuffer vmethod and will set @sink as the parent of the returned buffer (see gst_object_set_parent()). + - The new ringbuffer of @sink. + The new ringbuffer of @sink. - a #GstAudioBaseSink. + a #GstAudioBaseSink. + @@ -627,88 +1970,130 @@ the returned buffer (see gst_object_set_parent()). - Create and return the #GstAudioRingBuffer for @sink. This function will + Create and return the #GstAudioRingBuffer for @sink. This function will call the ::create_ringbuffer vmethod and will set @sink as the parent of the returned buffer (see gst_object_set_parent()). + - The new ringbuffer of @sink. + The new ringbuffer of @sink. - a #GstAudioBaseSink. + a #GstAudioBaseSink. - Get the current alignment threshold, in nanoseconds, used by @sink. + Get the current alignment threshold, in nanoseconds, used by @sink. + - The current alignment threshold used by @sink. + The current alignment threshold used by @sink. - a #GstAudioBaseSink + a #GstAudioBaseSink - Get the current discont wait, in nanoseconds, used by @sink. + Get the current discont wait, in nanoseconds, used by @sink. + - The current discont wait used by @sink. + The current discont wait used by @sink. - a #GstAudioBaseSink + a #GstAudioBaseSink - Get the current drift tolerance, in microseconds, used by @sink. + Get the current drift tolerance, in microseconds, used by @sink. + - The current drift tolerance used by @sink. + The current drift tolerance used by @sink. - a #GstAudioBaseSink + a #GstAudioBaseSink - Queries whether @sink will provide a clock or not. See also + Queries whether @sink will provide a clock or not. See also gst_audio_base_sink_set_provide_clock. + - %TRUE if @sink will provide a clock. + %TRUE if @sink will provide a clock. - a #GstAudioBaseSink + a #GstAudioBaseSink - Get the current slave method used by @sink. + Get the current slave method used by @sink. + - The current slave method used by @sink. + The current slave method used by @sink. - a #GstAudioBaseSink + a #GstAudioBaseSink @@ -716,34 +2101,46 @@ gst_audio_base_sink_set_provide_clock. - Informs this base class that the audio output device has failed for + Informs this base class that the audio output device has failed for some reason, causing a discontinuity (for example, because the device recovered from the error, but lost all contents of its ring buffer). This function is typically called by derived classes, and is useful for the custom slave method. + - a #GstAudioBaseSink + a #GstAudioBaseSink - Controls the sink's alignment threshold. + Controls the sink's alignment threshold. + - a #GstAudioBaseSink + a #GstAudioBaseSink - the new alignment threshold in nanoseconds + the new alignment threshold in nanoseconds @@ -751,7 +2148,9 @@ for the custom slave method. - Sets the custom slaving callback. This callback will + Sets the custom slaving callback. This callback will be invoked if the slave-method property is set to GST_AUDIO_BASE_SINK_SLAVE_CUSTOM and the audio sink receives and plays samples. @@ -759,12 +2158,15 @@ receives and plays samples. Setting the callback to NULL causes the sink to behave as if the GST_AUDIO_BASE_SINK_SLAVE_NONE method were used. + - a #GstAudioBaseSink + a #GstAudioBaseSink scope="notified" closure="1" destroy="2"> - a #GstAudioBaseSinkCustomSlavingCallback + a #GstAudioBaseSinkCustomSlavingCallback @@ -780,82 +2184,114 @@ method were used. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to the callback + user data passed to the callback - called when user_data becomes unused + called when user_data becomes unused - Controls how long the sink will wait before creating a discontinuity. + Controls how long the sink will wait before creating a discontinuity. + - a #GstAudioBaseSink + a #GstAudioBaseSink - the new discont wait in nanoseconds + the new discont wait in nanoseconds - Controls the sink's drift tolerance. + Controls the sink's drift tolerance. + - a #GstAudioBaseSink + a #GstAudioBaseSink - the new drift tolerance in microseconds + the new drift tolerance in microseconds - Controls whether @sink will provide a clock or not. If @provide is %TRUE, + Controls whether @sink will provide a clock or not. If @provide is %TRUE, gst_element_provide_clock() will return a clock that reflects the datarate of @sink. If @provide is %FALSE, gst_element_provide_clock() will return NULL. + - a #GstAudioBaseSink + a #GstAudioBaseSink - new state + new state - Controls how clock slaving will be performed in @sink. + Controls how clock slaving will be performed in @sink. + - a #GstAudioBaseSink + a #GstAudioBaseSink - the new slave method + the new slave method @@ -875,12 +2311,16 @@ NULL. - A window of time in nanoseconds to wait before creating a discontinuity as + A window of time in nanoseconds to wait before creating a discontinuity as a result of breaching the drift-tolerance. - Controls the amount of time in microseconds that clocks are allowed + Controls the amount of time in microseconds that clocks are allowed to drift before resynchronisation happens. @@ -918,7 +2358,7 @@ to drift before resynchronisation happens. - + @@ -926,21 +2366,31 @@ to drift before resynchronisation happens. - #GstAudioBaseSink class. Override the vmethod to implement + #GstAudioBaseSink class. Override the vmethod to implement functionality. + - the parent class. + the parent class. + - The new ringbuffer of @sink. + The new ringbuffer of @sink. - a #GstAudioBaseSink. + a #GstAudioBaseSink. @@ -948,6 +2398,7 @@ functionality. + @@ -962,7 +2413,7 @@ functionality. - + @@ -970,7 +2421,9 @@ functionality. - This function is set with gst_audio_base_sink_set_custom_slaving_callback() + This function is set with gst_audio_base_sink_set_custom_slaving_callback() and is called during playback. It receives the current time of external and internal clocks, which the callback can then use to apply any custom slaving/synchronization schemes. @@ -993,28 +2446,39 @@ The sink may experience discontinuities. If one happens, discont is TRUE, itime, etime are set to GST_CLOCK_TIME_NONE, and requested_skew is NULL. This makes it possible to reset custom clock slaving algorithms when a discontinuity happens. + - a #GstAudioBaseSink + a #GstAudioBaseSink - external clock time + external clock time - internal clock time + internal clock time - skew amount requested by the callback + skew amount requested by the callback - reason for discontinuity (if any) + reason for discontinuity (if any) @@ -1023,7 +2487,9 @@ discontinuity happens. nullable="1" allow-none="1" closure="5"> - user data + user data @@ -1033,79 +2499,104 @@ discontinuity happens. glib:type-name="GstAudioBaseSinkDiscontReason" glib:get-type="gst_audio_base_sink_discont_reason_get_type" c:type="GstAudioBaseSinkDiscontReason"> - Different possible reasons for discontinuities. This enum is useful for the custom + Different possible reasons for discontinuities. This enum is useful for the custom slave method. - No discontinuity occurred + No discontinuity occurred - New caps are set, causing renegotiotion + New caps are set, causing renegotiotion - Samples have been flushed + Samples have been flushed - Sink was synchronized to the estimated latency (occurs during initialization) + Sink was synchronized to the estimated latency (occurs during initialization) - Aligning buffers failed because the timestamps are too discontinuous + Aligning buffers failed because the timestamps are too discontinuous - Audio output device experienced and recovered from an error but introduced latency in the process (see also @gst_audio_base_sink_report_device_failure()) + Audio output device experienced and recovered from an error but introduced latency in the process (see also @gst_audio_base_sink_report_device_failure()) + - Different possible clock slaving algorithms used when the internal audio + Different possible clock slaving algorithms used when the internal audio clock is not selected as the pipeline master clock. - Resample to match the master clock + Resample to match the master clock - Adjust playout pointer when master clock + Adjust playout pointer when master clock drifts too much. - No adjustment is done. + No adjustment is done. - Use custom clock slaving algorithm (Since: 1.6) + Use custom clock slaving algorithm (Since: 1.6) glib:type-name="GstAudioBaseSrc" glib:get-type="gst_audio_base_src_get_type" glib:type-struct="AudioBaseSrcClass"> - This is the base class for audio sources. Subclasses need to implement the + This is the base class for audio sources. Subclasses need to implement the ::create_ringbuffer vmethod. This base class will then take care of reading samples from the ringbuffer, synchronisation and flushing. + - Create and return the #GstAudioRingBuffer for @src. This function will call + Create and return the #GstAudioRingBuffer for @src. This function will call the ::create_ringbuffer vmethod and will set @src as the parent of the returned buffer (see gst_object_set_parent()). + - The new ringbuffer of @src. + The new ringbuffer of @src. - a #GstAudioBaseSrc. + a #GstAudioBaseSrc. - Create and return the #GstAudioRingBuffer for @src. This function will call + Create and return the #GstAudioRingBuffer for @src. This function will call the ::create_ringbuffer vmethod and will set @src as the parent of the returned buffer (see gst_object_set_parent()). + - The new ringbuffer of @src. + The new ringbuffer of @src. - a #GstAudioBaseSrc. + a #GstAudioBaseSrc. - Queries whether @src will provide a clock or not. See also + Queries whether @src will provide a clock or not. See also gst_audio_base_src_set_provide_clock. + - %TRUE if @src will provide a clock. + %TRUE if @src will provide a clock. - a #GstAudioBaseSrc + a #GstAudioBaseSrc - Get the current slave method used by @src. + Get the current slave method used by @src. + - The current slave method used by @src. + The current slave method used by @src. - a #GstAudioBaseSrc + a #GstAudioBaseSrc - Controls whether @src will provide a clock or not. If @provide is %TRUE, + Controls whether @src will provide a clock or not. If @provide is %TRUE, gst_element_provide_clock() will return a clock that reflects the datarate of @src. If @provide is %FALSE, gst_element_provide_clock() will return NULL. + - a #GstAudioBaseSrc + a #GstAudioBaseSrc - new state + new state - Controls how clock slaving will be performed in @src. + Controls how clock slaving will be performed in @src. + - a #GstAudioBaseSrc + a #GstAudioBaseSrc - the new slave method + the new slave method - Actual configured size of audio buffer in microseconds. + Actual configured size of audio buffer in microseconds. - Actual configured audio latency in microseconds. + Actual configured audio latency in microseconds. @@ -1258,7 +2798,7 @@ of @src. If @provide is %FALSE, gst_element_provide_clock() will return NULL. - + @@ -1266,28 +2806,38 @@ of @src. If @provide is %FALSE, gst_element_provide_clock() will return NULL. - #GstAudioBaseSrc class. Override the vmethod to implement + #GstAudioBaseSrc class. Override the vmethod to implement functionality. + - the parent class. + the parent class. + - The new ringbuffer of @src. + The new ringbuffer of @src. - a #GstAudioBaseSrc. + a #GstAudioBaseSrc. - + @@ -1295,42 +2845,55 @@ functionality. + - Different possible clock slaving algorithms when the internal audio clock was + Different possible clock slaving algorithms when the internal audio clock was not selected as the pipeline clock. - Resample to match the master clock. + Resample to match the master clock. - Retimestamp output buffers with master + Retimestamp output buffers with master clock time. - Adjust capture pointer when master clock + Adjust capture pointer when master clock drifts too much. - No adjustment is done. + No adjustment is done. - A structure containing the result of an audio buffer map operation, + A structure containing the result of an audio buffer map operation, which is executed with gst_audio_buffer_map(). For non-interleaved (planar) buffers, the beginning of each channel in the buffer has its own pointer in the @planes array. For interleaved buffers, the @planes array only contains @@ -1338,47 +2901,60 @@ one item, which is the pointer to the beginning of the buffer, and @n_planes equals 1. The different channels in @planes are always in the GStreamer channel order. + - a #GstAudioInfo describing the audio properties of this buffer + a #GstAudioInfo describing the audio properties of this buffer - the size of the buffer in samples + the size of the buffer in samples - the number of planes available + the number of planes available - an array of @n_planes pointers pointing to the start of each + an array of @n_planes pointers pointing to the start of each plane in the mapped buffer - the mapped buffer + the mapped buffer - + - + - + - Maps an audio @gstbuffer so that it can be read or written and stores the + Maps an audio @gstbuffer so that it can be read or written and stores the result of the map operation in @buffer. This is especially useful when the @gstbuffer is in non-interleaved (planar) @@ -1402,25 +2978,36 @@ memories in the buffer before calling this function. Note: The actual #GstBuffer is not ref'ed, but it is required to stay valid as long as it's mapped. + - %TRUE if the map operation succeeded or %FALSE on failure + %TRUE if the map operation succeeded or %FALSE on failure - pointer to a #GstAudioBuffer + pointer to a #GstAudioBuffer - the audio properties of the buffer + the audio properties of the buffer - the #GstBuffer to be mapped + the #GstBuffer to be mapped - the access mode for the memory + the access mode for the memory @@ -1428,25 +3015,35 @@ as long as it's mapped. - Unmaps an audio buffer that was previously mapped with + Unmaps an audio buffer that was previously mapped with gst_audio_buffer_map(). + - the #GstAudioBuffer to unmap + the #GstAudioBuffer to unmap - Clip the buffer to the given %GstSegment. + Clip the buffer to the given %GstSegment. After calling this function the caller does not own a reference to @buffer anymore. + - %NULL if the buffer is completely outside the configured segment, + %NULL if the buffer is completely outside the configured segment, otherwise the clipped buffer is returned. If the buffer has no timestamp, it is assumed to be inside the segment and @@ -1455,20 +3052,28 @@ is not clipped - The buffer to clip. + The buffer to clip. - Segment in %GST_FORMAT_TIME or %GST_FORMAT_DEFAULT to which + Segment in %GST_FORMAT_TIME or %GST_FORMAT_DEFAULT to which the buffer should be clipped. - sample rate. + sample rate. - size of one audio frame in bytes. This is the size of one sample * + size of one audio frame in bytes. This is the size of one sample * number of channels. @@ -1476,29 +3081,42 @@ number of channels. - Reorders @buffer from the channel positions @from to the channel + Reorders @buffer from the channel positions @from to the channel positions @to. @from and @to must contain the same number of positions and the same positions, only in a different order. @buffer must be writable. + - %TRUE if the reordering was possible. + %TRUE if the reordering was possible. - The buffer to reorder. + The buffer to reorder. - The %GstAudioFormat of the buffer. + The %GstAudioFormat of the buffer. - The number of channels. + The number of channels. - The channel positions in the buffer. + The channel positions in the buffer. @@ -1507,7 +3125,9 @@ positions and the same positions, only in a different order. - The channel positions to convert to. + The channel positions to convert to. @@ -1520,33 +3140,46 @@ positions and the same positions, only in a different order. - Truncate the buffer to finally have @samples number of samples, removing + Truncate the buffer to finally have @samples number of samples, removing the necessary amount of samples from the end and @trim number of samples from the beginning. After calling this function the caller does not own a reference to @buffer anymore. + - the truncated buffer or %NULL if the arguments + the truncated buffer or %NULL if the arguments were invalid - The buffer to truncate. + The buffer to truncate. - size of one audio frame in bytes. This is the size of one sample * + size of one audio frame in bytes. This is the size of one sample * number of channels. - the number of samples to remove from the beginning of the buffer + the number of samples to remove from the beginning of the buffer - the final number of samples that should exist in this buffer or -1 + the final number of samples that should exist in this buffer or -1 to use all the remaining samples if you are only removing samples from the beginning. @@ -1561,7 +3194,9 @@ beginning. glib:type-name="GstAudioCdSrc" glib:get-type="gst_audio_cd_src_get_type" glib:type-struct="AudioCdSrcClass"> - Provides a base class for CD digital audio (CDDA) sources, which handles + Provides a base class for CD digital audio (CDDA) sources, which handles things like seeking, querying, discid calculation, tags, and buffer timestamping. @@ -1604,8 +3239,10 @@ each track, with information about each track. The duration for each track can be retrieved via the #GST_TAG_DURATION tag from each entry's tag list, or calculated via gst_toc_entry_get_start_stop_times(). The track entries in the TOC will be sorted by track number. + + @@ -1616,6 +3253,7 @@ The track entries in the TOC will be sorted by track number. + @@ -1629,6 +3267,7 @@ The track entries in the TOC will be sorted by track number. + @@ -1642,21 +3281,30 @@ The track entries in the TOC will be sorted by track number. - CDDA sources use this function from their start vfunc to announce the + CDDA sources use this function from their start vfunc to announce the available data and audio tracks to the base source class. The caller should allocate @track on the stack, the base source will do a shallow copy of the structure (and take ownership of the taglist if there is one). + - FALSE on error, otherwise TRUE. + FALSE on error, otherwise TRUE. - a #GstAudioCdSrc + a #GstAudioCdSrc - address of #GstAudioCdSrcTrack to add + address of #GstAudioCdSrcTrack to add @@ -1680,12 +3328,12 @@ copy of the structure (and take ownership of the taglist if there is one). - + - + @@ -1693,13 +3341,19 @@ copy of the structure (and take ownership of the taglist if there is one). - Audio CD source base class. + Audio CD source base class. + - the parent class + the parent class + @@ -1715,6 +3369,7 @@ copy of the structure (and take ownership of the taglist if there is one). + @@ -1727,6 +3382,7 @@ copy of the structure (and take ownership of the taglist if there is one). + @@ -1741,7 +3397,7 @@ copy of the structure (and take ownership of the taglist if there is one). - + @@ -1750,60 +3406,80 @@ copy of the structure (and take ownership of the taglist if there is one). glib:type-name="GstAudioCdSrcMode" glib:get-type="gst_audio_cd_src_mode_get_type" c:type="GstAudioCdSrcMode"> - Mode in which the CD audio source operates. Influences timestamping, + Mode in which the CD audio source operates. Influences timestamping, EOS handling and seeking. - each single track is a stream + each single track is a stream - the entire disc is a single stream + the entire disc is a single stream + - CD track abstraction to communicate TOC entries to the base class. + CD track abstraction to communicate TOC entries to the base class. This structure is only for use by sub-classed in connection with gst_audio_cd_src_add_track(). Applications will be informed of the available tracks via a TOC message on the pipeline's #GstBus instead. + - Whether this is an audio track + Whether this is an audio track - Track number in TOC (usually starts from 1, but not always) + Track number in TOC (usually starts from 1, but not always) - The first sector of this track (LBA) + The first sector of this track (LBA) - The last sector of this track (LBA) + The last sector of this track (LBA) - Track-specific tags (e.g. from cd-text information), or NULL + Track-specific tags (e.g. from cd-text information), or NULL - + - + @@ -1811,21 +3487,29 @@ on the pipeline's #GstBus instead. + - Free memory allocated by @mix. + Free memory allocated by @mix. + - a #GstAudioChannelMixer + a #GstAudioChannelMixer - Check if @mix is in passthrough. + Check if @mix is in passthrough. Only N x N mix identity matrices are considered passthrough, this is determined by comparing the contents of the matrix @@ -1836,19 +3520,26 @@ generated, they should be rounded up or down by explicit assignment of 0.0 or 1.0 to values within a user-defined epsilon, this code doesn't make assumptions as to what may constitute an appropriate epsilon. + - %TRUE is @mix is passthrough. + %TRUE is @mix is passthrough. - a #GstAudioChannelMixer + a #GstAudioChannelMixer - In case the samples are interleaved, @in and @out must point to an + In case the samples are interleaved, @in and @out must point to an array with a single element pointing to a block of interleaved samples. If non-interleaved samples are used, @in and @out must point to an @@ -1856,30 +3547,39 @@ array with pointers to memory blocks, one for each channel. Perform channel mixing on @in_data and write the result to @out_data. @in_data and @out_data need to be in @format and @layout. + - a #GstAudioChannelMixer + a #GstAudioChannelMixer - input samples + input samples - output samples + output samples - number of samples + number of samples @@ -1887,15 +3587,22 @@ Perform channel mixing on @in_data and write the result to @out_data. - Create a new channel mixer object for the given parameters. + Create a new channel mixer object for the given parameters. + - a new #GstAudioChannelMixer object, or %NULL if @format isn't supported. + a new #GstAudioChannelMixer object, or %NULL if @format isn't supported. Free with gst_audio_channel_mixer_free() after usage. - #GstAudioChannelMixerFlags + #GstAudioChannelMixerFlags @@ -1903,20 +3610,28 @@ Perform channel mixing on @in_data and write the result to @out_data. - number of input channels + number of input channels - positions of input channels + positions of input channels - number of output channels + number of output channels - positions of output channels + positions of output channels @@ -1926,16 +3641,23 @@ Perform channel mixing on @in_data and write the result to @out_data. c:identifier="gst_audio_channel_mixer_new_with_matrix" version="1.14" introspectable="0"> - Create a new channel mixer object for the given parameters. + Create a new channel mixer object for the given parameters. + - a new #GstAudioChannelMixer object, or %NULL if @format isn't supported, + a new #GstAudioChannelMixer object, or %NULL if @format isn't supported, @matrix is invalid, or @matrix is %NULL and @in_channels != @out_channels. Free with gst_audio_channel_mixer_free() after usage. - #GstAudioChannelMixerFlags + #GstAudioChannelMixerFlags @@ -1943,18 +3665,24 @@ Perform channel mixing on @in_data and write the result to @out_data. - number of input channels + number of input channels - number of output channels + number of output channels - channel conversion matrix, m[@in_channels][@out_channels]. + channel conversion matrix, m[@in_channels][@out_channels]. If identity matrix, passthrough applies. If %NULL, a (potentially truncated) identity matrix is generated. @@ -1966,43 +3694,57 @@ Perform channel mixing on @in_data and write the result to @out_data. glib:type-name="GstAudioChannelMixerFlags" glib:get-type="gst_audio_channel_mixer_flags_get_type" c:type="GstAudioChannelMixerFlags"> - Flags passed to gst_audio_channel_mixer_new() + Flags passed to gst_audio_channel_mixer_new() - no flag + no flag - input channels are not interleaved + input channels are not interleaved - output channels are not interleaved + output channels are not interleaved - input channels are explicitly unpositioned + input channels are explicitly unpositioned - output channels are explicitly unpositioned + output channels are explicitly unpositioned - Audio channel positions. + Audio channel positions. These are the channels defined in SMPTE 2036-2-2008 Table 1 for 22.2 audio systems with the Surround and Wide channels from @@ -2030,7 +3772,9 @@ channel. value="-3" c:identifier="GST_AUDIO_CHANNEL_POSITION_NONE" glib:nick="none"> - used for position-less channels, e.g. + used for position-less channels, e.g. from a sound card that records 1024 channels; mutually exclusive with any other channel position @@ -2038,188 +3782,250 @@ channel. value="-2" c:identifier="GST_AUDIO_CHANNEL_POSITION_MONO" glib:nick="mono"> - Mono without direction; + Mono without direction; can only be used with 1 channel - invalid position + invalid position - Front left + Front left - Front right + Front right - Front center + Front center - Low-frequency effects 1 (subwoofer) + Low-frequency effects 1 (subwoofer) - Rear left + Rear left - Rear right + Rear right - Front left of center + Front left of center - Front right of center + Front right of center - Rear center + Rear center - Low-frequency effects 2 (subwoofer) + Low-frequency effects 2 (subwoofer) - Side left + Side left - Side right + Side right - Top front left + Top front left - Top front right + Top front right - Top front center + Top front center - Top center + Top center - Top rear left + Top rear left - Top rear right + Top rear right - Top side right + Top side right - Top rear right + Top rear right - Top rear center + Top rear center - Bottom front center + Bottom front center - Bottom front left + Bottom front left - Bottom front right + Bottom front right - Wide left (between front left and side left) + Wide left (between front left and side left) - Wide right (between front right and side right) + Wide right (between front right and side right) - Surround left (between rear left and side left) + Surround left (between rear left and side left) - Surround right (between rear right and side right) + Surround right (between rear right and side right) - Extra buffer metadata describing how much audio has to be clipped from + Extra buffer metadata describing how much audio has to be clipped from the start or end of a buffer. This is used for compressed formats, where the first frame usually has some additional samples due to encoder and decoder delays, and the last frame usually has some additional samples to @@ -2230,24 +4036,34 @@ samples, and multiply decoded streams can be gaplessly concatenated. Note: If clipping of the start is done by adjusting the segment, this meta has to be dropped from buffers as otherwise clipping could happen twice. + - parent #GstMeta + parent #GstMeta - GstFormat of @start and @stop, GST_FORMAT_DEFAULT is samples + GstFormat of @start and @stop, GST_FORMAT_DEFAULT is samples - Amount of audio to clip from start of buffer + Amount of audio to clip from start of buffer - Amount of to clip from end of buffer + Amount of to clip from end of buffer + @@ -2260,21 +4076,31 @@ has to be dropped from buffers as otherwise clipping could happen twice. glib:type-name="GstAudioClock" glib:get-type="gst_audio_clock_get_type" glib:type-struct="AudioClockClass"> - #GstAudioClock makes it easy for elements to implement a #GstClock, they + #GstAudioClock makes it easy for elements to implement a #GstClock, they simply need to provide a function that returns the current clock time. This object is internally used to implement the clock in #GstAudioBaseSink. + - Create a new #GstAudioClock instance. Whenever the clock time should be + Create a new #GstAudioClock instance. Whenever the clock time should be calculated it will call @func with @user_data. When @func returns #GST_CLOCK_TIME_NONE, the clock will return the last reported time. + - a new #GstAudioClock casted to a #GstClock. + a new #GstAudioClock casted to a #GstClock. - the name of the clock + the name of the clock - a function + a function @@ -2290,80 +4118,112 @@ calculated it will call @func with @user_data. When @func returns transfer-ownership="none" nullable="1" allow-none="1"> - user data + user data - #GDestroyNotify for @user_data + #GDestroyNotify for @user_data - Adjust @time with the internal offset of the audio clock. + Adjust @time with the internal offset of the audio clock. + - @time adjusted with the internal offset. + @time adjusted with the internal offset. - a #GstAudioClock + a #GstAudioClock - a #GstClockTime + a #GstClockTime - Report the time as returned by the #GstAudioClockGetTimeFunc without applying + Report the time as returned by the #GstAudioClockGetTimeFunc without applying any offsets. + - the time as reported by the time function of the audio clock + the time as reported by the time function of the audio clock - a #GstAudioClock + a #GstAudioClock - Invalidate the clock function. Call this function when the provided + Invalidate the clock function. Call this function when the provided #GstAudioClockGetTimeFunc cannot be called anymore, for example, when the user_data becomes invalid. After calling this function, @clock will return the last returned time for the rest of its lifetime. + - a #GstAudioClock + a #GstAudioClock - Inform @clock that future calls to #GstAudioClockGetTimeFunc will return values + Inform @clock that future calls to #GstAudioClockGetTimeFunc will return values starting from @time. The clock will update an internal offset to make sure that future calls to internal_time will return an increasing result as required by the #GstClock object. + - a #GstAudioClock + a #GstAudioClock - a #GstClockTime + a #GstClockTime @@ -2387,7 +4247,7 @@ the #GstClock object. - + @@ -2395,27 +4255,35 @@ the #GstClock object. + - + - This function will be called whenever the current clock time needs to be + This function will be called whenever the current clock time needs to be calculated. If this function returns #GST_CLOCK_TIME_NONE, the last reported time will be returned by the clock. + - the current time or #GST_CLOCK_TIME_NONE if the previous time should + the current time or #GST_CLOCK_TIME_NONE if the previous time should be used. - the #GstAudioClock + the #GstAudioClock nullable="1" allow-none="1" closure="1"> - user data + user data @@ -2433,7 +4303,9 @@ be used. glib:type-name="GstAudioConverter" glib:get-type="gst_audio_converter_get_type" c:symbol-prefix="audio_converter"> - This object is used to convert audio samples from one format to another. + This object is used to convert audio samples from one format to another. The object can perform conversion of: * audio format with optional dithering and noise shaping @@ -2441,34 +4313,48 @@ The object can perform conversion of: * audio samplerate * audio channels and channel layout + - Create a new #GstAudioConverter that is able to convert between @in and @out + Create a new #GstAudioConverter that is able to convert between @in and @out audio formats. @config contains extra configuration options, see #GST_AUDIO_CONVERTER_OPT_* parameters for details about the options and values. + - a #GstAudioConverter or %NULL if conversion is not possible. + a #GstAudioConverter or %NULL if conversion is not possible. - extra #GstAudioConverterFlags + extra #GstAudioConverterFlags - a source #GstAudioInfo + a source #GstAudioInfo - a destination #GstAudioInfo + a destination #GstAudioInfo - a #GstStructure with configuration options + a #GstStructure with configuration options @@ -2476,37 +4362,52 @@ parameters for details about the options and values. - Convenience wrapper around gst_audio_converter_samples(), which will + Convenience wrapper around gst_audio_converter_samples(), which will perform allocation of the output buffer based on the result from gst_audio_converter_get_out_frames(). + - %TRUE is the conversion could be performed. + %TRUE is the conversion could be performed. - a #GstAudioConverter + a #GstAudioConverter - extra #GstAudioConverterFlags + extra #GstAudioConverterFlags - input data + input data - size of @in + size of @in - a pointer where + a pointer where the output data will be written @@ -2516,34 +4417,48 @@ gst_audio_converter_get_out_frames(). direction="out" caller-allocates="0" transfer-ownership="full"> - a pointer where the size of @out will be written + a pointer where the size of @out will be written - Free a previously allocated @convert instance. + Free a previously allocated @convert instance. + - a #GstAudioConverter + a #GstAudioConverter - Get the current configuration of @convert. + Get the current configuration of @convert. + - + a #GstStructure that remains valid for as long as @convert is valid or until gst_audio_converter_update_config() is called. - a #GstAudioConverter + a #GstAudioConverter transfer-ownership="full" optional="1" allow-none="1"> - result input rate + result input rate transfer-ownership="full" optional="1" allow-none="1"> - result output rate + result output rate - Calculate how many input frames are currently needed by @convert to produce + Calculate how many input frames are currently needed by @convert to produce @out_frames of output frames. + - the number of input frames + the number of input frames - a #GstAudioConverter + a #GstAudioConverter - number of output frames + number of output frames - Get the maximum number of input frames that the converter would + Get the maximum number of input frames that the converter would need before producing output. + - the latency of @convert as expressed in the number of + the latency of @convert as expressed in the number of frames. - a #GstAudioConverter + a #GstAudioConverter - Calculate how many output frames can be produced when @in_frames input + Calculate how many output frames can be produced when @in_frames input frames are given to @convert. + - the number of output frames + the number of output frames - a #GstAudioConverter + a #GstAudioConverter - number of input frames + number of input frames @@ -2623,10 +4567,15 @@ frames are given to @convert. - Returns whether the audio converter will operate in passthrough mode. + Returns whether the audio converter will operate in passthrough mode. The return value would be typically input to gst_base_transform_set_passthrough() + - %TRUE when no conversion will actually occur. + %TRUE when no conversion will actually occur. @@ -2636,20 +4585,27 @@ The return value would be typically input to gst_base_transform_set_passthrough( - Reset @convert to the state it was when it was first created, clearing + Reset @convert to the state it was when it was first created, clearing any history it might currently have. + - a #GstAudioConverter + a #GstAudioConverter - Perform the conversion with @in_frames in @in to @out_frames in @out + Perform the conversion with @in_frames in @in to @out_frames in @out using @convert. In case the samples are interleaved, @in and @out must point to an @@ -2665,61 +4621,85 @@ This function always produces @out_frames of output and consumes @in_frames of input. Use gst_audio_converter_get_out_frames() and gst_audio_converter_get_in_frames() to make sure @in_frames and @out_frames are matching and @in and @out point to enough memory. + - %TRUE is the conversion could be performed. + %TRUE is the conversion could be performed. - a #GstAudioConverter + a #GstAudioConverter - extra #GstAudioConverterFlags + extra #GstAudioConverterFlags - input frames + input frames - number of input frames + number of input frames - output frames + output frames - number of output frames + number of output frames - Returns whether the audio converter can perform the conversion in-place. + Returns whether the audio converter can perform the conversion in-place. The return value would be typically input to gst_base_transform_set_in_place() + - %TRUE when the conversion can be done in place. + %TRUE when the conversion can be done in place. - a #GstAudioConverter + a #GstAudioConverter - Set @in_rate, @out_rate and @config as extra configuration for @convert. + Set @in_rate, @out_rate and @config as extra configuration for @convert. @in_rate and @out_rate specify the new sample rates of input and output formats. A value of 0 leaves the sample rate unchanged. @@ -2733,28 +4713,39 @@ then be retrieved and refined with gst_audio_converter_get_config(). Look at the #GST_AUDIO_CONVERTER_OPT_* fields to check valid configuration option and values. + - %TRUE when the new parameters could be set + %TRUE when the new parameters could be set - a #GstAudioConverter + a #GstAudioConverter - input rate + input rate - output rate + output rate - a #GstStructure or %NULL + a #GstStructure or %NULL @@ -2764,25 +4755,33 @@ option and values. glib:type-name="GstAudioConverterFlags" glib:get-type="gst_audio_converter_flags_get_type" c:type="GstAudioConverterFlags"> - Extra flags passed to gst_audio_converter_new() and gst_audio_converter_samples(). + Extra flags passed to gst_audio_converter_new() and gst_audio_converter_samples(). - no flag + no flag - the input sample arrays are writable and can be + the input sample arrays are writable and can be used as temporary storage during conversion. - allow arbitrary rate updates with + allow arbitrary rate updates with gst_audio_converter_update_config(). @@ -2794,7 +4793,9 @@ option and values. glib:type-name="GstAudioDecoder" glib:get-type="gst_audio_decoder_get_type" glib:type-struct="AudioDecoderClass"> - This base class is for audio decoders turning encoded data into + This base class is for audio decoders turning encoded data into raw audio samples. GstAudioDecoder and subclass should cooperate as follows. @@ -2883,7 +4884,9 @@ Things that subclass need to take care of: @gst_audio_decoder_finish_frame. If it is prepared to perform PLC, it should also accept NULL data in @handle_frame and provide for data for indicated duration. + + @@ -2894,6 +4897,7 @@ Things that subclass need to take care of: + @@ -2907,6 +4911,7 @@ Things that subclass need to take care of: + @@ -2920,6 +4925,7 @@ Things that subclass need to take care of: + @@ -2933,6 +4939,7 @@ Things that subclass need to take care of: + @@ -2946,21 +4953,29 @@ Things that subclass need to take care of: - Negotiate with downstream elements to currently configured #GstAudioInfo. + Negotiate with downstream elements to currently configured #GstAudioInfo. Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if negotiate fails. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstAudioDecoder + a #GstAudioDecoder + @@ -2971,6 +4986,7 @@ negotiate fails. + @@ -2990,6 +5006,7 @@ negotiate fails. + @@ -3003,6 +5020,7 @@ negotiate fails. + @@ -3016,6 +5034,7 @@ negotiate fails. + @@ -3029,6 +5048,7 @@ negotiate fails. + @@ -3042,6 +5062,7 @@ negotiate fails. + @@ -3055,6 +5076,7 @@ negotiate fails. + @@ -3068,6 +5090,7 @@ negotiate fails. + @@ -3081,6 +5104,7 @@ negotiate fails. + @@ -3091,6 +5115,7 @@ negotiate fails. + @@ -3101,6 +5126,7 @@ negotiate fails. + @@ -3121,26 +5147,37 @@ negotiate fails. - Helper function that allocates a buffer to hold an audio frame + Helper function that allocates a buffer to hold an audio frame for @dec's current output format. + - allocated buffer + allocated buffer - a #GstAudioDecoder + a #GstAudioDecoder - size of the buffer + size of the buffer - Collects decoded data and pushes it downstream. + Collects decoded data and pushes it downstream. @buf may be NULL in which case the indicated number of frames are discarded and considered to have produced no output @@ -3150,21 +5187,30 @@ data in @buf. Note that a frame received in #GstAudioDecoderClass.handle_frame() may be invalidated by a call to this function. + - a #GstFlowReturn that should be escalated to caller (of caller) + a #GstFlowReturn that should be escalated to caller (of caller) - a #GstAudioDecoder + a #GstAudioDecoder - decoded data + decoded data - number of decoded frames represented by decoded data + number of decoded frames represented by decoded data @@ -3172,7 +5218,9 @@ invalidated by a call to this function. - Collects decoded data and pushes it downstream. This function may be called + Collects decoded data and pushes it downstream. This function may be called multiple times for a given input frame. @buf may be NULL in which case it is assumed that the current input frame is @@ -3185,33 +5233,45 @@ already. Note that a frame received in #GstAudioDecoderClass.handle_frame() may be invalidated by a call to this function. + - a #GstFlowReturn that should be escalated to caller (of caller) + a #GstFlowReturn that should be escalated to caller (of caller) - a #GstAudioDecoder + a #GstAudioDecoder - decoded data + decoded data - Lets #GstAudioDecoder sub-classes to know the memory @allocator + Lets #GstAudioDecoder sub-classes to know the memory @allocator used by the base class and its @params. Unref the @allocator after use it. + - a #GstAudioDecoder + a #GstAudioDecoder transfer-ownership="full" optional="1" allow-none="1"> - the #GstAllocator + the #GstAllocator used @@ -3230,7 +5292,9 @@ used transfer-ownership="full" optional="1" allow-none="1"> - the + the #GstAllocationParams of @allocator @@ -3238,67 +5302,94 @@ used + - a #GstAudioInfo describing the input audio format + a #GstAudioInfo describing the input audio format - a #GstAudioDecoder + a #GstAudioDecoder + - currently configured decoder delay + currently configured decoder delay - a #GstAudioDecoder + a #GstAudioDecoder - Queries decoder drain handling. + Queries decoder drain handling. + - TRUE if drainable handling is enabled. + TRUE if drainable handling is enabled. MT safe. - a #GstAudioDecoder + a #GstAudioDecoder + - currently configured byte to time conversion setting + currently configured byte to time conversion setting - a #GstAudioDecoder + a #GstAudioDecoder - Sets the variables pointed to by @min and @max to the currently configured + Sets the variables pointed to by @min and @max to the currently configured latency. + - a #GstAudioDecoder + a #GstAudioDecoder transfer-ownership="full" optional="1" allow-none="1"> - a pointer to storage to hold minimum latency + a pointer to storage to hold minimum latency transfer-ownership="full" optional="1" allow-none="1"> - a pointer to storage to hold maximum latency + a pointer to storage to hold maximum latency + - currently configured decoder tolerated error count. + currently configured decoder tolerated error count. - a #GstAudioDecoder + a #GstAudioDecoder - Queries decoder's latency aggregation. + Queries decoder's latency aggregation. + - aggregation latency. + aggregation latency. MT safe. - a #GstAudioDecoder + a #GstAudioDecoder - Queries decoder required format handling. + Queries decoder required format handling. + - TRUE if required format handling is enabled. + TRUE if required format handling is enabled. MT safe. - a #GstAudioDecoder + a #GstAudioDecoder - Return current parsing (sync and eos) state. + Return current parsing (sync and eos) state. + - a #GstAudioDecoder + a #GstAudioDecoder transfer-ownership="full" optional="1" allow-none="1"> - a pointer to a variable to hold the current sync state + a pointer to a variable to hold the current sync state transfer-ownership="full" optional="1" allow-none="1"> - a pointer to a variable to hold the current eos state + a pointer to a variable to hold the current eos state - Queries decoder packet loss concealment handling. + Queries decoder packet loss concealment handling. + - TRUE if packet loss concealment is enabled. + TRUE if packet loss concealment is enabled. MT safe. - a #GstAudioDecoder + a #GstAudioDecoder + - currently configured plc handling + currently configured plc handling - a #GstAudioDecoder + a #GstAudioDecoder - Queries current audio jitter tolerance threshold. + Queries current audio jitter tolerance threshold. + - decoder audio jitter tolerance threshold. + decoder audio jitter tolerance threshold. MT safe. - a #GstAudioDecoder + a #GstAudioDecoder - Sets the audio decoder tags and how they should be merged with any + Sets the audio decoder tags and how they should be merged with any upstream stream tags. This will override any tags previously-set with gst_audio_decoder_merge_tags(). Note that this is provided for convenience, and the subclass is not required to use this and can still do tag handling on its own. + - a #GstAudioDecoder + a #GstAudioDecoder - a #GstTagList to merge, or NULL + a #GstTagList to merge, or NULL - the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE + the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE - Negotiate with downstream elements to currently configured #GstAudioInfo. + Negotiate with downstream elements to currently configured #GstAudioInfo. Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if negotiate fails. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstAudioDecoder + a #GstAudioDecoder @@ -3487,30 +5645,41 @@ negotiate fails. - Returns caps that express @caps (or sink template caps if @caps == NULL) + Returns caps that express @caps (or sink template caps if @caps == NULL) restricted to rate/channels/... combinations supported by downstream elements. + - a #GstCaps owned by caller + a #GstCaps owned by caller - a #GstAudioDecoder + a #GstAudioDecoder - initial caps + initial caps - filter caps + filter caps @@ -3518,128 +5687,174 @@ elements. - Sets a caps in allocation query which are different from the set + Sets a caps in allocation query which are different from the set pad's caps. Use this function before calling gst_audio_decoder_negotiate(). Setting to %NULL the allocation query will use the caps from the pad. + - a #GstAudioDecoder + a #GstAudioDecoder - a #GstCaps or %NULL + a #GstCaps or %NULL - Configures decoder drain handling. If drainable, subclass might + Configures decoder drain handling. If drainable, subclass might be handed a NULL buffer to have it return any leftover decoded data. Otherwise, it is not considered so capable and will only ever be passed real data. MT safe. + - a #GstAudioDecoder + a #GstAudioDecoder - new state + new state - Allows baseclass to perform byte to time estimated conversion. + Allows baseclass to perform byte to time estimated conversion. + - a #GstAudioDecoder + a #GstAudioDecoder - whether to enable byte to time conversion + whether to enable byte to time conversion - Sets decoder latency. + Sets decoder latency. + - a #GstAudioDecoder + a #GstAudioDecoder - minimum latency + minimum latency - maximum latency + maximum latency - Sets numbers of tolerated decoder errors, where a tolerated one is then only + Sets numbers of tolerated decoder errors, where a tolerated one is then only warned about, but more than tolerated will lead to fatal error. You can set -1 for never returning fatal errors. Default is set to GST_AUDIO_DECODER_MAX_ERRORS. + - a #GstAudioDecoder + a #GstAudioDecoder - max tolerated errors + max tolerated errors - Sets decoder minimum aggregation latency. + Sets decoder minimum aggregation latency. MT safe. + - a #GstAudioDecoder + a #GstAudioDecoder - new minimum latency + new minimum latency - Configures decoder format needs. If enabled, subclass needs to be + Configures decoder format needs. If enabled, subclass needs to be negotiated with format caps before it can process any data. It will then never be handed any data before it has been configured. Otherwise, it might be handed data without having been configured and @@ -3647,16 +5862,21 @@ is then expected being able to do so either by default or based on the input data. MT safe. + - a #GstAudioDecoder + a #GstAudioDecoder - new state + new state @@ -3664,94 +5884,133 @@ MT safe. - Configure output caps on the srcpad of @dec. Similar to + Configure output caps on the srcpad of @dec. Similar to gst_audio_decoder_set_output_format(), but allows subclasses to specify output caps that can't be expressed via #GstAudioInfo e.g. caps that have caps features. + - %TRUE on success. + %TRUE on success. - a #GstAudioDecoder + a #GstAudioDecoder - (fixed) #GstCaps + (fixed) #GstCaps - Configure output info on the srcpad of @dec. + Configure output info on the srcpad of @dec. + - %TRUE on success. + %TRUE on success. - a #GstAudioDecoder + a #GstAudioDecoder - #GstAudioInfo + #GstAudioInfo - Enable or disable decoder packet loss concealment, provided subclass + Enable or disable decoder packet loss concealment, provided subclass and codec are capable and allow handling plc. MT safe. + - a #GstAudioDecoder + a #GstAudioDecoder - new state + new state - Indicates whether or not subclass handles packet loss concealment (plc). + Indicates whether or not subclass handles packet loss concealment (plc). + - a #GstAudioDecoder + a #GstAudioDecoder - new plc state + new plc state - Configures decoder audio jitter tolerance threshold. + Configures decoder audio jitter tolerance threshold. MT safe. + - a #GstAudioDecoder + a #GstAudioDecoder - new tolerance + new tolerance @@ -3759,22 +6018,29 @@ MT safe. - Lets #GstAudioDecoder sub-classes decide if they want the sink pad + Lets #GstAudioDecoder sub-classes decide if they want the sink pad to use the default pad query handler to reply to accept-caps queries. By setting this to true it is possible to further customize the default handler with %GST_PAD_SET_ACCEPT_INTERSECT and %GST_PAD_SET_ACCEPT_TEMPLATE + - a #GstAudioDecoder + a #GstAudioDecoder - if the default pad accept-caps query handling should be used + if the default pad accept-caps query handling should be used @@ -3810,7 +6076,7 @@ handler with %GST_PAD_SET_ACCEPT_INTERSECT and - + @@ -3818,15 +6084,21 @@ handler with %GST_PAD_SET_ACCEPT_INTERSECT and - Subclasses can override any of the available virtual methods or not, as + Subclasses can override any of the available virtual methods or not, as needed. At minimum @handle_frame (and likely @set_format) needs to be overridden. + - The parent class structure + The parent class structure + @@ -3839,6 +6111,7 @@ overridden. + @@ -3851,6 +6124,7 @@ overridden. + @@ -3866,6 +6140,7 @@ overridden. + @@ -3887,6 +6162,7 @@ overridden. + @@ -3902,6 +6178,7 @@ overridden. + @@ -3917,6 +6194,7 @@ overridden. + @@ -3932,6 +6210,7 @@ overridden. + @@ -3947,6 +6226,7 @@ overridden. + @@ -3962,6 +6242,7 @@ overridden. + @@ -3974,6 +6255,7 @@ overridden. + @@ -3986,13 +6268,18 @@ overridden. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstAudioDecoder + a #GstAudioDecoder @@ -4000,6 +6287,7 @@ overridden. + @@ -4015,6 +6303,7 @@ overridden. + @@ -4030,6 +6319,7 @@ overridden. + @@ -4045,6 +6335,7 @@ overridden. + @@ -4060,6 +6351,7 @@ overridden. + @@ -4075,6 +6367,7 @@ overridden. + @@ -4095,7 +6388,7 @@ overridden. - + @@ -4103,39 +6396,52 @@ overridden. + - Set of available dithering methods. + Set of available dithering methods. - No dithering + No dithering - Rectangular dithering + Rectangular dithering - Triangular dithering (default) + Triangular dithering (default) - High frequency triangular dithering + High frequency triangular dithering - Extra buffer metadata describing audio downmixing matrix. This metadata is + Extra buffer metadata describing audio downmixing matrix. This metadata is attached to audio buffers and contains a matrix to downmix the buffer number of channels to @channels. @@ -4143,31 +6449,45 @@ of channels to @channels. coefficients, i.e. the i-th output channels is constructed by multiplicating the input channels with the coefficients in @matrix[i] and taking the sum of the results. + - parent #GstMeta + parent #GstMeta - the channel positions of the source + the channel positions of the source - the channel positions of the destination + the channel positions of the destination - the number of channels of the source + the number of channels of the source - the number of channels of the destination + the number of channels of the destination - the matrix coefficients. + the matrix coefficients. + @@ -4181,7 +6501,9 @@ of the results. glib:type-name="GstAudioEncoder" glib:get-type="gst_audio_encoder_get_type" glib:type-struct="AudioEncoderClass"> - This base class is for audio encoders turning raw audio samples into + This base class is for audio encoders turning raw audio samples into encoded audio data. GstAudioEncoder and subclass should cooperate as follows. @@ -4273,8 +6595,10 @@ Things that subclass need to take care of: and discontinuity processing. * Accept data in @handle_frame and provide encoded results to gst_audio_encoder_finish_frame(). + + @@ -4285,6 +6609,7 @@ Things that subclass need to take care of: + @@ -4298,6 +6623,7 @@ Things that subclass need to take care of: + @@ -4308,6 +6634,7 @@ Things that subclass need to take care of: + @@ -4321,6 +6648,7 @@ Things that subclass need to take care of: + @@ -4334,21 +6662,29 @@ Things that subclass need to take care of: - Negotiate with downstream elements to currently configured #GstCaps. + Negotiate with downstream elements to currently configured #GstCaps. Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if negotiate fails. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstAudioEncoder + a #GstAudioEncoder + @@ -4359,6 +6695,7 @@ negotiate fails. + @@ -4372,6 +6709,7 @@ negotiate fails. + @@ -4385,6 +6723,7 @@ negotiate fails. + @@ -4398,6 +6737,7 @@ negotiate fails. + @@ -4411,6 +6751,7 @@ negotiate fails. + @@ -4424,6 +6765,7 @@ negotiate fails. + @@ -4437,6 +6779,7 @@ negotiate fails. + @@ -4450,6 +6793,7 @@ negotiate fails. + @@ -4460,6 +6804,7 @@ negotiate fails. + @@ -4470,6 +6815,7 @@ negotiate fails. + @@ -4490,26 +6836,37 @@ negotiate fails. - Helper function that allocates a buffer to hold an encoded audio frame + Helper function that allocates a buffer to hold an encoded audio frame for @enc's current output format. + - allocated buffer + allocated buffer - a #GstAudioEncoder + a #GstAudioEncoder - size of the buffer + size of the buffer - Collects encoded data and pushes encoded data downstream. + Collects encoded data and pushes encoded data downstream. Source pad caps must be set when this is called. If @samples < 0, then best estimate is all samples provided to encoder @@ -4519,37 +6876,51 @@ and a discontinuity is marked. Note that samples received in #GstAudioEncoderClass.handle_frame() may be invalidated by a call to this function. + - a #GstFlowReturn that should be escalated to caller (of caller) + a #GstFlowReturn that should be escalated to caller (of caller) - a #GstAudioEncoder + a #GstAudioEncoder - encoded data + encoded data - number of samples (per channel) represented by encoded data + number of samples (per channel) represented by encoded data - Lets #GstAudioEncoder sub-classes to know the memory @allocator + Lets #GstAudioEncoder sub-classes to know the memory @allocator used by the base class and its @params. Unref the @allocator after use it. + - a #GstAudioEncoder + a #GstAudioEncoder transfer-ownership="full" optional="1" allow-none="1"> - the #GstAllocator + the #GstAllocator used @@ -4568,7 +6941,9 @@ used transfer-ownership="full" optional="1" allow-none="1"> - the + the #GstAllocationParams of @allocator @@ -4576,90 +6951,125 @@ used + - a #GstAudioInfo describing the input audio format + a #GstAudioInfo describing the input audio format - a #GstAudioEncoder + a #GstAudioEncoder - Queries encoder drain handling. + Queries encoder drain handling. + - TRUE if drainable handling is enabled. + TRUE if drainable handling is enabled. MT safe. - a #GstAudioEncoder + a #GstAudioEncoder + - currently configured maximum handled frames + currently configured maximum handled frames - a #GstAudioEncoder + a #GstAudioEncoder + - currently maximum requested samples per frame + currently maximum requested samples per frame - a #GstAudioEncoder + a #GstAudioEncoder + - currently minimum requested samples per frame + currently minimum requested samples per frame - a #GstAudioEncoder + a #GstAudioEncoder - Queries encoder hard minimum handling. + Queries encoder hard minimum handling. + - TRUE if hard minimum handling is enabled. + TRUE if hard minimum handling is enabled. MT safe. - a #GstAudioEncoder + a #GstAudioEncoder + @@ -4670,14 +7080,19 @@ MT safe. - Sets the variables pointed to by @min and @max to the currently configured + Sets the variables pointed to by @min and @max to the currently configured latency. + - a #GstAudioEncoder + a #GstAudioEncoder transfer-ownership="full" optional="1" allow-none="1"> - a pointer to storage to hold minimum latency + a pointer to storage to hold minimum latency transfer-ownership="full" optional="1" allow-none="1"> - a pointer to storage to hold maximum latency + a pointer to storage to hold maximum latency + - currently configured encoder lookahead + currently configured encoder lookahead - a #GstAudioEncoder + a #GstAudioEncoder - Queries if the encoder will handle granule marking. + Queries if the encoder will handle granule marking. + - TRUE if granule marking is enabled. + TRUE if granule marking is enabled. MT safe. - a #GstAudioEncoder + a #GstAudioEncoder - Queries encoder perfect timestamp behaviour. + Queries encoder perfect timestamp behaviour. + - TRUE if perfect timestamp setting enabled. + TRUE if perfect timestamp setting enabled. MT safe. - a #GstAudioEncoder + a #GstAudioEncoder - Queries current audio jitter tolerance threshold. + Queries current audio jitter tolerance threshold. + - encoder audio jitter tolerance threshold. + encoder audio jitter tolerance threshold. MT safe. - a #GstAudioEncoder + a #GstAudioEncoder - Sets the audio encoder tags and how they should be merged with any + Sets the audio encoder tags and how they should be merged with any upstream stream tags. This will override any tags previously-set with gst_audio_encoder_merge_tags(). @@ -4770,69 +7217,94 @@ Note that this is provided for convenience, and the subclass is not required to use this and can still do tag handling on its own. MT safe. + - a #GstAudioEncoder + a #GstAudioEncoder - a #GstTagList to merge, or NULL to unset + a #GstTagList to merge, or NULL to unset previously-set tags - the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE + the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE - Negotiate with downstream elements to currently configured #GstCaps. + Negotiate with downstream elements to currently configured #GstCaps. Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if negotiate fails. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstAudioEncoder + a #GstAudioEncoder - Returns caps that express @caps (or sink template caps if @caps == NULL) + Returns caps that express @caps (or sink template caps if @caps == NULL) restricted to channel/rate combinations supported by downstream elements (e.g. muxers). + - a #GstCaps owned by caller + a #GstCaps owned by caller - a #GstAudioEncoder + a #GstAudioEncoder - initial caps + initial caps - filter caps + filter caps @@ -4840,73 +7312,96 @@ restricted to channel/rate combinations supported by downstream elements - Sets a caps in allocation query which are different from the set + Sets a caps in allocation query which are different from the set pad's caps. Use this function before calling gst_audio_encoder_negotiate(). Setting to %NULL the allocation query will use the caps from the pad. + - a #GstAudioEncoder + a #GstAudioEncoder - a #GstCaps or %NULL + a #GstCaps or %NULL - Configures encoder drain handling. If drainable, subclass might + Configures encoder drain handling. If drainable, subclass might be handed a NULL buffer to have it return any leftover encoded data. Otherwise, it is not considered so capable and will only ever be passed real data. MT safe. + - a #GstAudioEncoder + a #GstAudioEncoder - new state + new state - Sets max number of frames accepted at once (assumed minimally 1). + Sets max number of frames accepted at once (assumed minimally 1). Requires @frame_samples_min and @frame_samples_max to be the equal. Note: This value will be reset to 0 every time before #GstAudioEncoderClass.set_format() is called. + - a #GstAudioEncoder + a #GstAudioEncoder - number of frames + number of frames - Sets number of samples (per channel) subclass needs to be handed, + Sets number of samples (per channel) subclass needs to be handed, at most or will be handed all available if 0. If an exact number of samples is required, gst_audio_encoder_set_frame_samples_min() @@ -4914,23 +7409,30 @@ must be called with the same number. Note: This value will be reset to 0 every time before #GstAudioEncoderClass.set_format() is called. + - a #GstAudioEncoder + a #GstAudioEncoder - number of samples per frame + number of samples per frame - Sets number of samples (per channel) subclass needs to be handed, + Sets number of samples (per channel) subclass needs to be handed, at least or will be handed all available if 0. If an exact number of samples is required, gst_audio_encoder_set_frame_samples_max() @@ -4938,44 +7440,57 @@ must be called with the same number. Note: This value will be reset to 0 every time before #GstAudioEncoderClass.set_format() is called. + - a #GstAudioEncoder + a #GstAudioEncoder - number of samples per frame + number of samples per frame - Configures encoder hard minimum handling. If enabled, subclass + Configures encoder hard minimum handling. If enabled, subclass will never be handed less samples than it configured, which otherwise might occur near end-of-data handling. Instead, the leftover samples will simply be discarded. MT safe. + - a #GstAudioEncoder + a #GstAudioEncoder - new state + new state + @@ -4989,17 +7504,24 @@ MT safe. - Set the codec headers to be sent downstream whenever requested. + Set the codec headers to be sent downstream whenever requested. + - a #GstAudioEncoder + a #GstAudioEncoder - a list of + a list of #GstBuffer containing the codec header @@ -5008,116 +7530,162 @@ MT safe. - Sets encoder latency. + Sets encoder latency. + - a #GstAudioEncoder + a #GstAudioEncoder - minimum latency + minimum latency - maximum latency + maximum latency - Sets encoder lookahead (in units of input rate samples) + Sets encoder lookahead (in units of input rate samples) Note: This value will be reset to 0 every time before #GstAudioEncoderClass.set_format() is called. + - a #GstAudioEncoder + a #GstAudioEncoder - lookahead + lookahead - Enable or disable encoder granule handling. + Enable or disable encoder granule handling. MT safe. + - a #GstAudioEncoder + a #GstAudioEncoder - new state + new state - Configure output caps on the srcpad of @enc. + Configure output caps on the srcpad of @enc. + - %TRUE on success. + %TRUE on success. - a #GstAudioEncoder + a #GstAudioEncoder - #GstCaps + #GstCaps - Enable or disable encoder perfect output timestamp preference. + Enable or disable encoder perfect output timestamp preference. MT safe. + - a #GstAudioEncoder + a #GstAudioEncoder - new state + new state - Configures encoder audio jitter tolerance threshold. + Configures encoder audio jitter tolerance threshold. MT safe. + - a #GstAudioEncoder + a #GstAudioEncoder - new tolerance + new tolerance @@ -5158,7 +7726,7 @@ MT safe. - + @@ -5166,14 +7734,20 @@ MT safe. - Subclasses can override any of the available virtual methods or not, as + Subclasses can override any of the available virtual methods or not, as needed. At minimum @set_format and @handle_frame needs to be overridden. + - The parent class structure + The parent class structure + @@ -5186,6 +7760,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5198,6 +7773,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5213,6 +7789,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5228,6 +7805,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5240,6 +7818,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5255,6 +7834,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5270,6 +7850,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5285,6 +7866,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5300,6 +7882,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5312,6 +7895,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5324,13 +7908,18 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstAudioEncoder + a #GstAudioEncoder @@ -5338,6 +7927,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5353,6 +7943,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5368,6 +7959,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5389,6 +7981,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5404,6 +7997,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + @@ -5418,7 +8012,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. - + @@ -5426,6 +8020,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden. + glib:type-name="GstAudioFilter" glib:get-type="gst_audio_filter_get_type" glib:type-struct="AudioFilterClass"> - #GstAudioFilter is a #GstBaseTransform<!-- -->-derived base class for simple audio + #GstAudioFilter is a #GstBaseTransform<!-- -->-derived base class for simple audio filters, ie. those that output the same format that they get as input. #GstAudioFilter will parse the input format for you (with error checking) @@ -5448,7 +8045,9 @@ Derived classes should override the #GstAudioFilterClass.setup() and #GstBaseTransformClass.transform_ip() and/or #GstBaseTransformClass.transform() virtual functions in their class_init function. + + @@ -5468,7 +8067,7 @@ virtual functions in their class_init function. - + @@ -5476,16 +8075,22 @@ virtual functions in their class_init function. - In addition to the @setup virtual function, you should also override the + In addition to the @setup virtual function, you should also override the GstBaseTransform::transform and/or GstBaseTransform::transform_ip virtual function. + - parent class + parent class + @@ -5500,26 +8105,33 @@ function. - + - Convenience function to add pad templates to this element class, with + Convenience function to add pad templates to this element class, with @allowed_caps as the caps that can be handled. This function is usually used from within a GObject class_init function. + - an #GstAudioFilterClass + an #GstAudioFilterClass - what formats the filter can handle, as #GstCaps + what formats the filter can handle, as #GstCaps @@ -5529,18 +8141,24 @@ This function is usually used from within a GObject class_init function. glib:type-name="GstAudioFlags" glib:get-type="gst_audio_flags_get_type" c:type="GstAudioFlags"> - Extra audio flags + Extra audio flags - no valid flag + no valid flag - the position array explicitly + the position array explicitly contains unpositioned channels. @@ -5548,362 +8166,493 @@ This function is usually used from within a GObject class_init function. glib:type-name="GstAudioFormat" glib:get-type="gst_audio_format_get_type" c:type="GstAudioFormat"> - Enum value describing the most common audio formats. + Enum value describing the most common audio formats. - unknown or unset audio format + unknown or unset audio format - encoded audio format + encoded audio format - 8 bits in 8 bits, signed + 8 bits in 8 bits, signed - 8 bits in 8 bits, unsigned + 8 bits in 8 bits, unsigned - 16 bits in 16 bits, signed, little endian + 16 bits in 16 bits, signed, little endian - 16 bits in 16 bits, signed, big endian + 16 bits in 16 bits, signed, big endian - 16 bits in 16 bits, unsigned, little endian + 16 bits in 16 bits, unsigned, little endian - 16 bits in 16 bits, unsigned, big endian + 16 bits in 16 bits, unsigned, big endian - 24 bits in 32 bits, signed, little endian + 24 bits in 32 bits, signed, little endian - 24 bits in 32 bits, signed, big endian + 24 bits in 32 bits, signed, big endian - 24 bits in 32 bits, unsigned, little endian + 24 bits in 32 bits, unsigned, little endian - 24 bits in 32 bits, unsigned, big endian + 24 bits in 32 bits, unsigned, big endian - 32 bits in 32 bits, signed, little endian + 32 bits in 32 bits, signed, little endian - 32 bits in 32 bits, signed, big endian + 32 bits in 32 bits, signed, big endian - 32 bits in 32 bits, unsigned, little endian + 32 bits in 32 bits, unsigned, little endian - 32 bits in 32 bits, unsigned, big endian + 32 bits in 32 bits, unsigned, big endian - 24 bits in 24 bits, signed, little endian + 24 bits in 24 bits, signed, little endian - 24 bits in 24 bits, signed, big endian + 24 bits in 24 bits, signed, big endian - 24 bits in 24 bits, unsigned, little endian + 24 bits in 24 bits, unsigned, little endian - 24 bits in 24 bits, unsigned, big endian + 24 bits in 24 bits, unsigned, big endian - 20 bits in 24 bits, signed, little endian + 20 bits in 24 bits, signed, little endian - 20 bits in 24 bits, signed, big endian + 20 bits in 24 bits, signed, big endian - 20 bits in 24 bits, unsigned, little endian + 20 bits in 24 bits, unsigned, little endian - 20 bits in 24 bits, unsigned, big endian + 20 bits in 24 bits, unsigned, big endian - 18 bits in 24 bits, signed, little endian + 18 bits in 24 bits, signed, little endian - 18 bits in 24 bits, signed, big endian + 18 bits in 24 bits, signed, big endian - 18 bits in 24 bits, unsigned, little endian + 18 bits in 24 bits, unsigned, little endian - 18 bits in 24 bits, unsigned, big endian + 18 bits in 24 bits, unsigned, big endian - 32-bit floating point samples, little endian + 32-bit floating point samples, little endian - 32-bit floating point samples, big endian + 32-bit floating point samples, big endian - 64-bit floating point samples, little endian + 64-bit floating point samples, little endian - 64-bit floating point samples, big endian + 64-bit floating point samples, big endian - 16 bits in 16 bits, signed, native endianness + 16 bits in 16 bits, signed, native endianness - 16 bits in 16 bits, unsigned, native endianness + 16 bits in 16 bits, unsigned, native endianness - 24 bits in 32 bits, signed, native endianness + 24 bits in 32 bits, signed, native endianness - 24 bits in 32 bits, unsigned, native endianness + 24 bits in 32 bits, unsigned, native endianness - 32 bits in 32 bits, signed, native endianness + 32 bits in 32 bits, signed, native endianness - 32 bits in 32 bits, unsigned, native endianness + 32 bits in 32 bits, unsigned, native endianness - 24 bits in 24 bits, signed, native endianness + 24 bits in 24 bits, signed, native endianness - 24 bits in 24 bits, unsigned, native endianness + 24 bits in 24 bits, unsigned, native endianness - 20 bits in 24 bits, signed, native endianness + 20 bits in 24 bits, signed, native endianness - 20 bits in 24 bits, unsigned, native endianness + 20 bits in 24 bits, unsigned, native endianness - 18 bits in 24 bits, signed, native endianness + 18 bits in 24 bits, signed, native endianness - 18 bits in 24 bits, unsigned, native endianness + 18 bits in 24 bits, unsigned, native endianness - 32-bit floating point samples, native endianness + 32-bit floating point samples, native endianness - 64-bit floating point samples, native endianness + 64-bit floating point samples, native endianness - Construct a #GstAudioFormat with given parameters. + Construct a #GstAudioFormat with given parameters. + - a #GstAudioFormat or GST_AUDIO_FORMAT_UNKNOWN when no audio format + a #GstAudioFormat or GST_AUDIO_FORMAT_UNKNOWN when no audio format exists with the given parameters. - signed or unsigned format + signed or unsigned format - G_LITTLE_ENDIAN or G_BIG_ENDIAN + G_LITTLE_ENDIAN or G_BIG_ENDIAN - amount of bits used per sample + amount of bits used per sample - amount of used bits in @width + amount of used bits in @width - Fill @length bytes in @dest with silence samples for @info. + Fill @length bytes in @dest with silence samples for @info. + - a #GstAudioFormatInfo + a #GstAudioFormatInfo - a destination + a destination to fill - the length to fill + the length to fill - Convert the @format string to its #GstAudioFormat. + Convert the @format string to its #GstAudioFormat. + - the #GstAudioFormat for @format or GST_AUDIO_FORMAT_UNKNOWN when the + the #GstAudioFormat for @format or GST_AUDIO_FORMAT_UNKNOWN when the string is not a known format. - a format string + a format string - Get the #GstAudioFormatInfo for @format + Get the #GstAudioFormatInfo for @format + - The #GstAudioFormatInfo for @format. + The #GstAudioFormatInfo for @format. - a #GstAudioFormat + a #GstAudioFormat + @@ -5918,159 +8667,222 @@ string is not a known format. glib:type-name="GstAudioFormatFlags" glib:get-type="gst_audio_format_flags_get_type" c:type="GstAudioFormatFlags"> - The different audio flags that a format info can have. + The different audio flags that a format info can have. - integer samples + integer samples - float samples + float samples - signed samples + signed samples - complex layout + complex layout - the format can be used in + the format can be used in #GstAudioFormatUnpack and #GstAudioFormatPack functions - Information for an audio format. + Information for an audio format. + - #GstAudioFormat + #GstAudioFormat - string representation of the format + string representation of the format - user readable description of the format + user readable description of the format - #GstAudioFormatFlags + #GstAudioFormatFlags - the endianness + the endianness - amount of bits used for one sample + amount of bits used for one sample - amount of valid bits in @width + amount of valid bits in @width - @width/8 bytes with 1 silent sample - + @width/8 bytes with 1 silent sample + - the format of the unpacked samples + the format of the unpacked samples - function to unpack samples + function to unpack samples - function to pack samples + function to pack samples - + - Packs @length samples from @src to the data array in format @info. + Packs @length samples from @src to the data array in format @info. The samples from source have each channel interleaved and will be packed into @data. + - a #GstAudioFormatInfo + a #GstAudioFormatInfo - #GstAudioPackFlags + #GstAudioPackFlags - a source array + a source array - pointer to the destination + pointer to the destination data - the amount of samples to pack. + the amount of samples to pack. - Unpacks @length samples from the given data of format @info. + Unpacks @length samples from the given data of format @info. The samples will be unpacked into @dest which each channel interleaved. @dest should at least be big enough to hold @length * channels * size(unpack_format) bytes. + - a #GstAudioFormatInfo + a #GstAudioFormatInfo - #GstAudioPackFlags + #GstAudioPackFlags - a destination array + a destination array - pointer to the audio data + pointer to the audio data - the amount of samples to unpack. + the amount of samples to unpack. @@ -6080,142 +8892,203 @@ channels * size(unpack_format) bytes. glib:type-name="GstAudioInfo" glib:get-type="gst_audio_info_get_type" c:symbol-prefix="audio_info"> - Information describing audio properties. This information can be filled + Information describing audio properties. This information can be filled in from GstCaps with gst_audio_info_from_caps(). Use the provided macros to access the info in this structure. + - the format info of the audio + the format info of the audio - additional audio flags + additional audio flags - audio layout + audio layout - the audio sample rate + the audio sample rate - the number of channels + the number of channels - the number of bytes for one frame, this is the size of one + the number of bytes for one frame, this is the size of one sample * @channels - the positions for each channel - + the positions for each channel + - + - Allocate a new #GstAudioInfo that is also initialized with + Allocate a new #GstAudioInfo that is also initialized with gst_audio_info_init(). + - a new #GstAudioInfo. free with gst_audio_info_free(). + a new #GstAudioInfo. free with gst_audio_info_free(). - Converts among various #GstFormat types. This function handles + Converts among various #GstFormat types. This function handles GST_FORMAT_BYTES, GST_FORMAT_TIME, and GST_FORMAT_DEFAULT. For raw audio, GST_FORMAT_DEFAULT corresponds to audio frames. This function can be used to handle pad queries of the type GST_QUERY_CONVERT. + - TRUE if the conversion was successful. + TRUE if the conversion was successful. - a #GstAudioInfo + a #GstAudioInfo - #GstFormat of the @src_val + #GstFormat of the @src_val - value to convert + value to convert - #GstFormat of the @dest_val + #GstFormat of the @dest_val - pointer to destination value + pointer to destination value - Copy a GstAudioInfo structure. + Copy a GstAudioInfo structure. + - a new #GstAudioInfo. free with gst_audio_info_free. + a new #GstAudioInfo. free with gst_audio_info_free. - a #GstAudioInfo + a #GstAudioInfo - Free a GstAudioInfo structure previously allocated with gst_audio_info_new() + Free a GstAudioInfo structure previously allocated with gst_audio_info_new() or gst_audio_info_copy(). + - a #GstAudioInfo + a #GstAudioInfo - Parse @caps and update @info. + Parse @caps and update @info. + - TRUE if @caps could be parsed + TRUE if @caps could be parsed - a #GstAudioInfo + a #GstAudioInfo - a #GstCaps + a #GstCaps - Initialize @info with default values. + Initialize @info with default values. + - a #GstAudioInfo + a #GstAudioInfo @@ -6223,51 +9096,73 @@ or gst_audio_info_copy(). - Compares two #GstAudioInfo and returns whether they are equal or not + Compares two #GstAudioInfo and returns whether they are equal or not + - %TRUE if @info and @other are equal, else %FALSE. + %TRUE if @info and @other are equal, else %FALSE. - a #GstAudioInfo + a #GstAudioInfo - a #GstAudioInfo + a #GstAudioInfo - Set the default info for the audio info of @format and @rate and @channels. + Set the default info for the audio info of @format and @rate and @channels. Note: This initializes @info first, no values are preserved. + - a #GstAudioInfo + a #GstAudioInfo - the format + the format - the samplerate + the samplerate - the number of channels + the number of channels - the channel positions + the channel positions @@ -6278,15 +9173,22 @@ Note: This initializes @info first, no values are preserved. - Convert the values of @info into a #GstCaps. + Convert the values of @info into a #GstCaps. + - the new #GstCaps containing the + the new #GstCaps containing the info of @info. - a #GstAudioInfo + a #GstAudioInfo @@ -6296,53 +9198,71 @@ Note: This initializes @info first, no values are preserved. glib:type-name="GstAudioLayout" glib:get-type="gst_audio_layout_get_type" c:type="GstAudioLayout"> - Layout of the audio samples for the different channels. + Layout of the audio samples for the different channels. - interleaved audio + interleaved audio - non-interleaved audio + non-interleaved audio - #GstAudioDownmixMeta defines an audio downmix matrix to be send along with + #GstAudioDownmixMeta defines an audio downmix matrix to be send along with audio buffers. These functions in this module help to create and attach the meta as well as extracting it. + - parent #GstMeta + parent #GstMeta - the audio properties of the buffer + the audio properties of the buffer - the number of valid samples in the buffer + the number of valid samples in the buffer - the offsets (in bytes) where each channel plane starts in the + the offsets (in bytes) where each channel plane starts in the buffer or %NULL if the buffer has interleaved layout; if not %NULL, this is guaranteed to be an array of @info.channels elements - + - + + @@ -6352,54 +9272,72 @@ meta as well as extracting it. glib:type-name="GstAudioNoiseShapingMethod" glib:get-type="gst_audio_noise_shaping_method_get_type" c:type="GstAudioNoiseShapingMethod"> - Set of available noise shaping methods + Set of available noise shaping methods - No noise shaping (default) + No noise shaping (default) - Error feedback + Error feedback - Simple 2-pole noise shaping + Simple 2-pole noise shaping - Medium 5-pole noise shaping + Medium 5-pole noise shaping - High 8-pole noise shaping + High 8-pole noise shaping - The different flags that can be used when packing and unpacking. + The different flags that can be used when packing and unpacking. - No flag + No flag - When the source has a smaller depth + When the source has a smaller depth than the target format, set the least significant bits of the target to 0. This is likely sightly faster but less accurate. When this flag is not specified, the most significant bits of the source are duplicated @@ -6407,33 +9345,46 @@ meta as well as extracting it. + - Free a #GstAudioQuantize. + Free a #GstAudioQuantize. + - a #GstAudioQuantize + a #GstAudioQuantize - Reset @quant to the state is was when created, clearing any + Reset @quant to the state is was when created, clearing any history it might have. + - a #GstAudioQuantize + a #GstAudioQuantize - Perform quantization on @samples in @in and write the result to @out. + Perform quantization on @samples in @in and write the result to @out. In case the samples are interleaved, @in and @out must point to an array with a single element pointing to a block of interleaved samples. @@ -6443,30 +9394,39 @@ array with pointers to memory blocks, one for each channel. @in and @out may point to the same memory location, in which case samples will be modified in-place. + - a #GstAudioQuantize + a #GstAudioQuantize - input samples + input samples - output samples + output samples - number of samples + number of samples @@ -6474,41 +9434,58 @@ modified in-place. - Create a new quantizer object with the given parameters. + Create a new quantizer object with the given parameters. Output samples will be quantized to a multiple of @quantizer. Better performance is achieved when @quantizer is a power of 2. Dithering and noise-shaping can be performed during quantization with the @dither and @ns parameters. + - a new #GstAudioQuantize. Free with gst_audio_quantize_free(). + a new #GstAudioQuantize. Free with gst_audio_quantize_free(). - a #GstAudioDitherMethod + a #GstAudioDitherMethod - a #GstAudioNoiseShapingMethod + a #GstAudioNoiseShapingMethod - #GstAudioQuantizeFlags + #GstAudioQuantizeFlags - the #GstAudioFormat of the samples + the #GstAudioFormat of the samples - the amount of channels in the samples + the amount of channels in the samples - the quantizer to use + the quantizer to use @@ -6518,95 +9495,136 @@ the @dither and @ns parameters. glib:type-name="GstAudioQuantizeFlags" glib:get-type="gst_audio_quantize_flags_get_type" c:type="GstAudioQuantizeFlags"> - Extra flags that can be passed to gst_audio_quantize_new() + Extra flags that can be passed to gst_audio_quantize_new() - no flags + no flags - samples are non-interleaved + samples are non-interleaved - #GstAudioResampler is a structure which holds the information + #GstAudioResampler is a structure which holds the information required to perform various kinds of resampling filtering. + - Free a previously allocated #GstAudioResampler @resampler. + Free a previously allocated #GstAudioResampler @resampler. + - a #GstAudioResampler + a #GstAudioResampler - Get the number of input frames that would currently be needed + Get the number of input frames that would currently be needed to produce @out_frames from @resampler. + - The number of input frames needed for producing + The number of input frames needed for producing @out_frames of data from @resampler. - a #GstAudioResampler + a #GstAudioResampler - number of input frames + number of input frames - Get the maximum number of input samples that the resampler would + Get the maximum number of input samples that the resampler would need before producing output. + - the latency of @resampler as expressed in the number of + the latency of @resampler as expressed in the number of frames. - a #GstAudioResampler + a #GstAudioResampler - Get the number of output frames that would be currently available when + Get the number of output frames that would be currently available when @in_frames are given to @resampler. + - The number of frames that would be availabe after giving + The number of frames that would be availabe after giving @in_frames as input to @resampler. - a #GstAudioResampler + a #GstAudioResampler - number of input frames + number of input frames - Perform resampling on @in_frames frames in @in and write @out_frames to @out. + Perform resampling on @in_frames frames in @in and write @out_frames to @out. In case the samples are interleaved, @in and @out must point to an array with a single element pointing to a block of interleaved samples. @@ -6621,147 +9639,208 @@ This function always produces @out_frames of output and consumes @in_frames of input. Use gst_audio_resampler_get_out_frames() and gst_audio_resampler_get_in_frames() to make sure @in_frames and @out_frames are matching and @in and @out point to enough memory. + - a #GstAudioResampler + a #GstAudioResampler - input samples + input samples - number of input frames + number of input frames - output samples + output samples - number of output frames + number of output frames - Reset @resampler to the state it was when it was first created, discarding + Reset @resampler to the state it was when it was first created, discarding all sample history. + - a #GstAudioResampler + a #GstAudioResampler - Update the resampler parameters for @resampler. This function should + Update the resampler parameters for @resampler. This function should not be called concurrently with any other function on @resampler. When @in_rate or @out_rate is 0, its value is unchanged. When @options is %NULL, the previously configured options are reused. + - %TRUE if the new parameters could be set + %TRUE if the new parameters could be set - a #GstAudioResampler + a #GstAudioResampler - new input rate + new input rate - new output rate + new output rate - new options or %NULL + new options or %NULL - Make a new resampler. + Make a new resampler. + - The new #GstAudioResampler, or + The new #GstAudioResampler, or %NULL on failure. - a #GstAudioResamplerMethod + a #GstAudioResamplerMethod - #GstAudioResamplerFlags + #GstAudioResamplerFlags - the #GstAudioFormat + the #GstAudioFormat - the number of channels + the number of channels - input rate + input rate - output rate + output rate - extra options + extra options - Set the parameters for resampling from @in_rate to @out_rate using @method + Set the parameters for resampling from @in_rate to @out_rate using @method for @quality in @options. + - a #GstAudioResamplerMethod + a #GstAudioResamplerMethod - the quality + the quality - the input rate + the input rate - the output rate + the output rate - a #GstStructure + a #GstStructure @@ -6771,25 +9850,33 @@ for @quality in @options. glib:type-name="GstAudioResamplerFilterInterpolation" glib:get-type="gst_audio_resampler_filter_interpolation_get_type" c:type="GstAudioResamplerFilterInterpolation"> - The different filter interpolation methods. + The different filter interpolation methods. - no interpolation + no interpolation - linear interpolation of the + linear interpolation of the filter coeficients. - cubic interpolation of the + cubic interpolation of the filter coeficients. @@ -6797,12 +9884,16 @@ for @quality in @options. glib:type-name="GstAudioResamplerFilterMode" glib:get-type="gst_audio_resampler_filter_mode_get_type" c:type="GstAudioResamplerFilterMode"> - Select for the filter tables should be set up. + Select for the filter tables should be set up. - Use interpolated filter tables. This + Use interpolated filter tables. This uses less memory but more CPU and is slightly less accurate but it allows for more efficient variable rate resampling with gst_audio_resampler_update(). @@ -6810,14 +9901,18 @@ for @quality in @options. value="1" c:identifier="GST_AUDIO_RESAMPLER_FILTER_MODE_FULL" glib:nick="full"> - Use full filter table. This uses more memory + Use full filter table. This uses more memory but less CPU. - Automatically choose between interpolated + Automatically choose between interpolated and full filter tables. @@ -6825,18 +9920,24 @@ for @quality in @options. glib:type-name="GstAudioResamplerFlags" glib:get-type="gst_audio_resampler_flags_get_type" c:type="GstAudioResamplerFlags"> - Different resampler flags. + Different resampler flags. - no flags + no flags - input samples are non-interleaved. + input samples are non-interleaved. an array of blocks of samples, one for each channel, should be passed to the resample function. @@ -6844,7 +9945,9 @@ for @quality in @options. value="2" c:identifier="GST_AUDIO_RESAMPLER_FLAG_NON_INTERLEAVED_OUT" glib:nick="non-interleaved-out"> - output samples are non-interleaved. + output samples are non-interleaved. an array of blocks of samples, one for each channel, should be passed to the resample function. @@ -6852,7 +9955,9 @@ for @quality in @options. value="4" c:identifier="GST_AUDIO_RESAMPLER_FLAG_VARIABLE_RATE" glib:nick="variable-rate"> - optimize for dynamic updates of the sample + optimize for dynamic updates of the sample rates with gst_audio_resampler_update(). This will select an interpolating filter when #GST_AUDIO_RESAMPLER_FILTER_MODE_AUTO is configured. @@ -6862,38 +9967,50 @@ for @quality in @options. glib:type-name="GstAudioResamplerMethod" glib:get-type="gst_audio_resampler_method_get_type" c:type="GstAudioResamplerMethod"> - Different subsampling and upsampling methods + Different subsampling and upsampling methods - Duplicates the samples when + Duplicates the samples when upsampling and drops when downsampling - Uses linear interpolation to reconstruct + Uses linear interpolation to reconstruct missing samples and averaging to downsample - Uses cubic interpolation + Uses cubic interpolation - Uses Blackman-Nuttall windowed sinc interpolation + Uses Blackman-Nuttall windowed sinc interpolation - Uses Kaiser windowed sinc interpolation + Uses Kaiser windowed sinc interpolation glib:type-name="GstAudioRingBuffer" glib:get-type="gst_audio_ring_buffer_get_type" glib:type-struct="AudioRingBufferClass"> - This object is the base class for audio ringbuffers used by the base + This object is the base class for audio ringbuffers used by the base audio source and sink classes. The ringbuffer abstracts a circular buffer of data. One reader and @@ -6912,123 +10031,175 @@ one writer can operate on the data from different threads in a lockfree manner. The base class is sufficiently flexible to be used as an abstraction for DMA based ringbuffers as well as a pure software implementations. + - Print debug info about the buffer sized in @spec to the debug log. + Print debug info about the buffer sized in @spec to the debug log. + - the spec to debug + the spec to debug - Print debug info about the parsed caps in @spec to the debug log. + Print debug info about the parsed caps in @spec to the debug log. + - the spec to debug + the spec to debug - Parse @caps into @spec. + Parse @caps into @spec. + - TRUE if the caps could be parsed. + TRUE if the caps could be parsed. - a spec + a spec - a #GstCaps + a #GstCaps - Allocate the resources for the ringbuffer. This function fills + Allocate the resources for the ringbuffer. This function fills in the data pointer of the ring buffer with a valid #GstBuffer to which samples can be written. + - TRUE if the device could be acquired, FALSE on error. + TRUE if the device could be acquired, FALSE on error. MT safe. - the #GstAudioRingBuffer to acquire + the #GstAudioRingBuffer to acquire - the specs of the buffer + the specs of the buffer - Activate @buf to start or stop pulling data. + Activate @buf to start or stop pulling data. MT safe. + - TRUE if the device could be activated in the requested mode, + TRUE if the device could be activated in the requested mode, FALSE on error. - the #GstAudioRingBuffer to activate + the #GstAudioRingBuffer to activate - the new mode + the new mode - Fill the ringbuffer with silence. + Fill the ringbuffer with silence. MT safe. + - the #GstAudioRingBuffer to clear + the #GstAudioRingBuffer to clear - Close the audio device associated with the ring buffer. The ring buffer + Close the audio device associated with the ring buffer. The ring buffer should already have been released via gst_audio_ring_buffer_release(). + - TRUE if the device could be closed, FALSE on error. + TRUE if the device could be closed, FALSE on error. MT safe. - the #GstAudioRingBuffer + the #GstAudioRingBuffer - Commit @in_samples samples pointed to by @data to the ringbuffer @buf. + Commit @in_samples samples pointed to by @data to the ringbuffer @buf. @in_samples and @out_samples define the rate conversion to perform on the samples in @data. For negative rates, @out_samples must be negative and @@ -7047,46 +10218,63 @@ interrupted, one can resume the processing by passing the previously returned @accum value back to this function. MT safe. + - The number of samples written to the ringbuffer or -1 on error. The + The number of samples written to the ringbuffer or -1 on error. The number of samples written can be less than @out_samples when @buf was interrupted with a flush or stop. - the #GstAudioRingBuffer to commit + the #GstAudioRingBuffer to commit - the sample position of the data + the sample position of the data - the data to commit + the data to commit - the number of samples in the data to commit + the number of samples in the data to commit - the number of samples to write to the ringbuffer + the number of samples to write to the ringbuffer - accumulator for rate conversion. + accumulator for rate conversion. - Get the number of samples queued in the audio device. This is + Get the number of samples queued in the audio device. This is usually less than the segment size but can be bigger when the implementation uses another internal buffer between the audio device. @@ -7096,67 +10284,94 @@ ringbuffer to the device but still not played. For capture ringbuffers this is the amount of samples in the device that are not yet transfered to the ringbuffer. + - The number of samples queued in the audio device. + The number of samples queued in the audio device. MT safe. - the #GstAudioRingBuffer to query + the #GstAudioRingBuffer to query - Open the audio device associated with the ring buffer. Does not perform any + Open the audio device associated with the ring buffer. Does not perform any setup on the device. You must open the device before acquiring the ring buffer. + - TRUE if the device could be opened, FALSE on error. + TRUE if the device could be opened, FALSE on error. MT safe. - the #GstAudioRingBuffer + the #GstAudioRingBuffer - Pause processing samples from the ringbuffer. + Pause processing samples from the ringbuffer. + - TRUE if the device could be paused, FALSE on error. + TRUE if the device could be paused, FALSE on error. MT safe. - the #GstAudioRingBuffer to pause + the #GstAudioRingBuffer to pause - Free the resources of the ringbuffer. + Free the resources of the ringbuffer. + - TRUE if the device could be released, FALSE on error. + TRUE if the device could be released, FALSE on error. MT safe. - the #GstAudioRingBuffer to release + the #GstAudioRingBuffer to release + @@ -7167,147 +10382,207 @@ MT safe. - Start processing samples from the ringbuffer. + Start processing samples from the ringbuffer. + - TRUE if the device could be started, FALSE on error. + TRUE if the device could be started, FALSE on error. MT safe. - the #GstAudioRingBuffer to start + the #GstAudioRingBuffer to start - Stop processing samples from the ringbuffer. + Stop processing samples from the ringbuffer. + - TRUE if the device could be stopped, FALSE on error. + TRUE if the device could be stopped, FALSE on error. MT safe. - the #GstAudioRingBuffer to stop + the #GstAudioRingBuffer to stop - Allocate the resources for the ringbuffer. This function fills + Allocate the resources for the ringbuffer. This function fills in the data pointer of the ring buffer with a valid #GstBuffer to which samples can be written. + - TRUE if the device could be acquired, FALSE on error. + TRUE if the device could be acquired, FALSE on error. MT safe. - the #GstAudioRingBuffer to acquire + the #GstAudioRingBuffer to acquire - the specs of the buffer + the specs of the buffer - Activate @buf to start or stop pulling data. + Activate @buf to start or stop pulling data. MT safe. + - TRUE if the device could be activated in the requested mode, + TRUE if the device could be activated in the requested mode, FALSE on error. - the #GstAudioRingBuffer to activate + the #GstAudioRingBuffer to activate - the new mode + the new mode - Subclasses should call this function to notify the fact that + Subclasses should call this function to notify the fact that @advance segments are now processed by the device. MT safe. + - the #GstAudioRingBuffer to advance + the #GstAudioRingBuffer to advance - the number of segments written + the number of segments written - Clear the given segment of the buffer with silence samples. + Clear the given segment of the buffer with silence samples. This function is used by subclasses. MT safe. + - the #GstAudioRingBuffer to clear + the #GstAudioRingBuffer to clear - the segment to clear + the segment to clear - Fill the ringbuffer with silence. + Fill the ringbuffer with silence. MT safe. + - the #GstAudioRingBuffer to clear + the #GstAudioRingBuffer to clear - Close the audio device associated with the ring buffer. The ring buffer + Close the audio device associated with the ring buffer. The ring buffer should already have been released via gst_audio_ring_buffer_release(). + - TRUE if the device could be closed, FALSE on error. + TRUE if the device could be closed, FALSE on error. MT safe. - the #GstAudioRingBuffer + the #GstAudioRingBuffer - Commit @in_samples samples pointed to by @data to the ringbuffer @buf. + Commit @in_samples samples pointed to by @data to the ringbuffer @buf. @in_samples and @out_samples define the rate conversion to perform on the samples in @data. For negative rates, @out_samples must be negative and @@ -7326,79 +10601,111 @@ interrupted, one can resume the processing by passing the previously returned @accum value back to this function. MT safe. + - The number of samples written to the ringbuffer or -1 on error. The + The number of samples written to the ringbuffer or -1 on error. The number of samples written can be less than @out_samples when @buf was interrupted with a flush or stop. - the #GstAudioRingBuffer to commit + the #GstAudioRingBuffer to commit - the sample position of the data + the sample position of the data - the data to commit + the data to commit - the number of samples in the data to commit + the number of samples in the data to commit - the number of samples to write to the ringbuffer + the number of samples to write to the ringbuffer - accumulator for rate conversion. + accumulator for rate conversion. - Convert @src_val in @src_fmt to the equivalent value in @dest_fmt. The result + Convert @src_val in @src_fmt to the equivalent value in @dest_fmt. The result will be put in @dest_val. + - TRUE if the conversion succeeded. + TRUE if the conversion succeeded. - the #GstAudioRingBuffer + the #GstAudioRingBuffer - the source format + the source format - the source value + the source value - the destination format + the destination format - a location to store the converted value + a location to store the converted value - Get the number of samples queued in the audio device. This is + Get the number of samples queued in the audio device. This is usually less than the segment size but can be bigger when the implementation uses another internal buffer between the audio device. @@ -7408,161 +10715,226 @@ ringbuffer to the device but still not played. For capture ringbuffers this is the amount of samples in the device that are not yet transfered to the ringbuffer. + - The number of samples queued in the audio device. + The number of samples queued in the audio device. MT safe. - the #GstAudioRingBuffer to query + the #GstAudioRingBuffer to query - Checks the status of the device associated with the ring buffer. + Checks the status of the device associated with the ring buffer. + - TRUE if the device was open, FALSE if it was closed. + TRUE if the device was open, FALSE if it was closed. MT safe. - the #GstAudioRingBuffer + the #GstAudioRingBuffer - Check if the ringbuffer is acquired and ready to use. + Check if the ringbuffer is acquired and ready to use. + - TRUE if the ringbuffer is acquired, FALSE on error. + TRUE if the ringbuffer is acquired, FALSE on error. MT safe. - the #GstAudioRingBuffer to check + the #GstAudioRingBuffer to check - Check if @buf is activated. + Check if @buf is activated. MT safe. + - TRUE if the device is active. + TRUE if the device is active. - the #GstAudioRingBuffer + the #GstAudioRingBuffer - Check if @buf is flushing. + Check if @buf is flushing. MT safe. + - TRUE if the device is flushing. + TRUE if the device is flushing. - the #GstAudioRingBuffer + the #GstAudioRingBuffer - Tell the ringbuffer that it is allowed to start playback when + Tell the ringbuffer that it is allowed to start playback when the ringbuffer is filled with samples. MT safe. + - the #GstAudioRingBuffer + the #GstAudioRingBuffer - the new value + the new value - Open the audio device associated with the ring buffer. Does not perform any + Open the audio device associated with the ring buffer. Does not perform any setup on the device. You must open the device before acquiring the ring buffer. + - TRUE if the device could be opened, FALSE on error. + TRUE if the device could be opened, FALSE on error. MT safe. - the #GstAudioRingBuffer + the #GstAudioRingBuffer - Pause processing samples from the ringbuffer. + Pause processing samples from the ringbuffer. + - TRUE if the device could be paused, FALSE on error. + TRUE if the device could be paused, FALSE on error. MT safe. - the #GstAudioRingBuffer to pause + the #GstAudioRingBuffer to pause - Returns a pointer to memory where the data from segment @segment + Returns a pointer to memory where the data from segment @segment can be found. This function is mostly used by subclasses. + - FALSE if the buffer is not started. + FALSE if the buffer is not started. MT safe. - the #GstAudioRingBuffer to read from + the #GstAudioRingBuffer to read from - the segment to read + the segment to read - + the pointer to the memory where samples can be read @@ -7572,13 +10944,17 @@ MT safe. direction="out" caller-allocates="0" transfer-ownership="full"> - the number of bytes to read + the number of bytes to read - Read @len samples from the ringbuffer into the memory pointed + Read @len samples from the ringbuffer into the memory pointed to by @data. The first sample should be read from position @sample in the ringbuffer. @@ -7587,8 +10963,11 @@ the ringbuffer. although it is recommended. @timestamp will return the timestamp associated with the data returned. + - The number of samples read from the ringbuffer or -1 on + The number of samples read from the ringbuffer or -1 on error. MT safe. @@ -7596,61 +10975,85 @@ MT safe. - the #GstAudioRingBuffer to read from + the #GstAudioRingBuffer to read from - the sample position of the data + the sample position of the data - where the data should be read + where the data should be read - the number of samples in data to read + the number of samples in data to read - where the timestamp is returned + where the timestamp is returned - Free the resources of the ringbuffer. + Free the resources of the ringbuffer. + - TRUE if the device could be released, FALSE on error. + TRUE if the device could be released, FALSE on error. MT safe. - the #GstAudioRingBuffer to release + the #GstAudioRingBuffer to release - Get the number of samples that were processed by the ringbuffer + Get the number of samples that were processed by the ringbuffer since it was last started. This does not include the number of samples not yet processed (see gst_audio_ring_buffer_delay()). + - The number of samples processed by the ringbuffer. + The number of samples processed by the ringbuffer. MT safe. - the #GstAudioRingBuffer to query + the #GstAudioRingBuffer to query @@ -7659,16 +11062,21 @@ MT safe. c:identifier="gst_audio_ring_buffer_set_callback" shadowed-by="set_callback_full" introspectable="0"> - Sets the given callback function on the buffer. This function + Sets the given callback function on the buffer. This function will be called every time a segment has been written to a device. MT safe. + - the #GstAudioRingBuffer to set the callback on + the #GstAudioRingBuffer to set the callback on nullable="1" allow-none="1" closure="1"> - the callback to set + the callback to set @@ -7684,7 +11094,9 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to the callback + user data passed to the callback @@ -7693,16 +11105,21 @@ MT safe. c:identifier="gst_audio_ring_buffer_set_callback_full" shadows="set_callback" version="1.12"> - Sets the given callback function on the buffer. This function + Sets the given callback function on the buffer. This function will be called every time a segment has been written to a device. MT safe. + - the #GstAudioRingBuffer to set the callback on + the #GstAudioRingBuffer to set the callback on scope="notified" closure="1" destroy="2"> - the callback to set + the callback to set @@ -7720,29 +11139,40 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to the callback + user data passed to the callback - function to be called when @user_data is no longer needed + function to be called when @user_data is no longer needed - Tell the ringbuffer about the device's channel positions. This must + Tell the ringbuffer about the device's channel positions. This must be called in when the ringbuffer is acquired. + - the #GstAudioRingBuffer + the #GstAudioRingBuffer - the device channel positions + the device channel positions @@ -7752,26 +11182,35 @@ be called in when the ringbuffer is acquired. - Set the ringbuffer to flushing mode or normal mode. + Set the ringbuffer to flushing mode or normal mode. MT safe. + - the #GstAudioRingBuffer to flush + the #GstAudioRingBuffer to flush - the new mode + the new mode - Make sure that the next sample written to the device is + Make sure that the next sample written to the device is accounted for as being the @sample sample written to the device. This value will be used in reporting the current sample position of the ringbuffer. @@ -7779,22 +11218,28 @@ sample position of the ringbuffer. This function will also clear the buffer with silence. MT safe. + - the #GstAudioRingBuffer to use + the #GstAudioRingBuffer to use - the sample number to set + the sample number to set + @@ -7811,31 +11256,45 @@ MT safe. - Start processing samples from the ringbuffer. + Start processing samples from the ringbuffer. + - TRUE if the device could be started, FALSE on error. + TRUE if the device could be started, FALSE on error. MT safe. - the #GstAudioRingBuffer to start + the #GstAudioRingBuffer to start - Stop processing samples from the ringbuffer. + Stop processing samples from the ringbuffer. + - TRUE if the device could be stopped, FALSE on error. + TRUE if the device could be stopped, FALSE on error. MT safe. - the #GstAudioRingBuffer to stop + the #GstAudioRingBuffer to stop @@ -7844,54 +11303,78 @@ MT safe. - used to signal start/stop/pause/resume actions + used to signal start/stop/pause/resume actions - boolean indicating that the ringbuffer is open + boolean indicating that the ringbuffer is open - boolean indicating that the ringbuffer is acquired + boolean indicating that the ringbuffer is acquired - data in the ringbuffer + data in the ringbuffer - size of data in the ringbuffer + size of data in the ringbuffer - format and layout of the ringbuffer data + format and layout of the ringbuffer data - number of samples in one segment + number of samples in one segment - pointer to memory holding one segment of silence samples + pointer to memory holding one segment of silence samples - state of the buffer + state of the buffer - readpointer in the ringbuffer + readpointer in the ringbuffer - segment corresponding to segment 0 (unused) + segment corresponding to segment 0 (unused) - is a reader or writer waiting for a free segment + is a reader or writer waiting for a free segment @@ -7905,7 +11388,7 @@ MT safe. - + @@ -7922,31 +11405,40 @@ MT safe. - + - This function is set with gst_audio_ring_buffer_set_callback() and is + This function is set with gst_audio_ring_buffer_set_callback() and is called to fill the memory at @data with @len bytes of samples. + - a #GstAudioRingBuffer + a #GstAudioRingBuffer - target to fill + target to fill - amount to fill + amount to fill nullable="1" allow-none="1" closure="3"> - user data + user data @@ -7962,22 +11456,32 @@ called to fill the memory at @data with @len bytes of samples. - The vmethods that subclasses can override to implement the ringbuffer. + The vmethods that subclasses can override to implement the ringbuffer. + - parent class + parent class + - TRUE if the device could be opened, FALSE on error. + TRUE if the device could be opened, FALSE on error. MT safe. - the #GstAudioRingBuffer + the #GstAudioRingBuffer @@ -7985,19 +11489,26 @@ MT safe. + - TRUE if the device could be acquired, FALSE on error. + TRUE if the device could be acquired, FALSE on error. MT safe. - the #GstAudioRingBuffer to acquire + the #GstAudioRingBuffer to acquire - the specs of the buffer + the specs of the buffer @@ -8006,15 +11517,20 @@ MT safe. + - TRUE if the device could be released, FALSE on error. + TRUE if the device could be released, FALSE on error. MT safe. - the #GstAudioRingBuffer to release + the #GstAudioRingBuffer to release @@ -8022,15 +11538,20 @@ MT safe. + - TRUE if the device could be closed, FALSE on error. + TRUE if the device could be closed, FALSE on error. MT safe. - the #GstAudioRingBuffer + the #GstAudioRingBuffer @@ -8038,15 +11559,20 @@ MT safe. + - TRUE if the device could be started, FALSE on error. + TRUE if the device could be started, FALSE on error. MT safe. - the #GstAudioRingBuffer to start + the #GstAudioRingBuffer to start @@ -8054,15 +11580,20 @@ MT safe. + - TRUE if the device could be paused, FALSE on error. + TRUE if the device could be paused, FALSE on error. MT safe. - the #GstAudioRingBuffer to pause + the #GstAudioRingBuffer to pause @@ -8070,6 +11601,7 @@ MT safe. + @@ -8082,15 +11614,20 @@ MT safe. + - TRUE if the device could be stopped, FALSE on error. + TRUE if the device could be stopped, FALSE on error. MT safe. - the #GstAudioRingBuffer to stop + the #GstAudioRingBuffer to stop @@ -8098,15 +11635,20 @@ MT safe. + - The number of samples queued in the audio device. + The number of samples queued in the audio device. MT safe. - the #GstAudioRingBuffer to query + the #GstAudioRingBuffer to query @@ -8114,18 +11656,25 @@ MT safe. + - TRUE if the device could be activated in the requested mode, + TRUE if the device could be activated in the requested mode, FALSE on error. - the #GstAudioRingBuffer to activate + the #GstAudioRingBuffer to activate - the new mode + the new mode @@ -8133,40 +11682,55 @@ FALSE on error. + - The number of samples written to the ringbuffer or -1 on error. The + The number of samples written to the ringbuffer or -1 on error. The number of samples written can be less than @out_samples when @buf was interrupted with a flush or stop. - the #GstAudioRingBuffer to commit + the #GstAudioRingBuffer to commit - the sample position of the data + the sample position of the data - the data to commit + the data to commit - the number of samples in the data to commit + the number of samples in the data to commit - the number of samples to write to the ringbuffer + the number of samples to write to the ringbuffer - accumulator for rate conversion. + accumulator for rate conversion. @@ -8174,19 +11738,22 @@ with a flush or stop. + - the #GstAudioRingBuffer to clear + the #GstAudioRingBuffer to clear - + @@ -8195,136 +11762,187 @@ with a flush or stop. glib:type-name="GstAudioRingBufferFormatType" glib:get-type="gst_audio_ring_buffer_format_type_get_type" c:type="GstAudioRingBufferFormatType"> - The format of the samples in the ringbuffer. + The format of the samples in the ringbuffer. - samples in linear or float + samples in linear or float - samples in mulaw + samples in mulaw - samples in alaw + samples in alaw - samples in ima adpcm + samples in ima adpcm - samples in mpeg audio (but not AAC) format + samples in mpeg audio (but not AAC) format - samples in gsm format + samples in gsm format - samples in IEC958 frames (e.g. AC3) + samples in IEC958 frames (e.g. AC3) - samples in AC3 format + samples in AC3 format - samples in EAC3 format + samples in EAC3 format - samples in DTS format + samples in DTS format - samples in MPEG-2 AAC ADTS format + samples in MPEG-2 AAC ADTS format - samples in MPEG-4 AAC ADTS format + samples in MPEG-4 AAC ADTS format - samples in MPEG-2 AAC raw format (Since: 1.12) + samples in MPEG-2 AAC raw format (Since: 1.12) - samples in MPEG-4 AAC raw format (Since: 1.12) + samples in MPEG-4 AAC raw format (Since: 1.12) - samples in FLAC format (Since: 1.12) + samples in FLAC format (Since: 1.12) - The structure containing the format specification of the ringbuffer. + The structure containing the format specification of the ringbuffer. + - The caps that generated the Spec. + The caps that generated the Spec. - the sample type + the sample type - the #GstAudioInfo + the #GstAudioInfo - the latency in microseconds + the latency in microseconds - the total buffer size in microseconds + the total buffer size in microseconds - the size of one segment in bytes + the size of one segment in bytes - the total number of segments + the total number of segments - number of segments queued in the lower level device, + number of segments queued in the lower level device, defaults to segtotal - + @@ -8333,30 +11951,40 @@ with a flush or stop. glib:type-name="GstAudioRingBufferState" glib:get-type="gst_audio_ring_buffer_state_get_type" c:type="GstAudioRingBufferState"> - The state of the ringbuffer. + The state of the ringbuffer. - The ringbuffer is stopped + The ringbuffer is stopped - The ringbuffer is paused + The ringbuffer is paused - The ringbuffer is started + The ringbuffer is started - The ringbuffer has encountered an + The ringbuffer has encountered an error after it has been started, e.g. because the device was disconnected (Since: 1.2) @@ -8368,7 +11996,9 @@ with a flush or stop. glib:type-name="GstAudioSink" glib:get-type="gst_audio_sink_get_type" glib:type-struct="AudioSinkClass"> - This is the most simple base class for audio sinks that only requires + This is the most simple base class for audio sinks that only requires subclasses to implement a set of simple functions: * `open()` :Open the device. @@ -8389,7 +12019,9 @@ by the device. All scheduling of samples and timestamps is done in this base class together with #GstAudioBaseSink using a default implementation of a #GstAudioRingBuffer that uses threads. + + @@ -8400,6 +12032,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8410,6 +12043,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8420,6 +12054,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8433,6 +12068,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8443,6 +12079,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8453,6 +12090,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8478,7 +12116,7 @@ together with #GstAudioBaseSink using a default implementation of a - + @@ -8486,13 +12124,19 @@ together with #GstAudioBaseSink using a default implementation of a - #GstAudioSink class. Override the vmethods to implement functionality. + #GstAudioSink class. Override the vmethods to implement functionality. + - the parent class structure. + the parent class structure. + @@ -8505,6 +12149,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8521,6 +12166,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8533,6 +12179,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8545,6 +12192,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8566,6 +12214,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8578,6 +12227,7 @@ together with #GstAudioBaseSink using a default implementation of a + @@ -8589,7 +12239,7 @@ together with #GstAudioBaseSink using a default implementation of a - + @@ -8601,7 +12251,9 @@ together with #GstAudioBaseSink using a default implementation of a glib:type-name="GstAudioSrc" glib:get-type="gst_audio_src_get_type" glib:type-struct="AudioSrcClass"> - This is the most simple base class for audio sources that only requires + This is the most simple base class for audio sources that only requires subclasses to implement a set of simple functions: * `open()` :Open the device. @@ -8615,7 +12267,9 @@ subclasses to implement a set of simple functions: All scheduling of samples and timestamps is done in this base class together with #GstAudioBaseSrc using a default implementation of a #GstAudioRingBuffer that uses threads. + + @@ -8626,6 +12280,7 @@ together with #GstAudioBaseSrc using a default implementation of a + @@ -8636,6 +12291,7 @@ together with #GstAudioBaseSrc using a default implementation of a + @@ -8646,6 +12302,7 @@ together with #GstAudioBaseSrc using a default implementation of a + @@ -8659,6 +12316,7 @@ together with #GstAudioBaseSrc using a default implementation of a + @@ -8681,6 +12339,7 @@ together with #GstAudioBaseSrc using a default implementation of a + @@ -8691,6 +12350,7 @@ together with #GstAudioBaseSrc using a default implementation of a + @@ -8707,7 +12367,7 @@ together with #GstAudioBaseSrc using a default implementation of a - + @@ -8715,14 +12375,20 @@ together with #GstAudioBaseSrc using a default implementation of a - #GstAudioSrc class. Override the vmethod to implement + #GstAudioSrc class. Override the vmethod to implement functionality. + - the parent class. + the parent class. + @@ -8735,6 +12401,7 @@ functionality. + @@ -8751,6 +12418,7 @@ functionality. + @@ -8763,6 +12431,7 @@ functionality. + @@ -8775,6 +12444,7 @@ functionality. + @@ -8799,6 +12469,7 @@ functionality. + @@ -8811,6 +12482,7 @@ functionality. + @@ -8822,7 +12494,7 @@ functionality. - + @@ -8833,16 +12505,21 @@ functionality. glib:type-name="GstAudioStreamAlign" glib:get-type="gst_audio_stream_align_get_type" c:symbol-prefix="audio_stream_align"> - #GstAudioStreamAlign provides a helper object that helps tracking audio + #GstAudioStreamAlign provides a helper object that helps tracking audio stream alignment and discontinuities, and detects discontinuities if possible. See gst_audio_stream_align_new() for a description of its parameters and gst_audio_stream_align_process() for the details of the processing. + - Allocate a new #GstAudioStreamAlign with the given configuration. All + Allocate a new #GstAudioStreamAlign with the given configuration. All processing happens according to sample rate @rate, until gst_audio_stream_align_set_rate() is called with a new @rate. A negative rate can be used for reverse playback. @@ -8853,21 +12530,30 @@ timestamp difference is considered a discontinuity. Once detected, again until the output buffer is marked as a discontinuity. These can later be re-configured with gst_audio_stream_align_set_alignment_threshold() and gst_audio_stream_align_set_discont_wait(). + - a new #GstAudioStreamAlign. free with gst_audio_stream_align_free(). + a new #GstAudioStreamAlign. free with gst_audio_stream_align_free(). - a sample rate + a sample rate - a alignment threshold in nanoseconds + a alignment threshold in nanoseconds - discont wait in nanoseconds + discont wait in nanoseconds @@ -8875,14 +12561,21 @@ gst_audio_stream_align_set_discont_wait(). - Copy a GstAudioStreamAlign structure. + Copy a GstAudioStreamAlign structure. + - a new #GstAudioStreamAlign. free with gst_audio_stream_align_free. + a new #GstAudioStreamAlign. free with gst_audio_stream_align_free. - a #GstAudioStreamAlign + a #GstAudioStreamAlign @@ -8890,14 +12583,19 @@ gst_audio_stream_align_set_discont_wait(). - Free a GstAudioStreamAlign structure previously allocated with gst_audio_stream_align_new() + Free a GstAudioStreamAlign structure previously allocated with gst_audio_stream_align_new() or gst_audio_stream_align_copy(). + - a #GstAudioStreamAlign + a #GstAudioStreamAlign @@ -8905,14 +12603,21 @@ or gst_audio_stream_align_copy(). - Gets the currently configured alignment threshold. + Gets the currently configured alignment threshold. + - The currently configured alignment threshold + The currently configured alignment threshold - a #GstAudioStreamAlign + a #GstAudioStreamAlign @@ -8920,14 +12625,21 @@ or gst_audio_stream_align_copy(). - Gets the currently configured discont wait. + Gets the currently configured discont wait. + - The currently configured discont wait + The currently configured discont wait - a #GstAudioStreamAlign + a #GstAudioStreamAlign @@ -8935,14 +12647,21 @@ or gst_audio_stream_align_copy(). - Gets the currently configured sample rate. + Gets the currently configured sample rate. + - The currently configured sample rate + The currently configured sample rate - a #GstAudioStreamAlign + a #GstAudioStreamAlign @@ -8950,15 +12669,22 @@ or gst_audio_stream_align_copy(). - Returns the number of samples that were processed since the last + Returns the number of samples that were processed since the last discontinuity was detected. + - The number of samples processed since the last discontinuity. + The number of samples processed since the last discontinuity. - a #GstAudioStreamAlign + a #GstAudioStreamAlign @@ -8966,15 +12692,22 @@ discontinuity was detected. - Timestamp that was passed when a discontinuity was detected, i.e. the first + Timestamp that was passed when a discontinuity was detected, i.e. the first timestamp after the discontinuity. + - The last timestamp at when a discontinuity was detected + The last timestamp at when a discontinuity was detected - a #GstAudioStreamAlign + a #GstAudioStreamAlign @@ -8982,13 +12715,18 @@ timestamp after the discontinuity. - Marks the next buffer as discontinuous and resets timestamp tracking. + Marks the next buffer as discontinuous and resets timestamp tracking. + - a #GstAudioStreamAlign + a #GstAudioStreamAlign @@ -8996,7 +12734,9 @@ timestamp after the discontinuity. - Processes data with @timestamp and @n_samples, and returns the output + Processes data with @timestamp and @n_samples, and returns the output timestamp, duration and sample position together with a boolean to signal whether a discontinuity was detected or not. All non-discontinuous data will have perfect timestamps and durations. @@ -9012,46 +12752,63 @@ discontinuous with the first sample of the current one. However for this function they are only considered discontinuous in reverse playback if the first sample of the previous buffer is discontinuous with the last sample of the current one. + - %TRUE if a discontinuity was detected, %FALSE otherwise. + %TRUE if a discontinuity was detected, %FALSE otherwise. - a #GstAudioStreamAlign + a #GstAudioStreamAlign - if this data is considered to be discontinuous + if this data is considered to be discontinuous - a #GstClockTime of the start of the data + a #GstClockTime of the start of the data - number of samples to process + number of samples to process - output timestamp of the data + output timestamp of the data - output duration of the data + output duration of the data - output sample position of the start of the data + output sample position of the start of the data @@ -9059,17 +12816,24 @@ of the current one. - Sets @alignment_treshold as new alignment threshold for the following processing. + Sets @alignment_treshold as new alignment threshold for the following processing. + - a #GstAudioStreamAlign + a #GstAudioStreamAlign - a new alignment threshold + a new alignment threshold @@ -9077,17 +12841,24 @@ of the current one. - Sets @alignment_treshold as new discont wait for the following processing. + Sets @alignment_treshold as new discont wait for the following processing. + - a #GstAudioStreamAlign + a #GstAudioStreamAlign - a new discont wait + a new discont wait @@ -9095,51 +12866,370 @@ of the current one. - Sets @rate as new sample rate for the following processing. If the sample + Sets @rate as new sample rate for the following processing. If the sample rate differs this implicitely marks the next data as discontinuous. + - a #GstAudioStreamAlign + a #GstAudioStreamAlign - a new sample rate + a new sample rate + + Calculate frames from @clocktime and sample @rate. + + + + clock time + + + sampling rate + + + + + Calculate clocktime from sample @frames and @rate. + + + + sample frames + + + sampling rate + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - This metadata stays relevant as long as channels are unchanged. + This metadata stays relevant as long as channels are unchanged. + - This metadata stays relevant as long as sample rate is unchanged. + This metadata stays relevant as long as sample rate is unchanged. + - This metadata is relevant for audio streams. + This metadata is relevant for audio streams. + + + + + + + + + + + + + + + - This interface is implemented by elements that provide a stream volume. Examples for + This interface is implemented by elements that provide a stream volume. Examples for such elements are #volume and #playbin. Applications can use this interface to get or set the current stream volume. For this @@ -9155,85 +13245,119 @@ gst_stream_volume_set_mute() and gst_stream_volume_get_mute(). Elements that provide some kind of stream volume should implement the "volume" and "mute" #GObject properties and handle setting and getting of them properly. The volume property is defined to be a linear volume factor. + + - the converted volume + the converted volume - #GstStreamVolumeFormat to convert from + #GstStreamVolumeFormat to convert from - #GstStreamVolumeFormat to convert to + #GstStreamVolumeFormat to convert to - Volume in @from format that should be converted + Volume in @from format that should be converted + - Returns %TRUE if the stream is muted + Returns %TRUE if the stream is muted - #GstStreamVolume that should be used + #GstStreamVolume that should be used + - The current stream volume as linear factor + The current stream volume as linear factor - #GstStreamVolume that should be used + #GstStreamVolume that should be used - #GstStreamVolumeFormat which should be returned + #GstStreamVolumeFormat which should be returned + - #GstStreamVolume that should be used + #GstStreamVolume that should be used - Mute state that should be set + Mute state that should be set + - #GstStreamVolume that should be used + #GstStreamVolume that should be used - #GstStreamVolumeFormat of @val + #GstStreamVolumeFormat of @val - Linear volume factor that should be set + Linear volume factor that should be set @@ -9246,28 +13370,38 @@ The volume property is defined to be a linear volume factor. - Different representations of a stream volume. gst_stream_volume_convert_volume() + Different representations of a stream volume. gst_stream_volume_convert_volume() allows to convert between the different representations. Formulas to convert from a linear to a cubic or dB volume are cbrt(val) and 20 * log10 (val). + - Linear scale factor, 1.0 = 100% + Linear scale factor, 1.0 = 100% - Cubic volume scale + Cubic volume scale - Logarithmic volume scale (dB, amplitude not power) + Logarithmic volume scale (dB, amplitude not power) + @@ -9275,12 +13409,17 @@ cbrt(val) and 20 * log10 (val). - Clip the buffer to the given %GstSegment. + Clip the buffer to the given %GstSegment. After calling this function the caller does not own a reference to @buffer anymore. + - %NULL if the buffer is completely outside the configured segment, + %NULL if the buffer is completely outside the configured segment, otherwise the clipped buffer is returned. If the buffer has no timestamp, it is assumed to be inside the segment and @@ -9289,20 +13428,28 @@ is not clipped - The buffer to clip. + The buffer to clip. - Segment in %GST_FORMAT_TIME or %GST_FORMAT_DEFAULT to which + Segment in %GST_FORMAT_TIME or %GST_FORMAT_DEFAULT to which the buffer should be clipped. - sample rate. + sample rate. - size of one audio frame in bytes. This is the size of one sample * + size of one audio frame in bytes. This is the size of one sample * number of channels. @@ -9311,29 +13458,42 @@ number of channels. - Reorders @buffer from the channel positions @from to the channel + Reorders @buffer from the channel positions @from to the channel positions @to. @from and @to must contain the same number of positions and the same positions, only in a different order. @buffer must be writable. + - %TRUE if the reordering was possible. + %TRUE if the reordering was possible. - The buffer to reorder. + The buffer to reorder. - The %GstAudioFormat of the buffer. + The %GstAudioFormat of the buffer. - The number of channels. + The number of channels. - The channel positions in the buffer. + The channel positions in the buffer. @@ -9342,7 +13502,9 @@ positions and the same positions, only in a different order. - The channel positions to convert to. + The channel positions to convert to. @@ -9356,33 +13518,46 @@ positions and the same positions, only in a different order. c:identifier="gst_audio_buffer_truncate" moved-to="AudioBuffer.truncate" version="1.16"> - Truncate the buffer to finally have @samples number of samples, removing + Truncate the buffer to finally have @samples number of samples, removing the necessary amount of samples from the end and @trim number of samples from the beginning. After calling this function the caller does not own a reference to @buffer anymore. + - the truncated buffer or %NULL if the arguments + the truncated buffer or %NULL if the arguments were invalid - The buffer to truncate. + The buffer to truncate. - size of one audio frame in bytes. This is the size of one sample * + size of one audio frame in bytes. This is the size of one sample * number of channels. - the number of samples to remove from the beginning of the buffer + the number of samples to remove from the beginning of the buffer - the final number of samples that should exist in this buffer or -1 + the final number of samples that should exist in this buffer or -1 to use all the remaining samples if you are only removing samples from the beginning. @@ -9392,18 +13567,25 @@ beginning. - Get the fallback channel-mask for the given number of channels. + Get the fallback channel-mask for the given number of channels. This function returns a reasonable fallback channel-mask and should be called as a last resort when the specific channel map is unknown. + - a fallback channel-mask for @channels or 0 when there is no + a fallback channel-mask for @channels or 0 when there is no mask and mono. - the number of channels + the number of channels @@ -9412,15 +13594,22 @@ mask and mono. c:identifier="gst_audio_channel_mixer_new" moved-to="AudioChannelMixer.new" introspectable="0"> - Create a new channel mixer object for the given parameters. + Create a new channel mixer object for the given parameters. + - a new #GstAudioChannelMixer object, or %NULL if @format isn't supported. + a new #GstAudioChannelMixer object, or %NULL if @format isn't supported. Free with gst_audio_channel_mixer_free() after usage. - #GstAudioChannelMixerFlags + #GstAudioChannelMixerFlags @@ -9428,19 +13617,27 @@ mask and mono. - number of input channels + number of input channels - positions of input channels + positions of input channels - number of output channels + number of output channels - positions of output channels + positions of output channels @@ -9450,16 +13647,23 @@ mask and mono. moved-to="AudioChannelMixer.new_with_matrix" version="1.14" introspectable="0"> - Create a new channel mixer object for the given parameters. + Create a new channel mixer object for the given parameters. + - a new #GstAudioChannelMixer object, or %NULL if @format isn't supported, + a new #GstAudioChannelMixer object, or %NULL if @format isn't supported, @matrix is invalid, or @matrix is %NULL and @in_channels != @out_channels. Free with gst_audio_channel_mixer_free() after usage. - #GstAudioChannelMixerFlags + #GstAudioChannelMixerFlags @@ -9467,18 +13671,24 @@ mask and mono. - number of input channels + number of input channels - number of output channels + number of output channels - channel conversion matrix, m[@in_channels][@out_channels]. + channel conversion matrix, m[@in_channels][@out_channels]. If identity matrix, passthrough applies. If %NULL, a (potentially truncated) identity matrix is generated. @@ -9487,27 +13697,38 @@ mask and mono. - Convert the @channels present in @channel_mask to a @position array + Convert the @channels present in @channel_mask to a @position array (which should have at least @channels entries ensured by caller). If @channel_mask is set to 0, it is considered as 'not present' for purpose of conversion. A partially valid @channel_mask with less bits set than the number of channels is considered valid. + - %TRUE if channel and channel mask are valid and could be converted + %TRUE if channel and channel mask are valid and could be converted - The number of channels + The number of channels - The input channel_mask + The input channel_mask - The + The %GstAudioChannelPosition<!-- -->s - Convert the @position array of @channels channels to a bitmask. + Convert the @position array of @channels channels to a bitmask. If @force_order is %TRUE it additionally checks if the channels are in the order required by GStreamer. + - %TRUE if the channel positions are valid and could be converted. + %TRUE if the channel positions are valid and could be converted. - The %GstAudioChannelPositions + The %GstAudioChannelPositions @@ -9539,18 +13767,24 @@ in the order required by GStreamer. - The number of channels. + The number of channels. - Only consider the GStreamer channel order. + Only consider the GStreamer channel order. - the output channel mask + the output channel mask @@ -9558,16 +13792,23 @@ in the order required by GStreamer. - Converts @position to a human-readable string representation for + Converts @position to a human-readable string representation for debugging purposes. + - a newly allocated string representing + a newly allocated string representing @position - The %GstAudioChannelPositions + The %GstAudioChannelPositions to convert. - The number of channels. + The number of channels. - Reorders the channel positions in @position from any order to + Reorders the channel positions in @position from any order to the GStreamer channel order. + - %TRUE if the channel positions are valid and reordering + %TRUE if the channel positions are valid and reordering was successful. - The channel positions to + The channel positions to reorder to. - The number of channels. + The number of channels. - Checks if @position contains valid channel positions for + Checks if @position contains valid channel positions for @channels channels. If @force_order is %TRUE it additionally checks if the channels are in the order required by GStreamer. + - %TRUE if the channel positions are valid. + %TRUE if the channel positions are valid. - The %GstAudioChannelPositions + The %GstAudioChannelPositions to check. - The number of channels. + The number of channels. - Only consider the GStreamer channel order. + Only consider the GStreamer channel order. + @@ -9647,12 +13911,14 @@ checks if the channels are in the order required by GStreamer. + + @@ -9660,6 +13926,7 @@ checks if the channels are in the order required by GStreamer. + @@ -9667,27 +13934,40 @@ checks if the channels are in the order required by GStreamer. - Construct a #GstAudioFormat with given parameters. + Construct a #GstAudioFormat with given parameters. + - a #GstAudioFormat or GST_AUDIO_FORMAT_UNKNOWN when no audio format + a #GstAudioFormat or GST_AUDIO_FORMAT_UNKNOWN when no audio format exists with the given parameters. - signed or unsigned format + signed or unsigned format - G_LITTLE_ENDIAN or G_BIG_ENDIAN + G_LITTLE_ENDIAN or G_BIG_ENDIAN - amount of bits used per sample + amount of bits used per sample - amount of used bits in @width + amount of used bits in @width @@ -9695,24 +13975,33 @@ exists with the given parameters. - Fill @length bytes in @dest with silence samples for @info. + Fill @length bytes in @dest with silence samples for @info. + - a #GstAudioFormatInfo + a #GstAudioFormatInfo - a destination + a destination to fill - the length to fill + the length to fill @@ -9720,15 +14009,22 @@ exists with the given parameters. - Convert the @format string to its #GstAudioFormat. + Convert the @format string to its #GstAudioFormat. + - the #GstAudioFormat for @format or GST_AUDIO_FORMAT_UNKNOWN when the + the #GstAudioFormat for @format or GST_AUDIO_FORMAT_UNKNOWN when the string is not a known format. - a format string + a format string @@ -9736,20 +14032,28 @@ string is not a known format. - Get the #GstAudioFormatInfo for @format + Get the #GstAudioFormatInfo for @format + - The #GstAudioFormatInfo for @format. + The #GstAudioFormatInfo for @format. - a #GstAudioFormat + a #GstAudioFormat + @@ -9757,6 +14061,7 @@ string is not a known format. + @@ -9768,7 +14073,9 @@ string is not a known format. - Returns a reorder map for @from to @to that can be used in + Returns a reorder map for @from to @to that can be used in custom channel reordering code, e.g. to convert from or to the GStreamer channel order. @from and @to must contain the same number of positions and the same positions, only in a @@ -9776,18 +14083,25 @@ different order. The resulting @reorder_map can be used for reordering by assigning channel i of the input to channel reorder_map[i] of the output. + - %TRUE if the channel positions are valid and reordering + %TRUE if the channel positions are valid and reordering is possible. - The number of channels. + The number of channels. - The channel positions to reorder from. + The channel positions to reorder from. @@ -9796,7 +14110,9 @@ is possible. - The channel positions to reorder to. + The channel positions to reorder to. @@ -9805,7 +14121,9 @@ is possible. - Pointer to the reorder map. + Pointer to the reorder map. @@ -9814,16 +14132,23 @@ is possible. - Calculated the size of the buffer expected by gst_audio_iec61937_payload() for + Calculated the size of the buffer expected by gst_audio_iec61937_payload() for payloading type from @spec. + - the size or 0 if the given @type is not supported or cannot be + the size or 0 if the given @type is not supported or cannot be payloaded. - the ringbufer spec + the ringbufer spec @@ -9831,49 +14156,67 @@ payloaded. - Payloads @src in the form specified by IEC 61937 for the type from @spec and + 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. + - transfer-full: %TRUE if the payloading was successful, %FALSE + transfer-full: %TRUE if the payloading was successful, %FALSE otherwise. - a buffer containing the data to payload + a buffer containing the data to payload - size of @src in bytes + size of @src in bytes - the destination buffer to store the + the destination buffer to store the payloaded contents in. Should not overlap with @src - size of @dst in bytes + size of @dst in bytes - the ringbufer spec for @src + the ringbufer spec for @src - the expected byte order of the payloaded data + the expected byte order of the payloaded data + @@ -9881,6 +14224,7 @@ otherwise. + @@ -9889,78 +14233,110 @@ otherwise. c:identifier="gst_audio_quantize_new" moved-to="AudioQuantize.new" introspectable="0"> - Create a new quantizer object with the given parameters. + Create a new quantizer object with the given parameters. Output samples will be quantized to a multiple of @quantizer. Better performance is achieved when @quantizer is a power of 2. Dithering and noise-shaping can be performed during quantization with the @dither and @ns parameters. + - a new #GstAudioQuantize. Free with gst_audio_quantize_free(). + a new #GstAudioQuantize. Free with gst_audio_quantize_free(). - a #GstAudioDitherMethod + a #GstAudioDitherMethod - a #GstAudioNoiseShapingMethod + a #GstAudioNoiseShapingMethod - #GstAudioQuantizeFlags + #GstAudioQuantizeFlags - the #GstAudioFormat of the samples + the #GstAudioFormat of the samples - the amount of channels in the samples + the amount of channels in the samples - the quantizer to use + the quantizer to use - Reorders @data from the channel positions @from to the channel + Reorders @data from the channel positions @from to the channel positions @to. @from and @to must contain the same number of positions and the same positions, only in a different order. Note: this function assumes the audio data is in interleaved layout + - %TRUE if the reordering was possible. + %TRUE if the reordering was possible. - The pointer to + The pointer to the memory. - The size of the memory. + The size of the memory. - The %GstAudioFormat of the buffer. + The %GstAudioFormat of the buffer. - The number of channels. + The number of channels. - The channel positions in the buffer. + The channel positions in the buffer. @@ -9969,7 +14345,9 @@ Note: this function assumes the audio data is in interleaved layout - The channel positions to convert to. + The channel positions to convert to. @@ -9982,39 +14360,58 @@ Note: this function assumes the audio data is in interleaved layout - Make a new resampler. + Make a new resampler. + - The new #GstAudioResampler, or + The new #GstAudioResampler, or %NULL on failure. - a #GstAudioResamplerMethod + a #GstAudioResamplerMethod - #GstAudioResamplerFlags + #GstAudioResamplerFlags - the #GstAudioFormat + the #GstAudioFormat - the number of channels + the number of channels - input rate + input rate - output rate + output rate - extra options + extra options @@ -10022,30 +14419,43 @@ Note: this function assumes the audio data is in interleaved layout - Set the parameters for resampling from @in_rate to @out_rate using @method + Set the parameters for resampling from @in_rate to @out_rate using @method for @quality in @options. + - a #GstAudioResamplerMethod + a #GstAudioResamplerMethod - the quality + the quality - the input rate + the input rate - the output rate + the output rate - a #GstStructure + a #GstStructure @@ -10053,49 +14463,71 @@ for @quality in @options. - Attaches #GstAudioClippingMeta metadata to @buffer with the given parameters. + Attaches #GstAudioClippingMeta metadata to @buffer with the given parameters. + - the #GstAudioClippingMeta on @buffer. + the #GstAudioClippingMeta on @buffer. - a #GstBuffer + a #GstBuffer - GstFormat of @start and @stop, GST_FORMAT_DEFAULT is samples + GstFormat of @start and @stop, GST_FORMAT_DEFAULT is samples - Amount of audio to clip from start of buffer + Amount of audio to clip from start of buffer - Amount of to clip from end of buffer + Amount of to clip from end of buffer - Attaches #GstAudioDownmixMeta metadata to @buffer with the given parameters. + Attaches #GstAudioDownmixMeta metadata to @buffer with the given parameters. @matrix is an two-dimensional array of @to_channels times @from_channels coefficients, i.e. the i-th output channels is constructed by multiplicating the input channels with the coefficients in @matrix[i] and taking the sum of the results. + - the #GstAudioDownmixMeta on @buffer. + the #GstAudioDownmixMeta on @buffer. - a #GstBuffer + a #GstBuffer - the channel positions + the channel positions of the source - The number of channels of the source + The number of channels of the source - the channel positions of + the channel positions of the destination - The number of channels of the destination + The number of channels of the destination - The matrix coefficients. + The matrix coefficients. @@ -10131,7 +14571,9 @@ of the results. - Allocates and attaches a #GstAudioMeta on @buffer, which must be writable + Allocates and attaches a #GstAudioMeta on @buffer, which must be writable for that purpose. The fields of the #GstAudioMeta are directly populated from the arguments of this function. @@ -10149,49 +14591,87 @@ specified cause this restriction to be violated. It is, obviously, also not allowed to specify parameters that would cause out-of-bounds memory access on @buffer. This is also checked, which means that you must add enough memory on the @buffer before adding this meta. + - the #GstAudioMeta that was attached on the @buffer + the #GstAudioMeta that was attached on the @buffer - a #GstBuffer + a #GstBuffer - the audio properties of the buffer + the audio properties of the buffer - the number of valid samples in the buffer + the number of valid samples in the buffer - the offsets (in bytes) where each channel plane starts + the offsets (in bytes) where each channel plane starts in the buffer or %NULL to calculate it (see below); must be %NULL also when @info->layout is %GST_AUDIO_LAYOUT_INTERLEAVED + + + + + + + + + + + + + + - Find the #GstAudioDownmixMeta on @buffer for the given destination + Find the #GstAudioDownmixMeta on @buffer for the given destination channel positions. + - the #GstAudioDownmixMeta on @buffer. + the #GstAudioDownmixMeta on @buffer. - a #GstBuffer + a #GstBuffer - the channel positions of + the channel positions of the destination - The number of channels of the destination + The number of channels of the destination + + + + + + + + - the converted volume + the converted volume - #GstStreamVolumeFormat to convert from + #GstStreamVolumeFormat to convert from - #GstStreamVolumeFormat to convert to + #GstStreamVolumeFormat to convert to - Volume in @from format that should be converted + Volume in @from format that should be converted diff --git a/gir-files/GstBase-1.0.gir b/gir-files/GstBase-1.0.gir index 38afccf0f..3e7d9f920 100644 --- a/gir-files/GstBase-1.0.gir +++ b/gir-files/GstBase-1.0.gir @@ -14,6 +14,121 @@ and/or use gtk-doc annotations. --> shared-library="libgstbase-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Convenience macro to access the source pad of #GstAggregator + + + + a #GstAggregator + + + glib:type-name="GstAdapter" glib:get-type="gst_adapter_get_type" glib:type-struct="AdapterClass"> - This class is for elements that receive buffers in an undesired size. + This class is for elements that receive buffers in an undesired size. While for example raw video contains one image per buffer, the same is not true for a lot of other formats, especially those that come directly from a file. So if you have undefined buffer sizes and require a specific size, @@ -120,52 +237,77 @@ Note that gst_adapter_push() takes ownership of the buffer passed. Use gst_buffer_ref() before pushing it into the adapter if you still want to access the buffer later. The adapter will never modify the data in the buffer pushed in it. + - Creates a new #GstAdapter. Free with g_object_unref(). + Creates a new #GstAdapter. Free with g_object_unref(). + - a new #GstAdapter + a new #GstAdapter - Gets the maximum amount of bytes available, that is it returns the maximum + Gets the maximum amount of bytes available, that is it returns the maximum value that can be supplied to gst_adapter_map() without that function returning %NULL. + - number of bytes available in @adapter + number of bytes available in @adapter - a #GstAdapter + a #GstAdapter - Gets the maximum number of bytes that are immediately available without + Gets the maximum number of bytes that are immediately available without requiring any expensive operations (like copying the data into a temporary buffer). + - number of bytes that are available in @adapter without expensive + number of bytes that are available in @adapter without expensive operations - a #GstAdapter + a #GstAdapter - Removes all buffers from @adapter. + Removes all buffers from @adapter. + - a #GstAdapter + a #GstAdapter @@ -174,39 +316,50 @@ operations c:identifier="gst_adapter_copy" shadowed-by="copy_bytes" introspectable="0"> - Copies @size bytes of data starting at @offset out of the buffers + Copies @size bytes of data starting at @offset out of the buffers contained in #GstAdapter into an array @dest provided by the caller. The array @dest should be large enough to contain @size bytes. The user should check that the adapter has (@offset + @size) bytes available before calling this function. + - a #GstAdapter + a #GstAdapter - + the memory to copy into - the bytes offset in the adapter to start from + the bytes offset in the adapter to start from - the number of bytes to copy + the number of bytes to copy @@ -215,31 +368,43 @@ available before calling this function. c:identifier="gst_adapter_copy_bytes" shadows="copy" version="1.4"> - Similar to gst_adapter_copy, but more suitable for language bindings. @size + Similar to gst_adapter_copy, but more suitable for language bindings. @size bytes of data starting at @offset will be copied out of the buffers contained in @adapter and into a new #GBytes structure which is returned. Depending on the value of the @size argument an empty #GBytes structure may be returned. + - A new #GBytes structure containing the copied data. + A new #GBytes structure containing the copied data. - a #GstAdapter + a #GstAdapter - the bytes offset in the adapter to start from + the bytes offset in the adapter to start from - the number of bytes to copy + the number of bytes to copy + @@ -252,34 +417,48 @@ the value of the @size argument an empty #GBytes structure may be returned. - Get the DTS that was on the last buffer with the GST_BUFFER_FLAG_DISCONT + Get the DTS that was on the last buffer with the GST_BUFFER_FLAG_DISCONT flag, or GST_CLOCK_TIME_NONE. + - The DTS at the last discont or GST_CLOCK_TIME_NONE. + The DTS at the last discont or GST_CLOCK_TIME_NONE. - a #GstAdapter + a #GstAdapter - Flushes the first @flush bytes in the @adapter. The caller must ensure that + Flushes the first @flush bytes in the @adapter. The caller must ensure that at least this many bytes are available. See also: gst_adapter_map(), gst_adapter_unmap() + - a #GstAdapter + a #GstAdapter - the number of bytes to flush + the number of bytes to flush @@ -287,7 +466,9 @@ See also: gst_adapter_map(), gst_adapter_unmap() - Returns a #GstBuffer containing the first @nbytes of the @adapter, but + Returns a #GstBuffer containing the first @nbytes of the @adapter, but does not flush them from the adapter. See gst_adapter_take_buffer() for details. @@ -295,19 +476,26 @@ Caller owns a reference to the returned buffer. gst_buffer_unref() after usage. Free-function: gst_buffer_unref + - a #GstBuffer containing the first + a #GstBuffer containing the first @nbytes of the adapter, or %NULL if @nbytes bytes are not available. gst_buffer_unref() when no longer needed. - a #GstAdapter + a #GstAdapter - the number of bytes to get + the number of bytes to get @@ -315,7 +503,9 @@ Free-function: gst_buffer_unref - Returns a #GstBuffer containing the first @nbytes of the @adapter, but + Returns a #GstBuffer containing the first @nbytes of the @adapter, but does not flush them from the adapter. See gst_adapter_take_buffer_fast() for details. @@ -323,19 +513,26 @@ Caller owns a reference to the returned buffer. gst_buffer_unref() after usage. Free-function: gst_buffer_unref + - a #GstBuffer containing the first + a #GstBuffer containing the first @nbytes of the adapter, or %NULL if @nbytes bytes are not available. gst_buffer_unref() when no longer needed. - a #GstAdapter + a #GstAdapter - the number of bytes to get + the number of bytes to get @@ -343,25 +540,34 @@ Free-function: gst_buffer_unref - Returns a #GstBufferList of buffers containing the first @nbytes bytes of + Returns a #GstBufferList of buffers containing the first @nbytes bytes of the @adapter but does not flush them from the adapter. See gst_adapter_take_buffer_list() for details. Caller owns the returned list. Call gst_buffer_list_unref() to free the list after usage. + - a #GstBufferList of buffers containing + a #GstBufferList of buffers containing the first @nbytes of the adapter, or %NULL if @nbytes bytes are not available - a #GstAdapter + a #GstAdapter - the number of bytes to get + the number of bytes to get @@ -369,14 +575,19 @@ the list after usage. - Returns a #GList of buffers containing the first @nbytes bytes of the + Returns a #GList of buffers containing the first @nbytes bytes of the @adapter, but does not flush them from the adapter. See gst_adapter_take_list() for details. Caller owns returned list and contained buffers. gst_buffer_unref() each buffer in the list before freeing the list after usage. + - a #GList of + a #GList of buffers containing the first @nbytes of the adapter, or %NULL if @nbytes bytes are not available @@ -385,17 +596,23 @@ buffer in the list before freeing the list after usage. - a #GstAdapter + a #GstAdapter - the number of bytes to get + the number of bytes to get - Gets the first @size bytes stored in the @adapter. The returned pointer is + Gets the first @size bytes stored in the @adapter. The returned pointer is valid until the next function is called on the adapter. Note that setting the returned pointer as the data of a #GstBuffer is @@ -408,8 +625,11 @@ as #GstBuffer memory or the potentially more performant gst_adapter_take_buffer(). Returns %NULL if @size bytes are not available. + - + a pointer to the first @size bytes of data, or %NULL @@ -417,21 +637,27 @@ Returns %NULL if @size bytes are not available. - a #GstAdapter + a #GstAdapter - the number of bytes to map/peek + the number of bytes to map/peek - Scan for pattern @pattern with applied mask @mask in the adapter data, + Scan for pattern @pattern with applied mask @mask in the adapter data, starting from offset @offset. The bytes in @pattern and @mask are interpreted left-to-right, regardless @@ -443,8 +669,11 @@ enough data (offset+size bytes) in the adapter. This function calls gst_adapter_masked_scan_uint32_peek() passing %NULL for value. + - offset of the first match, or -1 if no match was found. + offset of the first match, or -1 if no match was found. Example: |[ @@ -469,31 +698,43 @@ gst_adapter_masked_scan_uint32 (adapter, 0xffff0000, 0x02030000, 0, 4); - a #GstAdapter + a #GstAdapter - mask to apply to data before matching against @pattern + mask to apply to data before matching against @pattern - pattern to match (after mask is applied) + pattern to match (after mask is applied) - offset into the adapter data from which to start scanning, returns + offset into the adapter data from which to start scanning, returns the last scanned position. - number of bytes to scan from offset + number of bytes to scan from offset - Scan for pattern @pattern with applied mask @mask in the adapter data, + Scan for pattern @pattern with applied mask @mask in the adapter data, starting from offset @offset. If a match is found, the value that matched is returned through @value, otherwise @value is left untouched. @@ -503,30 +744,43 @@ adapter for it to match, even if the first or last bytes are masked out. It is an error to call this function without making sure that there is enough data (offset+size bytes) in the adapter. + - offset of the first match, or -1 if no match was found. + offset of the first match, or -1 if no match was found. - a #GstAdapter + a #GstAdapter - mask to apply to data before matching against @pattern + mask to apply to data before matching against @pattern - pattern to match (after mask is applied) + pattern to match (after mask is applied) - offset into the adapter data from which to start scanning, returns + offset into the adapter data from which to start scanning, returns the last scanned position. - number of bytes to scan from offset + number of bytes to scan from offset transfer-ownership="full" optional="1" allow-none="1"> - pointer to uint32 to return matching data + pointer to uint32 to return matching data @@ -543,21 +799,30 @@ enough data (offset+size bytes) in the adapter. - Get the offset that was on the last buffer with the GST_BUFFER_FLAG_DISCONT + Get the offset that was on the last buffer with the GST_BUFFER_FLAG_DISCONT flag, or GST_BUFFER_OFFSET_NONE. + - The offset at the last discont or GST_BUFFER_OFFSET_NONE. + The offset at the last discont or GST_BUFFER_OFFSET_NONE. - a #GstAdapter + a #GstAdapter - Get the dts that was before the current byte in the adapter. When + Get the dts that was before the current byte in the adapter. When @distance is given, the amount of bytes between the dts and the current position is returned. @@ -565,13 +830,18 @@ The dts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when the adapter is first created or when it is cleared. This also means that before the first byte with a dts is removed from the adapter, the dts and distance returned are GST_CLOCK_TIME_NONE and 0 respectively. + - The previously seen dts. + The previously seen dts. - a #GstAdapter + a #GstAdapter transfer-ownership="full" optional="1" allow-none="1"> - pointer to location for distance, or %NULL + pointer to location for distance, or %NULL @@ -588,7 +860,9 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively. - Get the dts that was before the byte at offset @offset in the adapter. When + Get the dts that was before the byte at offset @offset in the adapter. When @distance is given, the amount of bytes between the dts and the current position is returned. @@ -596,17 +870,24 @@ The dts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when the adapter is first created or when it is cleared. This also means that before the first byte with a dts is removed from the adapter, the dts and distance returned are GST_CLOCK_TIME_NONE and 0 respectively. + - The previously seen dts at given offset. + The previously seen dts at given offset. - a #GstAdapter + a #GstAdapter - the offset in the adapter at which to get timestamp + the offset in the adapter at which to get timestamp transfer-ownership="full" optional="1" allow-none="1"> - pointer to location for distance, or %NULL + pointer to location for distance, or %NULL @@ -623,7 +906,9 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively. - Get the offset that was before the current byte in the adapter. When + Get the offset that was before the current byte in the adapter. When @distance is given, the amount of bytes between the offset and the current position is returned. @@ -631,13 +916,18 @@ The offset is reset to GST_BUFFER_OFFSET_NONE and the distance is set to 0 when the adapter is first created or when it is cleared. This also means that before the first byte with an offset is removed from the adapter, the offset and distance returned are GST_BUFFER_OFFSET_NONE and 0 respectively. + - The previous seen offset. + The previous seen offset. - a #GstAdapter + a #GstAdapter transfer-ownership="full" optional="1" allow-none="1"> - pointer to a location for distance, or %NULL + pointer to a location for distance, or %NULL - Get the pts that was before the current byte in the adapter. When + Get the pts that was before the current byte in the adapter. When @distance is given, the amount of bytes between the pts and the current position is returned. @@ -660,13 +954,18 @@ The pts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when the adapter is first created or when it is cleared. This also means that before the first byte with a pts is removed from the adapter, the pts and distance returned are GST_CLOCK_TIME_NONE and 0 respectively. + - The previously seen pts. + The previously seen pts. - a #GstAdapter + a #GstAdapter transfer-ownership="full" optional="1" allow-none="1"> - pointer to location for distance, or %NULL + pointer to location for distance, or %NULL @@ -683,7 +984,9 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively. - Get the pts that was before the byte at offset @offset in the adapter. When + Get the pts that was before the byte at offset @offset in the adapter. When @distance is given, the amount of bytes between the pts and the current position is returned. @@ -691,17 +994,24 @@ The pts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when the adapter is first created or when it is cleared. This also means that before the first byte with a pts is removed from the adapter, the pts and distance returned are GST_CLOCK_TIME_NONE and 0 respectively. + - The previously seen pts at given offset. + The previously seen pts at given offset. - a #GstAdapter + a #GstAdapter - the offset in the adapter at which to get timestamp + the offset in the adapter at which to get timestamp transfer-ownership="full" optional="1" allow-none="1"> - pointer to location for distance, or %NULL + pointer to location for distance, or %NULL @@ -718,45 +1030,64 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively. - Get the PTS that was on the last buffer with the GST_BUFFER_FLAG_DISCONT + Get the PTS that was on the last buffer with the GST_BUFFER_FLAG_DISCONT flag, or GST_CLOCK_TIME_NONE. + - The PTS at the last discont or GST_CLOCK_TIME_NONE. + The PTS at the last discont or GST_CLOCK_TIME_NONE. - a #GstAdapter + a #GstAdapter - Adds the data from @buf to the data stored inside @adapter and takes + Adds the data from @buf to the data stored inside @adapter and takes ownership of the buffer. + - a #GstAdapter + a #GstAdapter - a #GstBuffer to add to queue in the adapter + a #GstBuffer to add to queue in the adapter - Returns a freshly allocated buffer containing the first @nbytes bytes of the + Returns a freshly allocated buffer containing the first @nbytes bytes of the @adapter. The returned bytes will be flushed from the adapter. Caller owns returned value. g_free after usage. Free-function: g_free + - + oven-fresh hot data, or %NULL if @nbytes bytes are not available @@ -764,20 +1095,26 @@ Free-function: g_free - a #GstAdapter + a #GstAdapter - the number of bytes to take + the number of bytes to take - Returns a #GstBuffer containing the first @nbytes bytes of the + Returns a #GstBuffer containing the first @nbytes bytes of the @adapter. The returned bytes will be flushed from the adapter. This function is potentially more performant than gst_adapter_take() since it can reuse the memory in pushed buffers @@ -796,19 +1133,26 @@ Caller owns a reference to the returned buffer. gst_buffer_unref() after usage. Free-function: gst_buffer_unref + - a #GstBuffer containing the first + a #GstBuffer containing the first @nbytes of the adapter, or %NULL if @nbytes bytes are not available. gst_buffer_unref() when no longer needed. - a #GstAdapter + a #GstAdapter - the number of bytes to take + the number of bytes to take @@ -816,7 +1160,9 @@ Free-function: gst_buffer_unref - Returns a #GstBuffer containing the first @nbytes of the @adapter. + Returns a #GstBuffer containing the first @nbytes of the @adapter. The returned bytes will be flushed from the adapter. This function is potentially more performant than gst_adapter_take_buffer() since it can reuse the memory in pushed buffers by subbuffering or @@ -839,19 +1185,26 @@ Caller owns a reference to the returned buffer. gst_buffer_unref() after usage. Free-function: gst_buffer_unref + - a #GstBuffer containing the first + a #GstBuffer containing the first @nbytes of the adapter, or %NULL if @nbytes bytes are not available. gst_buffer_unref() when no longer needed. - a #GstAdapter + a #GstAdapter - the number of bytes to take + the number of bytes to take @@ -859,40 +1212,54 @@ Free-function: gst_buffer_unref - Returns a #GstBufferList of buffers containing the first @nbytes bytes of + Returns a #GstBufferList of buffers containing the first @nbytes bytes of the @adapter. The returned bytes will be flushed from the adapter. When the caller can deal with individual buffers, this function is more performant because no memory should be copied. Caller owns the returned list. Call gst_buffer_list_unref() to free the list after usage. + - a #GstBufferList of buffers containing + a #GstBufferList of buffers containing the first @nbytes of the adapter, or %NULL if @nbytes bytes are not available - a #GstAdapter + a #GstAdapter - the number of bytes to take + the number of bytes to take - Returns a #GList of buffers containing the first @nbytes bytes of the + Returns a #GList of buffers containing the first @nbytes bytes of the @adapter. The returned bytes will be flushed from the adapter. When the caller can deal with individual buffers, this function is more performant because no memory should be copied. Caller owns returned list and contained buffers. gst_buffer_unref() each buffer in the list before freeing the list after usage. + - a #GList of + a #GList of buffers containing the first @nbytes of the adapter, or %NULL if @nbytes bytes are not available @@ -901,23 +1268,32 @@ buffer in the list before freeing the list after usage. - a #GstAdapter + a #GstAdapter - the number of bytes to take + the number of bytes to take - Releases the memory obtained with the last gst_adapter_map(). + Releases the memory obtained with the last gst_adapter_map(). + - a #GstAdapter + a #GstAdapter @@ -927,6 +1303,7 @@ buffer in the list before freeing the list after usage. c:type="GstAdapterClass" disguised="1" glib:is-gtype-struct-for="Adapter"> + glib:type-name="GstAggregator" glib:get-type="gst_aggregator_get_type" glib:type-struct="AggregatorClass"> - Manages a set of pads with the purpose of aggregating their buffers. + Manages a set of pads with the purpose of aggregating their buffers. Control is given to the subclass when all pads have data. * Base class for mixers and muxers. Subclasses should at least implement @@ -977,7 +1356,9 @@ Control is given to the subclass when all pads have data. See gst_element_class_add_static_pad_template_with_gtype(). This class used to live in gst-plugins-bad and was moved to core. + + @@ -991,6 +1372,7 @@ This class used to live in gst-plugins-bad and was moved to core. + @@ -1007,6 +1389,7 @@ This class used to live in gst-plugins-bad and was moved to core. + @@ -1026,6 +1409,7 @@ This class used to live in gst-plugins-bad and was moved to core. + @@ -1039,24 +1423,32 @@ This class used to live in gst-plugins-bad and was moved to core. - This method will push the provided output buffer downstream. If needed, + This method will push the provided output buffer downstream. If needed, mandatory events such as stream-start, caps, and segment events will be sent before pushing the buffer. + - The #GstAggregator + The #GstAggregator - the #GstBuffer to push. + the #GstBuffer to push. + @@ -1070,6 +1462,7 @@ sent before pushing the buffer. + @@ -1080,6 +1473,7 @@ sent before pushing the buffer. + @@ -1090,6 +1484,7 @@ sent before pushing the buffer. + @@ -1103,6 +1498,7 @@ sent before pushing the buffer. + @@ -1122,6 +1518,7 @@ sent before pushing the buffer. + @@ -1138,6 +1535,7 @@ sent before pushing the buffer. + @@ -1154,6 +1552,7 @@ sent before pushing the buffer. + @@ -1170,6 +1569,7 @@ sent before pushing the buffer. + @@ -1183,6 +1583,7 @@ sent before pushing the buffer. + @@ -1196,6 +1597,7 @@ sent before pushing the buffer. + @@ -1206,6 +1608,7 @@ sent before pushing the buffer. + @@ -1216,6 +1619,7 @@ sent before pushing the buffer. + @@ -1237,34 +1641,46 @@ sent before pushing the buffer. - This method will push the provided output buffer downstream. If needed, + This method will push the provided output buffer downstream. If needed, mandatory events such as stream-start, caps, and segment events will be sent before pushing the buffer. + - The #GstAggregator + The #GstAggregator - the #GstBuffer to push. + the #GstBuffer to push. - Lets #GstAggregator sub-classes get the memory @allocator + Lets #GstAggregator sub-classes get the memory @allocator acquired by the base class and its @params. Unref the @allocator after use it. + - a #GstAggregator + a #GstAggregator transfer-ownership="full" optional="1" allow-none="1"> - the #GstAllocator + the #GstAllocator used @@ -1283,7 +1701,9 @@ used transfer-ownership="full" optional="1" allow-none="1"> - the + the #GstAllocationParams of @allocator @@ -1291,69 +1711,97 @@ used + - the instance of the #GstBufferPool used + the instance of the #GstBufferPool used by @trans; free it after use it - a #GstAggregator + a #GstAggregator - Retrieves the latency values reported by @self in response to the latency + Retrieves the latency values reported by @self in response to the latency query, or %GST_CLOCK_TIME_NONE if there is not live source connected and the element will not wait for the clock. Typically only called by subclasses. + - The latency or %GST_CLOCK_TIME_NONE if the element does not sync + The latency or %GST_CLOCK_TIME_NONE if the element does not sync - a #GstAggregator + a #GstAggregator - Lets #GstAggregator sub-classes tell the baseclass what their internal + Lets #GstAggregator sub-classes tell the baseclass what their internal latency is. Will also post a LATENCY message on the bus so the pipeline can reconfigure its global latency. + - a #GstAggregator + a #GstAggregator - minimum latency + minimum latency - maximum latency + maximum latency - Sets the caps to be used on the src pad. + Sets the caps to be used on the src pad. + - The #GstAggregator + The #GstAggregator - The #GstCaps to set on the src pad. + The #GstCaps to set on the src pad. @@ -1361,19 +1809,26 @@ can reconfigure its global latency. - This is a simple #GstAggregator::get_next_time implementation that + This is a simple #GstAggregator::get_next_time implementation that just looks at the #GstSegment on the srcpad of the aggregator and bases the next time on the running time there. This is the desired behaviour in most cases where you have a live source and you have a dead line based aggregator subclass. + - The running time based on the position + The running time based on the position - A #GstAggregator + A #GstAggregator @@ -1385,7 +1840,9 @@ and you have a dead line based aggregator subclass. version="1.16" writable="1" transfer-ownership="none"> - Force minimum upstream latency (in nanoseconds). When sources with a + Force minimum upstream latency (in nanoseconds). When sources with a higher latency are expected to be plugged in dynamically after the aggregator has started playing, this allows overriding the minimum latency reported by the initial source(s). This is only taken into @@ -1405,14 +1862,16 @@ account when larger than the actually reported minimum latency. - the aggregator's source pad + the aggregator's source pad - + @@ -1421,7 +1880,9 @@ account when larger than the actually reported minimum latency. c:type="GstAggregatorClass" glib:is-gtype-struct-for="Aggregator" version="1.14"> - The aggregator base class will handle in a thread-safe way all manners of + The aggregator base class will handle in a thread-safe way all manners of concurrent flushes, seeks, pad additions and removals, leaving to the subclass the responsibility of clipping buffers, and aggregating buffers in the way the implementor sees fit. @@ -1430,11 +1891,13 @@ It will also take care of event ordering (stream-start, segment, eos). Basically, a simple implementation will override @aggregate, and call _finish_buffer from inside that function. + + @@ -1447,6 +1910,7 @@ _finish_buffer from inside that function. + @@ -1465,16 +1929,21 @@ _finish_buffer from inside that function. + - The #GstAggregator + The #GstAggregator - the #GstBuffer to push. + the #GstBuffer to push. @@ -1482,6 +1951,7 @@ _finish_buffer from inside that function. + @@ -1500,6 +1970,7 @@ _finish_buffer from inside that function. + @@ -1518,6 +1989,7 @@ _finish_buffer from inside that function. + @@ -1533,6 +2005,7 @@ _finish_buffer from inside that function. + @@ -1548,6 +2021,7 @@ _finish_buffer from inside that function. + @@ -1566,6 +2040,7 @@ _finish_buffer from inside that function. + @@ -1581,6 +2056,7 @@ _finish_buffer from inside that function. + @@ -1593,6 +2069,7 @@ _finish_buffer from inside that function. + @@ -1605,6 +2082,7 @@ _finish_buffer from inside that function. + @@ -1617,6 +2095,7 @@ _finish_buffer from inside that function. + @@ -1638,6 +2117,7 @@ _finish_buffer from inside that function. + @@ -1661,6 +2141,7 @@ _finish_buffer from inside that function. + @@ -1676,6 +2157,7 @@ _finish_buffer from inside that function. + @@ -1691,6 +2173,7 @@ _finish_buffer from inside that function. + @@ -1706,6 +2189,7 @@ _finish_buffer from inside that function. + @@ -1726,7 +2210,7 @@ _finish_buffer from inside that function. - + @@ -1739,10 +2223,14 @@ _finish_buffer from inside that function. glib:type-name="GstAggregatorPad" glib:get-type="gst_aggregator_pad_get_type" glib:type-struct="AggregatorPadClass"> - Pads managed by a #GstAggregor subclass. + Pads managed by a #GstAggregor subclass. This class used to live in gst-plugins-bad and was moved to core. + + @@ -1756,6 +2244,7 @@ This class used to live in gst-plugins-bad and was moved to core. + @@ -1772,14 +2261,21 @@ This class used to live in gst-plugins-bad and was moved to core. - Drop the buffer currently queued in @pad. + Drop the buffer currently queued in @pad. + - TRUE if there was a buffer queued in @pad, or FALSE if not. + TRUE if there was a buffer queued in @pad, or FALSE if not. - the pad where to drop any pending buffer + the pad where to drop any pending buffer @@ -1787,56 +2283,80 @@ This class used to live in gst-plugins-bad and was moved to core. - This checks if a pad has a buffer available that will be returned by + This checks if a pad has a buffer available that will be returned by a call to gst_aggregator_pad_peek_buffer() or gst_aggregator_pad_pop_buffer(). + - %TRUE if the pad has a buffer available as the next thing. + %TRUE if the pad has a buffer available as the next thing. - the pad to check the buffer on + the pad to check the buffer on + - %TRUE if the pad is EOS, otherwise %FALSE. + %TRUE if the pad is EOS, otherwise %FALSE. - an aggregator pad + an aggregator pad + - A reference to the buffer in @pad or + A reference to the buffer in @pad or NULL if no buffer was queued. You should unref the buffer after usage. - the pad to get buffer from + the pad to get buffer from - Steal the ref to the buffer currently queued in @pad. + Steal the ref to the buffer currently queued in @pad. + - The buffer in @pad or NULL if no buffer was + The buffer in @pad or NULL if no buffer was queued. You should unref the buffer after usage. - the pad to get buffer from + the pad to get buffer from @@ -1845,21 +2365,25 @@ usage. version="1.16" writable="1" transfer-ownership="none"> - Enables the emission of signals such as #GstAggregatorPad::buffer-consumed + Enables the emission of signals such as #GstAggregatorPad::buffer-consumed - last segment received. + last segment received. - + @@ -1878,11 +2402,13 @@ usage. c:type="GstAggregatorPadClass" glib:is-gtype-struct-for="AggregatorPad" version="1.14"> + + @@ -1898,6 +2424,7 @@ usage. + @@ -1915,7 +2442,7 @@ usage. - + @@ -1923,33 +2450,509 @@ usage. + + + + + + + + + + + + + + + + + + + + + + + + + Obtains current drain status (ie. whether EOS has been received and +the parser is now processing the frames at the end of the stream) + + + + base parse instance + + + + + + + + + + + + + + Obtains current sync status. + + + + base parse instance + + + + + Gives the pointer to the sink #GstPad object of the element. + + + + base parse instance + + + + + Gives the pointer to the source #GstPad object of the element. + + + + base parse instance + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gives the pointer to the #GstPad object of the element. + + + + base sink instance + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gives the pointer to the #GstPad object of the element. + + + + base source instance + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The name of the templates for the sink pad. + The name of the templates for the sink pad. + + + Gives the pointer to the sink #GstPad object of the element. + + + + base transform instance + + + - The name of the templates for the source pad. + The name of the templates for the source pad. + + + Gives the pointer to the source #GstPad object of the element. + + + + base transform instance + + + + + + + + + + + + A #GstBitReader must be initialized with this macro, before it can be +used. This macro can used be to initialize a variable, but it cannot +be assigned to a variable. In that case you have to use +gst_bit_reader_init(). + + + + Data from which the #GstBitReader should read + + + Size of @data in bytes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A #GstByteReader must be initialized with this macro, before it can be +used. This macro can used be to initialize a variable, but it cannot +be assigned to a variable. In that case you have to use +gst_byte_reader_init(). + + + + Data from which the #GstByteReader should read + + + Size of @data in bytes + + + + + + + + + + glib:type-name="GstBaseParse" glib:get-type="gst_base_parse_get_type" glib:type-struct="BaseParseClass"> - This base class is for parser elements that process data and splits it + This base class is for parser elements that process data and splits it into separate audio/video/whatever frames. It provides for: @@ -2093,7 +3098,9 @@ Things that subclass need to take care of: overridden) will then use these rates to perform obvious conversions. These rates are also used to update (estimated) duration at regular frame intervals. + + @@ -2116,6 +3123,7 @@ Things that subclass need to take care of: + @@ -2129,6 +3137,7 @@ Things that subclass need to take care of: + @@ -2142,6 +3151,7 @@ Things that subclass need to take care of: + @@ -2158,6 +3168,7 @@ Things that subclass need to take care of: + @@ -2171,6 +3182,7 @@ Things that subclass need to take care of: + @@ -2184,6 +3196,7 @@ Things that subclass need to take care of: + @@ -2197,6 +3210,7 @@ Things that subclass need to take care of: + @@ -2210,6 +3224,7 @@ Things that subclass need to take care of: + @@ -2223,6 +3238,7 @@ Things that subclass need to take care of: + @@ -2236,6 +3252,7 @@ Things that subclass need to take care of: + @@ -2246,6 +3263,7 @@ Things that subclass need to take care of: + @@ -2257,86 +3275,123 @@ Things that subclass need to take care of: - Adds an entry to the index associating @offset to @ts. It is recommended + Adds an entry to the index associating @offset to @ts. It is recommended to only add keyframe entries. @force allows to bypass checks, such as whether the stream is (upstream) seekable, another entry is already "close" to the new entry, etc. + - #gboolean indicating whether entry was added + #gboolean indicating whether entry was added - #GstBaseParse. + #GstBaseParse. - offset of entry + offset of entry - timestamp associated with offset + timestamp associated with offset - whether entry refers to keyframe + whether entry refers to keyframe - add entry disregarding sanity checks + add entry disregarding sanity checks - Default implementation of #GstBaseParseClass.convert(). + Default implementation of #GstBaseParseClass.convert(). + - %TRUE if conversion was successful. + %TRUE if conversion was successful. - #GstBaseParse. + #GstBaseParse. - #GstFormat describing the source format. + #GstFormat describing the source format. - Source value to be converted. + Source value to be converted. - #GstFormat defining the converted format. + #GstFormat defining the converted format. - Pointer where the conversion result will be put. + Pointer where the conversion result will be put. - Drains the adapter until it is empty. It decreases the min_frame_size to + Drains the adapter until it is empty. It decreases the min_frame_size to match the current adapter size and calls chain method until the adapter is emptied or chain returns with error. + - a #GstBaseParse + a #GstBaseParse - Collects parsed data and pushes this downstream. + Collects parsed data and pushes this downstream. Source pad caps must be set when this is called. If @frame's out_buffer is set, that will be used as subsequent frame data. @@ -2347,21 +3402,30 @@ ignored for any but the above purpose/information). Note that the latter buffer is invalidated by this call, whereas the caller retains ownership of @frame. + - a #GstFlowReturn that should be escalated to caller (of caller) + a #GstFlowReturn that should be escalated to caller (of caller) - a #GstBaseParse + a #GstBaseParse - a #GstBaseParseFrame + a #GstBaseParseFrame - consumed input data represented by frame + consumed input data represented by frame @@ -2369,213 +3433,292 @@ caller retains ownership of @frame. - Sets the parser subclass's tags and how they should be merged with any + Sets the parser subclass's tags and how they should be merged with any upstream stream tags. This will override any tags previously-set with gst_base_parse_merge_tags(). Note that this is provided for convenience, and the subclass is not required to use this and can still do tag handling on its own. + - a #GstBaseParse + a #GstBaseParse - a #GstTagList to merge, or NULL to unset + a #GstTagList to merge, or NULL to unset previously-set tags - the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE + the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE - Pushes the frame's buffer downstream, sends any pending events and + Pushes the frame's buffer downstream, sends any pending events and does some timestamp and segment handling. Takes ownership of frame's buffer, though caller retains ownership of @frame. This must be called with sinkpad STREAM_LOCK held. + - #GstFlowReturn + #GstFlowReturn - #GstBaseParse. + #GstBaseParse. - a #GstBaseParseFrame + a #GstBaseParseFrame - Optionally sets the average bitrate detected in media (if non-zero), + Optionally sets the average bitrate detected in media (if non-zero), e.g. based on metadata, as it will be posted to the application. By default, announced average bitrate is estimated. The average bitrate is used to estimate the total duration of the stream and to estimate a seek position, if there's no index and the format is syncable (see gst_base_parse_set_syncable()). + - #GstBaseParse. + #GstBaseParse. - average bitrate in bits/second + average bitrate in bits/second - Sets the duration of the currently playing media. Subclass can use this + Sets the duration of the currently playing media. Subclass can use this when it is able to determine duration and/or notices a change in the media duration. Alternatively, if @interval is non-zero (default), then stream duration is determined based on estimated bitrate, and updated every @interval frames. + - #GstBaseParse. + #GstBaseParse. - #GstFormat. + #GstFormat. - duration value. + duration value. - how often to update the duration estimate based on bitrate, or 0. + how often to update the duration estimate based on bitrate, or 0. - If frames per second is configured, parser can take care of buffer duration + If frames per second is configured, parser can take care of buffer duration and timestamping. When performing segment clipping, or seeking to a specific location, a corresponding decoder might need an initial @lead_in and a following @lead_out number of frames to ensure the desired segment is entirely filled upon decoding. + - the #GstBaseParse to set + the #GstBaseParse to set - frames per second (numerator). + frames per second (numerator). - frames per second (denominator). + frames per second (denominator). - frames needed before a segment for subsequent decode + frames needed before a segment for subsequent decode - frames needed after a segment + frames needed after a segment - Set if frames carry timing information which the subclass can (generally) + Set if frames carry timing information which the subclass can (generally) parse and provide. In particular, intrinsic (rather than estimated) time can be obtained following a seek. + - a #GstBaseParse + a #GstBaseParse - whether frames carry timing information + whether frames carry timing information - By default, the base class might try to infer PTS from DTS and vice + By default, the base class might try to infer PTS from DTS and vice versa. While this is generally correct for audio data, it may not be otherwise. Sub-classes implementing such formats should disable timestamp inferring. + - a #GstBaseParse + a #GstBaseParse - %TRUE if parser should infer DTS/PTS from each other + %TRUE if parser should infer DTS/PTS from each other - Sets the minimum and maximum (which may likely be equal) latency introduced + Sets the minimum and maximum (which may likely be equal) latency introduced by the parsing process. If there is such a latency, which depends on the particular parsing of the format, it typically corresponds to 1 frame duration. + - a #GstBaseParse + a #GstBaseParse - minimum parse latency + minimum parse latency - maximum parse latency + maximum parse latency - Subclass can use this function to tell the base class that it needs to + Subclass can use this function to tell the base class that it needs to be given buffers of at least @min_size bytes. + - #GstBaseParse. + #GstBaseParse. - Minimum size in bytes of the data that this base class should + Minimum size in bytes of the data that this base class should give to subclass. @@ -2583,61 +3726,82 @@ be given buffers of at least @min_size bytes. - Set if the nature of the format or configuration does not allow (much) + Set if the nature of the format or configuration does not allow (much) parsing, and the parser should operate in passthrough mode (which only applies when operating in push mode). That is, incoming buffers are pushed through unmodified, i.e. no #GstBaseParseClass.handle_frame() will be invoked, but #GstBaseParseClass.pre_push_frame() will still be invoked, so subclass can perform as much or as little is appropriate for passthrough semantics in #GstBaseParseClass.pre_push_frame(). + - a #GstBaseParse + a #GstBaseParse - %TRUE if parser should run in passthrough mode + %TRUE if parser should run in passthrough mode - By default, the base class will guess PTS timestamps using a simple + By default, the base class will guess PTS timestamps using a simple interpolation (previous timestamp + duration), which is incorrect for data streams with reordering, where PTS can go backward. Sub-classes implementing such formats should disable PTS interpolation. + - a #GstBaseParse + a #GstBaseParse - %TRUE if parser should interpolate PTS timestamps + %TRUE if parser should interpolate PTS timestamps - Set if frame starts can be identified. This is set by default and + Set if frame starts can be identified. This is set by default and determines whether seeking based on bitrate averages is possible for a format/stream. + - a #GstBaseParse + a #GstBaseParse - set if frame starts can be identified + set if frame starts can be identified @@ -2645,7 +3809,9 @@ is possible for a format/stream. - This function should only be called from a @handle_frame implementation. + This function should only be called from a @handle_frame implementation. #GstBaseParse creates initial timestamps for frames by using the last timestamp seen in the stream before the frame starts. In certain @@ -2653,16 +3819,21 @@ cases, the correct timestamps will occur in the stream after the start of the frame, but before the start of the actual picture data. This function can be used to set the timestamps based on the offset into the frame data that the picture starts. + - a #GstBaseParse + a #GstBaseParse - offset into current buffer + offset into current buffer @@ -2670,7 +3841,9 @@ into the frame data that the picture starts. - If set to %TRUE, baseparse will unconditionally force parsing of the + If set to %TRUE, baseparse will unconditionally force parsing of the incoming data. This can be required in the rare cases where the incoming side-data (caps, pts, dts, ...) is not trusted by the user and wants to force validation and parsing of the incoming data. @@ -2679,7 +3852,9 @@ the implementation (standard behaviour). - the parent element. + the parent element. @@ -2695,7 +3870,7 @@ the implementation (standard behaviour). - + @@ -2706,14 +3881,20 @@ the implementation (standard behaviour). - Subclasses can override any of the available virtual methods or not, as + Subclasses can override any of the available virtual methods or not, as needed. At minimum @handle_frame needs to be overridden. + - the parent class + the parent class + @@ -2726,6 +3907,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2738,6 +3920,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2753,6 +3936,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2771,6 +3955,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2786,6 +3971,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2810,6 +3996,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2825,6 +4012,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2840,6 +4028,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2855,6 +4044,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2870,6 +4060,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2885,6 +4076,7 @@ needed. At minimum @handle_frame needs to be overridden. + @@ -2899,7 +4091,7 @@ needed. At minimum @handle_frame needs to be overridden. - + @@ -2909,34 +4101,47 @@ needed. At minimum @handle_frame needs to be overridden. glib:type-name="GstBaseParseFrame" glib:get-type="gst_base_parse_frame_get_type" c:symbol-prefix="base_parse_frame"> - Frame (context) data passed to each frame parsing virtual methods. In + Frame (context) data passed to each frame parsing virtual methods. In addition to providing the data to be checked for a valid frame or an already identified frame, it conveys additional metadata or control information from and to the subclass w.r.t. the particular frame in question (rather than global parameters). Some of these may apply to each parsing stage, others only to some a particular one. These parameters are effectively zeroed at start of each frame's processing, i.e. parsing virtual method invocation sequence. + - input data to be parsed for frames. + input data to be parsed for frames. - output data. + output data. - a combination of input and output #GstBaseParseFrameFlags that + a combination of input and output #GstBaseParseFrameFlags that convey additional context to subclass or allow subclass to tune subsequent #GstBaseParse actions. - media specific offset of input frame + media specific offset of input frame Note that a converter may have a different one on the frame's buffer. - subclass can set this to indicates the metadata overhead + subclass can set this to indicates the metadata overhead for the given frame, which is then used to enable more accurate bitrate computations. If this is -1, it is assumed that this frame should be skipped in bitrate calculation. @@ -2946,12 +4151,12 @@ of each frame's processing, i.e. parsing virtual method invocation sequence. - + - + @@ -2959,25 +4164,36 @@ of each frame's processing, i.e. parsing virtual method invocation sequence. - Allocates a new #GstBaseParseFrame. This function is mainly for bindings, + Allocates a new #GstBaseParseFrame. This function is mainly for bindings, elements written in C should usually allocate the frame on the stack and then use gst_base_parse_frame_init() to initialise it. + - a newly-allocated #GstBaseParseFrame. Free with + a newly-allocated #GstBaseParseFrame. Free with gst_base_parse_frame_free() when no longer needed. - a #GstBuffer + a #GstBuffer - the flags + the flags - number of bytes in this frame which should be counted as + number of bytes in this frame which should be counted as metadata overhead, ie. not used to calculate the average bitrate. Set to -1 to mark the entire frame as metadata. If in doubt, set to 0. @@ -2985,65 +4201,91 @@ then use gst_base_parse_frame_init() to initialise it. - Copies a #GstBaseParseFrame. + Copies a #GstBaseParseFrame. + - A copy of @frame + A copy of @frame - a #GstBaseParseFrame + a #GstBaseParseFrame - Frees the provided @frame. + Frees the provided @frame. + - A #GstBaseParseFrame + A #GstBaseParseFrame - Sets a #GstBaseParseFrame to initial state. Currently this means + Sets a #GstBaseParseFrame to initial state. Currently this means all public fields are zero-ed and a private flag is set to make sure gst_base_parse_frame_free() only frees the contents but not the actual frame. Use this function to initialise a #GstBaseParseFrame allocated on the stack. + - #GstBaseParseFrame. + #GstBaseParseFrame. - Flags to be used in a #GstBaseParseFrame. + Flags to be used in a #GstBaseParseFrame. + - no flag + no flag - set by baseclass if current frame + set by baseclass if current frame is passed for processing to the subclass for the first time (and not set on subsequent calls with same data). - set to indicate this buffer should not be + set to indicate this buffer should not be counted as frame, e.g. if this frame is dependent on a previous one. As it is not counted as a frame, bitrate increases but frame to time conversions are maintained. @@ -3051,25 +4293,32 @@ allocated on the stack. - @pre_push_frame can set this to indicate + @pre_push_frame can set this to indicate that regular segment clipping can still be performed (as opposed to any custom one having been done). - indicates to @finish_frame that the + indicates to @finish_frame that the the frame should be dropped (and might be handled internally by subclass) - indicates to @finish_frame that the + indicates to @finish_frame that the the frame should be queued for now and processed fully later when the first non-queued frame is finished + glib:type-name="GstBaseSink" glib:get-type="gst_base_sink_get_type" glib:type-struct="BaseSinkClass"> - #GstBaseSink is the base class for sink elements in GStreamer, such as + #GstBaseSink is the base class for sink elements in GStreamer, such as xvimagesink or filesink. It is a layer on top of #GstElement that provides a simplified interface to plugin writers. #GstBaseSink handles many details for you, for example: preroll, clock synchronization, state changes, @@ -3192,7 +4443,9 @@ rate, for example. The #GstBaseSink:async property can be used to instruct the sink to never perform an ASYNC state change. This feature is mostly usable when dealing with non-synchronized streams or sparse streams. + + @@ -3206,6 +4459,7 @@ with non-synchronized streams or sparse streams. + @@ -3219,6 +4473,7 @@ with non-synchronized streams or sparse streams. + @@ -3232,6 +4487,7 @@ with non-synchronized streams or sparse streams. + @@ -3245,6 +4501,7 @@ with non-synchronized streams or sparse streams. + @@ -3264,6 +4521,7 @@ with non-synchronized streams or sparse streams. + @@ -3277,6 +4535,7 @@ with non-synchronized streams or sparse streams. + @@ -3290,6 +4549,7 @@ with non-synchronized streams or sparse streams. + @@ -3303,6 +4563,7 @@ with non-synchronized streams or sparse streams. + @@ -3316,6 +4577,7 @@ with non-synchronized streams or sparse streams. + @@ -3329,6 +4591,7 @@ with non-synchronized streams or sparse streams. + @@ -3342,6 +4605,7 @@ with non-synchronized streams or sparse streams. + @@ -3355,6 +4619,7 @@ with non-synchronized streams or sparse streams. + @@ -3368,6 +4633,7 @@ with non-synchronized streams or sparse streams. + @@ -3378,6 +4644,7 @@ with non-synchronized streams or sparse streams. + @@ -3388,6 +4655,7 @@ with non-synchronized streams or sparse streams. + @@ -3398,6 +4666,7 @@ with non-synchronized streams or sparse streams. + @@ -3408,6 +4677,7 @@ with non-synchronized streams or sparse streams. + @@ -3421,38 +4691,54 @@ with non-synchronized streams or sparse streams. - If the @sink spawns its own thread for pulling buffers from upstream it + If the @sink spawns its own thread for pulling buffers from upstream it should call this method after it has pulled a buffer. If the element needed to preroll, this function will perform the preroll and will then block until the element state is changed. This function should be called with the PREROLL_LOCK held. + - %GST_FLOW_OK if the preroll completed and processing can + %GST_FLOW_OK if the preroll completed and processing can continue. Any other return value should be returned from the render vmethod. - the sink + the sink - the mini object that caused the preroll + the mini object that caused the preroll - Get the number of bytes that the sink will pull when it is operating in pull + Get the number of bytes that the sink will pull when it is operating in pull mode. + - the number of bytes @sink will pull in pull mode. + the number of bytes @sink will pull in pull mode. - a #GstBaseSink + a #GstBaseSink @@ -3460,50 +4746,71 @@ mode. - Checks if @sink is currently configured to drop buffers which are outside + Checks if @sink is currently configured to drop buffers which are outside the current segment + - %TRUE if the sink is configured to drop buffers outside the + %TRUE if the sink is configured to drop buffers outside the current segment. - the sink + the sink - Get the last sample that arrived in the sink and was used for preroll or for + Get the last sample that arrived in the sink and was used for preroll or for rendering. This property can be used to generate thumbnails. The #GstCaps on the sample can be used to determine the type of the buffer. Free-function: gst_sample_unref + - a #GstSample. gst_sample_unref() after + a #GstSample. gst_sample_unref() after usage. This function returns %NULL when no buffer has arrived in the sink yet or when the sink is not in PAUSED or PLAYING. - the sink + the sink - Get the currently configured latency. + Get the currently configured latency. + - The configured latency. + The configured latency. - the sink + the sink @@ -3511,31 +4818,45 @@ Free-function: gst_sample_unref - Get the maximum amount of bits per second that the sink will render. + Get the maximum amount of bits per second that the sink will render. + - the maximum number of bits per second @sink will render. + the maximum number of bits per second @sink will render. - a #GstBaseSink + a #GstBaseSink - Gets the max lateness value. See gst_base_sink_set_max_lateness() for + Gets the max lateness value. See gst_base_sink_set_max_lateness() for more details. + - The maximum time in nanoseconds that a buffer can be late + The maximum time in nanoseconds that a buffer can be late before it is dropped and not rendered. A value of -1 means an unlimited time. - the sink + the sink @@ -3543,125 +4864,183 @@ unlimited time. - Get the processing deadline of @sink. see + Get the processing deadline of @sink. see gst_base_sink_set_processing_deadline() for more information about the processing deadline. + - the processing deadline + the processing deadline - a #GstBaseSink + a #GstBaseSink - Get the render delay of @sink. see gst_base_sink_set_render_delay() for more + Get the render delay of @sink. see gst_base_sink_set_render_delay() for more information about the render delay. + - the render delay of @sink. + the render delay of @sink. - a #GstBaseSink + a #GstBaseSink - Checks if @sink is currently configured to synchronize against the + Checks if @sink is currently configured to synchronize against the clock. + - %TRUE if the sink is configured to synchronize against the clock. + %TRUE if the sink is configured to synchronize against the clock. - the sink + the sink - Get the time that will be inserted between frames to control the + Get the time that will be inserted between frames to control the maximum buffers per second. + - the number of nanoseconds @sink will put between frames. + the number of nanoseconds @sink will put between frames. - a #GstBaseSink + a #GstBaseSink - Get the synchronisation offset of @sink. + Get the synchronisation offset of @sink. + - The synchronisation offset. + The synchronisation offset. - the sink + the sink - Checks if @sink is currently configured to perform asynchronous state + Checks if @sink is currently configured to perform asynchronous state changes to PAUSED. + - %TRUE if the sink is configured to perform asynchronous state + %TRUE if the sink is configured to perform asynchronous state changes. - the sink + the sink - Checks if @sink is currently configured to store the last received sample in + Checks if @sink is currently configured to store the last received sample in the last-sample property. + - %TRUE if the sink is configured to store the last received sample. + %TRUE if the sink is configured to store the last received sample. - the sink + the sink - Checks if @sink is currently configured to send Quality-of-Service events + Checks if @sink is currently configured to send Quality-of-Service events upstream. + - %TRUE if the sink is configured to perform Quality-of-Service. + %TRUE if the sink is configured to perform Quality-of-Service. - the sink + the sink - Query the sink for the latency parameters. The latency will be queried from + Query the sink for the latency parameters. The latency will be queried from the upstream elements. @live will be %TRUE if @sink is configured to synchronize against the clock. @upstream_live will be %TRUE if an upstream element is live. @@ -3671,13 +5050,18 @@ for the latency introduced by the upstream elements by setting the @min_latency to a strictly positive value. This function is mostly used by subclasses. + - %TRUE if the query succeeded. + %TRUE if the query succeeded. - the sink + the sink transfer-ownership="full" optional="1" allow-none="1"> - if the sink is live + if the sink is live transfer-ownership="full" optional="1" allow-none="1"> - if an upstream element is live + if an upstream element is live transfer-ownership="full" optional="1" allow-none="1"> - the min latency of the upstream elements + the min latency of the upstream elements transfer-ownership="full" optional="1" allow-none="1"> - the max latency of the upstream elements + the max latency of the upstream elements - Configures @sink to perform all state changes asynchronously. When async is + Configures @sink to perform all state changes asynchronously. When async is disabled, the sink will immediately go to PAUSED instead of waiting for a preroll buffer. This feature is useful if the sink does not synchronize against the clock or when it is dealing with sparse streams. + - the sink + the sink - the new async value. + the new async value. - Set the number of bytes that the sink will pull when it is operating in pull + Set the number of bytes that the sink will pull when it is operating in pull mode. + - a #GstBaseSink + a #GstBaseSink - the blocksize in bytes + the blocksize in bytes @@ -3758,35 +5164,49 @@ mode. - Configure @sink to drop buffers which are outside the current segment + Configure @sink to drop buffers which are outside the current segment + - the sink + the sink - drop buffers outside the segment + drop buffers outside the segment - Configures @sink to store the last received sample in the last-sample + Configures @sink to store the last received sample in the last-sample property. + - the sink + the sink - the new enable-last-sample value. + the new enable-last-sample value. @@ -3794,37 +5214,51 @@ property. - Set the maximum amount of bits per second that the sink will render. + Set the maximum amount of bits per second that the sink will render. + - a #GstBaseSink + a #GstBaseSink - the max_bitrate in bits per second + the max_bitrate in bits per second - Sets the new max lateness value to @max_lateness. This value is + Sets the new max lateness value to @max_lateness. This value is used to decide if a buffer should be dropped or not based on the buffer timestamp and the current clock time. A value of -1 means an unlimited time. + - the sink + the sink - the new max lateness value. + the new max lateness value. @@ -3832,45 +5266,61 @@ an unlimited time. - Maximum amount of time (in nanoseconds) that the pipeline can take + Maximum amount of time (in nanoseconds) that the pipeline can take for processing the buffer. This is added to the latency of live pipelines. This function is usually called by subclasses. + - a #GstBaseSink + a #GstBaseSink - the new processing deadline in nanoseconds. + the new processing deadline in nanoseconds. - Configures @sink to send Quality-of-Service events upstream. + Configures @sink to send Quality-of-Service events upstream. + - the sink + the sink - the new qos value. + the new qos value. - Set the render delay in @sink to @delay. The render delay is the time + Set the render delay in @sink to @delay. The render delay is the time between actual rendering of a buffer and its synchronisation time. Some devices might delay media rendering which can be compensated for with this function. @@ -3879,80 +5329,108 @@ After calling this function, this sink will report additional latency and other sinks will adjust their latency to delay the rendering of their media. This function is usually called by subclasses. + - a #GstBaseSink + a #GstBaseSink - the new delay + the new delay - Configures @sink to synchronize on the clock or not. When + Configures @sink to synchronize on the clock or not. When @sync is %FALSE, incoming samples will be played as fast as possible. If @sync is %TRUE, the timestamps of the incoming buffers will be used to schedule the exact render time of its contents. + - the sink + the sink - the new sync value. + the new sync value. - Set the time that will be inserted between rendered buffers. This + Set the time that will be inserted between rendered buffers. This can be used to control the maximum buffers per second that the sink will render. + - a #GstBaseSink + a #GstBaseSink - the throttle time in nanoseconds + the throttle time in nanoseconds - Adjust the synchronisation of @sink with @offset. A negative value will + Adjust the synchronisation of @sink with @offset. A negative value will render buffers earlier than their timestamp. A positive value will delay rendering. This function can be used to fix playback of badly timestamped buffers. + - the sink + the sink - the new offset + the new offset - This function will wait for preroll to complete and will then block until @time + This function will wait for preroll to complete and will then block until @time is reached. It is usually called by subclasses that use their own internal synchronisation but want to let some synchronization (like EOS) be handled by the base class. @@ -3963,17 +5441,24 @@ receiving an EOS event in the ::event vmethod or when handling buffers in The @time argument should be the running_time of when the timeout should happen and will be adjusted with any latency and offset configured in the sink. + - #GstFlowReturn + #GstFlowReturn - the sink + the sink - the running_time to be reached + the running_time to be reached transfer-ownership="full" optional="1" allow-none="1"> - the jitter to be filled with time diff, or %NULL + the jitter to be filled with time diff, or %NULL - This function will block until @time is reached. It is usually called by + This function will block until @time is reached. It is usually called by subclasses that use their own internal synchronisation. If @time is not valid, no synchronisation is done and %GST_CLOCK_BADTIME is @@ -4003,17 +5492,24 @@ the #GstBaseSinkClass.render() vmethod. The @time argument should be the running_time of when this method should return and is not adjusted with any latency or offset configured in the sink. + - #GstClockReturn + #GstClockReturn - the sink + the sink - the running_time to be reached + the running_time to be reached transfer-ownership="full" optional="1" allow-none="1"> - the jitter to be filled with time diff, or %NULL + the jitter to be filled with time diff, or %NULL - If the #GstBaseSinkClass.render() method performs its own synchronisation + If the #GstBaseSinkClass.render() method performs its own synchronisation against the clock it must unblock when going from PLAYING to the PAUSED state and call this method before continuing to render the remaining data. @@ -4046,40 +5546,53 @@ returns %GST_FLOW_FLUSHING). This function should only be called with the PREROLL_LOCK held, like in the render function. + - %GST_FLOW_OK if the preroll completed and processing can + %GST_FLOW_OK if the preroll completed and processing can continue. Any other return value should be returned from the render vmethod. - the sink + the sink - If set to %TRUE, the basesink will perform asynchronous state changes. + If set to %TRUE, the basesink will perform asynchronous state changes. When set to %FALSE, the sink will not signal the parent when it prerolls. Use this option when dealing with sparse streams or when synchronisation is not required. - The amount of bytes to pull when operating in pull mode. + The amount of bytes to pull when operating in pull mode. - Enable the last-sample property. If %FALSE, basesink doesn't keep a + Enable the last-sample property. If %FALSE, basesink doesn't keep a reference to the last buffer arrived and the last-sample property is always set to %NULL. This can be useful if you need buffers to be released as soon as possible, eg. if you're using a buffer pool. - The last buffer that arrived in the sink and was used for preroll or for + The last buffer that arrived in the sink and was used for preroll or for rendering. This property can be used to generate thumbnails. This property can be %NULL when the sink has not yet received a buffer. @@ -4088,7 +5601,9 @@ can be %NULL when the sink has not yet received a buffer. version="1.2" writable="1" transfer-ownership="none"> - Control the maximum amount of bits that will be rendered per second. + Control the maximum amount of bits that will be rendered per second. Setting this property to a value bigger than 0 will make the sink delay rendering of the buffers when it would exceed to max-bitrate. @@ -4100,7 +5615,9 @@ rendering of the buffers when it would exceed to max-bitrate. version="1.16" writable="1" transfer-ownership="none"> - Maximum amount of time (in nanoseconds) that the pipeline can take + Maximum amount of time (in nanoseconds) that the pipeline can take for processing the buffer. This is added to the latency of live pipelines. @@ -4109,7 +5626,9 @@ pipelines. - The additional delay between synchronisation and actual rendering of the + The additional delay between synchronisation and actual rendering of the media. This property will add additional latency to the device in order to make other sinks compensate for the delay. @@ -4118,13 +5637,17 @@ make other sinks compensate for the delay. - The time to insert between buffers. This property can be used to control + The time to insert between buffers. This property can be used to control the maximum amount of buffers per second to render. Setting this property to a value bigger than 0 will make the sink create THROTTLE QoS events. - Controls the final synchronisation, a negative value will render the buffer + Controls the final synchronisation, a negative value will render the buffer earlier while a positive value delays playback. This property can be used to fix synchronisation in bad files. @@ -4190,7 +5713,7 @@ used to fix synchronisation in bad files. - + @@ -4198,15 +5721,21 @@ used to fix synchronisation in bad files. - Subclasses can override any of the available virtual methods or not, as + Subclasses can override any of the available virtual methods or not, as needed. At the minimum, the @render method should be overridden to output/present buffers. + - Element parent class + Element parent class + @@ -4222,6 +5751,7 @@ output/present buffers. + @@ -4237,6 +5767,7 @@ output/present buffers. + @@ -4252,6 +5783,7 @@ output/present buffers. + @@ -4267,6 +5799,7 @@ output/present buffers. + @@ -4288,6 +5821,7 @@ output/present buffers. + @@ -4303,6 +5837,7 @@ output/present buffers. + @@ -4315,6 +5850,7 @@ output/present buffers. + @@ -4327,6 +5863,7 @@ output/present buffers. + @@ -4339,6 +5876,7 @@ output/present buffers. + @@ -4351,6 +5889,7 @@ output/present buffers. + @@ -4366,6 +5905,7 @@ output/present buffers. + @@ -4381,6 +5921,7 @@ output/present buffers. + @@ -4396,6 +5937,7 @@ output/present buffers. + @@ -4411,6 +5953,7 @@ output/present buffers. + @@ -4426,6 +5969,7 @@ output/present buffers. + @@ -4441,6 +5985,7 @@ output/present buffers. + @@ -4456,6 +6001,7 @@ output/present buffers. + @@ -4470,12 +6016,13 @@ output/present buffers. - + + glib:type-name="GstBaseSrc" glib:get-type="gst_base_src_get_type" glib:type-struct="BaseSrcClass"> - This is a generic base class for source elements. The following + This is a generic base class for source elements. The following types of sources are supported: * random access sources like files @@ -4597,7 +6146,9 @@ with the gst_element_send_event() function on the element or its parent bin. After the EOS has been sent to the element, the application should wait for an EOS message to be posted on the pipeline's bus. Once this EOS message is received, it may safely shut down the entire pipeline. + + @@ -4617,8 +6168,11 @@ received, it may safely shut down the entire pipeline. - Ask the subclass to create a buffer with @offset and @size, the default + Ask the subclass to create a buffer with @offset and @size, the default implementation will call alloc and fill. + @@ -4641,6 +6195,7 @@ implementation will call alloc and fill. + @@ -4654,6 +6209,7 @@ implementation will call alloc and fill. + @@ -4667,6 +6223,7 @@ implementation will call alloc and fill. + @@ -4680,6 +6237,7 @@ implementation will call alloc and fill. + @@ -4699,6 +6257,7 @@ implementation will call alloc and fill. + @@ -4712,6 +6271,7 @@ implementation will call alloc and fill. + @@ -4725,6 +6285,7 @@ implementation will call alloc and fill. + @@ -4738,8 +6299,11 @@ implementation will call alloc and fill. - Given @buffer, return @start and @end time when it should be pushed + Given @buffer, return @start and @end time when it should be pushed out. The base class will sync on the clock using these times. + @@ -4765,6 +6329,7 @@ out. The base class will sync on the clock using these times. + @@ -4775,6 +6340,7 @@ out. The base class will sync on the clock using these times. + @@ -4785,6 +6351,7 @@ out. The base class will sync on the clock using these times. + @@ -4801,6 +6368,7 @@ out. The base class will sync on the clock using these times. + @@ -4814,23 +6382,33 @@ out. The base class will sync on the clock using these times. - Set new caps on the basesrc source pad. + Set new caps on the basesrc source pad. + - %TRUE if the caps could be set + %TRUE if the caps could be set - a #GstBaseSrc + a #GstBaseSrc - a #GstCaps + a #GstCaps + @@ -4841,6 +6419,7 @@ out. The base class will sync on the clock using these times. + @@ -4851,6 +6430,7 @@ out. The base class will sync on the clock using these times. + @@ -4861,6 +6441,7 @@ out. The base class will sync on the clock using these times. + @@ -4871,16 +6452,21 @@ out. The base class will sync on the clock using these times. - Lets #GstBaseSrc sub-classes to know the memory @allocator + Lets #GstBaseSrc sub-classes to know the memory @allocator used by the base class and its @params. Unref the @allocator after usage. + - a #GstBaseSrc + a #GstBaseSrc transfer-ownership="full" optional="1" allow-none="1"> - the #GstAllocator + the #GstAllocator used @@ -4899,124 +6487,179 @@ used transfer-ownership="full" optional="1" allow-none="1"> - the + the #GstAllocationParams of @allocator - Get the number of bytes that @src will push out with each buffer. + Get the number of bytes that @src will push out with each buffer. + - the number of bytes pushed with each buffer. + the number of bytes pushed with each buffer. - the source + the source + - the instance of the #GstBufferPool used + the instance of the #GstBufferPool used by the src; unref it after usage. - a #GstBaseSrc + a #GstBaseSrc - Query if @src timestamps outgoing buffers based on the current running_time. + Query if @src timestamps outgoing buffers based on the current running_time. + - %TRUE if the base class will automatically timestamp outgoing buffers. + %TRUE if the base class will automatically timestamp outgoing buffers. - the source + the source - Get the current async behaviour of @src. See also gst_base_src_set_async(). + Get the current async behaviour of @src. See also gst_base_src_set_async(). + - %TRUE if @src is operating in async mode. + %TRUE if @src is operating in async mode. - base source instance + base source instance - Check if an element is in live mode. + Check if an element is in live mode. + - %TRUE if element is in live mode. + %TRUE if element is in live mode. - base source instance + base source instance - Prepare a new seamless segment for emission downstream. This function must + Prepare a new seamless segment for emission downstream. This function must only be called by derived sub-classes, and only from the create() function, as the stream-lock needs to be held. The format for the new segment will be the current format of the source, as configured with gst_base_src_set_format() + - %TRUE if preparation of the seamless segment succeeded. + %TRUE if preparation of the seamless segment succeeded. - The source + The source - The new start value for the segment + The new start value for the segment - Stop value for the new segment + Stop value for the new segment - The new time value for the start of the new segment + The new time value for the start of the new segment - Query the source for the latency parameters. @live will be %TRUE when @src is + Query the source for the latency parameters. @live will be %TRUE when @src is configured as a live source. @min_latency and @max_latency will be set to the difference between the running time and the timestamp of the first buffer. This function is mostly used by subclasses. + - %TRUE if the query succeeded. + %TRUE if the query succeeded. - the source + the source transfer-ownership="full" optional="1" allow-none="1"> - if the source is live + if the source is live transfer-ownership="full" optional="1" allow-none="1"> - the min latency of the source + the min latency of the source transfer-ownership="full" optional="1" allow-none="1"> - the max latency of the source + the max latency of the source - Configure async behaviour in @src, no state change will block. The open, + Configure async behaviour in @src, no state change will block. The open, close, start, stop, play and pause virtual methods will be executed in a different thread and are thus allowed to perform blocking operations. Any blocking operation should be unblocked with the unlock vmethod. + - base source instance + base source instance - new async mode + new async mode @@ -5070,7 +6726,9 @@ blocking operation should be unblocked with the unlock vmethod. - If @automatic_eos is %TRUE, @src will automatically go EOS if a buffer + If @automatic_eos is %TRUE, @src will automatically go EOS if a buffer after the total size is returned. By default this is %TRUE but sources that can't return an authoritative size and only know that they're EOS when trying to read more should set this to %FALSE. @@ -5080,116 +6738,160 @@ when a buffer outside of the currently configured segment is pushed if @automatic_eos is %TRUE. Since 1.16, if @automatic_eos is %FALSE an EOS will be pushed only when the #GstBaseSrc.create implementation returns %GST_FLOW_EOS. + - base source instance + base source instance - automatic eos + automatic eos - Set the number of bytes that @src will push out with each buffer. When + Set the number of bytes that @src will push out with each buffer. When @blocksize is set to -1, a default length will be used. + - the source + the source - the new blocksize in bytes + the new blocksize in bytes - Set new caps on the basesrc source pad. + Set new caps on the basesrc source pad. + - %TRUE if the caps could be set + %TRUE if the caps could be set - a #GstBaseSrc + a #GstBaseSrc - a #GstCaps + a #GstCaps - Configure @src to automatically timestamp outgoing buffers based on the + Configure @src to automatically timestamp outgoing buffers based on the current running_time of the pipeline. This property is mostly useful for live sources. + - the source + the source - enable or disable timestamping + enable or disable timestamping - If not @dynamic, size is only updated when needed, such as when trying to + If not @dynamic, size is only updated when needed, such as when trying to read past current tracked size. Otherwise, size is checked for upon each read. + - base source instance + base source instance - new dynamic size mode + new dynamic size mode - Sets the default format of the source. This will be the format used + Sets the default format of the source. This will be the format used for sending SEGMENT events and for performing seeks. If a format of GST_FORMAT_BYTES is set, the element will be able to operate in pull mode if the #GstBaseSrcClass.is_seekable() returns %TRUE. This function must only be called in states < %GST_STATE_PAUSED. + - base source instance + base source instance - the format to use + the format to use - If the element listens to a live source, @live should + If the element listens to a live source, @live should be set to %TRUE. A live source will not produce data in the PAUSED state and @@ -5197,48 +6899,67 @@ will therefore not be able to participate in the PREROLL phase of a pipeline. To signal this fact to the application and the pipeline, the state change return value of the live source will be GST_STATE_CHANGE_NO_PREROLL. + - base source instance + base source instance - new live-mode + new live-mode - Complete an asynchronous start operation. When the subclass overrides the + Complete an asynchronous start operation. When the subclass overrides the start method, it should call gst_base_src_start_complete() when the start operation completes either from the same thread or from an asynchronous helper thread. + - base source instance + base source instance - a #GstFlowReturn + a #GstFlowReturn - Wait until the start operation completes. + Wait until the start operation completes. + - a #GstFlowReturn. + a #GstFlowReturn. - base source instance + base source instance @@ -5246,7 +6967,9 @@ helper thread. - Subclasses can call this from their create virtual method implementation + Subclasses can call this from their create virtual method implementation to submit a buffer list to be pushed out later. This is useful in cases where the create function wants to produce multiple buffers to be pushed out in one go in form of a #GstBufferList, which can reduce overhead @@ -5262,22 +6985,29 @@ function the behaviour is undefined. Subclasses must only call this function once per create function call and subclasses must only call this function when the source operates in push mode. + - a #GstBaseSrc + a #GstBaseSrc - a #GstBufferList + a #GstBufferList - If the #GstBaseSrcClass.create() method performs its own synchronisation + If the #GstBaseSrcClass.create() method performs its own synchronisation against the clock it must unblock when going from PLAYING to the PAUSED state and call this method before continuing to produce the remaining data. @@ -5285,14 +7015,19 @@ This function will block until a state change to PLAYING happens (in which case this function returns %GST_FLOW_OK) or the processing must be stopped due to a state change to READY or a FLUSH event (in which case this function returns %GST_FLOW_FLUSHING). + - %GST_FLOW_OK if @src is PLAYING and processing can + %GST_FLOW_OK if @src is PLAYING and processing can continue. Any other return value should be returned from the create vmethod. - the src + the src @@ -5364,7 +7099,7 @@ continue. Any other return value should be returned from the create vmethod. - + @@ -5372,15 +7107,21 @@ continue. Any other return value should be returned from the create vmethod. - Subclasses can override any of the available virtual methods or not, as + Subclasses can override any of the available virtual methods or not, as needed. At the minimum, the @create method should be overridden to produce buffers. + - Element parent class + Element parent class + @@ -5396,6 +7137,7 @@ buffers. + @@ -5408,6 +7150,7 @@ buffers. + @@ -5423,17 +7166,24 @@ buffers. + - %TRUE if the caps could be set + %TRUE if the caps could be set - a #GstBaseSrc + a #GstBaseSrc - a #GstCaps + a #GstCaps @@ -5441,6 +7191,7 @@ buffers. + @@ -5456,6 +7207,7 @@ buffers. + @@ -5468,6 +7220,7 @@ buffers. + @@ -5480,6 +7233,7 @@ buffers. + @@ -5507,6 +7261,7 @@ buffers. + @@ -5522,6 +7277,7 @@ buffers. + @@ -5534,6 +7290,7 @@ buffers. + @@ -5552,6 +7309,7 @@ buffers. + @@ -5567,6 +7325,7 @@ buffers. + @@ -5579,6 +7338,7 @@ buffers. + @@ -5591,6 +7351,7 @@ buffers. + @@ -5606,6 +7367,7 @@ buffers. + @@ -5621,6 +7383,7 @@ buffers. + @@ -5645,6 +7408,7 @@ buffers. + @@ -5666,6 +7430,7 @@ buffers. + @@ -5686,30 +7451,40 @@ buffers. - + - The #GstElement flags that a basesrc element may have. + The #GstElement flags that a basesrc element may have. + - has source is starting + has source is starting - has source been started + has source been started - offset to define more flags + offset to define more flags + glib:type-name="GstBaseTransform" glib:get-type="gst_base_transform_get_type" glib:type-struct="BaseTransformClass"> - This base class is for filter elements that process data. Elements + This base class is for filter elements that process data. Elements that are suitable for implementation using #GstBaseTransform are ones where the size and caps of the output is known entirely from the input caps and buffer sizes. These include elements that directly transform @@ -5823,7 +7600,9 @@ It provides for: * Implied %TRUE if no transform function is implemented. * Implied %FALSE if ONLY transform function is implemented. + + @@ -5840,6 +7619,7 @@ It provides for: + @@ -5853,6 +7633,7 @@ It provides for: + @@ -5869,6 +7650,7 @@ It provides for: + @@ -5882,6 +7664,7 @@ It provides for: + @@ -5901,6 +7684,7 @@ It provides for: + @@ -5920,6 +7704,7 @@ It provides for: + @@ -5936,6 +7721,7 @@ It provides for: + @@ -5955,6 +7741,7 @@ It provides for: + @@ -5974,6 +7761,7 @@ It provides for: + @@ -5990,6 +7778,7 @@ It provides for: + @@ -6006,6 +7795,7 @@ It provides for: + @@ -6022,6 +7812,7 @@ It provides for: + @@ -6035,6 +7826,7 @@ It provides for: + @@ -6048,6 +7840,7 @@ It provides for: + @@ -6058,6 +7851,7 @@ It provides for: + @@ -6068,6 +7862,7 @@ It provides for: + @@ -6084,6 +7879,7 @@ It provides for: + @@ -6100,6 +7896,7 @@ It provides for: + @@ -6119,6 +7916,7 @@ It provides for: + @@ -6132,6 +7930,7 @@ It provides for: + @@ -6151,6 +7950,7 @@ It provides for: + @@ -6180,16 +7980,21 @@ It provides for: - Lets #GstBaseTransform sub-classes to know the memory @allocator + Lets #GstBaseTransform sub-classes to know the memory @allocator used by the base class and its @params. Unref the @allocator after use it. + - a #GstBaseTransform + a #GstBaseTransform transfer-ownership="full" optional="1" allow-none="1"> - the #GstAllocator + the #GstAllocator used @@ -6208,7 +8015,9 @@ used transfer-ownership="full" optional="1" allow-none="1"> - the + the #GstAllocationParams of @allocator @@ -6216,98 +8025,136 @@ used + - the instance of the #GstBufferPool used + the instance of the #GstBufferPool used by @trans; free it after use it - a #GstBaseTransform + a #GstBaseTransform - See if @trans is configured as a in_place transform. + See if @trans is configured as a in_place transform. + - %TRUE is the transform is configured in in_place mode. + %TRUE is the transform is configured in in_place mode. MT safe. - the #GstBaseTransform to query + the #GstBaseTransform to query - See if @trans is configured as a passthrough transform. + See if @trans is configured as a passthrough transform. + - %TRUE is the transform is configured in passthrough mode. + %TRUE is the transform is configured in passthrough mode. MT safe. - the #GstBaseTransform to query + the #GstBaseTransform to query - Queries if the transform will handle QoS. + Queries if the transform will handle QoS. + - %TRUE if QoS is enabled. + %TRUE if QoS is enabled. MT safe. - a #GstBaseTransform + a #GstBaseTransform - Instructs @trans to request renegotiation upstream. This function is + Instructs @trans to request renegotiation upstream. This function is typically called after properties on the transform were set that influence the input format. + - a #GstBaseTransform + a #GstBaseTransform - Instructs @trans to renegotiate a new downstream transform on the next + Instructs @trans to renegotiate a new downstream transform on the next buffer. This function is typically called after properties on the transform were set that influence the output format. + - a #GstBaseTransform + a #GstBaseTransform - If @gap_aware is %FALSE (the default), output buffers will have the + If @gap_aware is %FALSE (the default), output buffers will have the %GST_BUFFER_FLAG_GAP flag unset. If set to %TRUE, the element must handle output buffers with this flag set @@ -6315,39 +8162,51 @@ correctly, i.e. it can assume that the buffer contains neutral data but must unset the flag if the output is no neutral data. MT safe. + - a #GstBaseTransform + a #GstBaseTransform - New state + New state - Determines whether a non-writable buffer will be copied before passing + Determines whether a non-writable buffer will be copied before passing to the transform_ip function. * Always %TRUE if no transform function is implemented. * Always %FALSE if ONLY transform function is implemented. MT safe. + - the #GstBaseTransform to modify + the #GstBaseTransform to modify - Boolean value indicating that we would like to operate + Boolean value indicating that we would like to operate on in_place buffers. @@ -6355,23 +8214,30 @@ on in_place buffers. - Set passthrough mode for this filter by default. This is mostly + Set passthrough mode for this filter by default. This is mostly useful for filters that do not care about negotiation. Always %TRUE for filters which don't implement either a transform or transform_ip method. MT safe. + - the #GstBaseTransform to set + the #GstBaseTransform to set - boolean indicating passthrough mode. + boolean indicating passthrough mode. @@ -6379,7 +8245,9 @@ MT safe. - If @prefer_passthrough is %TRUE (the default), @trans will check and + If @prefer_passthrough is %TRUE (the default), @trans will check and prefer passthrough caps from the list of caps returned by the transform_caps vmethod. @@ -6390,63 +8258,86 @@ passthrough transforms but prefer to do something else, like a capsfilter. MT safe. + - a #GstBaseTransform + a #GstBaseTransform - New state + New state - Enable or disable QoS handling in the transform. + Enable or disable QoS handling in the transform. MT safe. + - a #GstBaseTransform + a #GstBaseTransform - new state + new state - Set the QoS parameters in the transform. This function is called internally + Set the QoS parameters in the transform. This function is called internally when a QOS event is received but subclasses can provide custom information when needed. MT safe. + - a #GstBaseTransform + a #GstBaseTransform - the proportion + the proportion - the diff against the clock + the diff against the clock - the timestamp of the buffer generating the QoS expressed in + the timestamp of the buffer generating the QoS expressed in running_time. @@ -6455,22 +8346,31 @@ running_time. - Updates the srcpad caps and send the caps downstream. This function + Updates the srcpad caps and send the caps downstream. This function can be used by subclasses when they have already negotiated their caps but found a change in them (or computed new information). This way, they can notify downstream about that change without losing any buffer. + - %TRUE if the caps could be send downstream %FALSE otherwise + %TRUE if the caps could be send downstream %FALSE otherwise - a #GstBaseTransform + a #GstBaseTransform - An updated version of the srcpad caps to be pushed + An updated version of the srcpad caps to be pushed downstream @@ -6501,7 +8401,7 @@ downstream - + @@ -6509,22 +8409,31 @@ downstream - Subclasses can override any of the available virtual methods or not, as + Subclasses can override any of the available virtual methods or not, as needed. At minimum either @transform or @transform_ip need to be overridden. If the element can overwrite the input data with the results (data is of the same type and quantity) it should provide @transform_ip. + - Element parent class + Element parent class - If set to %TRUE, passthrough mode will be + If set to %TRUE, passthrough mode will be automatically enabled if the caps are the same. Set to %FALSE by default. - If set to %TRUE, @transform_ip will be called in + If set to %TRUE, @transform_ip will be called in passthrough mode. The passed buffer might not be writable. When %FALSE, neither @transform nor @transform_ip will be called in passthrough mode. @@ -6533,6 +8442,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6554,6 +8464,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6575,6 +8486,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6593,6 +8505,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6611,6 +8524,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6629,6 +8543,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6644,6 +8559,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6665,6 +8581,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6683,6 +8600,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6713,6 +8631,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6734,6 +8653,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6746,6 +8666,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6758,6 +8679,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6773,6 +8695,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6788,6 +8711,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6809,6 +8733,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6827,6 +8752,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6848,6 +8774,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6863,6 +8790,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6881,6 +8809,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6896,6 +8825,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6914,6 +8844,7 @@ same type and quantity) it should provide @transform_ip. + @@ -6931,7 +8862,7 @@ same type and quantity) it should provide @transform_ip. - + @@ -6939,354 +8870,514 @@ same type and quantity) it should provide @transform_ip. + - #GstBitReader provides a bit reader that can read any number of bits + #GstBitReader provides a bit reader that can read any number of bits from a memory buffer. It provides functions for reading any number of bits into 8, 16, 32 and 64 bit variables. + - Data from which the bit reader will + Data from which the bit reader will read - Size of @data in bytes + Size of @data in bytes - Current byte position + Current byte position - Bit position in the current byte + Bit position in the current byte - + - Frees a #GstBitReader instance, which was previously allocated by + Frees a #GstBitReader instance, which was previously allocated by gst_bit_reader_new(). + - a #GstBitReader instance + a #GstBitReader instance - Read @nbits bits into @val and update the current position. + Read @nbits bits into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance - Pointer to a #guint16 to store the result + Pointer to a #guint16 to store the result - number of bits to read + number of bits to read - Read @nbits bits into @val and update the current position. + Read @nbits bits into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance - Pointer to a #guint32 to store the result + Pointer to a #guint32 to store the result - number of bits to read + number of bits to read - Read @nbits bits into @val and update the current position. + Read @nbits bits into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance - Pointer to a #guint64 to store the result + Pointer to a #guint64 to store the result - number of bits to read + number of bits to read - Read @nbits bits into @val and update the current position. + Read @nbits bits into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance - Pointer to a #guint8 to store the result + Pointer to a #guint8 to store the result - number of bits to read + number of bits to read - Returns the current position of a #GstBitReader instance in bits. + Returns the current position of a #GstBitReader instance in bits. + - The current position of @reader in bits. + The current position of @reader in bits. - a #GstBitReader instance + a #GstBitReader instance - Returns the remaining number of bits of a #GstBitReader instance. + Returns the remaining number of bits of a #GstBitReader instance. + - The remaining number of bits of @reader instance. + The remaining number of bits of @reader instance. - a #GstBitReader instance + a #GstBitReader instance - Returns the total number of bits of a #GstBitReader instance. + Returns the total number of bits of a #GstBitReader instance. + - The total number of bits of @reader instance. + The total number of bits of @reader instance. - a #GstBitReader instance + a #GstBitReader instance - Initializes a #GstBitReader instance to read from @data. This function + Initializes a #GstBitReader instance to read from @data. This function can be called on already initialized instances. + - a #GstBitReader instance + a #GstBitReader instance - data from which the bit reader should read + data from which the bit reader should read - Size of @data in bytes + Size of @data in bytes - Read @nbits bits into @val but keep the current position. + Read @nbits bits into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance - Pointer to a #guint16 to store the result + Pointer to a #guint16 to store the result - number of bits to read + number of bits to read - Read @nbits bits into @val but keep the current position. + Read @nbits bits into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance - Pointer to a #guint32 to store the result + Pointer to a #guint32 to store the result - number of bits to read + number of bits to read - Read @nbits bits into @val but keep the current position. + Read @nbits bits into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance - Pointer to a #guint64 to store the result + Pointer to a #guint64 to store the result - number of bits to read + number of bits to read - Read @nbits bits into @val but keep the current position. + Read @nbits bits into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance - Pointer to a #guint8 to store the result + Pointer to a #guint8 to store the result - number of bits to read + number of bits to read - Sets the new position of a #GstBitReader instance to @pos in bits. + Sets the new position of a #GstBitReader instance to @pos in bits. + - %TRUE if the position could be set successfully, %FALSE + %TRUE if the position could be set successfully, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance - The new position in bits + The new position in bits - Skips @nbits bits of the #GstBitReader instance. + Skips @nbits bits of the #GstBitReader instance. + - %TRUE if @nbits bits could be skipped, %FALSE otherwise. + %TRUE if @nbits bits could be skipped, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance - the number of bits to skip + the number of bits to skip - Skips until the next byte. + Skips until the next byte. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitReader instance + a #GstBitReader instance @@ -7294,38 +9385,54 @@ otherwise. - Create a new #GstBitReader instance, which will read from @data. + Create a new #GstBitReader instance, which will read from @data. Free-function: gst_bit_reader_free + - a new #GstBitReader instance + a new #GstBitReader instance - Data from which the #GstBitReader + Data from which the #GstBitReader should read - Size of @data in bytes + Size of @data in bytes - #GstBitWriter provides a bit writer that can write any number of + #GstBitWriter provides a bit writer that can write any number of bits into a memory buffer. It provides functions for writing any number of bits into 8, 16, 32 and 64 bit variables. + - Allocated @data for bit writer to write + Allocated @data for bit writer to write - Size of written @data in bits + Size of written @data in bits @@ -7338,66 +9445,92 @@ number of bits into 8, 16, 32 and 64 bit variables. - + - Write trailing bit to align last byte of @data. @trailing_bit can + Write trailing bit to align last byte of @data. @trailing_bit can only be 1 or 0. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitWriter instance + a #GstBitWriter instance - trailing bits of last byte, 0 or 1 + trailing bits of last byte, 0 or 1 - Frees @bitwriter and the allocated data inside. + Frees @bitwriter and the allocated data inside. + - #GstBitWriter instance + #GstBitWriter instance - Frees @bitwriter without destroying the internal data, which is + Frees @bitwriter without destroying the internal data, which is returned as #GstBuffer. Free-function: gst_buffer_unref + - a new allocated #GstBuffer wrapping the + a new allocated #GstBuffer wrapping the data inside. gst_buffer_unref() after usage. - #GstBitWriter instance + #GstBitWriter instance - Frees @bitwriter without destroying the internal data, which is + Frees @bitwriter without destroying the internal data, which is returned. Free-function: g_free + - the current data. g_free() after + the current data. g_free() after usage. @@ -7405,25 +9538,35 @@ Free-function: g_free - #GstBitWriter instance + #GstBitWriter instance - Get written data pointer + Get written data pointer + - data pointer + data pointer - a #GstBitWriter instance + a #GstBitWriter instance + @@ -7434,14 +9577,21 @@ Free-function: g_free - Get size of written @data + Get size of written @data + - size of bits written in @data + size of bits written in @data - a #GstBitWriter instance + a #GstBitWriter instance @@ -7449,13 +9599,18 @@ Free-function: g_free - Initializes @bitwriter to an empty instance. + Initializes @bitwriter to an empty instance. + - #GstBitWriter instance + #GstBitWriter instance @@ -7463,29 +9618,40 @@ Free-function: g_free - Initializes @bitwriter with the given memory area @data. IF + Initializes @bitwriter with the given memory area @data. IF @initialized is %TRUE it is possible to read @size bits from the #GstBitWriter from the beginning. + - #GstBitWriter instance + #GstBitWriter instance - Memory area for writing + Memory area for writing - Size of @data in bytes + Size of @data in bytes - If %TRUE the complete data can be read from the beginning + If %TRUE the complete data can be read from the beginning @@ -7493,171 +9659,252 @@ Free-function: g_free - Initializes a #GstBitWriter instance and allocates the given data + Initializes a #GstBitWriter instance and allocates the given data @size. + - #GstBitWriter instance + #GstBitWriter instance - the size on bytes to allocate for data + the size on bytes to allocate for data - If %TRUE the data can't be reallocated + If %TRUE the data can't be reallocated - Write @nbits bits of @value to #GstBitWriter. + Write @nbits bits of @value to #GstBitWriter. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitWriter instance + a #GstBitWriter instance - value of #guint16 to write + value of #guint16 to write - number of bits to write + number of bits to write - Write @nbits bits of @value to #GstBitWriter. + Write @nbits bits of @value to #GstBitWriter. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitWriter instance + a #GstBitWriter instance - value of #guint32 to write + value of #guint32 to write - number of bits to write + number of bits to write - Write @nbits bits of @value to #GstBitWriter. + Write @nbits bits of @value to #GstBitWriter. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitWriter instance + a #GstBitWriter instance - value of #guint64 to write + value of #guint64 to write - number of bits to write + number of bits to write - Write @nbits bits of @value to #GstBitWriter. + Write @nbits bits of @value to #GstBitWriter. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitWriter instance + a #GstBitWriter instance - value of #guint8 to write + value of #guint8 to write - number of bits to write + number of bits to write - Write @nbytes bytes of @data to #GstBitWriter. + Write @nbytes bytes of @data to #GstBitWriter. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstBitWriter instance + a #GstBitWriter instance - pointer of data to write + pointer of data to write - number of bytes to write + number of bytes to write - Resets @bitwriter and frees the data if it's owned by @bitwriter. + Resets @bitwriter and frees the data if it's owned by @bitwriter. + - #GstBitWriter instance + #GstBitWriter instance - Resets @bitwriter and returns the current data as #GstBuffer. + Resets @bitwriter and returns the current data as #GstBuffer. Free-function: gst_buffer_unref + - a new allocated #GstBuffer wrapping the + a new allocated #GstBuffer wrapping the current data. gst_buffer_unref() after usage. - a #GstBitWriter instance + a #GstBitWriter instance - Resets @bitwriter and returns the current data. + Resets @bitwriter and returns the current data. Free-function: g_free + - the current data. g_free() after + the current data. g_free() after usage. @@ -7665,12 +9912,15 @@ Free-function: g_free - a #GstBitWriter instance + a #GstBitWriter instance + @@ -7686,37 +9936,53 @@ Free-function: g_free - Creates a new, empty #GstBitWriter instance. + Creates a new, empty #GstBitWriter instance. Free-function: gst_bit_writer_free + - a new, empty #GstByteWriter instance + a new, empty #GstByteWriter instance - Creates a new #GstBitWriter instance with the given memory area. If + Creates a new #GstBitWriter instance with the given memory area. If @initialized is %TRUE it is possible to read @size bits from the #GstBitWriter from the beginnig. Free-function: gst_bit_writer_free + - a new #GstBitWriter instance + a new #GstBitWriter instance - Memory area for writing + Memory area for writing - Size of @data in bytes + Size of @data in bytes - if %TRUE the complete data can be read from the beginning + if %TRUE the complete data can be read from the beginning @@ -7724,79 +9990,108 @@ Free-function: gst_bit_writer_free - Creates a #GstBitWriter instance with the given initial data size. + Creates a #GstBitWriter instance with the given initial data size. Free-function: gst_bit_writer_free + - a new #GstBitWriter instance + a new #GstBitWriter instance - Initial size of data in bytes + Initial size of data in bytes - If %TRUE the data can't be reallocated + If %TRUE the data can't be reallocated - #GstByteReader provides a byte reader that can read different integer and + #GstByteReader provides a byte reader that can read different integer and floating point types from a memory buffer. It provides functions for reading signed/unsigned, little/big endian integers of 8, 16, 24, 32 and 64 bits and functions for reading little/big endian floating points numbers of 32 and 64 bits. It also provides functions to read NUL-terminated strings in various character encodings. + - Data from which the bit reader will + Data from which the bit reader will read - Size of @data in bytes + Size of @data in bytes - Current byte position + Current byte position - + - Free-function: g_free + Free-function: g_free Returns a newly-allocated copy of the current data position if at least @size bytes are left and updates the current position. Free with g_free() when no longer needed. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Size in bytes + Size in bytes - address of a + address of a #guint8 pointer variable in which to store the result @@ -7806,7 +10101,9 @@ updates the current position. Free with g_free() when no longer needed. - Free-function: g_free + Free-function: g_free Returns a newly-allocated copy of the current data position if there is a NUL-terminated UTF-16 string in the data (this could be an empty string @@ -7820,21 +10117,28 @@ This function will fail if no NUL-terminator was found in in the data. Note: there is no peek or get variant of this function to ensure correct byte alignment of the UTF-16 string. + - %TRUE if a string could be read, %FALSE otherwise. The + %TRUE if a string could be read, %FALSE otherwise. The string put into @str must be freed with g_free() when no longer needed. - a #GstByteReader instance + a #GstByteReader instance - address of a + address of a #guint16 pointer variable in which to store the result @@ -7844,7 +10148,9 @@ byte alignment of the UTF-16 string. - Free-function: g_free + Free-function: g_free Returns a newly-allocated copy of the current data position if there is a NUL-terminated UTF-32 string in the data (this could be an empty string @@ -7858,21 +10164,28 @@ This function will fail if no NUL-terminator was found in in the data. Note: there is no peek or get variant of this function to ensure correct byte alignment of the UTF-32 string. + - %TRUE if a string could be read, %FALSE otherwise. The + %TRUE if a string could be read, %FALSE otherwise. The string put into @str must be freed with g_free() when no longer needed. - a #GstByteReader instance + a #GstByteReader instance - address of a + address of a #guint32 pointer variable in which to store the result @@ -7882,7 +10195,9 @@ byte alignment of the UTF-32 string. - Free-function: g_free + Free-function: g_free FIXME:Reads (copies) a NUL-terminated string in the #GstByteReader instance, advancing the current position to the byte after the string. This will work @@ -7890,21 +10205,28 @@ for any NUL-terminated string with a character width of 8 bits, so ASCII, UTF-8, ISO-8859-N etc. No input checking for valid UTF-8 is done. This function will fail if no NUL-terminator was found in in the data. + - %TRUE if a string could be read into @str, %FALSE otherwise. The + %TRUE if a string could be read into @str, %FALSE otherwise. The string put into @str must be freed with g_free() when no longer needed. - a #GstByteReader instance + a #GstByteReader instance - address of a + address of a #gchar pointer variable in which to store the result @@ -7913,43 +10235,59 @@ This function will fail if no NUL-terminator was found in in the data. - Frees a #GstByteReader instance, which was previously allocated by + Frees a #GstByteReader instance, which was previously allocated by gst_byte_reader_new(). + - a #GstByteReader instance + a #GstByteReader instance - Returns a constant pointer to the current data + Returns a constant pointer to the current data position if at least @size bytes are left and updates the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Size in bytes + Size in bytes - address of a + address of a #guint8 pointer variable in which to store the result @@ -7959,323 +10297,463 @@ updates the current position. - Read a 32 bit big endian floating point value into @val + Read a 32 bit big endian floating point value into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gfloat to store the result + Pointer to a #gfloat to store the result - Read a 32 bit little endian floating point value into @val + Read a 32 bit little endian floating point value into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gfloat to store the result + Pointer to a #gfloat to store the result - Read a 64 bit big endian floating point value into @val + Read a 64 bit big endian floating point value into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gdouble to store the result + Pointer to a #gdouble to store the result - Read a 64 bit little endian floating point value into @val + Read a 64 bit little endian floating point value into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gdouble to store the result + Pointer to a #gdouble to store the result - Read a signed 16 bit big endian integer into @val + Read a signed 16 bit big endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint16 to store the result + Pointer to a #gint16 to store the result - Read a signed 16 bit little endian integer into @val + Read a signed 16 bit little endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint16 to store the result + Pointer to a #gint16 to store the result - Read a signed 24 bit big endian integer into @val + Read a signed 24 bit big endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint32 to store the result + Pointer to a #gint32 to store the result - Read a signed 24 bit little endian integer into @val + Read a signed 24 bit little endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint32 to store the result + Pointer to a #gint32 to store the result - Read a signed 32 bit big endian integer into @val + Read a signed 32 bit big endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint32 to store the result + Pointer to a #gint32 to store the result - Read a signed 32 bit little endian integer into @val + Read a signed 32 bit little endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint32 to store the result + Pointer to a #gint32 to store the result - Read a signed 64 bit big endian integer into @val + Read a signed 64 bit big endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint64 to store the result + Pointer to a #gint64 to store the result - Read a signed 64 bit little endian integer into @val + Read a signed 64 bit little endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint64 to store the result + Pointer to a #gint64 to store the result - Read a signed 8 bit integer into @val and update the current position. + Read a signed 8 bit integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint8 to store the result + Pointer to a #gint8 to store the result - Returns the current position of a #GstByteReader instance in bytes. + Returns the current position of a #GstByteReader instance in bytes. + - The current position of @reader in bytes. + The current position of @reader in bytes. - a #GstByteReader instance + a #GstByteReader instance - Returns the remaining number of bytes of a #GstByteReader instance. + Returns the remaining number of bytes of a #GstByteReader instance. + - The remaining number of bytes of @reader instance. + The remaining number of bytes of @reader instance. - a #GstByteReader instance + a #GstByteReader instance - Returns the total number of bytes of a #GstByteReader instance. + Returns the total number of bytes of a #GstByteReader instance. + - The total number of bytes of @reader instance. + The total number of bytes of @reader instance. - a #GstByteReader instance + a #GstByteReader instance - Returns a constant pointer to the current data position if there is + Returns a constant pointer to the current data position if there is a NUL-terminated string in the data (this could be just a NUL terminator), advancing the current position to the byte after the string. This will work for any NUL-terminated string with a character width of 8 bits, so ASCII, @@ -8284,20 +10762,27 @@ UTF-8, ISO-8859-N etc. No input checking for valid UTF-8 is done. This function will fail if no NUL-terminator was found in in the data. + - %TRUE if a string could be found, %FALSE otherwise. + %TRUE if a string could be found, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - address of a + address of a #gchar pointer variable in which to store the result @@ -8309,255 +10794,358 @@ This function will fail if no NUL-terminator was found in in the data. c:identifier="gst_byte_reader_get_sub_reader" version="1.6" introspectable="0"> - Initializes a #GstByteReader sub-reader instance to contain @size bytes of + Initializes a #GstByteReader sub-reader instance to contain @size bytes of data from the current position of @reader. This is useful to read chunked formats and make sure that one doesn't read beyond the size of the sub-chunk. Unlike gst_byte_reader_peek_sub_reader(), this function also modifies the position of @reader and moves it forward by @size bytes. + - FALSE on error or if @reader does not contain @size more bytes from + FALSE on error or if @reader does not contain @size more bytes from the current position, and otherwise TRUE - an existing and initialized #GstByteReader instance + an existing and initialized #GstByteReader instance - a #GstByteReader instance to initialize as sub-reader + a #GstByteReader instance to initialize as sub-reader - size of @sub_reader in bytes + size of @sub_reader in bytes - Read an unsigned 16 bit big endian integer into @val + Read an unsigned 16 bit big endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint16 to store the result + Pointer to a #guint16 to store the result - Read an unsigned 16 bit little endian integer into @val + Read an unsigned 16 bit little endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint16 to store the result + Pointer to a #guint16 to store the result - Read an unsigned 24 bit big endian integer into @val + Read an unsigned 24 bit big endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint32 to store the result + Pointer to a #guint32 to store the result - Read an unsigned 24 bit little endian integer into @val + Read an unsigned 24 bit little endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint32 to store the result + Pointer to a #guint32 to store the result - Read an unsigned 32 bit big endian integer into @val + Read an unsigned 32 bit big endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint32 to store the result + Pointer to a #guint32 to store the result - Read an unsigned 32 bit little endian integer into @val + Read an unsigned 32 bit little endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint32 to store the result + Pointer to a #guint32 to store the result - Read an unsigned 64 bit big endian integer into @val + Read an unsigned 64 bit big endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint64 to store the result + Pointer to a #guint64 to store the result - Read an unsigned 64 bit little endian integer into @val + Read an unsigned 64 bit little endian integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint64 to store the result + Pointer to a #guint64 to store the result - Read an unsigned 8 bit integer into @val and update the current position. + Read an unsigned 8 bit integer into @val and update the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint8 to store the result + Pointer to a #guint8 to store the result - Initializes a #GstByteReader instance to read from @data. This function + Initializes a #GstByteReader instance to read from @data. This function can be called on already initialized instances. + - a #GstByteReader instance + a #GstByteReader instance - data from which + data from which the #GstByteReader should read - Size of @data in bytes + Size of @data in bytes - Scan for pattern @pattern with applied mask @mask in the byte reader data, + Scan for pattern @pattern with applied mask @mask in the byte reader data, starting from offset @offset relative to the current position. The bytes in @pattern and @mask are interpreted left-to-right, regardless @@ -8567,8 +11155,11 @@ out. It is an error to call this function without making sure that there is enough data (offset+size bytes) in the byte reader. + - offset of the first match, or -1 if no match was found. + offset of the first match, or -1 if no match was found. Example: |[ @@ -8593,24 +11184,34 @@ gst_byte_reader_masked_scan_uint32 (reader, 0xffff0000, 0x02030000, 0, 4); - a #GstByteReader + a #GstByteReader - mask to apply to data before matching against @pattern + mask to apply to data before matching against @pattern - pattern to match (after mask is applied) + pattern to match (after mask is applied) - offset from which to start scanning, relative to the current + offset from which to start scanning, relative to the current position - number of bytes to scan from offset + number of bytes to scan from offset @@ -8618,7 +11219,9 @@ gst_byte_reader_masked_scan_uint32 (reader, 0xffff0000, 0x02030000, 0, 4); - Scan for pattern @pattern with applied mask @mask in the byte reader data, + Scan for pattern @pattern with applied mask @mask in the byte reader data, starting from offset @offset relative to the current position. The bytes in @pattern and @mask are interpreted left-to-right, regardless @@ -8628,66 +11231,92 @@ out. It is an error to call this function without making sure that there is enough data (offset+size bytes) in the byte reader. + - offset of the first match, or -1 if no match was found. + offset of the first match, or -1 if no match was found. - a #GstByteReader + a #GstByteReader - mask to apply to data before matching against @pattern + mask to apply to data before matching against @pattern - pattern to match (after mask is applied) + pattern to match (after mask is applied) - offset from which to start scanning, relative to the current + offset from which to start scanning, relative to the current position - number of bytes to scan from offset + number of bytes to scan from offset - pointer to uint32 to return matching data + pointer to uint32 to return matching data - Returns a constant pointer to the current data + Returns a constant pointer to the current data position if at least @size bytes are left and keeps the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Size in bytes + Size in bytes - address of a + address of a #guint8 pointer variable in which to store the result @@ -8697,291 +11326,410 @@ keeps the current position. - Read a 32 bit big endian floating point value into @val + Read a 32 bit big endian floating point value into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gfloat to store the result + Pointer to a #gfloat to store the result - Read a 32 bit little endian floating point value into @val + Read a 32 bit little endian floating point value into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gfloat to store the result + Pointer to a #gfloat to store the result - Read a 64 bit big endian floating point value into @val + Read a 64 bit big endian floating point value into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gdouble to store the result + Pointer to a #gdouble to store the result - Read a 64 bit little endian floating point value into @val + Read a 64 bit little endian floating point value into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gdouble to store the result + Pointer to a #gdouble to store the result - Read a signed 16 bit big endian integer into @val + Read a signed 16 bit big endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint16 to store the result + Pointer to a #gint16 to store the result - Read a signed 16 bit little endian integer into @val + Read a signed 16 bit little endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint16 to store the result + Pointer to a #gint16 to store the result - Read a signed 24 bit big endian integer into @val + Read a signed 24 bit big endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint32 to store the result + Pointer to a #gint32 to store the result - Read a signed 24 bit little endian integer into @val + Read a signed 24 bit little endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint32 to store the result + Pointer to a #gint32 to store the result - Read a signed 32 bit big endian integer into @val + Read a signed 32 bit big endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint32 to store the result + Pointer to a #gint32 to store the result - Read a signed 32 bit little endian integer into @val + Read a signed 32 bit little endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint32 to store the result + Pointer to a #gint32 to store the result - Read a signed 64 bit big endian integer into @val + Read a signed 64 bit big endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint64 to store the result + Pointer to a #gint64 to store the result - Read a signed 64 bit little endian integer into @val + Read a signed 64 bit little endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint64 to store the result + Pointer to a #gint64 to store the result - Read a signed 8 bit integer into @val but keep the current position. + Read a signed 8 bit integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #gint8 to store the result + Pointer to a #gint8 to store the result - Returns a constant pointer to the current data position if there is + Returns a constant pointer to the current data position if there is a NUL-terminated string in the data (this could be just a NUL terminator). The current position will be maintained. This will work for any NUL-terminated string with a character width of 8 bits, so ASCII, @@ -8990,20 +11738,27 @@ UTF-8, ISO-8859-N etc. No input checking for valid UTF-8 is done. This function will fail if no NUL-terminator was found in in the data. + - %TRUE if a string could be skipped, %FALSE otherwise. + %TRUE if a string could be skipped, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - address of a + address of a #gchar pointer variable in which to store the result @@ -9015,316 +11770,447 @@ This function will fail if no NUL-terminator was found in in the data. c:identifier="gst_byte_reader_peek_sub_reader" version="1.6" introspectable="0"> - Initializes a #GstByteReader sub-reader instance to contain @size bytes of + Initializes a #GstByteReader sub-reader instance to contain @size bytes of data from the current position of @reader. This is useful to read chunked formats and make sure that one doesn't read beyond the size of the sub-chunk. Unlike gst_byte_reader_get_sub_reader(), this function does not modify the current position of @reader. + - FALSE on error or if @reader does not contain @size more bytes from + FALSE on error or if @reader does not contain @size more bytes from the current position, and otherwise TRUE - an existing and initialized #GstByteReader instance + an existing and initialized #GstByteReader instance - a #GstByteReader instance to initialize as sub-reader + a #GstByteReader instance to initialize as sub-reader - size of @sub_reader in bytes + size of @sub_reader in bytes - Read an unsigned 16 bit big endian integer into @val + Read an unsigned 16 bit big endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint16 to store the result + Pointer to a #guint16 to store the result - Read an unsigned 16 bit little endian integer into @val + Read an unsigned 16 bit little endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint16 to store the result + Pointer to a #guint16 to store the result - Read an unsigned 24 bit big endian integer into @val + Read an unsigned 24 bit big endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint32 to store the result + Pointer to a #guint32 to store the result - Read an unsigned 24 bit little endian integer into @val + Read an unsigned 24 bit little endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint32 to store the result + Pointer to a #guint32 to store the result - Read an unsigned 32 bit big endian integer into @val + Read an unsigned 32 bit big endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint32 to store the result + Pointer to a #guint32 to store the result - Read an unsigned 32 bit little endian integer into @val + Read an unsigned 32 bit little endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint32 to store the result + Pointer to a #guint32 to store the result - Read an unsigned 64 bit big endian integer into @val + Read an unsigned 64 bit big endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint64 to store the result + Pointer to a #guint64 to store the result - Read an unsigned 64 bit little endian integer into @val + Read an unsigned 64 bit little endian integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint64 to store the result + Pointer to a #guint64 to store the result - Read an unsigned 8 bit integer into @val but keep the current position. + Read an unsigned 8 bit integer into @val but keep the current position. + - %TRUE if successful, %FALSE otherwise. + %TRUE if successful, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Pointer to a #guint8 to store the result + Pointer to a #guint8 to store the result - Sets the new position of a #GstByteReader instance to @pos in bytes. + Sets the new position of a #GstByteReader instance to @pos in bytes. + - %TRUE if the position could be set successfully, %FALSE + %TRUE if the position could be set successfully, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - The new position in bytes + The new position in bytes - Skips @nbytes bytes of the #GstByteReader instance. + Skips @nbytes bytes of the #GstByteReader instance. + - %TRUE if @nbytes bytes could be skipped, %FALSE otherwise. + %TRUE if @nbytes bytes could be skipped, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - the number of bytes to skip + the number of bytes to skip - Skips a NUL-terminated UTF-16 string in the #GstByteReader instance, + Skips a NUL-terminated UTF-16 string in the #GstByteReader instance, advancing the current position to the byte after the string. No input checking for valid UTF-16 is done. This function will fail if no NUL-terminator was found in in the data. + - %TRUE if a string could be skipped, %FALSE otherwise. + %TRUE if a string could be skipped, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Skips a NUL-terminated UTF-32 string in the #GstByteReader instance, + Skips a NUL-terminated UTF-32 string in the #GstByteReader instance, advancing the current position to the byte after the string. No input checking for valid UTF-32 is done. This function will fail if no NUL-terminator was found in in the data. + - %TRUE if a string could be skipped, %FALSE otherwise. + %TRUE if a string could be skipped, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance - Skips a NUL-terminated string in the #GstByteReader instance, advancing + Skips a NUL-terminated string in the #GstByteReader instance, advancing the current position to the byte after the string. This will work for any NUL-terminated string with a character width of 8 bits, so ASCII, UTF-8, ISO-8859-N etc. No input checking for valid UTF-8 is done. This function will fail if no NUL-terminator was found in in the data. + - %TRUE if a string could be skipped, %FALSE otherwise. + %TRUE if a string could be skipped, %FALSE otherwise. - a #GstByteReader instance + a #GstByteReader instance @@ -9332,507 +12218,748 @@ This function will fail if no NUL-terminator was found in in the data. - Create a new #GstByteReader instance, which will read from @data. + Create a new #GstByteReader instance, which will read from @data. Free-function: gst_byte_reader_free + - a new #GstByteReader instance + a new #GstByteReader instance - data from which the + data from which the #GstByteReader should read - Size of @data in bytes + Size of @data in bytes - #GstByteWriter provides a byte writer and reader that can write/read different + #GstByteWriter provides a byte writer and reader that can write/read different integer and floating point types to/from a memory buffer. It provides functions for writing/reading signed/unsigned, little/big endian integers of 8, 16, 24, 32 and 64 bits and functions for reading little/big endian floating points numbers of 32 and 64 bits. It also provides functions to write/read NUL-terminated strings in various character encodings. + - #GstByteReader parent + #GstByteReader parent - Allocation size of the data + Allocation size of the data - If %TRUE no reallocations are allowed + If %TRUE no reallocations are allowed - If %FALSE no reallocations are allowed and copies of data are returned + If %FALSE no reallocations are allowed and copies of data are returned - + - Checks if enough free space from the current write cursor is + Checks if enough free space from the current write cursor is available and reallocates if necessary. + - %TRUE if at least @size bytes are still available + %TRUE if at least @size bytes are still available - #GstByteWriter instance + #GstByteWriter instance - Number of bytes that should be available + Number of bytes that should be available - Writes @size bytes containing @value to @writer. + Writes @size bytes containing @value to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to be written + Value to be written - Number of bytes to be written + Number of bytes to be written - Frees @writer and all memory allocated by it. + Frees @writer and all memory allocated by it. + - #GstByteWriter instance + #GstByteWriter instance - Frees @writer and all memory allocated by it except + Frees @writer and all memory allocated by it except the current data, which is returned as #GstBuffer. Free-function: gst_buffer_unref + - the current data as buffer. gst_buffer_unref() + the current data as buffer. gst_buffer_unref() after usage. - #GstByteWriter instance + #GstByteWriter instance - Frees @writer and all memory allocated by it except + Frees @writer and all memory allocated by it except the current data, which is returned. Free-function: g_free + - the current data. g_free() after usage. + the current data. g_free() after usage. - #GstByteWriter instance + #GstByteWriter instance - Returns the remaining size of data that can still be written. If + Returns the remaining size of data that can still be written. If -1 is returned the remaining size is only limited by system resources. + - the remaining size of data that can still be written + the remaining size of data that can still be written - #GstByteWriter instance + #GstByteWriter instance - Initializes @writer to an empty instance + Initializes @writer to an empty instance + - #GstByteWriter instance + #GstByteWriter instance - Initializes @writer with the given + Initializes @writer with the given memory area. If @initialized is %TRUE it is possible to read @size bytes from the #GstByteWriter from the beginning. + - #GstByteWriter instance + #GstByteWriter instance - Memory area for writing + Memory area for writing - Size of @data in bytes + Size of @data in bytes - If %TRUE the complete data can be read from the beginning + If %TRUE the complete data can be read from the beginning - Initializes @writer with the given initial data size. + Initializes @writer with the given initial data size. + - #GstByteWriter instance + #GstByteWriter instance - Initial size of data + Initial size of data - If %TRUE the data can't be reallocated + If %TRUE the data can't be reallocated - Writes @size bytes of @data to @writer. + Writes @size bytes of @data to @writer. + - %TRUE if the data could be written + %TRUE if the data could be written - #GstByteWriter instance + #GstByteWriter instance - source #GstBuffer + source #GstBuffer - offset to copy from + offset to copy from - total size to copy. If -1, all data is copied + total size to copy. If -1, all data is copied - Writes @size bytes of @data to @writer. + Writes @size bytes of @data to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Data to write + Data to write - Size of @data in bytes + Size of @data in bytes - Writes a big endian 32 bit float to @writer. + Writes a big endian 32 bit float to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a little endian 32 bit float to @writer. + Writes a little endian 32 bit float to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a big endian 64 bit float to @writer. + Writes a big endian 64 bit float to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a little endian 64 bit float to @writer. + Writes a little endian 64 bit float to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a signed big endian 16 bit integer to @writer. + Writes a signed big endian 16 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a signed little endian 16 bit integer to @writer. + Writes a signed little endian 16 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a signed big endian 24 bit integer to @writer. + Writes a signed big endian 24 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a signed little endian 24 bit integer to @writer. + Writes a signed little endian 24 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a signed big endian 32 bit integer to @writer. + Writes a signed big endian 32 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a signed little endian 32 bit integer to @writer. + Writes a signed little endian 32 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a signed big endian 64 bit integer to @writer. + Writes a signed big endian 64 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a signed little endian 64 bit integer to @writer. + Writes a signed little endian 64 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a signed 8 bit integer to @writer. + Writes a signed 8 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a NUL-terminated UTF16 string to @writer (including the terminator). + Writes a NUL-terminated UTF16 string to @writer (including the terminator). + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - UTF16 string to write + UTF16 string to write @@ -9841,18 +12968,27 @@ read @size bytes from the #GstByteWriter from the beginning. - Writes a NUL-terminated UTF32 string to @writer (including the terminator). + Writes a NUL-terminated UTF32 string to @writer (including the terminator). + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - UTF32 string to write + UTF32 string to write @@ -9861,220 +12997,327 @@ read @size bytes from the #GstByteWriter from the beginning. - Writes a NUL-terminated UTF8 string to @writer (including the terminator). + Writes a NUL-terminated UTF8 string to @writer (including the terminator). + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - UTF8 string to write + UTF8 string to write - Writes a unsigned big endian 16 bit integer to @writer. + Writes a unsigned big endian 16 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a unsigned little endian 16 bit integer to @writer. + Writes a unsigned little endian 16 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a unsigned big endian 24 bit integer to @writer. + Writes a unsigned big endian 24 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a unsigned little endian 24 bit integer to @writer. + Writes a unsigned little endian 24 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a unsigned big endian 32 bit integer to @writer. + Writes a unsigned big endian 32 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a unsigned little endian 32 bit integer to @writer. + Writes a unsigned little endian 32 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a unsigned big endian 64 bit integer to @writer. + Writes a unsigned big endian 64 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a unsigned little endian 64 bit integer to @writer. + Writes a unsigned little endian 64 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Writes a unsigned 8 bit integer to @writer. + Writes a unsigned 8 bit integer to @writer. + - %TRUE if the value could be written + %TRUE if the value could be written - #GstByteWriter instance + #GstByteWriter instance - Value to write + Value to write - Resets @writer and frees the data if it's + Resets @writer and frees the data if it's owned by @writer. + - #GstByteWriter instance + #GstByteWriter instance - Resets @writer and returns the current data as buffer. + Resets @writer and returns the current data as buffer. Free-function: gst_buffer_unref + - the current data as buffer. gst_buffer_unref() + the current data as buffer. gst_buffer_unref() after usage. - #GstByteWriter instance + #GstByteWriter instance - Resets @writer and returns the current data. + Resets @writer and returns the current data. Free-function: g_free + - the current data. g_free() after + the current data. g_free() after usage. @@ -10082,7 +13325,9 @@ usage. - #GstByteWriter instance + #GstByteWriter instance @@ -10090,37 +13335,53 @@ usage. - Creates a new, empty #GstByteWriter instance + Creates a new, empty #GstByteWriter instance Free-function: gst_byte_writer_free + - a new, empty #GstByteWriter instance + a new, empty #GstByteWriter instance - Creates a new #GstByteWriter instance with the given + Creates a new #GstByteWriter instance with the given memory area. If @initialized is %TRUE it is possible to read @size bytes from the #GstByteWriter from the beginning. Free-function: gst_byte_writer_free + - a new #GstByteWriter instance + a new #GstByteWriter instance - Memory area for writing + Memory area for writing - Size of @data in bytes + Size of @data in bytes - If %TRUE the complete data can be read from the beginning + If %TRUE the complete data can be read from the beginning @@ -10128,46 +13389,255 @@ Free-function: gst_byte_writer_free - Creates a new #GstByteWriter instance with the given + Creates a new #GstByteWriter instance with the given initial data size. Free-function: gst_byte_writer_free + - a new #GstByteWriter instance + a new #GstByteWriter instance - Initial size of data + Initial size of data - If %TRUE the data can't be reallocated + If %TRUE the data can't be reallocated + + + + + + + + + + + + + + + + Returns the DTS that has been converted to running time when using +gst_collect_pads_clip_running_time(). Unlike the value saved into +the buffer, this value is of type gint64 and may be negative. This allow +properly handling streams with frame reordering where the first DTS may +be negative. If the initial DTS was not set, this value will be +set to %G_MININT64. + + + + A #GstCollectData. + + + + + Check if running DTS value store is valid. + + + + A #GstCollectData. + + + + + + + + + + + + Get the stream lock of @pads. The stream lock is used to coordinate and +serialize execution among the various streams being collected, and in +protecting the resources used to accomplish this. + + + + a #GstCollectPads + + + + + A flags word containing #GstCollectPadsStateFlags flags set +on this collected pad. + + + + a #GstCollectData. + + + + + Gives the status of a specific flag on a collected pad. + + + + a #GstCollectData. + + + the #GstCollectPadsStateFlags to check. + + + + + Sets a state flag on a collected pad. + + + + a #GstCollectData. + + + the #GstCollectPadsStateFlags to set. + + + + + Clears a state flag on a collected pad. + + + + a #GstCollectData. + + + the #GstCollectPadsStateFlags to clear. + + + + + Lock the stream lock of @pads. + + + + a #GstCollectPads + + + + + Unlock the stream lock of @pads. + + + + a #GstCollectPads + + + - Structure used by the collect_pads. + Structure used by the collect_pads. + - owner #GstCollectPads + owner #GstCollectPads - #GstPad managed by this data + #GstPad managed by this data - currently queued buffer. + currently queued buffer. - position in the buffer + position in the buffer - last segment received. + last segment received. @@ -10177,13 +13647,15 @@ Free-function: gst_byte_writer_free + + - + @@ -10191,15 +13663,20 @@ Free-function: gst_byte_writer_free - A function that will be called when the #GstCollectData will be freed. + A function that will be called when the #GstCollectData will be freed. It is passed the pointer to the structure and should free any custom memory and resources allocated for it. + - the #GstCollectData that will be freed + the #GstCollectData that will be freed @@ -10207,6 +13684,7 @@ memory and resources allocated for it. + glib:type-name="GstCollectPads" glib:get-type="gst_collect_pads_get_type" glib:type-struct="CollectPadsClass"> - Manages a set of pads that operate in collect mode. This means that control + Manages a set of pads that operate in collect mode. This means that control is given to the manager of this object when all pads have data. * Collectpads are created with gst_collect_pads_new(). A callback should then @@ -10251,17 +13731,25 @@ is given to the manager of this object when all pads have data. CollectPads element is not waiting for data to be collected on non-waiting pads. Thus these pads may but need not have data when the callback is called. All pads are in waiting mode by default. + - Create a new instance of #GstCollectPads. + Create a new instance of #GstCollectPads. MT safe. + - a new #GstCollectPads, or %NULL in case of an error. + a new #GstCollectPads, or %NULL in case of an error. - Add a pad to the collection of collect pads. The pad has to be + Add a pad to the collection of collect pads. The pad has to be a sinkpad. The refcount of the pad is incremented. Use gst_collect_pads_remove_pad() to remove the pad from the collection again. @@ -10286,40 +13774,55 @@ The pad will be automatically activated in push mode when @pads is started. MT safe. + - a new #GstCollectData to identify the + a new #GstCollectData to identify the new pad. Or %NULL if wrong parameters are supplied. - the collectpads to use + the collectpads to use - the pad to add + the pad to add - the size of the returned #GstCollectData structure + the size of the returned #GstCollectData structure - function to be called before the returned + function to be called before the returned #GstCollectData structure is freed - whether to lock this pad in usual waiting state + whether to lock this pad in usual waiting state - Query how much bytes can be read from each queued buffer. This means + Query how much bytes can be read from each queued buffer. This means that the result of this call is the maximum number of bytes that can be read from each of the pads. @@ -10327,40 +13830,54 @@ This function should be called with @pads STREAM_LOCK held, such as in the callback. MT safe. + - The maximum number of bytes queued on all pads. This function + The maximum number of bytes queued on all pads. This function returns 0 if a pad has no queued buffer. - the collectpads to query + the collectpads to query - Convenience clipping function that converts incoming buffer's timestamp + Convenience clipping function that converts incoming buffer's timestamp to running time, or clips the buffer if outside configured segment. Since 1.6, this clipping function also sets the DTS parameter of the GstCollectData structure. This version of the running time DTS can be negative. G_MININT64 is used to indicate invalid value. + - the collectpads to use + the collectpads to use - collect data of corresponding pad + collect data of corresponding pad - buffer being clipped + buffer being clipped transfer-ownership="full" optional="1" allow-none="1"> - output buffer with running time, or NULL if clipped + output buffer with running time, or NULL if clipped - user data (unused) + user data (unused) - Default #GstCollectPads event handling that elements should always + Default #GstCollectPads event handling that elements should always chain up to to ensure proper operation. Element might however indicate event should not be forwarded downstream. + - the collectpads to use + the collectpads to use - collect data of corresponding pad + collect data of corresponding pad - event being processed + event being processed - process but do not send event downstream + process but do not send event downstream - Flush @size bytes from the pad @data. + Flush @size bytes from the pad @data. This function should be called with @pads STREAM_LOCK held, such as in the callback. MT safe. + - The number of bytes flushed This can be less than @size and + The number of bytes flushed This can be less than @size and is 0 if the pad was end-of-stream. - the collectpads to query + the collectpads to query - the data to use + the data to use - the number of bytes to flush + the number of bytes to flush - Peek at the buffer currently queued in @data. This function + Peek at the buffer currently queued in @data. This function should be called with the @pads STREAM_LOCK held, such as in the callback handler. MT safe. + - The buffer in @data or %NULL if no + The buffer in @data or %NULL if no buffer is queued. should unref the buffer after usage. - the collectpads to peek + the collectpads to peek - the data to use + the data to use - Pop the buffer currently queued in @data. This function + Pop the buffer currently queued in @data. This function should be called with the @pads STREAM_LOCK held, such as in the callback handler. MT safe. + - The buffer in @data or %NULL if no + The buffer in @data or %NULL if no buffer was queued. You should unref the buffer after usage. - the collectpads to pop + the collectpads to pop - the data to use + the data to use - Default #GstCollectPads query handling that elements should always + Default #GstCollectPads query handling that elements should always chain up to to ensure proper operation. Element might however indicate query should not be forwarded downstream. + - the collectpads to use + the collectpads to use - collect data of corresponding pad + collect data of corresponding pad - query being processed + query being processed - process but do not send event downstream + process but do not send event downstream - Get a subbuffer of @size bytes from the given pad @data. + Get a subbuffer of @size bytes from the given pad @data. This function should be called with @pads STREAM_LOCK held, such as in the callback. MT safe. + - A sub buffer. The size of the buffer can + A sub buffer. The size of the buffer can be less that requested. A return of %NULL signals that the pad is end-of-stream. Unref the buffer after use. - the collectpads to query + the collectpads to query - the data to use + the data to use - the number of bytes to read + the number of bytes to read - Remove a pad from the collection of collect pads. This function will also + Remove a pad from the collection of collect pads. This function will also free the #GstCollectData and all the resources that were allocated with gst_collect_pads_add_pad(). The pad will be deactivated automatically when @pads is stopped. MT safe. + - %TRUE if the pad could be removed. + %TRUE if the pad could be removed. - the collectpads to use + the collectpads to use - the pad to remove + the pad to remove - Set the callback function and user data that will be called with + Set the callback function and user data that will be called with the oldest buffer when all pads have been collected, or %NULL on EOS. If a buffer is passed, the callback owns a reference and must unref it. MT safe. + - the collectpads to use + the collectpads to use - the function to set + the function to set @@ -10585,28 +14184,37 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to the function + user data passed to the function - Install a clipping function that is called right after a buffer is received + Install a clipping function that is called right after a buffer is received on a pad managed by @pads. See #GstCollectPadsClipFunction for more info. + - the collectpads to use + the collectpads to use - clip function to install + clip function to install @@ -10614,29 +14222,38 @@ on a pad managed by @pads. See #GstCollectPadsClipFunction for more info. transfer-ownership="none" nullable="1" allow-none="1"> - user data to pass to @clip_func + user data to pass to @clip_func - Set the timestamp comparison function. + Set the timestamp comparison function. MT safe. + - the pads to use + the pads to use - the function to set + the function to set @@ -10644,14 +14261,18 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to the function + user data passed to the function - Set the event callback function and user data that will be called when + Set the event callback function and user data that will be called when collectpads has received an event originating from one of the collected pads. If the event being processed is a serialized one, this callback is called with @pads STREAM_LOCK held, otherwise not. As this lock should be @@ -10659,19 +14280,24 @@ held when calling a number of CollectPads functions, it should be acquired if so (unusually) needed. MT safe. + - the collectpads to use + the collectpads to use - the function to set + the function to set @@ -10679,7 +14305,9 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to the function + user data passed to the function @@ -10687,22 +14315,29 @@ MT safe. - Install a flush function that is called when the internal + Install a flush function that is called when the internal state of all pads should be flushed as part of flushing seek handling. See #GstCollectPadsFlushFunction for more info. + - the collectpads to use + the collectpads to use - flush function to install + flush function to install @@ -10710,35 +14345,46 @@ handling. See #GstCollectPadsFlushFunction for more info. transfer-ownership="none" nullable="1" allow-none="1"> - user data to pass to @func + user data to pass to @func - Change the flushing state of all the pads in the collection. No pad + Change the flushing state of all the pads in the collection. No pad is able to accept anymore data when @flushing is %TRUE. Calling this function with @flushing %FALSE makes @pads accept data again. Caller must ensure that downstream streaming (thread) is not blocked, e.g. by sending a FLUSH_START downstream. MT safe. + - the collectpads to use + the collectpads to use - desired state of the pads + desired state of the pads - CollectPads provides a default collection algorithm that will determine + CollectPads provides a default collection algorithm that will determine the oldest buffer available on all of its pads, and then delegate to a configured callback. However, if circumstances are more complicated and/or more control @@ -10749,33 +14395,42 @@ gst_collect_pads_set_buffer_function() callback. If this callback is set, the former will be unset. MT safe. + - the collectpads to use + the collectpads to use - the function to set + the function to set - user data passed to the function + user data passed to the function - Set the query callback function and user data that will be called after + Set the query callback function and user data that will be called after collectpads has received a query originating from one of the collected pads. If the query being processed is a serialized one, this callback is called with @pads STREAM_LOCK held, otherwise not. As this lock should be @@ -10783,19 +14438,24 @@ held when calling a number of CollectPads functions, it should be acquired if so (unusually) needed. MT safe. + - the collectpads to use + the collectpads to use - the function to set + the function to set @@ -10803,13 +14463,17 @@ MT safe. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to the function + user data passed to the function - Sets a pad to waiting or non-waiting mode, if at least this pad + Sets a pad to waiting or non-waiting mode, if at least this pad has not been created with locked waiting state, in which case nothing happens. @@ -10817,20 +14481,27 @@ This function should be called with @pads STREAM_LOCK held, such as in the callback. MT safe. + - the collectpads + the collectpads - the data to use + the data to use - boolean indicating whether this pad should operate + boolean indicating whether this pad should operate in waiting or non-waiting mode @@ -10839,81 +14510,111 @@ MT safe. - Default #GstCollectPads event handling for the src pad of elements. + Default #GstCollectPads event handling for the src pad of elements. Elements can chain up to this to let flushing seek event handling be done by #GstCollectPads. + - the #GstCollectPads to use + the #GstCollectPads to use - src #GstPad that received the event + src #GstPad that received the event - event being processed + event being processed - Starts the processing of data in the collect_pads. + Starts the processing of data in the collect_pads. MT safe. + - the collectpads to use + the collectpads to use - Stops the processing of data in the collect_pads. this function + Stops the processing of data in the collect_pads. this function will also unblock any blocking operations. MT safe. + - the collectpads to use + the collectpads to use - Get a subbuffer of @size bytes from the given pad @data. Flushes the amount + Get a subbuffer of @size bytes from the given pad @data. Flushes the amount of read bytes. This function should be called with @pads STREAM_LOCK held, such as in the callback. MT safe. + - A sub buffer. The size of the buffer can + A sub buffer. The size of the buffer can be less that requested. A return of %NULL signals that the pad is end-of-stream. Unref the buffer after use. - the collectpads to query + the collectpads to query - the data to use + the data to use - the number of bytes to read + the number of bytes to read @@ -10922,7 +14623,9 @@ end-of-stream. Unref the buffer after use. - #GList of #GstCollectData managed + #GList of #GstCollectData managed by this #GstCollectPads. @@ -10935,31 +14638,42 @@ end-of-stream. Unref the buffer after use. - + - A function that will be called when a (considered oldest) buffer can be muxed. + A function that will be called when a (considered oldest) buffer can be muxed. If all pads have reached EOS, this function is called with %NULL @buffer and %NULL @data. + - %GST_FLOW_OK for success + %GST_FLOW_OK for success - the #GstCollectPads that triggered the callback + the #GstCollectPads that triggered the callback - the #GstCollectData of pad that has received the buffer + the #GstCollectData of pad that has received the buffer - the #GstBuffer + the #GstBuffer nullable="1" allow-none="1" closure="3"> - user data passed to gst_collect_pads_set_buffer_function() + user data passed to gst_collect_pads_set_buffer_function() @@ -10975,18 +14691,21 @@ and %NULL @data. + - + - A function that will be called when @inbuffer is received on the pad managed + A function that will be called when @inbuffer is received on the pad managed by @data in the collectpad object @pads. The function should use the segment of @data and the negotiated media type on @@ -10994,28 +14713,39 @@ the pad to perform clipping of @inbuffer. This function takes ownership of @inbuffer and should output a buffer in @outbuffer or return %NULL in @outbuffer if the buffer should be dropped. + - a #GstFlowReturn that corresponds to the result of clipping. + a #GstFlowReturn that corresponds to the result of clipping. - a #GstCollectPads + a #GstCollectPads - a #GstCollectData + a #GstCollectData - the input #GstBuffer + the input #GstBuffer - the output #GstBuffer + the output #GstBuffer - user data + user data - A function for comparing two timestamps of buffers or newsegments collected on one pad. + A function for comparing two timestamps of buffers or newsegments collected on one pad. + - Integer less than zero when first timestamp is deemed older than the second one. + Integer less than zero when first timestamp is deemed older than the second one. Zero if the timestamps are deemed equally old. Integer greater than zero when second timestamp is deemed older than the first one. - the #GstCollectPads that is comparing the timestamps + the #GstCollectPads that is comparing the timestamps - the first #GstCollectData + the first #GstCollectData - the first timestamp + the first timestamp - the second #GstCollectData + the second #GstCollectData - the second timestamp + the second timestamp - user data passed to gst_collect_pads_set_compare_function() + user data passed to gst_collect_pads_set_compare_function() - A function that will be called while processing an event. It takes + A function that will be called while processing an event. It takes ownership of the event and is responsible for chaining up (to gst_collect_pads_event_default()) or dropping events (such typical cases being handled by the default handler). + - %TRUE if the pad could handle the event + %TRUE if the pad could handle the event - the #GstCollectPads that triggered the callback + the #GstCollectPads that triggered the callback - the #GstPad that received an event + the #GstPad that received an event - the #GstEvent received + the #GstEvent received nullable="1" allow-none="1" closure="3"> - user data passed to gst_collect_pads_set_event_function() + user data passed to gst_collect_pads_set_event_function() @@ -11104,18 +14866,23 @@ being handled by the default handler). - A function that will be called while processing a flushing seek event. + A function that will be called while processing a flushing seek event. The function should flush any internal state of the element and the state of all the pads. It should clear only the state not directly managed by the @pads object. It is therefore not necessary to call gst_collect_pads_set_flushing nor gst_collect_pads_clear from this function. + - a #GstCollectPads + a #GstCollectPads - user data + user data - A function that will be called when all pads have received data. + A function that will be called when all pads have received data. + - %GST_FLOW_OK for success + %GST_FLOW_OK for success - the #GstCollectPads that triggered the callback + the #GstCollectPads that triggered the callback - user data passed to gst_collect_pads_set_function() + user data passed to gst_collect_pads_set_function() @@ -11152,27 +14930,39 @@ gst_collect_pads_set_flushing nor gst_collect_pads_clear from this function. + - A function that will be called while processing a query. It takes + A function that will be called while processing a query. It takes ownership of the query and is responsible for chaining up (to events downstream (with gst_pad_event_default()). + - %TRUE if the pad could handle the event + %TRUE if the pad could handle the event - the #GstCollectPads that triggered the callback + the #GstCollectPads that triggered the callback - the #GstPad that received an event + the #GstPad that received an event - the #GstEvent received + the #GstEvent received nullable="1" allow-none="1" closure="3"> - user data passed to gst_collect_pads_set_query_function() + user data passed to gst_collect_pads_set_query_function() + - Set if collectdata's pad is EOS. + Set if collectdata's pad is EOS. - Set if collectdata's pad is flushing. + Set if collectdata's pad is flushing. - Set if collectdata's pad received a + Set if collectdata's pad received a new_segment event. - Set if collectdata's pad must be waited + Set if collectdata's pad must be waited for when collecting. - Set collectdata's pad WAITING state must + Set collectdata's pad WAITING state must not be changed. #GstCollectPadsStateFlags indicate private state of a collectdata('s pad). + + + + + + + + + + + + + + glib:type-name="GstDataQueue" glib:get-type="gst_data_queue_get_type" glib:type-struct="DataQueueClass"> - #GstDataQueue is an object that handles threadsafe queueing of objects. It + #GstDataQueue is an object that handles threadsafe queueing of objects. It also provides size-related functionality. This object should be used for any #GstElement that wishes to provide some sort of queueing functionality. + - Creates a new #GstDataQueue. If @fullcallback or @emptycallback are supplied, then + Creates a new #GstDataQueue. If @fullcallback or @emptycallback are supplied, then the #GstDataQueue will call the respective callback to signal full or empty condition. If the callbacks are NULL the #GstDataQueue will instead emit 'full' and 'empty' signals. + - a new #GstDataQueue. + a new #GstDataQueue. - the callback used to tell if the element considers the queue full + the callback used to tell if the element considers the queue full or not. - the callback which will be called when the queue is considered full. + the callback which will be called when the queue is considered full. - the callback which will be called when the queue is considered empty. + the callback which will be called when the queue is considered empty. @@ -11259,13 +15094,16 @@ or not. transfer-ownership="none" nullable="1" allow-none="1"> - a #gpointer that will be passed to the @checkfull, @fullcallback, + a #gpointer that will be passed to the @checkfull, @fullcallback, and @emptycallback callbacks. + @@ -11276,6 +15114,7 @@ or not. + @@ -11289,18 +15128,27 @@ or not. c:identifier="gst_data_queue_drop_head" version="1.2" introspectable="0"> - Pop and unref the head-most #GstMiniObject with the given #GType. + Pop and unref the head-most #GstMiniObject with the given #GType. + - %TRUE if an element was removed. + %TRUE if an element was removed. - The #GstDataQueue to drop an item from. + The #GstDataQueue to drop an item from. - The #GType of the item to drop. + The #GType of the item to drop. @@ -11309,15 +15157,20 @@ or not. c:identifier="gst_data_queue_flush" version="1.2" introspectable="0"> - Flushes all the contents of the @queue. Any call to #gst_data_queue_push and + Flushes all the contents of the @queue. Any call to #gst_data_queue_push and #gst_data_queue_pop will be released. MT safe. + - a #GstDataQueue. + a #GstDataQueue. @@ -11326,20 +15179,27 @@ MT safe. c:identifier="gst_data_queue_get_level" version="1.2" introspectable="0"> - Get the current level of the queue. + Get the current level of the queue. + - The #GstDataQueue + The #GstDataQueue - the location to store the result + the location to store the result @@ -11348,15 +15208,22 @@ MT safe. c:identifier="gst_data_queue_is_empty" version="1.2" introspectable="0"> - Queries if there are any items in the @queue. + Queries if there are any items in the @queue. MT safe. + - %TRUE if @queue is empty. + %TRUE if @queue is empty. - a #GstDataQueue. + a #GstDataQueue. @@ -11365,16 +15232,23 @@ MT safe. c:identifier="gst_data_queue_is_full" version="1.2" introspectable="0"> - Queries if @queue is full. This check will be done using the + Queries if @queue is full. This check will be done using the #GstDataQueueCheckFullFunction registered with @queue. MT safe. + - %TRUE if @queue is full. + %TRUE if @queue is full. - a #GstDataQueue. + a #GstDataQueue. @@ -11383,14 +15257,19 @@ MT safe. c:identifier="gst_data_queue_limits_changed" version="1.2" introspectable="0"> - Inform the queue that the limits for the fullness check have changed and that + Inform the queue that the limits for the fullness check have changed and that any blocking gst_data_queue_push() should be unblocked to recheck the limits. + - The #GstDataQueue + The #GstDataQueue @@ -11399,24 +15278,33 @@ any blocking gst_data_queue_push() should be unblocked to recheck the limits. - Retrieves the first @item available on the @queue without removing it. + Retrieves the first @item available on the @queue without removing it. If the queue is currently empty, the call will block until at least one item is available, OR the @queue is set to the flushing state. MT safe. + - %TRUE if an @item was successfully retrieved from the @queue. + %TRUE if an @item was successfully retrieved from the @queue. - a #GstDataQueue. + a #GstDataQueue. - pointer to store the returned #GstDataQueueItem. + pointer to store the returned #GstDataQueueItem. @@ -11425,24 +15313,33 @@ MT safe. c:identifier="gst_data_queue_pop" version="1.2" introspectable="0"> - Retrieves the first @item available on the @queue. If the queue is currently + Retrieves the first @item available on the @queue. If the queue is currently empty, the call will block until at least one item is available, OR the @queue is set to the flushing state. MT safe. + - %TRUE if an @item was successfully retrieved from the @queue. + %TRUE if an @item was successfully retrieved from the @queue. - a #GstDataQueue. + a #GstDataQueue. - pointer to store the returned #GstDataQueueItem. + pointer to store the returned #GstDataQueueItem. @@ -11451,7 +15348,9 @@ MT safe. c:identifier="gst_data_queue_push" version="1.2" introspectable="0"> - Pushes a #GstDataQueueItem (or a structure that begins with the same fields) + Pushes a #GstDataQueueItem (or a structure that begins with the same fields) on the @queue. If the @queue is full, the call will block until space is available, OR the @queue is set to flushing state. MT safe. @@ -11460,17 +15359,24 @@ Note that this function has slightly different semantics than gst_pad_push() and gst_pad_push_event(): this function only takes ownership of @item and the #GstMiniObject contained in @item if the push was successful. If %FALSE is returned, the caller is responsible for freeing @item and its contents. + - %TRUE if the @item was successfully pushed on the @queue. + %TRUE if the @item was successfully pushed on the @queue. - a #GstDataQueue. + a #GstDataQueue. - a #GstDataQueueItem. + a #GstDataQueueItem. @@ -11479,7 +15385,9 @@ is returned, the caller is responsible for freeing @item and its contents. c:identifier="gst_data_queue_push_force" version="1.2" introspectable="0"> - Pushes a #GstDataQueueItem (or a structure that begins with the same fields) + Pushes a #GstDataQueueItem (or a structure that begins with the same fields) on the @queue. It ignores if the @queue is full or not and forces the @item to be pushed anyway. MT safe. @@ -11488,17 +15396,24 @@ Note that this function has slightly different semantics than gst_pad_push() and gst_pad_push_event(): this function only takes ownership of @item and the #GstMiniObject contained in @item if the push was successful. If %FALSE is returned, the caller is responsible for freeing @item and its contents. + - %TRUE if the @item was successfully pushed on the @queue. + %TRUE if the @item was successfully pushed on the @queue. - a #GstDataQueue. + a #GstDataQueue. - a #GstDataQueueItem. + a #GstDataQueueItem. @@ -11507,23 +15422,30 @@ is returned, the caller is responsible for freeing @item and its contents. c:identifier="gst_data_queue_set_flushing" version="1.2" introspectable="0"> - Sets the queue to flushing state if @flushing is %TRUE. If set to flushing + Sets the queue to flushing state if @flushing is %TRUE. If set to flushing state, any incoming data on the @queue will be discarded. Any call currently blocking on #gst_data_queue_push or #gst_data_queue_pop will return straight away with a return value of %FALSE. While the @queue is in flushing state, all calls to those two functions will return %FALSE. MT Safe. + - a #GstDataQueue. + a #GstDataQueue. - a #gboolean stating if the queue will be flushing or not. + a #gboolean stating if the queue will be flushing or not. @@ -11538,19 +15460,23 @@ MT Safe. - the parent structure + the parent structure - + - Reports that the queue became empty (empty). + Reports that the queue became empty (empty). A queue is empty if the total amount of visible items inside it (num-visible, time, size) is lower than the boundary values which can be set through the GObject properties. @@ -11559,7 +15485,9 @@ properties. - Reports that the queue became full (full). + Reports that the queue became full (full). A queue is full if the total amount of data inside it (num-visible, time, size) is higher than the boundary values which can be set through the GObject properties. @@ -11571,34 +15499,49 @@ properties. - The prototype of the function used to inform the queue that it should be + The prototype of the function used to inform the queue that it should be considered as full. + - %TRUE if the queue should be considered full. + %TRUE if the queue should be considered full. - a #GstDataQueue. + a #GstDataQueue. - The number of visible items currently in the queue. + The number of visible items currently in the queue. - The amount of bytes currently in the queue. + The amount of bytes currently in the queue. - The accumulated duration of the items currently in the queue. + The accumulated duration of the items currently in the queue. - The #gpointer registered when the #GstDataQueue was created. + The #gpointer registered when the #GstDataQueue was created. @@ -11606,11 +15549,13 @@ considered as full. + + @@ -11623,6 +15568,7 @@ considered as full. + @@ -11634,12 +15580,13 @@ considered as full. - + + @@ -11656,6 +15603,7 @@ considered as full. + @@ -11672,51 +15620,74 @@ considered as full. - Structure used by #GstDataQueue. You can supply a different structure, as + Structure used by #GstDataQueue. You can supply a different structure, as long as the top of the structure is identical to this structure. + - the #GstMiniObject to queue. + the #GstMiniObject to queue. - the size in bytes of the miniobject. + the size in bytes of the miniobject. - the duration in #GstClockTime of the miniobject. Can not be + the duration in #GstClockTime of the miniobject. Can not be %GST_CLOCK_TIME_NONE. - %TRUE if @object should be considered as a visible object. + %TRUE if @object should be considered as a visible object. - The #GDestroyNotify function to use to free the #GstDataQueueItem. + The #GDestroyNotify function to use to free the #GstDataQueueItem. This function should also drop the reference to @object the owner of the #GstDataQueueItem is assumed to hold. - + + - Structure describing the size of a queue. + Structure describing the size of a queue. + - number of buffers + number of buffers - number of bytes + number of bytes - amount of time + amount of time @@ -11726,7 +15697,9 @@ This function should also drop the reference to @object the owner of the glib:type-name="GstFlowCombiner" glib:get-type="gst_flow_combiner_get_type" c:symbol-prefix="flow_combiner"> - Utility struct to help handling #GstFlowReturn combination. Useful for + Utility struct to help handling #GstFlowReturn combination. Useful for #GstElement<!-- -->s that have multiple source pads and need to combine the different #GstFlowReturn for those pads. @@ -11757,29 +15730,42 @@ These rules are: %GST_FLOW_ERROR or below, GST_FLOW_NOT_NEGOTIATED and GST_FLOW_FLUSHING are returned immediately from the gst_flow_combiner_update_flow() function. + - Creates a new #GstFlowCombiner, use gst_flow_combiner_free() to free it. + Creates a new #GstFlowCombiner, use gst_flow_combiner_free() to free it. + - A new #GstFlowCombiner + A new #GstFlowCombiner - Adds a new #GstPad to the #GstFlowCombiner. + Adds a new #GstPad to the #GstFlowCombiner. + - the #GstFlowCombiner + the #GstFlowCombiner - the #GstPad that is being added + the #GstPad that is being added @@ -11787,38 +15773,55 @@ returned immediately from the gst_flow_combiner_update_flow() function. - Removes all pads from a #GstFlowCombiner and resets it to its initial state. + Removes all pads from a #GstFlowCombiner and resets it to its initial state. + - the #GstFlowCombiner to clear + the #GstFlowCombiner to clear - Frees a #GstFlowCombiner struct and all its internal data. + Frees a #GstFlowCombiner struct and all its internal data. + - the #GstFlowCombiner to free + the #GstFlowCombiner to free - Increments the reference count on the #GstFlowCombiner. + Increments the reference count on the #GstFlowCombiner. + - the #GstFlowCombiner. + the #GstFlowCombiner. - the #GstFlowCombiner to add a reference to. + the #GstFlowCombiner to add a reference to. @@ -11826,17 +15829,24 @@ returned immediately from the gst_flow_combiner_update_flow() function. - Removes a #GstPad from the #GstFlowCombiner. + Removes a #GstPad from the #GstFlowCombiner. + - the #GstFlowCombiner + the #GstFlowCombiner - the #GstPad to remove + the #GstPad to remove @@ -11844,13 +15854,18 @@ returned immediately from the gst_flow_combiner_update_flow() function. - Reset flow combiner and all pads to their initial state without removing pads. + Reset flow combiner and all pads to their initial state without removing pads. + - the #GstFlowCombiner to clear + the #GstFlowCombiner to clear @@ -11858,13 +15873,18 @@ returned immediately from the gst_flow_combiner_update_flow() function. - Decrements the reference count on the #GstFlowCombiner. + Decrements the reference count on the #GstFlowCombiner. + - the #GstFlowCombiner to unreference. + the #GstFlowCombiner to unreference. @@ -11872,23 +15892,32 @@ returned immediately from the gst_flow_combiner_update_flow() function. - Computes the combined flow return for the pads in it. + Computes the combined flow return for the pads in it. The #GstFlowReturn parameter should be the last flow return update for a pad in this #GstFlowCombiner. It will use this value to be able to shortcut some combinations and avoid looking over all pads again. e.g. The last combined return is the same as the latest obtained #GstFlowReturn. + - The combined #GstFlowReturn + The combined #GstFlowReturn - the #GstFlowCombiner + the #GstFlowCombiner - the latest #GstFlowReturn received for a pad in this #GstFlowCombiner + the latest #GstFlowReturn received for a pad in this #GstFlowCombiner @@ -11896,33 +15925,251 @@ return is the same as the latest obtained #GstFlowReturn. - Sets the provided pad's last flow return to provided value and computes + Sets the provided pad's last flow return to provided value and computes the combined flow return for the pads in it. The #GstFlowReturn parameter should be the last flow return update for a pad in this #GstFlowCombiner. It will use this value to be able to shortcut some combinations and avoid looking over all pads again. e.g. The last combined return is the same as the latest obtained #GstFlowReturn. + - The combined #GstFlowReturn + The combined #GstFlowReturn - the #GstFlowCombiner + the #GstFlowCombiner - the #GstPad whose #GstFlowReturn to update + the #GstPad whose #GstFlowReturn to update - the latest #GstFlowReturn received for a pad in this #GstFlowCombiner + the latest #GstFlowReturn received for a pad in this #GstFlowCombiner + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GstPushSrc" glib:get-type="gst_push_src_get_type" glib:type-struct="PushSrcClass"> - This class is mostly useful for elements that cannot do + This class is mostly useful for elements that cannot do random access, or at least very slowly. The source usually prefers to push out a fixed size buffer. @@ -11949,7 +16198,9 @@ addition to the ::create method. Seeking, flushing, scheduling and sync is all handled by this base class. + + @@ -11963,6 +16214,7 @@ base class. + @@ -11976,6 +16228,7 @@ base class. + @@ -11992,7 +16245,7 @@ base class. - + @@ -12000,15 +16253,21 @@ base class. - Subclasses can override any of the available virtual methods or not, as + Subclasses can override any of the available virtual methods or not, as needed. At the minimum, the @fill method should be overridden to produce buffers. + - Element parent class + Element parent class + @@ -12024,6 +16283,7 @@ buffers. + @@ -12039,6 +16299,7 @@ buffers. + @@ -12053,7 +16314,7 @@ buffers. - + @@ -12062,20 +16323,28 @@ buffers. c:type="GstQueueArray" disguised="1" introspectable="0"> - #GstQueueArray is an object that provides standard queue functionality + #GstQueueArray is an object that provides standard queue functionality based on an array instead of linked lists. This reduces the overhead caused by memory management by a large factor. + - Clears queue @array and frees all memory associated to it. + Clears queue @array and frees all memory associated to it. + - a #GstQueueArray object + a #GstQueueArray object @@ -12084,18 +16353,27 @@ caused by memory management by a large factor. c:identifier="gst_queue_array_drop_element" version="1.2" introspectable="0"> - Drops the queue element at position @idx from queue @array. + Drops the queue element at position @idx from queue @array. + - the dropped element + the dropped element - a #GstQueueArray object + a #GstQueueArray object - index to drop + index to drop @@ -12104,27 +16382,38 @@ caused by memory management by a large factor. c:identifier="gst_queue_array_drop_struct" version="1.6" introspectable="0"> - Drops the queue element at position @idx from queue @array and copies the + Drops the queue element at position @idx from queue @array and copies the data of the element or structure that was removed into @p_struct if @p_struct is set (not NULL). + - TRUE on success, or FALSE on error + TRUE on success, or FALSE on error - a #GstQueueArray object + a #GstQueueArray object - index to drop + index to drop - address into which to store the data of the dropped structure, or NULL + address into which to store the data of the dropped structure, or NULL @@ -12133,16 +16422,23 @@ data of the element or structure that was removed into @p_struct if c:identifier="gst_queue_array_find" version="1.2" introspectable="0"> - Finds an element in the queue @array, either by comparing every element + Finds an element in the queue @array, either by comparing every element with @func or by looking up @data if no compare function @func is provided, and returning the index of the found element. + - Index of the found element or -1 if nothing was found. + Index of the found element or -1 if nothing was found. - a #GstQueueArray object + a #GstQueueArray object nullable="1" allow-none="1" closure="1"> - comparison function, or %NULL to find @data by value + comparison function, or %NULL to find @data by value - data for comparison function + data for comparison function @@ -12166,13 +16466,18 @@ and returning the index of the found element. c:identifier="gst_queue_array_free" version="1.2" introspectable="0"> - Frees queue @array and all memory associated to it. + Frees queue @array and all memory associated to it. + - a #GstQueueArray object + a #GstQueueArray object @@ -12181,14 +16486,21 @@ and returning the index of the found element. c:identifier="gst_queue_array_get_length" version="1.2" introspectable="0"> - Returns the length of the queue @array + Returns the length of the queue @array + - the length of the queue @array. + the length of the queue @array. - a #GstQueueArray object + a #GstQueueArray object @@ -12197,14 +16509,21 @@ and returning the index of the found element. c:identifier="gst_queue_array_is_empty" version="1.2" introspectable="0"> - Checks if the queue @array is empty. + Checks if the queue @array is empty. + - %TRUE if the queue @array is empty + %TRUE if the queue @array is empty - a #GstQueueArray object + a #GstQueueArray object @@ -12213,15 +16532,22 @@ and returning the index of the found element. c:identifier="gst_queue_array_peek_head" version="1.2" introspectable="0"> - Returns the head of the queue @array and does not + Returns the head of the queue @array and does not remove it from the queue. + - The head of the queue + The head of the queue - a #GstQueueArray object + a #GstQueueArray object @@ -12230,16 +16556,23 @@ remove it from the queue. c:identifier="gst_queue_array_peek_head_struct" version="1.6" introspectable="0"> - Returns the head of the queue @array without removing it from the queue. + Returns the head of the queue @array without removing it from the queue. + - pointer to element or struct, or NULL if @array was empty. The + pointer to element or struct, or NULL if @array was empty. The data pointed to by the returned pointer stays valid only as long as the queue array is not modified further! - a #GstQueueArray object + a #GstQueueArray object @@ -12248,9 +16581,14 @@ remove it from the queue. c:identifier="gst_queue_array_peek_nth" version="1.16" introspectable="0"> - Returns the item at @idx in @array, but does not remove it from the queue. + Returns the item at @idx in @array, but does not remove it from the queue. + - The item, or %NULL if @idx was out of bounds + The item, or %NULL if @idx was out of bounds @@ -12266,9 +16604,14 @@ remove it from the queue. c:identifier="gst_queue_array_peek_nth_struct" version="1.16" introspectable="0"> - Returns the item at @idx in @array, but does not remove it from the queue. + Returns the item at @idx in @array, but does not remove it from the queue. + - The item, or %NULL if @idx was out of bounds + The item, or %NULL if @idx was out of bounds @@ -12284,14 +16627,21 @@ remove it from the queue. c:identifier="gst_queue_array_peek_tail" version="1.14" introspectable="0"> - Returns the tail of the queue @array, but does not remove it from the queue. + Returns the tail of the queue @array, but does not remove it from the queue. + - The tail of the queue + The tail of the queue - a #GstQueueArray object + a #GstQueueArray object @@ -12300,14 +16650,21 @@ remove it from the queue. c:identifier="gst_queue_array_peek_tail_struct" version="1.14" introspectable="0"> - Returns the tail of the queue @array, but does not remove it from the queue. + Returns the tail of the queue @array, but does not remove it from the queue. + - The tail of the queue + The tail of the queue - a #GstQueueArray object + a #GstQueueArray object @@ -12316,15 +16673,22 @@ remove it from the queue. c:identifier="gst_queue_array_pop_head" version="1.2" introspectable="0"> - Returns and head of the queue @array and removes + Returns and head of the queue @array and removes it from the queue. + - The head of the queue + The head of the queue - a #GstQueueArray object + a #GstQueueArray object @@ -12333,16 +16697,23 @@ it from the queue. c:identifier="gst_queue_array_pop_head_struct" version="1.6" introspectable="0"> - Returns the head of the queue @array and removes it from the queue. + Returns the head of the queue @array and removes it from the queue. + - pointer to element or struct, or NULL if @array was empty. The + pointer to element or struct, or NULL if @array was empty. The data pointed to by the returned pointer stays valid only as long as the queue array is not modified further! - a #GstQueueArray object + a #GstQueueArray object @@ -12351,15 +16722,22 @@ it from the queue. c:identifier="gst_queue_array_pop_tail" version="1.14" introspectable="0"> - Returns the tail of the queue @array and removes + Returns the tail of the queue @array and removes it from the queue. + - The tail of the queue + The tail of the queue - a #GstQueueArray object + a #GstQueueArray object @@ -12368,15 +16746,22 @@ it from the queue. c:identifier="gst_queue_array_pop_tail_struct" version="1.14" introspectable="0"> - Returns the tail of the queue @array and removes + Returns the tail of the queue @array and removes it from the queue. + - The tail of the queue + The tail of the queue - a #GstQueueArray object + a #GstQueueArray object @@ -12385,26 +16770,34 @@ it from the queue. c:identifier="gst_queue_array_push_tail" version="1.2" introspectable="0"> - Pushes @data to the tail of the queue @array. + Pushes @data to the tail of the queue @array. + - a #GstQueueArray object + a #GstQueueArray object - object to push + object to push + @@ -12424,7 +16817,9 @@ it from the queue. c:identifier="gst_queue_array_set_clear_func" version="1.16" introspectable="0"> - Sets a function to clear an element of @array. + Sets a function to clear an element of @array. The @clear_func will be called when an element in the array data segment is removed and when the array is freed and data @@ -12434,16 +16829,21 @@ pointer to the element to clear, rather than the element itself. Note that in contrast with other uses of #GDestroyNotify functions, @clear_func is expected to clear the contents of the array element it is given, but not free the element itself. + - a #GstQueueArray object + a #GstQueueArray object - a function to clear an element of @array + a function to clear an element of @array @@ -12452,15 +16852,22 @@ the array element it is given, but not free the element itself. c:identifier="gst_queue_array_new" version="1.2" introspectable="0"> - Allocates a new #GstQueueArray object with an initial + Allocates a new #GstQueueArray object with an initial queue size of @initial_size. + - a new #GstQueueArray object + a new #GstQueueArray object - Initial size of the new queue + Initial size of the new queue @@ -12469,19 +16876,28 @@ queue size of @initial_size. c:identifier="gst_queue_array_new_for_struct" version="1.6" introspectable="0"> - Allocates a new #GstQueueArray object for elements (e.g. structures) + Allocates a new #GstQueueArray object for elements (e.g. structures) of size @struct_size, with an initial queue size of @initial_size. + - a new #GstQueueArray object + a new #GstQueueArray object - Size of each element (e.g. structure) in the array + Size of each element (e.g. structure) in the array - Initial size of the new queue + Initial size of the new queue @@ -12489,42 +16905,57 @@ of size @struct_size, with an initial queue size of @initial_size. - This function will be called by gst_type_find_helper_get_range() when + This function will be called by gst_type_find_helper_get_range() when typefinding functions request to peek at the data of a stream at certain offsets. If this function returns GST_FLOW_OK, the result buffer will be stored in @buffer. The contents of @buffer is invalid for any other return value. This function is supposed to behave exactly like a #GstPadGetRangeFunction. + - GST_FLOW_OK for success + GST_FLOW_OK for success - a #GstObject that will handle the getrange request + a #GstObject that will handle the getrange request - the parent of @obj or %NULL + the parent of @obj or %NULL - the offset of the range + the offset of the range - the length of the range + the length of the range - a memory location to hold the result buffer + a memory location to hold the result buffer @@ -12533,23 +16964,32 @@ This function is supposed to behave exactly like a #GstPadGetRangeFunction. - Create a new #GstBitReader instance, which will read from @data. + Create a new #GstBitReader instance, which will read from @data. Free-function: gst_bit_reader_free + - a new #GstBitReader instance + a new #GstBitReader instance - Data from which the #GstBitReader + Data from which the #GstBitReader should read - Size of @data in bytes + Size of @data in bytes @@ -12558,11 +16998,16 @@ Free-function: gst_bit_reader_free c:identifier="gst_bit_writer_new" moved-to="BitWriter.new" introspectable="0"> - Creates a new, empty #GstBitWriter instance. + Creates a new, empty #GstBitWriter instance. Free-function: gst_bit_writer_free + - a new, empty #GstByteWriter instance + a new, empty #GstByteWriter instance @@ -12570,26 +17015,37 @@ Free-function: gst_bit_writer_free c:identifier="gst_bit_writer_new_with_data" moved-to="BitWriter.new_with_data" introspectable="0"> - Creates a new #GstBitWriter instance with the given memory area. If + Creates a new #GstBitWriter instance with the given memory area. If @initialized is %TRUE it is possible to read @size bits from the #GstBitWriter from the beginnig. Free-function: gst_bit_writer_free + - a new #GstBitWriter instance + a new #GstBitWriter instance - Memory area for writing + Memory area for writing - Size of @data in bytes + Size of @data in bytes - if %TRUE the complete data can be read from the beginning + if %TRUE the complete data can be read from the beginning @@ -12598,58 +17054,150 @@ Free-function: gst_bit_writer_free c:identifier="gst_bit_writer_new_with_size" moved-to="BitWriter.new_with_size" introspectable="0"> - Creates a #GstBitWriter instance with the given initial data size. + Creates a #GstBitWriter instance with the given initial data size. Free-function: gst_bit_writer_free + - a new #GstBitWriter instance + a new #GstBitWriter instance - Initial size of data in bytes + Initial size of data in bytes - If %TRUE the data can't be reallocated + If %TRUE the data can't be reallocated + + + + + + + + + + + + + + + + + + - Create a new #GstByteReader instance, which will read from @data. + Create a new #GstByteReader instance, which will read from @data. Free-function: gst_byte_reader_free + - a new #GstByteReader instance + a new #GstByteReader instance - data from which the + data from which the #GstByteReader should read - Size of @data in bytes + Size of @data in bytes + + Returns a constant pointer to the current data position if there is +a NUL-terminated string in the data (this could be just a NUL terminator). +The current position will be maintained. This will work for any +NUL-terminated string with a character width of 8 bits, so ASCII, +UTF-8, ISO-8859-N etc. + +This function will fail if no NUL-terminator was found in in the data. + + + + a #GstByteReader instance + + + address of a + #gchar pointer variable in which to store the result + + + + + Skips a NUL-terminated string in the #GstByteReader instance, advancing +the current position to the byte after the string. This will work for +any NUL-terminated string with a character width of 8 bits, so ASCII, +UTF-8, ISO-8859-N etc. + +This function will fail if no NUL-terminator was found in in the data. + + + + a #GstByteReader instance + + + - Creates a new, empty #GstByteWriter instance + Creates a new, empty #GstByteWriter instance Free-function: gst_byte_writer_free + - a new, empty #GstByteWriter instance + a new, empty #GstByteWriter instance @@ -12657,26 +17205,37 @@ Free-function: gst_byte_writer_free c:identifier="gst_byte_writer_new_with_data" moved-to="ByteWriter.new_with_data" introspectable="0"> - Creates a new #GstByteWriter instance with the given + Creates a new #GstByteWriter instance with the given memory area. If @initialized is %TRUE it is possible to read @size bytes from the #GstByteWriter from the beginning. Free-function: gst_byte_writer_free + - a new #GstByteWriter instance + a new #GstByteWriter instance - Memory area for writing + Memory area for writing - Size of @data in bytes + Size of @data in bytes - If %TRUE the complete data can be read from the beginning + If %TRUE the complete data can be read from the beginning @@ -12685,39 +17244,77 @@ Free-function: gst_byte_writer_free c:identifier="gst_byte_writer_new_with_size" moved-to="ByteWriter.new_with_size" introspectable="0"> - Creates a new #GstByteWriter instance with the given + Creates a new #GstByteWriter instance with the given initial data size. Free-function: gst_byte_writer_free + - a new #GstByteWriter instance + a new #GstByteWriter instance - Initial size of data + Initial size of data - If %TRUE the data can't be reallocated + If %TRUE the data can't be reallocated + + Write a NUL-terminated string to @writer (including the terminator). The +string is assumed to be in an 8-bit encoding (e.g. ASCII,UTF-8 or +ISO-8859-1). + + + + #GstByteWriter instance + + + Null terminated string + + + - Allocates a new #GstQueueArray object with an initial + Allocates a new #GstQueueArray object with an initial queue size of @initial_size. + - a new #GstQueueArray object + a new #GstQueueArray object - Initial size of the new queue + Initial size of the new queue @@ -12727,46 +17324,66 @@ queue size of @initial_size. moved-to="QueueArray.new_for_struct" version="1.6" introspectable="0"> - Allocates a new #GstQueueArray object for elements (e.g. structures) + Allocates a new #GstQueueArray object for elements (e.g. structures) of size @struct_size, with an initial queue size of @initial_size. + - a new #GstQueueArray object + a new #GstQueueArray object - Size of each element (e.g. structure) in the array + Size of each element (e.g. structure) in the array - Initial size of the new queue + Initial size of the new queue - Tries to find what type of data is flowing from the given source #GstPad. + Tries to find what type of data is flowing from the given source #GstPad. Free-function: gst_caps_unref + - the #GstCaps corresponding to the data + the #GstCaps corresponding to the data stream. Returns %NULL if no #GstCaps matches the data stream. - A source #GstPad + A source #GstPad - The length in bytes + The length in bytes - Tries to find what type of data is contained in the given #GstBuffer, the + Tries to find what type of data is contained in the given #GstBuffer, the assumption being that the buffer represents the beginning of the stream or file. @@ -12778,8 +17395,11 @@ and the caps with the highest probability will be returned, or %NULL if the content of the buffer could not be identified. Free-function: gst_caps_unref + - the #GstCaps corresponding to the data, + the #GstCaps corresponding to the data, or %NULL if no type could be found. The caller should free the caps returned with gst_caps_unref(). @@ -12789,11 +17409,15 @@ Free-function: gst_caps_unref transfer-ownership="none" nullable="1" allow-none="1"> - object doing the typefinding, or %NULL (used for logging) + object doing the typefinding, or %NULL (used for logging) - a #GstBuffer with data to typefind + a #GstBuffer with data to typefind transfer-ownership="full" optional="1" allow-none="1"> - location to store the probability of the found + location to store the probability of the found caps, or %NULL @@ -12812,7 +17438,9 @@ Free-function: gst_caps_unref - Tries to find what type of data is contained in the given #GstBuffer, the + Tries to find what type of data is contained in the given #GstBuffer, the assumption being that the buffer represents the beginning of the stream or file. @@ -12828,8 +17456,11 @@ functions for the given extension, which might speed up the typefinding in many cases. Free-function: gst_caps_unref + - the #GstCaps corresponding to the data, + the #GstCaps corresponding to the data, or %NULL if no type could be found. The caller should free the caps returned with gst_caps_unref(). @@ -12839,18 +17470,24 @@ Free-function: gst_caps_unref transfer-ownership="none" nullable="1" allow-none="1"> - object doing the typefinding, or %NULL (used for logging) + object doing the typefinding, or %NULL (used for logging) - a #GstBuffer with data to typefind + a #GstBuffer with data to typefind - extension of the media, or %NULL + extension of the media, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - location to store the probability of the found + location to store the probability of the found caps, or %NULL @@ -12868,7 +17507,9 @@ Free-function: gst_caps_unref - Tries to find what type of data is contained in the given @data, the + Tries to find what type of data is contained in the given @data, the assumption being that the data represents the beginning of the stream or file. @@ -12880,8 +17521,11 @@ and the caps with the highest probability will be returned, or %NULL if the content of @data could not be identified. Free-function: gst_caps_unref + - the #GstCaps corresponding to the data, + the #GstCaps corresponding to the data, or %NULL if no type could be found. The caller should free the caps returned with gst_caps_unref(). @@ -12891,17 +17535,23 @@ Free-function: gst_caps_unref transfer-ownership="none" nullable="1" allow-none="1"> - object doing the typefinding, or %NULL (used for logging) + object doing the typefinding, or %NULL (used for logging) - * a pointer with data to typefind + * a pointer with data to typefind - the size of @data + the size of @data transfer-ownership="full" optional="1" allow-none="1"> - location to store the probability of the found + location to store the probability of the found caps, or %NULL @@ -12920,7 +17572,9 @@ Free-function: gst_caps_unref - Tries to find what type of data is contained in the given @data, the + Tries to find what type of data is contained in the given @data, the assumption being that the data represents the beginning of the stream or file. @@ -12936,8 +17590,11 @@ functions for the given extension, which might speed up the typefinding in many cases. Free-function: gst_caps_unref + - the #GstCaps corresponding to the data, + the #GstCaps corresponding to the data, or %NULL if no type could be found. The caller should free the caps returned with gst_caps_unref(). @@ -12947,24 +17604,32 @@ Free-function: gst_caps_unref transfer-ownership="none" nullable="1" allow-none="1"> - object doing the typefinding, or %NULL (used for logging) + object doing the typefinding, or %NULL (used for logging) - * a pointer with data to typefind + * a pointer with data to typefind - the size of @data + the size of @data - extension of the media, or %NULL + extension of the media, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - location to store the probability of the found + location to store the probability of the found caps, or %NULL @@ -12982,15 +17649,20 @@ Free-function: gst_caps_unref - Tries to find the best #GstCaps associated with @extension. + Tries to find the best #GstCaps associated with @extension. All available typefinders will be checked against the extension in order of rank. The caps of the first typefinder that can handle @extension will be returned. Free-function: gst_caps_unref + - the #GstCaps corresponding to + the #GstCaps corresponding to @extension, or %NULL if no type could be found. The caller should free the caps returned with gst_caps_unref(). @@ -13000,18 +17672,24 @@ Free-function: gst_caps_unref transfer-ownership="none" nullable="1" allow-none="1"> - object doing the typefinding, or %NULL (used for logging) + object doing the typefinding, or %NULL (used for logging) - an extension + an extension - Utility function to do pull-based typefinding. Unlike gst_type_find_helper() + Utility function to do pull-based typefinding. Unlike gst_type_find_helper() however, this function will use the specified function @func to obtain the data needed by the typefind functions, rather than operating on a given source pad. This is useful mostly for elements like tag demuxers which @@ -13025,38 +17703,51 @@ functions for the given extension, which might speed up the typefinding in many cases. Free-function: gst_caps_unref + - the #GstCaps corresponding to the data + the #GstCaps corresponding to the data stream. Returns %NULL if no #GstCaps matches the data stream. - A #GstObject that will be passed as first argument to @func + A #GstObject that will be passed as first argument to @func - the parent of @obj or %NULL + the parent of @obj or %NULL - A generic #GstTypeFindHelperGetRangeFunction that will + A generic #GstTypeFindHelperGetRangeFunction that will be used to access data at random offsets when doing the typefinding - The length in bytes + The length in bytes - extension of the media, or %NULL + extension of the media, or %NULL transfer-ownership="full" optional="1" allow-none="1"> - location to store the probability of the found + location to store the probability of the found caps, or %NULL @@ -13075,7 +17768,9 @@ Free-function: gst_caps_unref - Utility function to do pull-based typefinding. Unlike gst_type_find_helper() + Utility function to do pull-based typefinding. Unlike gst_type_find_helper() however, this function will use the specified function @func to obtain the data needed by the typefind functions, rather than operating on a given source pad. This is useful mostly for elements like tag demuxers which @@ -13087,45 +17782,60 @@ tag size, for example). When @extension is not %NULL, this function will first try the typefind functions for the given extension, which might speed up the typefinding in many cases. + - the last %GstFlowReturn from pulling a buffer or %GST_FLOW_OK if + the last %GstFlowReturn from pulling a buffer or %GST_FLOW_OK if typefinding was successful. - A #GstObject that will be passed as first argument to @func + A #GstObject that will be passed as first argument to @func - the parent of @obj or %NULL + the parent of @obj or %NULL - A generic #GstTypeFindHelperGetRangeFunction that will + A generic #GstTypeFindHelperGetRangeFunction that will be used to access data at random offsets when doing the typefinding - The length in bytes + The length in bytes - extension of the media, or %NULL + extension of the media, or %NULL - returned caps + returned caps transfer-ownership="full" optional="1" allow-none="1"> - location to store the probability of the found + location to store the probability of the found caps, or %NULL diff --git a/gir-files/GstCheck-1.0.gir b/gir-files/GstCheck-1.0.gir index 8c33b55dd..a7f6cb757 100644 --- a/gir-files/GstCheck-1.0.gir +++ b/gir-files/GstCheck-1.0.gir @@ -7,11 +7,25 @@ and/or use gtk-doc annotations. --> + + + + + + + + + + + + + + - #GstHarness is meant to make writing unit test for GStreamer much easier. + #GstHarness is meant to make writing unit test for GStreamer much easier. It can be thought of as a way of treating a #GstElement as a black box, deterministically feeding it data, and controlling what data it outputs. @@ -101,64 +115,66 @@ and then feeding it data with: |[<!-- language="C" --> gst_harness_push_from_src (h); ]| + - the element inside the harness + the element inside the harness - the internal harness source pad + the internal harness source pad - the internal harness sink pad + the internal harness sink pad - the source (input) harness (if any) + the source (input) harness (if any) - the sink (output) harness (if any) + the sink (output) harness (if any) - Adds a #GstElement to an empty #GstHarness + Adds a #GstElement to an empty #GstHarness MT safe. + - a #GstHarness + a #GstHarness - a #GstElement to add to the harness (transfer none) + a #GstElement to add to the harness (transfer none) - a #GstStaticPadTemplate describing the harness srcpad. + a #GstStaticPadTemplate describing the harness srcpad. %NULL will not create a harness srcpad. - a #gchar with the name of the element + a #gchar with the name of the element sinkpad that is then linked to the harness srcpad. Can be a static or request or a sometimes pad that has been added. %NULL will not get/request a sinkpad from the element. (Like if the element is a src.) - a #GstStaticPadTemplate describing the harness sinkpad. + a #GstStaticPadTemplate describing the harness sinkpad. %NULL will not create a harness sinkpad. - a #gchar with the name of the element + a #gchar with the name of the element srcpad that is then linked to the harness sinkpad, similar to the @element_sinkpad_name. @@ -166,146 +182,152 @@ srcpad that is then linked to the harness sinkpad, similar to the - Links the specified #GstPad the @GstHarness srcpad. + Links the specified #GstPad the @GstHarness srcpad. MT safe. + - a #GstHarness + a #GstHarness - a #GstPad to link to the harness srcpad + a #GstPad to link to the harness srcpad - Links the specified #GstPad the @GstHarness sinkpad. This can be useful if + Links the specified #GstPad the @GstHarness sinkpad. This can be useful if perhaps the srcpad did not exist at the time of creating the harness, like a demuxer that provides a sometimes-pad after receiving data. MT safe. + - a #GstHarness + a #GstHarness - a #GstPad to link to the harness sinkpad + a #GstPad to link to the harness sinkpad - Parses the @launchline and puts that in a #GstBin, + Parses the @launchline and puts that in a #GstBin, and then attches the supplied #GstHarness to the bin. MT safe. + - a #GstHarness + a #GstHarness - a #gchar describing a gst-launch type line + a #gchar describing a gst-launch type line - A convenience function to allows you to call gst_pad_add_probe on a + A convenience function to allows you to call gst_pad_add_probe on a #GstPad of a #GstElement that are residing inside the #GstHarness, by using normal gst_pad_add_probe syntax MT safe. + - a #GstHarness + a #GstHarness - a #gchar with a #GstElementFactory name + a #gchar with a #GstElementFactory name - a #gchar with the name of the pad to attach the probe to + a #gchar with the name of the pad to attach the probe to - a #GstPadProbeType (see gst_pad_add_probe) + a #GstPadProbeType (see gst_pad_add_probe) - a #GstPadProbeCallback (see gst_pad_add_probe) + a #GstPadProbeCallback (see gst_pad_add_probe) - a #gpointer (see gst_pad_add_probe) + a #gpointer (see gst_pad_add_probe) - a #GDestroyNotify (see gst_pad_add_probe) + a #GDestroyNotify (see gst_pad_add_probe) - Add api with params as one of the supported metadata API to propose when + Add api with params as one of the supported metadata API to propose when receiving an allocation query. MT safe. + - a #GstHarness + a #GstHarness - a metadata API + a metadata API - API specific parameters + API specific parameters - Similar to gst_harness_add_sink_harness, this is a convenience to + Similar to gst_harness_add_sink_harness, this is a convenience to directly create a sink-harness using the @sink_element_name name specified. MT safe. + - a #GstHarness + a #GstHarness - a #gchar with the name of a #GstElement + a #gchar with the name of a #GstElement - Similar to gst_harness_add_src, this allows you to send the data coming out + Similar to gst_harness_add_src, this allows you to send the data coming out of your harnessed #GstElement to a sink-element, allowing to test different responses the element output might create in sink elements. An example might be an existing sink providing some analytical data on the input it receives that @@ -315,65 +337,68 @@ this is better achieved using gst_harness_new directly on the sink. If a sink-harness already exists it will be replaced. MT safe. + - a #GstHarness + a #GstHarness - a #GstHarness to be added as a sink-harness. + a #GstHarness to be added as a sink-harness. - Similar to gst_harness_add_sink, this allows you to specify a launch-line + Similar to gst_harness_add_sink, this allows you to specify a launch-line instead of just an element name. See gst_harness_add_src_parse for details. MT safe. + - a #GstHarness + a #GstHarness - a #gchar with the name of a #GstElement + a #gchar with the name of a #GstElement - Similar to gst_harness_add_src_harness, this is a convenience to + Similar to gst_harness_add_src_harness, this is a convenience to directly create a src-harness using the @src_element_name name specified. MT safe. + - a #GstHarness + a #GstHarness - a #gchar with the name of a #GstElement + a #gchar with the name of a #GstElement - a #gboolean specifying if the #GstElement uses + a #gboolean specifying if the #GstElement uses gst_clock_wait_id internally. - A src-harness is a great way of providing the #GstHarness with data. + A src-harness is a great way of providing the #GstHarness with data. By adding a src-type #GstElement, it is then easy to use functions like gst_harness_push_from_src or gst_harness_src_crank_and_push_many to provide your harnessed element with input. The @has_clock_wait variable @@ -384,86 +409,90 @@ spin out of control producing buffers as fast as possible. If a src-harness already exists it will be replaced. MT safe. + - a #GstHarness + a #GstHarness - a #GstHarness to be added as a src-harness. + a #GstHarness to be added as a src-harness. - a #gboolean specifying if the #GstElement uses + a #gboolean specifying if the #GstElement uses gst_clock_wait_id internally. - Similar to gst_harness_add_src, this allows you to specify a launch-line, + Similar to gst_harness_add_src, this allows you to specify a launch-line, which can be useful for both having more then one #GstElement acting as your src (Like a src producing raw buffers, and then an encoder, providing encoded data), but also by allowing you to set properties like "is-live" directly on the elements. MT safe. + - a #GstHarness + a #GstHarness - a #gchar describing a gst-launch type line + a #gchar describing a gst-launch type line - a #gboolean specifying if the #GstElement uses + a #gboolean specifying if the #GstElement uses gst_clock_wait_id internally. - The number of #GstBuffers currently in the #GstHarness sinkpad #GAsyncQueue + The number of #GstBuffers currently in the #GstHarness sinkpad #GAsyncQueue MT safe. + - a #guint number of buffers in the queue + a #guint number of buffers in the queue - a #GstHarness + a #GstHarness - The total number of #GstBuffers that has arrived on the #GstHarness sinkpad. + The total number of #GstBuffers that has arrived on the #GstHarness sinkpad. This number includes buffers that have been dropped as well as buffers that have already been pulled out. MT safe. + - a #guint number of buffers received + a #guint number of buffers received - a #GstHarness + a #GstHarness - Similar to gst_harness_crank_single_clock_wait(), this is the function to use + Similar to gst_harness_crank_single_clock_wait(), this is the function to use if your harnessed element(s) are using more then one gst_clock_id_wait. Failing to do so can (and will) make it racy which #GstClockID you actually are releasing, where as this function will process all the waits at the @@ -471,23 +500,24 @@ same time, ensuring that one thread can't register another wait before both are released. MT safe. + - a @gboolean %TRUE if the "crank" was successful, %FALSE if not. + a @gboolean %TRUE if the "crank" was successful, %FALSE if not. - a #GstHarness + a #GstHarness - a #guint describing the number of #GstClockIDs to crank + a #guint describing the number of #GstClockIDs to crank - A "crank" consists of three steps: + A "crank" consists of three steps: 1: Wait for a #GstClockID to be registered with the #GstTestClock. 2: Advance the #GstTestClock to the time the #GstClockID is waiting for. 3: Release the #GstClockID wait. @@ -497,199 +527,209 @@ that are dependent on this. A "crank" can be though of as the notion of manually driving the clock forward to its next logical step. MT safe. + - a @gboolean %TRUE if the "crank" was successful, %FALSE if not. + a @gboolean %TRUE if the "crank" was successful, %FALSE if not. - a #GstHarness + a #GstHarness - Allocates a buffer using a #GstBufferPool if present, or else using the + Allocates a buffer using a #GstBufferPool if present, or else using the configured #GstAllocator and #GstAllocationParams MT safe. + - a #GstBuffer of size @size + a #GstBuffer of size @size - a #GstHarness + a #GstHarness - a #gsize specifying the size of the buffer + a #gsize specifying the size of the buffer - Allows you to dump the #GstBuffers the #GstHarness sinkpad #GAsyncQueue + Allows you to dump the #GstBuffers the #GstHarness sinkpad #GAsyncQueue to a file. MT safe. + - a #GstHarness + a #GstHarness - a #gchar with a the name of a file + a #gchar with a the name of a file - The number of #GstEvents currently in the #GstHarness sinkpad #GAsyncQueue + The number of #GstEvents currently in the #GstHarness sinkpad #GAsyncQueue MT safe. + - a #guint number of events in the queue + a #guint number of events in the queue - a #GstHarness + a #GstHarness - The total number of #GstEvents that has arrived on the #GstHarness sinkpad + The total number of #GstEvents that has arrived on the #GstHarness sinkpad This number includes events handled by the harness as well as events that have already been pulled out. MT safe. + - a #guint number of events received + a #guint number of events received - a #GstHarness + a #GstHarness - Most useful in conjunction with gst_harness_new_parse, this will scan the + Most useful in conjunction with gst_harness_new_parse, this will scan the #GstElements inside the #GstHarness, and check if any of them matches @element_name. Typical usecase being that you need to access one of the harnessed elements for properties and/or signals. MT safe. + - a #GstElement or %NULL if not found + a #GstElement or %NULL if not found - a #GstHarness + a #GstHarness - a #gchar with a #GstElementFactory name + a #gchar with a #GstElementFactory name - A convenience function to allows you to call g_object_get on a #GstElement + A convenience function to allows you to call g_object_get on a #GstElement that are residing inside the #GstHarness, by using normal g_object_get syntax. MT safe. + - a #GstHarness + a #GstHarness - a #gchar with a #GstElementFactory name + a #gchar with a #GstElementFactory name - a #gchar with the first property name + a #gchar with the first property name - return location for the first property, followed optionally by more + return location for the first property, followed optionally by more name/return location pairs, followed by %NULL - Gets the @allocator and its @params that has been decided to use after an + Gets the @allocator and its @params that has been decided to use after an allocation query. MT safe. + - a #GstHarness + a #GstHarness - the #GstAllocator used + the #GstAllocator used - the #GstAllocationParams of + the #GstAllocationParams of @allocator - Get the timestamp of the last #GstBuffer pushed on the #GstHarness srcpad, + Get the timestamp of the last #GstBuffer pushed on the #GstHarness srcpad, typically with gst_harness_push or gst_harness_push_from_src. MT safe. + - a #GstClockTime with the timestamp or %GST_CLOCK_TIME_NONE if no + a #GstClockTime with the timestamp or %GST_CLOCK_TIME_NONE if no #GstBuffer has been pushed on the #GstHarness srcpad - a #GstHarness + a #GstHarness - Get the #GstTestClock. Useful if specific operations on the testclock is + Get the #GstTestClock. Useful if specific operations on the testclock is needed. MT safe. + - a #GstTestClock, or %NULL if the testclock is not + a #GstTestClock, or %NULL if the testclock is not present. - a #GstHarness + a #GstHarness - This will set the harnessed #GstElement to %GST_STATE_PLAYING. + This will set the harnessed #GstElement to %GST_STATE_PLAYING. #GstElements without a sink-#GstPad and with the %GST_ELEMENT_FLAG_SOURCE flag set is considered a src #GstElement Non-src #GstElements (like sinks and filters) are automatically set to @@ -698,127 +738,134 @@ starting to produce buffers. Hence, for src #GstElement you must call gst_harness_play() explicitly. MT safe. + - a #GstHarness + a #GstHarness - Pulls a #GstBuffer from the #GAsyncQueue on the #GstHarness sinkpad. The pull + Pulls a #GstBuffer from the #GAsyncQueue on the #GstHarness sinkpad. The pull will timeout in 60 seconds. This is the standard way of getting a buffer from a harnessed #GstElement. MT safe. + - a #GstBuffer or %NULL if timed out. + a #GstBuffer or %NULL if timed out. - a #GstHarness + a #GstHarness - Pulls an #GstEvent from the #GAsyncQueue on the #GstHarness sinkpad. + Pulls an #GstEvent from the #GAsyncQueue on the #GstHarness sinkpad. Timeouts after 60 seconds similar to gst_harness_pull. MT safe. + - a #GstEvent or %NULL if timed out. + a #GstEvent or %NULL if timed out. - a #GstHarness + a #GstHarness - Pulls an #GstEvent from the #GAsyncQueue on the #GstHarness srcpad. + Pulls an #GstEvent from the #GAsyncQueue on the #GstHarness srcpad. Timeouts after 60 seconds similar to gst_harness_pull. MT safe. + - a #GstEvent or %NULL if timed out. + a #GstEvent or %NULL if timed out. - a #GstHarness + a #GstHarness - Pushes a #GstBuffer on the #GstHarness srcpad. The standard way of + Pushes a #GstBuffer on the #GstHarness srcpad. The standard way of interacting with an harnessed element. MT safe. + - a #GstFlowReturn with the result from the push + a #GstFlowReturn with the result from the push - a #GstHarness + a #GstHarness - a #GstBuffer to push + a #GstBuffer to push - Basically a gst_harness_push and a gst_harness_pull in one line. Reflects + Basically a gst_harness_push and a gst_harness_pull in one line. Reflects the fact that you often want to do exactly this in your test: Push one buffer in, and inspect the outcome. MT safe. + - a #GstBuffer or %NULL if timed out. + a #GstBuffer or %NULL if timed out. - a #GstHarness + a #GstHarness - a #GstBuffer to push + a #GstBuffer to push - Pushes an #GstEvent on the #GstHarness srcpad. + Pushes an #GstEvent on the #GstHarness srcpad. MT safe. + - a #gboolean with the result from the push + a #gboolean with the result from the push - a #GstHarness + a #GstHarness - a #GstEvent to push + a #GstEvent to push - Transfer data from the src-#GstHarness to the main-#GstHarness. It consists + Transfer data from the src-#GstHarness to the main-#GstHarness. It consists of 4 steps: 1: Make sure the src is started. (see: gst_harness_play) 2: Crank the clock (see: gst_harness_crank_single_clock_wait) @@ -826,179 +873,188 @@ of 4 steps: 4: Push the same #GstBuffer into the main-#GstHarness (see: gst_harness_push) MT safe. + - a #GstFlowReturn with the result of the push + a #GstFlowReturn with the result of the push - a #GstHarness + a #GstHarness - Transfer one #GstBuffer from the main-#GstHarness to the sink-#GstHarness. + Transfer one #GstBuffer from the main-#GstHarness to the sink-#GstHarness. See gst_harness_push_from_src for details. MT safe. + - a #GstFlowReturn with the result of the push + a #GstFlowReturn with the result of the push - a #GstHarness + a #GstHarness - Pushes an #GstEvent on the #GstHarness sinkpad. + Pushes an #GstEvent on the #GstHarness sinkpad. MT safe. + - a #gboolean with the result from the push + a #gboolean with the result from the push - a #GstHarness + a #GstHarness - a #GstEvent to push + a #GstEvent to push - Get the min latency reported by any harnessed #GstElement. + Get the min latency reported by any harnessed #GstElement. MT safe. + - a #GstClockTime with min latency + a #GstClockTime with min latency - a #GstHarness + a #GstHarness - A convenience function to allows you to call g_object_set on a #GstElement + A convenience function to allows you to call g_object_set on a #GstElement that are residing inside the #GstHarness, by using normal g_object_set syntax. MT safe. + - a #GstHarness + a #GstHarness - a #gchar with a #GstElementFactory name + a #gchar with a #GstElementFactory name - a #gchar with the first property name + a #gchar with the first property name - value for the first property, followed optionally by more + value for the first property, followed optionally by more name/value pairs, followed by %NULL - Setting this will make the harness block in the chain-function, and + Setting this will make the harness block in the chain-function, and then release when gst_harness_pull() or gst_harness_try_pull() is called. Can be useful when wanting to control a src-element that is not implementing gst_clock_id_wait() so it can't be controlled by the #GstTestClock, since it otherwise would produce buffers as fast as possible. MT safe. + - a #GstHarness + a #GstHarness - Sets the @GstHarness srcpad and sinkpad caps. + Sets the @GstHarness srcpad and sinkpad caps. MT safe. + - a #GstHarness + a #GstHarness - a #GstCaps to set on the harness srcpad + a #GstCaps to set on the harness srcpad - a #GstCaps to set on the harness sinkpad + a #GstCaps to set on the harness sinkpad - Sets the @GstHarness srcpad and sinkpad caps using strings. + Sets the @GstHarness srcpad and sinkpad caps using strings. MT safe. + - a #GstHarness + a #GstHarness - a @gchar describing a #GstCaps to set on the harness srcpad + a @gchar describing a #GstCaps to set on the harness srcpad - a @gchar describing a #GstCaps to set on the harness sinkpad + a @gchar describing a #GstCaps to set on the harness sinkpad - When set to %TRUE, instead of placing the buffers arriving from the harnessed + When set to %TRUE, instead of placing the buffers arriving from the harnessed #GstElement inside the sinkpads #GAsyncQueue, they are instead unreffed. MT safe. + - a #GstHarness + a #GstHarness - a #gboolean specifying to drop outgoing buffers or not + a #gboolean specifying to drop outgoing buffers or not - As a convenience, a src-harness will forward %GST_EVENT_STREAM_START, + As a convenience, a src-harness will forward %GST_EVENT_STREAM_START, %GST_EVENT_CAPS and %GST_EVENT_SEGMENT to the main-harness if forwarding is enabled, and forward any sticky-events from the main-harness to the sink-harness. It will also forward the %GST_QUERY_ALLOCATION. @@ -1013,786 +1069,822 @@ is providing data for the main-harness. Forwarding is enabled by default. MT safe. + - a #GstHarness + a #GstHarness - a #gboolean to enable/disable forwarding + a #gboolean to enable/disable forwarding - Sets the @allocator and @params to propose when receiving an allocation + Sets the @allocator and @params to propose when receiving an allocation query. MT safe. + - a #GstHarness + a #GstHarness - a #GstAllocator + a #GstAllocator - a #GstAllocationParams + a #GstAllocationParams - Sets the @GstHarness sinkpad caps. + Sets the @GstHarness sinkpad caps. MT safe. + - a #GstHarness + a #GstHarness - a #GstCaps to set on the harness sinkpad + a #GstCaps to set on the harness sinkpad - Sets the @GstHarness sinkpad caps using a string. + Sets the @GstHarness sinkpad caps using a string. MT safe. + - a #GstHarness + a #GstHarness - a @gchar describing a #GstCaps to set on the harness sinkpad + a @gchar describing a #GstCaps to set on the harness sinkpad - Sets the @GstHarness srcpad caps. This must be done before any buffers + Sets the @GstHarness srcpad caps. This must be done before any buffers can legally be pushed from the harness to the element. MT safe. + - a #GstHarness + a #GstHarness - a #GstCaps to set on the harness srcpad + a #GstCaps to set on the harness srcpad - Sets the @GstHarness srcpad caps using a string. This must be done before + Sets the @GstHarness srcpad caps using a string. This must be done before any buffers can legally be pushed from the harness to the element. MT safe. + - a #GstHarness + a #GstHarness - a @gchar describing a #GstCaps to set on the harness srcpad + a @gchar describing a #GstCaps to set on the harness srcpad - Advance the #GstTestClock to a specific time. + Advance the #GstTestClock to a specific time. MT safe. + - a @gboolean %TRUE if the time could be set. %FALSE if not. + a @gboolean %TRUE if the time could be set. %FALSE if not. - a #GstHarness + a #GstHarness - a #GstClockTime to advance the clock to + a #GstClockTime to advance the clock to - Sets the min latency reported by #GstHarness when receiving a latency-query + Sets the min latency reported by #GstHarness when receiving a latency-query + - a #GstHarness + a #GstHarness - a #GstClockTime specifying the latency + a #GstClockTime specifying the latency - Convenience that calls gst_harness_push_to_sink @pushes number of times. + Convenience that calls gst_harness_push_to_sink @pushes number of times. Will abort the pushing if any one push fails. MT safe. + - a #GstFlowReturn with the result of the push + a #GstFlowReturn with the result of the push - a #GstHarness + a #GstHarness - a #gint with the number of calls to gst_harness_push_to_sink + a #gint with the number of calls to gst_harness_push_to_sink - Transfer data from the src-#GstHarness to the main-#GstHarness. Similar to + Transfer data from the src-#GstHarness to the main-#GstHarness. Similar to gst_harness_push_from_src, this variant allows you to specify how many cranks and how many pushes to perform. This can be useful for both moving a lot of data at the same time, as well as cases when one crank does not equal one buffer to push and v.v. MT safe. + - a #GstFlowReturn with the result of the push + a #GstFlowReturn with the result of the push - a #GstHarness + a #GstHarness - a #gint with the number of calls to gst_harness_crank_single_clock_wait + a #gint with the number of calls to gst_harness_crank_single_clock_wait - a #gint with the number of calls to gst_harness_push + a #gint with the number of calls to gst_harness_push - Similar to what gst_harness_src_push does with #GstBuffers, this transfers + Similar to what gst_harness_src_push does with #GstBuffers, this transfers a #GstEvent from the src-#GstHarness to the main-#GstHarness. Note that some #GstEvents are being transferred automagically. Look at sink_forward_pad for details. MT safe. + - a #gboolean with the result of the push + a #gboolean with the result of the push - a #GstHarness + a #GstHarness - Start a custom stress-thread that will call your @callback for every + Start a custom stress-thread that will call your @callback for every iteration allowing you to do something nasty. MT safe. + - a #GstHarnessThread + a #GstHarnessThread - a #GstHarness + a #GstHarness - a #GFunc that is called initially and only once + a #GFunc that is called initially and only once - a #GFunc that is called as often as possible + a #GFunc that is called as often as possible - a #gpointer with custom data to pass to the @callback function + a #gpointer with custom data to pass to the @callback function - a #gulong specifying how long to sleep in (microseconds) for + a #gulong specifying how long to sleep in (microseconds) for each call to the @callback - Call g_object_set with @name and @value in intervals of @sleep microseconds + Call g_object_set with @name and @value in intervals of @sleep microseconds MT safe. + - a #GstHarnessThread + a #GstHarnessThread - a #GstHarness + a #GstHarness - a #gchar specifying a property name + a #gchar specifying a property name - a #GValue to set the property to + a #GValue to set the property to - a #gulong specifying how long to sleep in (microseconds) for + a #gulong specifying how long to sleep in (microseconds) for each g_object_set with @name and @value - Push a #GstBuffer in intervals of @sleep microseconds. + Push a #GstBuffer in intervals of @sleep microseconds. MT safe. + - a #GstHarnessThread + a #GstHarnessThread - a #GstHarness + a #GstHarness - a #GstCaps for the #GstBuffer + a #GstCaps for the #GstBuffer - a #GstSegment + a #GstSegment - a #GstBuffer to push + a #GstBuffer to push - a #gulong specifying how long to sleep in (microseconds) for + a #gulong specifying how long to sleep in (microseconds) for each call to gst_pad_push - Push a #GstBuffer returned by @func in intervals of @sleep microseconds. + Push a #GstBuffer returned by @func in intervals of @sleep microseconds. MT safe. + - a #GstHarnessThread + a #GstHarnessThread - a #GstHarness + a #GstHarness - a #GstCaps for the #GstBuffer + a #GstCaps for the #GstBuffer - a #GstSegment + a #GstSegment - a #GstHarnessPrepareBufferFunc function called before every iteration + a #GstHarnessPrepareBufferFunc function called before every iteration to prepare / create a #GstBuffer for pushing - a #gpointer with data to the #GstHarnessPrepareBufferFunc function + a #gpointer with data to the #GstHarnessPrepareBufferFunc function - a #GDestroyNotify that is called when thread is stopped + a #GDestroyNotify that is called when thread is stopped - a #gulong specifying how long to sleep in (microseconds) for + a #gulong specifying how long to sleep in (microseconds) for each call to gst_pad_push - Push the @event onto the harnessed #GstElement sinkpad in intervals of + Push the @event onto the harnessed #GstElement sinkpad in intervals of @sleep microseconds MT safe. + - a #GstHarnessThread + a #GstHarnessThread - a #GstHarness + a #GstHarness - a #GstEvent to push + a #GstEvent to push - a #gulong specifying how long to sleep in (microseconds) for + a #gulong specifying how long to sleep in (microseconds) for each gst_event_push with @event - Push a #GstEvent returned by @func onto the harnessed #GstElement sinkpad + Push a #GstEvent returned by @func onto the harnessed #GstElement sinkpad in intervals of @sleep microseconds. MT safe. + - a #GstHarnessThread + a #GstHarnessThread - a #GstHarness + a #GstHarness - a #GstHarnessPrepareEventFunc function called before every iteration + a #GstHarnessPrepareEventFunc function called before every iteration to prepare / create a #GstEvent for pushing - a #gpointer with data to the #GstHarnessPrepareEventFunc function + a #gpointer with data to the #GstHarnessPrepareEventFunc function - a #GDestroyNotify that is called when thread is stopped + a #GDestroyNotify that is called when thread is stopped - a #gulong specifying how long to sleep in (microseconds) for + a #gulong specifying how long to sleep in (microseconds) for each call to gst_pad_push - Push the @event onto the harnessed #GstElement srcpad in intervals of + Push the @event onto the harnessed #GstElement srcpad in intervals of @sleep microseconds. MT safe. + - a #GstHarnessThread + a #GstHarnessThread - a #GstHarness + a #GstHarness - a #GstEvent to push + a #GstEvent to push - a #gulong specifying how long to sleep in (microseconds) for + a #gulong specifying how long to sleep in (microseconds) for each gst_event_push with @event - Push a #GstEvent returned by @func onto the harnessed #GstElement srcpad + Push a #GstEvent returned by @func onto the harnessed #GstElement srcpad in intervals of @sleep microseconds. MT safe. + - a #GstHarnessThread + a #GstHarnessThread - a #GstHarness + a #GstHarness - a #GstHarnessPrepareEventFunc function called before every iteration + a #GstHarnessPrepareEventFunc function called before every iteration to prepare / create a #GstEvent for pushing - a #gpointer with data to the #GstHarnessPrepareEventFunc function + a #gpointer with data to the #GstHarnessPrepareEventFunc function - a #GDestroyNotify that is called when thread is stopped + a #GDestroyNotify that is called when thread is stopped - a #gulong specifying how long to sleep in (microseconds) for + a #gulong specifying how long to sleep in (microseconds) for each call to gst_pad_push - Call gst_element_request_pad in intervals of @sleep microseconds + Call gst_element_request_pad in intervals of @sleep microseconds MT safe. + - a #GstHarnessThread + a #GstHarnessThread - a #GstHarness + a #GstHarness - a #GstPadTemplate + a #GstPadTemplate - a #gchar + a #gchar - a #GstCaps + a #GstCaps - a #gboolean + a #gboolean - a #gulong specifying how long to sleep in (microseconds) for + a #gulong specifying how long to sleep in (microseconds) for each gst_element_request_pad - Change the state of your harnessed #GstElement from NULL to PLAYING and + Change the state of your harnessed #GstElement from NULL to PLAYING and back again, only pausing for @sleep microseconds every time. MT safe. + - a #GstHarnessThread + a #GstHarnessThread - a #GstHarness + a #GstHarness - a #gulong specifying how long to sleep in (microseconds) for + a #gulong specifying how long to sleep in (microseconds) for each state-change - Pulls all pending data from the harness and returns it as a single + Pulls all pending data from the harness and returns it as a single data slice. + - a pointer to the data, newly allocated. Free + a pointer to the data, newly allocated. Free with g_free() when no longer needed. Will return %NULL if there is no data. - a #GstHarness + a #GstHarness - the size of the data in bytes + the size of the data in bytes - Pulls all pending data from the harness and returns it as a single buffer. + Pulls all pending data from the harness and returns it as a single buffer. + - the data as a buffer. Unref with gst_buffer_unref() + the data as a buffer. Unref with gst_buffer_unref() when no longer needed. - a #GstHarness + a #GstHarness - Pulls all pending data from the harness and returns it as a single #GBytes. + Pulls all pending data from the harness and returns it as a single #GBytes. + - a pointer to the data, newly allocated. Free + a pointer to the data, newly allocated. Free with g_free() when no longer needed. - a #GstHarness + a #GstHarness - Tears down a @GstHarness, freeing all resources allocated using it. + Tears down a @GstHarness, freeing all resources allocated using it. MT safe. + - a #GstHarness + a #GstHarness - Pulls a #GstBuffer from the #GAsyncQueue on the #GstHarness sinkpad. Unlike + Pulls a #GstBuffer from the #GAsyncQueue on the #GstHarness sinkpad. Unlike gst_harness_pull this will not wait for any buffers if not any are present, and return %NULL straight away. MT safe. + - a #GstBuffer or %NULL if no buffers are present in the #GAsyncQueue + a #GstBuffer or %NULL if no buffers are present in the #GAsyncQueue - a #GstHarness + a #GstHarness - Pulls an #GstEvent from the #GAsyncQueue on the #GstHarness sinkpad. + Pulls an #GstEvent from the #GAsyncQueue on the #GstHarness sinkpad. See gst_harness_try_pull for details. MT safe. + - a #GstEvent or %NULL if no buffers are present in the #GAsyncQueue + a #GstEvent or %NULL if no buffers are present in the #GAsyncQueue - a #GstHarness + a #GstHarness - Pulls an #GstEvent from the #GAsyncQueue on the #GstHarness srcpad. + Pulls an #GstEvent from the #GAsyncQueue on the #GstHarness srcpad. See gst_harness_try_pull for details. MT safe. + - a #GstEvent or %NULL if no buffers are present in the #GAsyncQueue + a #GstEvent or %NULL if no buffers are present in the #GAsyncQueue - a #GstHarness + a #GstHarness - The number of #GstEvents currently in the #GstHarness srcpad #GAsyncQueue + The number of #GstEvents currently in the #GstHarness srcpad #GAsyncQueue MT safe. + - a #guint number of events in the queue + a #guint number of events in the queue - a #GstHarness + a #GstHarness - The total number of #GstEvents that has arrived on the #GstHarness srcpad + The total number of #GstEvents that has arrived on the #GstHarness srcpad This number includes events handled by the harness as well as events that have already been pulled out. MT safe. + - a #guint number of events received + a #guint number of events received - a #GstHarness + a #GstHarness - Sets the system #GstClock on the @GstHarness #GstElement + Sets the system #GstClock on the @GstHarness #GstElement MT safe. + - a #GstHarness + a #GstHarness - Sets the #GstTestClock on the #GstHarness #GstElement + Sets the #GstTestClock on the #GstHarness #GstElement MT safe. + - a #GstHarness + a #GstHarness - Waits for @timeout seconds until @waits number of #GstClockID waits is + Waits for @timeout seconds until @waits number of #GstClockID waits is registered with the #GstTestClock. Useful for writing deterministic tests, where you want to make sure that an expected number of waits have been reached. MT safe. + - a @gboolean %TRUE if the waits have been registered, %FALSE if not. + a @gboolean %TRUE if the waits have been registered, %FALSE if not. (Could be that it timed out waiting or that more waits than waits was found) - a #GstHarness + a #GstHarness - a #guint describing the numbers of #GstClockID registered with + a #guint describing the numbers of #GstClockID registered with the #GstTestClock - a #guint describing how many seconds to wait for @waits to be true + a #guint describing how many seconds to wait for @waits to be true - Creates a new harness. Works like gst_harness_new_with_padnames(), except it + Creates a new harness. Works like gst_harness_new_with_padnames(), except it assumes the #GstElement sinkpad is named "sink" and srcpad is named "src" MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #gchar describing the #GstElement name + a #gchar describing the #GstElement name - Creates a new empty harness. Use gst_harness_add_element_full() to add + Creates a new empty harness. Use gst_harness_add_element_full() to add an #GstElement to it. MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - Creates a new harness. + Creates a new harness. MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #GstElement to attach the harness to (transfer none) + a #GstElement to attach the harness to (transfer none) - a #GstStaticPadTemplate describing the harness srcpad. + a #GstStaticPadTemplate describing the harness srcpad. %NULL will not create a harness srcpad. - a #gchar with the name of the element + a #gchar with the name of the element sinkpad that is then linked to the harness srcpad. Can be a static or request or a sometimes pad that has been added. %NULL will not get/request a sinkpad from the element. (Like if the element is a src.) - a #GstStaticPadTemplate describing the harness sinkpad. + a #GstStaticPadTemplate describing the harness sinkpad. %NULL will not create a harness sinkpad. - a #gchar with the name of the element + a #gchar with the name of the element srcpad that is then linked to the harness sinkpad, similar to the @element_sinkpad_name. @@ -1800,46 +1892,48 @@ srcpad that is then linked to the harness sinkpad, similar to the - Creates a new harness, parsing the @launchline and putting that in a #GstBin, + Creates a new harness, parsing the @launchline and putting that in a #GstBin, and then attches the harness to the bin. MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #gchar describing a gst-launch type line + a #gchar describing a gst-launch type line - Creates a new harness. Works in the same way as gst_harness_new_full(), only + Creates a new harness. Works in the same way as gst_harness_new_full(), only that generic padtemplates are used for the harness src and sinkpads, which will be sufficient in most usecases. MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #GstElement to attach the harness to (transfer none) + a #GstElement to attach the harness to (transfer none) - a #gchar with the name of the element + a #gchar with the name of the element sinkpad that is then linked to the harness srcpad. %NULL does not attach a sinkpad - a #gchar with the name of the element + a #gchar with the name of the element srcpad that is then linked to the harness sinkpad. %NULL does not attach a srcpad @@ -1847,28 +1941,29 @@ srcpad - Creates a new harness. Works like gst_harness_new_with_element(), + Creates a new harness. Works like gst_harness_new_with_element(), except you specify the factoryname of the #GstElement MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #gchar describing the #GstElement name + a #gchar describing the #GstElement name - a #gchar with the name of the element + a #gchar with the name of the element sinkpad that is then linked to the harness srcpad. %NULL does not attach a sinkpad - a #gchar with the name of the element + a #gchar with the name of the element srcpad that is then linked to the harness sinkpad. %NULL does not attach a srcpad @@ -1876,87 +1971,145 @@ srcpad - Creates a new harness, like gst_harness_new_full(), except it + Creates a new harness, like gst_harness_new_full(), except it assumes the #GstElement sinkpad is named "sink" and srcpad is named "src" MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #gchar describing the #GstElement name + a #gchar describing the #GstElement name - a #GstStaticPadTemplate describing the harness srcpad. + a #GstStaticPadTemplate describing the harness srcpad. %NULL will not create a harness srcpad. - a #GstStaticPadTemplate describing the harness sinkpad. + a #GstStaticPadTemplate describing the harness sinkpad. %NULL will not create a harness sinkpad. - Stop the running #GstHarnessThread + Stop the running #GstHarnessThread MT safe. + - a #GstHarnessThread + a #GstHarnessThread + - a #GstHarness + a #GstHarness - user data + user data + - a #GstHarness + a #GstHarness - user data + user data + - Opaque handle representing a GstHarness stress testing thread. + Opaque handle representing a GstHarness stress testing thread. + + + + + + + + + + + + + + + + + wrapper for checks START_TEST + + + + test function name + + + - Opaque consistency checker handle. + Opaque consistency checker handle. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - GstTestClock is an implementation of #GstClock which has different + GstTestClock is an implementation of #GstClock which has different behaviour compared to #GstSystemClock. Time for #GstSystemClock advances according to the system time, while time for #GstTestClock changes only when gst_test_clock_set_time() or gst_test_clock_advance_time() are @@ -2100,40 +2253,44 @@ clock notification. Since #GstTestClock is only supposed to be used in unit tests it calls g_assert(), g_assert_cmpint() or g_assert_cmpuint() to validate all function arguments. This will highlight any issues with the unit test code itself. + - Creates a new test clock with its time set to zero. + Creates a new test clock with its time set to zero. MT safe. + - a #GstTestClock cast to #GstClock. + a #GstTestClock cast to #GstClock. - Creates a new test clock with its time set to the specified time. + Creates a new test clock with its time set to the specified time. MT safe. + - a #GstTestClock cast to #GstClock. + a #GstTestClock cast to #GstClock. - a #GstClockTime set to the desired start time of the clock. + a #GstClockTime set to the desired start time of the clock. - Finds the latest time inside the list. + Finds the latest time inside the list. MT safe. + - List + List of of pending #GstClockIDs @@ -2142,135 +2299,142 @@ MT safe. - Advances the time of the @test_clock by the amount given by @delta. The + Advances the time of the @test_clock by the amount given by @delta. The time of @test_clock is monotonically increasing, therefore providing a @delta which is negative or zero is a programming error. MT safe. + - a #GstTestClock for which to increase the time + a #GstTestClock for which to increase the time - a positive #GstClockTimeDiff to be added to the time of the clock + a positive #GstClockTimeDiff to be added to the time of the clock - A "crank" consists of three steps: + A "crank" consists of three steps: 1: Wait for a #GstClockID to be registered with the #GstTestClock. 2: Advance the #GstTestClock to the time the #GstClockID is waiting for. 3: Release the #GstClockID wait. A "crank" can be though of as the notion of manually driving the clock forward to its next logical step. + - %TRUE if the crank was successful, %FALSE otherwise. + %TRUE if the crank was successful, %FALSE otherwise. MT safe. - #GstTestClock to crank + #GstTestClock to crank - Retrieve the requested time for the next pending clock notification. + Retrieve the requested time for the next pending clock notification. MT safe. + - a #GstClockTime set to the time of the next pending clock + a #GstClockTime set to the time of the next pending clock notification. If no clock notifications have been requested %GST_CLOCK_TIME_NONE will be returned. - a #GstTestClock to fetch the next clock notification time for + a #GstTestClock to fetch the next clock notification time for - Checks whether @test_clock was requested to provide the clock notification + Checks whether @test_clock was requested to provide the clock notification given by @id. MT safe. + - %TRUE if the clock has been asked to provide the given clock + %TRUE if the clock has been asked to provide the given clock notification, %FALSE otherwise. - a #GstTestClock to ask if it provided the notification + a #GstTestClock to ask if it provided the notification - a #GstClockID clock notification + a #GstClockID clock notification - Determine the number of pending clock notifications that have been + Determine the number of pending clock notifications that have been requested from the @test_clock. MT safe. + - the number of pending clock notifications. + the number of pending clock notifications. - a #GstTestClock for which to count notifications + a #GstTestClock for which to count notifications - Determines if the @pending_id is the next clock notification scheduled to + Determines if the @pending_id is the next clock notification scheduled to be triggered given the current time of the @test_clock. MT safe. + - %TRUE if @pending_id is the next clock notification to be + %TRUE if @pending_id is the next clock notification to be triggered, %FALSE otherwise. - a #GstTestClock to check the clock notifications for + a #GstTestClock to check the clock notifications for - a #GstClockID clock + a #GstClockID clock notification to look for - Processes and releases the pending IDs in the list. + Processes and releases the pending IDs in the list. MT safe. + - #GstTestClock for which to process the pending IDs + #GstTestClock for which to process the pending IDs - List + List of pending #GstClockIDs @@ -2279,66 +2443,69 @@ MT safe. - MT safe. + MT safe. + - a #GstClockID containing the next pending clock + a #GstClockID containing the next pending clock notification. - a #GstTestClock for which to retrieve the next pending clock + a #GstTestClock for which to retrieve the next pending clock notification - Sets the time of @test_clock to the time given by @new_time. The time of + Sets the time of @test_clock to the time given by @new_time. The time of @test_clock is monotonically increasing, therefore providing a @new_time which is earlier or equal to the time of the clock as given by gst_clock_get_time() is a programming error. MT safe. + - a #GstTestClock of which to set the time + a #GstTestClock of which to set the time - a #GstClockTime later than that returned by gst_clock_get_time() + a #GstClockTime later than that returned by gst_clock_get_time() - Blocks until at least @count clock notifications have been requested from + Blocks until at least @count clock notifications have been requested from @test_clock, or the timeout expires. MT safe. + - a @gboolean %TRUE if the waits have been registered, %FALSE if not. + a @gboolean %TRUE if the waits have been registered, %FALSE if not. (Could be that it timed out waiting or that more waits than waits was found) - #GstTestClock for which to await having enough pending clock + #GstTestClock for which to await having enough pending clock - the number of pending clock notifications to wait for + the number of pending clock notifications to wait for - the timeout in milliseconds + the timeout in milliseconds - Address + Address of a #GList pointer variable to store the list of pending #GstClockIDs that expired, or %NULL @@ -2348,25 +2515,26 @@ MT safe. - Blocks until at least @count clock notifications have been requested from + Blocks until at least @count clock notifications have been requested from @test_clock. There is no timeout for this wait, see the main description of #GstTestClock. MT safe. + - #GstTestClock for which to await having enough pending clock + #GstTestClock for which to await having enough pending clock - the number of pending clock notifications to wait for + the number of pending clock notifications to wait for - Address + Address of a #GList pointer variable to store the list of pending #GstClockIDs that expired, or %NULL @@ -2376,41 +2544,43 @@ MT safe. - Waits until a clock notification is requested from @test_clock. There is no + Waits until a clock notification is requested from @test_clock. There is no timeout for this wait, see the main description of #GstTestClock. A reference to the pending clock notification is stored in @pending_id. MT safe. + - #GstTestClock for which to get the pending clock notification + #GstTestClock for which to get the pending clock notification - #GstClockID + #GstClockID with information about the pending clock notification - Blocks until at least @count clock notifications have been requested from + Blocks until at least @count clock notifications have been requested from @test_clock. There is no timeout for this wait, see the main description of #GstTestClock. use gst_test_clock_wait_for_multiple_pending_ids() instead. + - #GstTestClock for which to await having enough pending clock + #GstTestClock for which to await having enough pending clock - the number of pending clock notifications to wait for + the number of pending clock notifications to wait for @@ -2419,7 +2589,7 @@ with information about the pending clock notification - When a #GstTestClock is constructed it will have a certain start time set. + When a #GstTestClock is constructed it will have a certain start time set. If the clock was created using gst_test_clock_new_with_start_time() then this property contains the value of the @start_time argument. If gst_test_clock_new() was called the clock started at time zero, and thus @@ -2434,13 +2604,15 @@ this property contains the value 0. - The class of a #GstTestClock, which has no virtual methods to override. + The class of a #GstTestClock, which has no virtual methods to override. + - the parent class structure + the parent class structure + @@ -2476,122 +2648,129 @@ this property contains the value 0. - Sets up a data probe on the given pad which will raise assertions if the + Sets up a data probe on the given pad which will raise assertions if the data flow is inconsistent. + - %TRUE if the pad was added + %TRUE if the pad was added - The #GstStreamConsistency handle + The #GstStreamConsistency handle - The #GstPad on which the dataflow will be checked. + The #GstPad on which the dataflow will be checked. - Frees the allocated data and probes associated with @consist. + Frees the allocated data and probes associated with @consist. + - The #GstStreamConsistency to free. + The #GstStreamConsistency to free. - Sets up a data probe on the given pad which will raise assertions if the + Sets up a data probe on the given pad which will raise assertions if the data flow is inconsistent. + - A #GstStreamConsistency structure used to track data flow. + A #GstStreamConsistency structure used to track data flow. - The #GstPad on which the dataflow will be checked. + The #GstPad on which the dataflow will be checked. - Reset the stream checker's internal variables. + Reset the stream checker's internal variables. + - The #GstStreamConsistency to reset. + The #GstStreamConsistency to reset. - Creates a new harness. Works like gst_harness_new_with_padnames(), except it + Creates a new harness. Works like gst_harness_new_with_padnames(), except it assumes the #GstElement sinkpad is named "sink" and srcpad is named "src" MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #gchar describing the #GstElement name + a #gchar describing the #GstElement name - Creates a new empty harness. Use gst_harness_add_element_full() to add + Creates a new empty harness. Use gst_harness_add_element_full() to add an #GstElement to it. MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - Creates a new harness. + Creates a new harness. MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #GstElement to attach the harness to (transfer none) + a #GstElement to attach the harness to (transfer none) - a #GstStaticPadTemplate describing the harness srcpad. + a #GstStaticPadTemplate describing the harness srcpad. %NULL will not create a harness srcpad. - a #gchar with the name of the element + a #gchar with the name of the element sinkpad that is then linked to the harness srcpad. Can be a static or request or a sometimes pad that has been added. %NULL will not get/request a sinkpad from the element. (Like if the element is a src.) - a #GstStaticPadTemplate describing the harness sinkpad. + a #GstStaticPadTemplate describing the harness sinkpad. %NULL will not create a harness sinkpad. - a #gchar with the name of the element + a #gchar with the name of the element srcpad that is then linked to the harness sinkpad, similar to the @element_sinkpad_name. @@ -2599,46 +2778,48 @@ srcpad that is then linked to the harness sinkpad, similar to the - Creates a new harness, parsing the @launchline and putting that in a #GstBin, + Creates a new harness, parsing the @launchline and putting that in a #GstBin, and then attches the harness to the bin. MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #gchar describing a gst-launch type line + a #gchar describing a gst-launch type line - Creates a new harness. Works in the same way as gst_harness_new_full(), only + Creates a new harness. Works in the same way as gst_harness_new_full(), only that generic padtemplates are used for the harness src and sinkpads, which will be sufficient in most usecases. MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #GstElement to attach the harness to (transfer none) + a #GstElement to attach the harness to (transfer none) - a #gchar with the name of the element + a #gchar with the name of the element sinkpad that is then linked to the harness srcpad. %NULL does not attach a sinkpad - a #gchar with the name of the element + a #gchar with the name of the element srcpad that is then linked to the harness sinkpad. %NULL does not attach a srcpad @@ -2646,28 +2827,29 @@ srcpad - Creates a new harness. Works like gst_harness_new_with_element(), + Creates a new harness. Works like gst_harness_new_with_element(), except you specify the factoryname of the #GstElement MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #gchar describing the #GstElement name + a #gchar describing the #GstElement name - a #gchar with the name of the element + a #gchar with the name of the element sinkpad that is then linked to the harness srcpad. %NULL does not attach a sinkpad - a #gchar with the name of the element + a #gchar with the name of the element srcpad that is then linked to the harness sinkpad. %NULL does not attach a srcpad @@ -2675,42 +2857,151 @@ srcpad - Creates a new harness, like gst_harness_new_full(), except it + Creates a new harness, like gst_harness_new_full(), except it assumes the #GstElement sinkpad is named "sink" and srcpad is named "src" MT safe. + - a #GstHarness, or %NULL if the harness could + a #GstHarness, or %NULL if the harness could not be created - a #gchar describing the #GstElement name + a #gchar describing the #GstElement name - a #GstStaticPadTemplate describing the harness srcpad. + a #GstStaticPadTemplate describing the harness srcpad. %NULL will not create a harness srcpad. - a #GstStaticPadTemplate describing the harness sinkpad. + a #GstStaticPadTemplate describing the harness sinkpad. %NULL will not create a harness sinkpad. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Stop the running #GstHarnessThread + Stop the running #GstHarnessThread MT safe. + - a #GstHarnessThread + a #GstHarnessThread diff --git a/gir-files/GstGL-1.0.gir b/gir-files/GstGL-1.0.gir index 97d414dc3..c12cf93e2 100644 --- a/gir-files/GstGL-1.0.gir +++ b/gir-files/GstGL-1.0.gir @@ -10,272 +10,289 @@ and/or use gtk-doc annotations. --> - An option that can be activated on bufferpools to request OpenGL + An option that can be activated on bufferpools to request OpenGL synchronization metadata on buffers from the pool. + - String used for %GST_GL_TEXTURE_TARGET_2D as a #GstBufferPool pool option + String used for %GST_GL_TEXTURE_TARGET_2D as a #GstBufferPool pool option + - String used for %GST_GL_TEXTURE_TARGET_EXTERNAL_OES as a #GstBufferPool pool option + String used for %GST_GL_TEXTURE_TARGET_EXTERNAL_OES as a #GstBufferPool pool option + - String used for %GST_GL_TEXTURE_TARGET_RECTANGLE as a #GstBufferPool pool option + String used for %GST_GL_TEXTURE_TARGET_RECTANGLE as a #GstBufferPool pool option + - Name of the caps feature indicating the use of GL buffers + Name of the caps feature indicating the use of GL buffers + - Name of the caps feature for indicating the use of #GstGLMemory + Name of the caps feature for indicating the use of #GstGLMemory + - no API + no API - Desktop OpenGL up to and including 3.1. The + Desktop OpenGL up to and including 3.1. The compatibility profile when the OpenGL version is >= 3.2 - Desktop OpenGL >= 3.2 core profile + Desktop OpenGL >= 3.2 core profile - OpenGL ES 1.x + OpenGL ES 1.x - OpenGL ES 2.x and 3.x + OpenGL ES 2.x and 3.x - Any OpenGL API + Any OpenGL API + - The #GstGLAPI represented by @api_s + The #GstGLAPI represented by @api_s - a space seperated string of OpenGL apis + a space seperated string of OpenGL apis + - A space seperated string of the OpenGL api's enabled in @api + A space seperated string of the OpenGL api's enabled in @api - a #GstGLAPI to stringify + a #GstGLAPI to stringify + - the size of the struct (including and subclass data) + the size of the struct (including and subclass data) - a #GstGLAllocationParamsCopyFunc + a #GstGLAllocationParamsCopyFunc - a #GstGLAllocationParamsFreeFunc + a #GstGLAllocationParamsFreeFunc - allocation flags + allocation flags - the allocation size + the allocation size - the #GstAllocationParams + the #GstAllocationParams - a #GstGLContext + a #GstGLContext - a #GDestroyNotify + a #GDestroyNotify - argument to call @notify with + argument to call @notify with - the wrapped data pointer + the wrapped data pointer - the wrapped OpenGL handle + the wrapped OpenGL handle - + + - a copy of the #GstGLAllocationParams specified by + a copy of the #GstGLAllocationParams specified by @src or %NULL on failure - the #GstGLAllocationParams to initialize + the #GstGLAllocationParams to initialize - Copies the dynamically allocated data from @src to @dest. Direct subclasses + Copies the dynamically allocated data from @src to @dest. Direct subclasses should call this function in their own overriden copy function. + - the source #GstGLAllocationParams + the source #GstGLAllocationParams - the destination #GstGLAllocationParams + the destination #GstGLAllocationParams - Frees the #GstGLAllocationParams and all associated data. + Frees the #GstGLAllocationParams and all associated data. + - the #GstGLAllocationParams to initialize + the #GstGLAllocationParams to initialize - Frees the dynamically allocated data in @params. Direct subclasses + Frees the dynamically allocated data in @params. Direct subclasses should call this function in their own overriden free function. + - the source #GstGLAllocationParams + the source #GstGLAllocationParams - @notify will be called once for each allocated memory using these @params + @notify will be called once for each allocated memory using these @params when freeing the memory. + - whether the paramaters could be initialized + whether the paramaters could be initialized - the #GstGLAllocationParams to initialize + the #GstGLAllocationParams to initialize - the struct size of the implementation + the struct size of the implementation - some alloc flags + some alloc flags - a copy function + a copy function - a free function + a free function - a #GstGLContext + a #GstGLContext - the number of bytes to allocate. + the number of bytes to allocate. - a #GstAllocationParams to apply + a #GstAllocationParams to apply - a sysmem data pointer to initialize the allocation with + a sysmem data pointer to initialize the allocation with - a GL handle to initialize the allocation with + a GL handle to initialize the allocation with - user data to call @notify with + user data to call @notify with - a #GDestroyNotify + a #GDestroyNotify - Copies the parameters from @src into @dest. The subclass must compose copy + Copies the parameters from @src into @dest. The subclass must compose copy functions from the superclass. + - the source #GstGLAllocationParams to copy from + the source #GstGLAllocationParams to copy from - the source #GstGLAllocationParams to copy + the source #GstGLAllocationParams to copy - Free any dynamically allocated data. The subclass must call the superclass' + Free any dynamically allocated data. The subclass must call the superclass' free. + - a #GstGLAllocationParams + a #GstGLAllocationParams - #GstGLAsyncDebug an opaque structure and should only be accessed through the + #GstGLAsyncDebug an opaque structure and should only be accessed through the provided API. + @@ -310,184 +327,194 @@ provided API. - + - Frees @ad + Frees @ad + - a #GstGLAsyncDebug + a #GstGLAsyncDebug - freeze the debug output. While frozen, any call to + freeze the debug output. While frozen, any call to gst_gl_async_debug_output_log_msg() will not output any messages but subsequent calls to gst_gl_async_debug_store_log_msg() will overwrite previous messages. + - a #GstGLAsyncDebug + a #GstGLAsyncDebug - Initialize @ad. Intended for use with #GstGLAsyncDebug's that are embedded + Initialize @ad. Intended for use with #GstGLAsyncDebug's that are embedded in other structs. + - a #GstGLAsyncDebug + a #GstGLAsyncDebug - Outputs a previously stored debug message. + Outputs a previously stored debug message. + - the #GstGLAsyncDebug to store the message in + the #GstGLAsyncDebug to store the message in - Stores a debug message for later output by gst_gl_async_debug_output_log_msg() + Stores a debug message for later output by gst_gl_async_debug_output_log_msg() + - the #GstGLAsyncDebug to store the message in + the #GstGLAsyncDebug to store the message in - the #GstDebugCategory to output the message in + the #GstDebugCategory to output the message in - the #GstLevel + the #GstLevel - the file where the debug message originates from + the file where the debug message originates from - the function where the debug message originates from + the function where the debug message originates from - the line in @file where the debug message originates from + the line in @file where the debug message originates from - a #GObject to associate with the debug message + a #GObject to associate with the debug message - a printf style format string + a printf style format string - the list of arguments for @format + the list of arguments for @format - Stores a debug message for later output by gst_gl_async_debug_output_log_msg() + Stores a debug message for later output by gst_gl_async_debug_output_log_msg() + - the #GstGLAsyncDebug to store the message in + the #GstGLAsyncDebug to store the message in - the #GstDebugCategory to output the message in + the #GstDebugCategory to output the message in - the #GstLevel + the #GstLevel - the file where the debug message originates from + the file where the debug message originates from - the function where the debug message originates from + the function where the debug message originates from - the line in @file where the debug message originates from + the line in @file where the debug message originates from - a #GObject to associate with the debug message + a #GObject to associate with the debug message - a printf style format string + a printf style format string - the list of arguments for @format + the list of arguments for @format - unfreeze the debug output. See gst_gl_async_debug_freeze() for what freezing means + unfreeze the debug output. See gst_gl_async_debug_freeze() for what freezing means + - a #GstGLAsyncDebug + a #GstGLAsyncDebug - Unset any dynamically allocated data. Intended for use with + Unset any dynamically allocated data. Intended for use with #GstGLAsyncDebug's that are embedded in other structs. + - a #GstGLAsyncDebug + a #GstGLAsyncDebug - Free with gst_gl_async_debug_free() + Free with gst_gl_async_debug_free() + - a new #GstGLAsyncDebug + a new #GstGLAsyncDebug + @@ -498,11 +525,13 @@ in other structs. - #GstGLBaseFilter handles the nitty gritty details of retrieving an OpenGL + #GstGLBaseFilter handles the nitty gritty details of retrieving an OpenGL context. It also provided some wrappers around #GstBaseTransform's start(), stop() and set_caps() virtual methods that ensure an OpenGL context is available and current in the calling thread. + + @@ -519,6 +548,7 @@ is available and current in the calling thread. + @@ -529,6 +559,7 @@ is available and current in the calling thread. + @@ -539,13 +570,14 @@ is available and current in the calling thread. + - Whether an OpenGL context could be retrieved or created successfully + Whether an OpenGL context could be retrieved or created successfully - a #GstGLBaseFilter + a #GstGLBaseFilter @@ -557,23 +589,23 @@ is available and current in the calling thread. - the currently configured #GstGLDisplay + the currently configured #GstGLDisplay - the currently configured #GstGLContext + the currently configured #GstGLContext - the currently configured input #GstCaps + the currently configured input #GstCaps - the currently configured output #GstCaps + the currently configured output #GstCaps - + @@ -582,16 +614,18 @@ is available and current in the calling thread. - The base class for GStreamer GL Filter. + The base class for GStreamer GL Filter. + - the logical-OR of #GstGLAPI's supported by this element + the logical-OR of #GstGLAPI's supported by this element + @@ -604,6 +638,7 @@ is available and current in the calling thread. + @@ -616,6 +651,7 @@ is available and current in the calling thread. + @@ -633,24 +669,26 @@ is available and current in the calling thread. - + + - GstGLBaseMemory is a #GstMemory subclass providing the basis of support + GstGLBaseMemory is a #GstMemory subclass providing the basis of support for the mapping of GL buffers. Data is uploaded or downloaded from the GPU as is necessary. + - the parent object + the parent object - the #GstGLContext to use for GL operations + the #GstGLContext to use for GL operations @@ -684,127 +722,134 @@ Data is uploaded or downloaded from the GPU as is necessary. - + - Note: only intended for subclass usage to allocate the sytem memory buffer + Note: only intended for subclass usage to allocate the sytem memory buffer on demand. If there is already a non-NULL data pointer in @gl_mem->data, then this function imply returns TRUE. + - whether the system memory could be allocated + whether the system memory could be allocated - a #GstGLBaseMemory + a #GstGLBaseMemory - Initializes @mem with the required parameters + Initializes @mem with the required parameters + - the #GstGLBaseMemory to initialize + the #GstGLBaseMemory to initialize - the #GstAllocator to initialize with + the #GstAllocator to initialize with - the parent #GstMemory to initialize with + the parent #GstMemory to initialize with - the #GstGLContext to initialize with + the #GstGLContext to initialize with - the @GstAllocationParams to initialize with + the @GstAllocationParams to initialize with - the number of bytes to be allocated + the number of bytes to be allocated - user data to call @notify with + user data to call @notify with - a #GDestroyNotify + a #GDestroyNotify + - whether the copy suceeded. + whether the copy suceeded. - the source #GstGLBaseMemory + the source #GstGLBaseMemory - the destination #GstGLBaseMemory + the destination #GstGLBaseMemory - the offset to start at + the offset to start at - the number of bytes to copy + the number of bytes to copy + - a new #GstGLBaseMemory from @allocator with the requested @params. + a new #GstGLBaseMemory from @allocator with the requested @params. - a #GstGLBaseMemoryAllocator + a #GstGLBaseMemoryAllocator - the #GstGLAllocationParams to allocate the memory with + the #GstGLAllocationParams to allocate the memory with - Initializes the GL Base Memory allocator. It is safe to call this function + Initializes the GL Base Memory allocator. It is safe to call this function multiple times. This must be called before any other GstGLBaseMemory operation. + - Opaque #GstGLBaseMemoryAllocator struct + Opaque #GstGLBaseMemoryAllocator struct + + - a newly allocated #GstGLBaseMemory from @allocator and @params + a newly allocated #GstGLBaseMemory from @allocator and @params - a #GstGLBaseMemoryAllocator + a #GstGLBaseMemoryAllocator - the #GstGLAllocationParams to allocate the memory with + the #GstGLAllocationParams to allocate the memory with @@ -816,157 +861,164 @@ multiple times. This must be called before any other GstGLBaseMemory operation. - + - Note: not called with a GL context current + Note: not called with a GL context current + - a newly allocated #GstGLBaseMemory from @allocator and @params + a newly allocated #GstGLBaseMemory from @allocator and @params - a #GstGLBaseMemoryAllocator + a #GstGLBaseMemoryAllocator - the #GstGLAllocationParams to allocate the memory with + the #GstGLAllocationParams to allocate the memory with + - the parent class + the parent class - a #GstGLBaseMemoryAllocatorAllocFunction + a #GstGLBaseMemoryAllocatorAllocFunction - a #GstGLBaseMemoryAllocatorCreateFunction + a #GstGLBaseMemoryAllocatorCreateFunction - a #GstGLBaseMemoryAllocatorMapFunction + a #GstGLBaseMemoryAllocatorMapFunction - a #GstGLBaseMemoryAllocatorUnmapFunction + a #GstGLBaseMemoryAllocatorUnmapFunction - a #GstGLBaseMemoryAllocatorCopyFunction + a #GstGLBaseMemoryAllocatorCopyFunction - a #GstGLBaseMemoryAllocatorDestroyFunction + a #GstGLBaseMemoryAllocatorDestroyFunction - + - Also see gst_memory_copy(); + Also see gst_memory_copy(); + - the newly copied #GstGLMemory or %NULL + the newly copied #GstGLMemory or %NULL - a #GstGLBaseMemory + a #GstGLBaseMemory - the offset to copy from + the offset to copy from - the number of bytes to copy + the number of bytes to copy - As this virtual method is called with an OpenGL context current, use this + As this virtual method is called with an OpenGL context current, use this function to allocate and OpenGL resources needed for your application + - whether the creation succeeded + whether the creation succeeded - a #GstGLBaseMemory + a #GstGLBaseMemory - Destroy any resources allocated throughout the lifetime of @mem + Destroy any resources allocated throughout the lifetime of @mem + - a #GstGLBaseMemory + a #GstGLBaseMemory - Also see gst_memory_map(); + Also see gst_memory_map(); + - the mapped pointer + the mapped pointer - a #GstGLBaseMemory + a #GstGLBaseMemory - a #GstMapInfo to map with + a #GstMapInfo to map with - the size to map + the size to map - Also see gst_memory_unmap(); + Also see gst_memory_unmap(); + - a #GstGLBaseMemory + a #GstGLBaseMemory - a #GstMapInfo to map with + a #GstMapInfo to map with - generic faliure + generic faliure - the implementation is too old and doesn't + the implementation is too old and doesn't implement enough features - a resource could not be found + a resource could not be found @@ -976,115 +1028,121 @@ function to allocate and OpenGL resources needed for your application - the texture needs downloading + the texture needs downloading to the data pointer - the data pointer needs uploading + the data pointer needs uploading to the texture - GstGLBuffer is a #GstMemory subclass providing support for the mapping of + GstGLBuffer is a #GstMemory subclass providing support for the mapping of GL buffers. Data is uploaded or downloaded from the GPU as is necessary. + - the parent object + the parent object - the buffer id for this memory + the buffer id for this memory - the OpenGL target of this texture for binding purposes + the OpenGL target of this texture for binding purposes - the OpenGL usage hints this buffer was created with + the OpenGL usage hints this buffer was created with - Initializes the GL Buffer allocator. It is safe to call this function + Initializes the GL Buffer allocator. It is safe to call this function multiple times. This must be called before any other #GstGLBuffer operation. + + - parent object + parent object - the OpenGL target to bind the buffer to + the OpenGL target to bind the buffer to - the OpenGL usage hint to create the buffer with + the OpenGL usage hint to create the buffer with - + + - a new #GstGLBufferAllocationParams for allocating OpenGL buffer + a new #GstGLBufferAllocationParams for allocating OpenGL buffer objects - a #GstGLContext + a #GstGLContext - the size in bytes to allocate + the size in bytes to allocate - the #GstAllocationParams for @tex_id + the #GstAllocationParams for @tex_id - the OpenGL target to allocate + the OpenGL target to allocate - the OpenGL usage hint to allocate with + the OpenGL usage hint to allocate with - Opaque #GstGLBufferAllocator struct + Opaque #GstGLBufferAllocator struct + - + - The #GstGLBufferAllocatorClass only contains private data + The #GstGLBufferAllocatorClass only contains private data + - + - a #GstGLBufferPool is an object that allocates buffers with #GstGLBaseMemory + a #GstGLBufferPool is an object that allocates buffers with #GstGLBaseMemory A #GstGLBufferPool is created with gst_gl_buffer_pool_new() @@ -1092,14 +1150,16 @@ A #GstGLBufferPool is created with gst_gl_buffer_pool_new() %GST_BUFFER_POOL_OPTION_VIDEO_META, the VideoAligment buffer pool option %GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT as well as the OpenGL specific %GST_BUFFER_POOL_OPTION_GL_SYNC_META buffer pool option. + + - a #GstBufferPool that allocates buffers with #GstGLMemory + a #GstBufferPool that allocates buffers with #GstGLMemory - the #GstGLContext to use + the #GstGLContext to use @@ -1114,26 +1174,28 @@ A #GstGLBufferPool is created with gst_gl_buffer_pool_new() - + - The #GstGLBufferPoolClass structure contains only private data + The #GstGLBufferPoolClass structure contains only private data + - + + - #GstGLColorConvert is an object that converts between color spaces and/or + #GstGLColorConvert is an object that converts between color spaces and/or formats using OpenGL Shaders. A #GstGLColorConvert can be created with gst_gl_color_convert_new(), the @@ -1142,119 +1204,126 @@ conversion performed with gst_gl_color_convert_perform(). The glcolorconvertelement provides a GStreamer element that uses #GstGLColorConvert to convert between video formats and color spaces. + + - a new #GstGLColorConvert object + a new #GstGLColorConvert object - a #GstGLContext + a #GstGLContext - Provides an implementation of #GstBaseTransformClass.fixate_caps() + Provides an implementation of #GstBaseTransformClass.fixate_caps() + - the fixated #GstCaps + the fixated #GstCaps - a #GstGLContext to use for transforming @caps + a #GstGLContext to use for transforming @caps - a #GstPadDirection + a #GstPadDirection - the #GstCaps of @direction + the #GstCaps of @direction - the #GstCaps to fixate + the #GstCaps to fixate - Provides an implementation of #GstBaseTransformClass.transform_caps() + Provides an implementation of #GstBaseTransformClass.transform_caps() + - the converted #GstCaps + the converted #GstCaps - a #GstGLContext to use for transforming @caps + a #GstGLContext to use for transforming @caps - a #GstPadDirection + a #GstPadDirection - the #GstCaps to transform + the #GstCaps to transform - a set of filter #GstCaps + a set of filter #GstCaps - Provides an implementation of #GstBaseTransformClass.decide_allocation() + Provides an implementation of #GstBaseTransformClass.decide_allocation() + - whether the allocation parameters were successfully chosen + whether the allocation parameters were successfully chosen - a #GstGLColorConvert + a #GstGLColorConvert - a completed ALLOCATION #GstQuery + a completed ALLOCATION #GstQuery - Converts the data contained by @inbuf using the formats specified by the + Converts the data contained by @inbuf using the formats specified by the #GstCaps passed to gst_gl_color_convert_set_caps() + - a converted #GstBuffer or %NULL + a converted #GstBuffer or %NULL - a #GstGLColorConvert + a #GstGLColorConvert - the #GstGLMemory filled #GstBuffer to convert + the #GstGLMemory filled #GstBuffer to convert - Initializes @convert with the information required for conversion. + Initializes @convert with the information required for conversion. + - a #GstGLColorConvert + a #GstGLColorConvert - input #GstCaps + input #GstCaps - output #GstCaps + output #GstCaps @@ -1293,198 +1362,211 @@ The glcolorconvertelement provides a GStreamer element that uses - + - The #GstGLColorConvertClass struct only contains private data + The #GstGLColorConvertClass struct only contains private data + - + + - #GstGLContext wraps an OpenGL context object in a uniform API. As a result + #GstGLContext wraps an OpenGL context object in a uniform API. As a result of the limitation on OpenGL context, this object is not thread safe unless specified and must only be activated in a single thread. + - Create a new #GstGLContext with the specified @display + Create a new #GstGLContext with the specified @display + - a new #GstGLContext + a new #GstGLContext - a #GstGLDisplay + a #GstGLDisplay - Wraps an existing OpenGL context into a #GstGLContext. + Wraps an existing OpenGL context into a #GstGLContext. Note: The caller is responsible for ensuring that the OpenGL context represented by @handle stays alive while the returned #GstGLContext is active. + - a #GstGLContext wrapping @handle + a #GstGLContext wrapping @handle - a #GstGLDisplay + a #GstGLDisplay - the OpenGL context to wrap + the OpenGL context to wrap - a #GstGLPlatform specifying the type of context in @handle + a #GstGLPlatform specifying the type of context in @handle - a #GstGLAPI containing the available OpenGL apis in @handle + a #GstGLAPI containing the available OpenGL apis in @handle - A default implementation of the various GetProcAddress functions that looks + A default implementation of the various GetProcAddress functions that looks for @name in the OpenGL shared libraries or in the current process. See also: gst_gl_context_get_proc_address() + - an address pointing to @name or %NULL + an address pointing to @name or %NULL - a #GstGLAPI + a #GstGLAPI - then function to get the address of + then function to get the address of - See also gst_gl_context_activate(). + See also gst_gl_context_activate(). + - the #GstGLContext active in the current thread or %NULL + the #GstGLContext active in the current thread or %NULL - If an error occurs, @major and @minor are not modified and %GST_GL_API_NONE is + If an error occurs, @major and @minor are not modified and %GST_GL_API_NONE is returned. + - The version supported by the OpenGL context current in the calling + The version supported by the OpenGL context current in the calling thread or %GST_GL_API_NONE - the #GstGLPlatform to retrieve the API for + the #GstGLPlatform to retrieve the API for - the major version + the major version - the minor version + the minor version + - The OpenGL context handle current in the calling thread or %NULL + The OpenGL context handle current in the calling thread or %NULL - a #GstGLPlatform specifying the type of context to retrieve + a #GstGLPlatform specifying the type of context to retrieve - Attempts to use the @context_type specific GetProcAddress implementations + Attempts to use the @context_type specific GetProcAddress implementations to retreive @name. See also gst_gl_context_get_proc_address(). + - a function pointer for @name, or %NULL + a function pointer for @name, or %NULL - a #GstGLPlatform + a #GstGLPlatform - a #GstGLAPI + a #GstGLAPI - the name of the function to retrieve + the name of the function to retrieve - (De)activate the OpenGL context represented by this @context. + (De)activate the OpenGL context represented by this @context. In OpenGL terms, calls eglMakeCurrent or similar with this context and the currently set window. See gst_gl_context_set_window() for details. + - Whether the activation succeeded + Whether the activation succeeded - a #GstGLContext + a #GstGLContext - %TRUE to activate, %FALSE to deactivate + %TRUE to activate, %FALSE to deactivate - Check for an OpenGL @feature being supported. + Check for an OpenGL @feature being supported. Note: Most features require that the context be created before it is possible to determine their existence and so will fail if that is not the case. + - Whether @feature is supported by @context + Whether @feature is supported by @context - a #GstGLContext + a #GstGLContext - a platform specific feature + a platform specific feature + @@ -1495,6 +1577,7 @@ case. + @@ -1511,6 +1594,7 @@ case. + @@ -1521,210 +1605,222 @@ case. - Get the currently enabled OpenGL api. + Get the currently enabled OpenGL api. The currently available API may be limited by the #GstGLDisplay in use and/or the #GstGLWindow chosen. + - the available OpenGL api + the available OpenGL api - a #GstGLContext + a #GstGLContext - Gets the backing OpenGL context used by @context. + Gets the backing OpenGL context used by @context. + - The platform specific backing OpenGL context + The platform specific backing OpenGL context - a #GstGLContext: + a #GstGLContext: - Gets the OpenGL platform that used by @context. + Gets the OpenGL platform that used by @context. + - The platform specific backing OpenGL context + The platform specific backing OpenGL context - a #GstGLContext: + a #GstGLContext: - Get the version of the OpenGL platform (GLX, EGL, etc) used. Only valid + Get the version of the OpenGL platform (GLX, EGL, etc) used. Only valid after a call to gst_gl_context_create(). + - a #GstGLContext + a #GstGLContext - return for the major version + return for the major version - return for the minor version + return for the minor version - Swap the front and back buffers on the window attached to @context. + Swap the front and back buffers on the window attached to @context. This will display the frame on the next refresh cycle. + - a #GstGLContext + a #GstGLContext - (De)activate the OpenGL context represented by this @context. + (De)activate the OpenGL context represented by this @context. In OpenGL terms, calls eglMakeCurrent or similar with this context and the currently set window. See gst_gl_context_set_window() for details. + - Whether the activation succeeded + Whether the activation succeeded - a #GstGLContext + a #GstGLContext - %TRUE to activate, %FALSE to deactivate + %TRUE to activate, %FALSE to deactivate - Note: This will always fail for two wrapped #GstGLContext's + Note: This will always fail for two wrapped #GstGLContext's + - whether @context and @other_context are able to share OpenGL + whether @context and @other_context are able to share OpenGL resources. - a #GstGLContext + a #GstGLContext - another #GstGLContext + another #GstGLContext - Check for an OpenGL @feature being supported. + Check for an OpenGL @feature being supported. Note: Most features require that the context be created before it is possible to determine their existence and so will fail if that is not the case. + - Whether @feature is supported by @context + Whether @feature is supported by @context - a #GstGLContext + a #GstGLContext - a platform specific feature + a platform specific feature + - whether whether the current framebuffer is complete + whether whether the current framebuffer is complete - a #GstGLContext + a #GstGLContext - the GL value of the framebuffer target, GL_FRAMEBUFFER, + the GL value of the framebuffer target, GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER, GL_DRAW_FRAMEBUFFER + - whether OpenGL context implements the required api and specified + whether OpenGL context implements the required api and specified version. - a #GstGLContext + a #GstGLContext - api type required + api type required - major version required + major version required - minor version required + minor version required - Unbind the current framebuffer + Unbind the current framebuffer + - a #GstGLContext + a #GstGLContext - Clear's the currently set shader from the GL state machine. + Clear's the currently set shader from the GL state machine. Note: must be called in the GL thread. + - a #GstGLContext + a #GstGLContext - Creates an OpenGL context with the specified @other_context as a context + Creates an OpenGL context with the specified @other_context as a context to share shareable OpenGL objects with. See the OpenGL specification for what is shared between OpenGL contexts. @@ -1732,149 +1828,158 @@ If an error occurs, and @error is not %NULL, then error will contain details of the error and %FALSE will be returned. Should only be called once. + - whether the context could successfully be created + whether the context could successfully be created - a #GstGLContext: + a #GstGLContext: - a #GstGLContext to share OpenGL objects with + a #GstGLContext to share OpenGL objects with - Destroys an OpenGL context. + Destroys an OpenGL context. Should only be called after gst_gl_context_create() has been successfully called for this context. + - a #GstGLContext: + a #GstGLContext: - Fills @context's info (version, extensions, vtable, etc) from the GL + Fills @context's info (version, extensions, vtable, etc) from the GL context in the current thread. Typically used with wrapped contexts to allow wrapped contexts to be used as regular #GstGLContext's. + - a #GstGLContext: + a #GstGLContext: + - the #GstGLDisplay associated with this @context + the #GstGLDisplay associated with this @context - a #GstGLContext: + a #GstGLContext: - Get the currently enabled OpenGL api. + Get the currently enabled OpenGL api. The currently available API may be limited by the #GstGLDisplay in use and/or the #GstGLWindow chosen. + - the available OpenGL api + the available OpenGL api - a #GstGLContext + a #GstGLContext - Gets the backing OpenGL context used by @context. + Gets the backing OpenGL context used by @context. + - The platform specific backing OpenGL context + The platform specific backing OpenGL context - a #GstGLContext: + a #GstGLContext: - Gets the OpenGL platform that used by @context. + Gets the OpenGL platform that used by @context. + - The platform specific backing OpenGL context + The platform specific backing OpenGL context - a #GstGLContext: + a #GstGLContext: - Get the version of the OpenGL platform (GLX, EGL, etc) used. Only valid + Get the version of the OpenGL platform (GLX, EGL, etc) used. Only valid after a call to gst_gl_context_create(). + - a #GstGLContext + a #GstGLContext - return for the major version + return for the major version - return for the minor version + return for the minor version - Returns the OpenGL version implemented by @context. See + Returns the OpenGL version implemented by @context. See gst_gl_context_get_gl_api() for retreiving the OpenGL api implemented by @context. + - a #GstGLContext + a #GstGLContext - resulting major version + resulting major version - resulting minor version + resulting minor version - Get a function pointer to a specified opengl function, @name. If the the + Get a function pointer to a specified opengl function, @name. If the the specific function does not exist, NULL is returned instead. Platform specfic functions (names starting 'egl', 'glX', 'wgl', etc) can also @@ -1893,183 +1998,194 @@ e.g. |[<!-- language="C" --> void (GSTGLAPI *PFN_glGetIntegerv) (GLenum name, GLint * ret) ]| + - a function pointer or %NULL + a function pointer or %NULL - a #GstGLContext + a #GstGLContext - an opengl function name + an opengl function name + - The #GThread, @context is current in or NULL + The #GThread, @context is current in or NULL - a #GstGLContext + a #GstGLContext + - the currently set window + the currently set window - a #GstGLContext + a #GstGLContext + - Whether the #GstGLContext has been shared with another #GstGLContext + Whether the #GstGLContext has been shared with another #GstGLContext - a #GstGLContext + a #GstGLContext - Will internally set @context as shared with @share + Will internally set @context as shared with @share + - a wrapped #GstGLContext + a wrapped #GstGLContext - another #GstGLContext + another #GstGLContext - Set's the current window on @context to @window. The window can only be + Set's the current window on @context to @window. The window can only be changed before gst_gl_context_create() has been called and the @window is not already running. + - Whether the window was successfully updated + Whether the window was successfully updated - a #GstGLContext + a #GstGLContext - a #GstGLWindow + a #GstGLWindow + - Whether @context supports the combination of @version with @profile + Whether @context supports the combination of @version with @profile - a #GstGLContext + a #GstGLContext - a #GstGLSLVersion + a #GstGLSLVersion - a #GstGLSLProfile + a #GstGLSLProfile + - whether @context supports the 'precision' specifier in GLSL shaders + whether @context supports the 'precision' specifier in GLSL shaders - a #GstGLContext + a #GstGLContext - a #GstGLSLVersion + a #GstGLSLVersion - a #GstGLSLProfile + a #GstGLSLProfile + - whether @context supports the 'precision highp' specifier in GLSL shaders + whether @context supports the 'precision highp' specifier in GLSL shaders - a #GstGLContext + a #GstGLContext - a #GstGLSLVersion + a #GstGLSLVersion - a #GstGLSLProfile + a #GstGLSLProfile - Swap the front and back buffers on the window attached to @context. + Swap the front and back buffers on the window attached to @context. This will display the frame on the next refresh cycle. + - a #GstGLContext + a #GstGLContext - Execute @func in the OpenGL thread of @context with @data + Execute @func in the OpenGL thread of @context with @data MT-safe + - a #GstGLContext + a #GstGLContext - a #GstGLContextThreadFunc + a #GstGLContextThreadFunc - user data to call @func with + user data to call @func with @@ -2084,24 +2200,26 @@ MT-safe - a list of OpenGL function pointers + a list of OpenGL function pointers - + + + @@ -2109,13 +2227,14 @@ MT-safe + - The platform specific backing OpenGL context + The platform specific backing OpenGL context - a #GstGLContext: + a #GstGLContext: @@ -2123,13 +2242,14 @@ MT-safe + - the available OpenGL api + the available OpenGL api - a #GstGLContext + a #GstGLContext @@ -2137,13 +2257,14 @@ MT-safe + - The platform specific backing OpenGL context + The platform specific backing OpenGL context - a #GstGLContext: + a #GstGLContext: @@ -2151,6 +2272,7 @@ MT-safe + @@ -2166,17 +2288,18 @@ MT-safe + - Whether the activation succeeded + Whether the activation succeeded - a #GstGLContext + a #GstGLContext - %TRUE to activate, %FALSE to deactivate + %TRUE to activate, %FALSE to deactivate @@ -2184,6 +2307,7 @@ MT-safe + @@ -2196,6 +2320,7 @@ MT-safe + @@ -2214,6 +2339,7 @@ MT-safe + @@ -2226,12 +2352,13 @@ MT-safe + - a #GstGLContext + a #GstGLContext @@ -2239,17 +2366,18 @@ MT-safe + - Whether @feature is supported by @context + Whether @feature is supported by @context - a #GstGLContext + a #GstGLContext - a platform specific feature + a platform specific feature @@ -2257,50 +2385,51 @@ MT-safe + - a #GstGLContext + a #GstGLContext - return for the major version + return for the major version - return for the minor version + return for the minor version - + - OpenGL context errors. + OpenGL context errors. - Failed for an unspecified reason + Failed for an unspecified reason - The configuration requested is not correct + The configuration requested is not correct - The OpenGL API requested is not correct + The OpenGL API requested is not correct - The OpenGL libraries are too old + The OpenGL libraries are too old - glXCreateContext (or similar) failed + glXCreateContext (or similar) failed - A resource is not available + A resource is not available @@ -2309,25 +2438,27 @@ MT-safe + - Represents a function to run in the GL thread with @context and @data + Represents a function to run in the GL thread with @context and @data + - a #GstGLContext + a #GstGLContext - user data + user data - #GstGLDisplay represents a connection to the underlying windowing system. + #GstGLDisplay represents a connection to the underlying windowing system. Elements are required to make use of #GstContext to share and propogate a #GstGLDisplay. @@ -2347,40 +2478,45 @@ platform and window system specific functionality. > other toolkit/library functionality is accessed. Failure to do so could > result in sudden application abortion during execution. The most notably > example of such a function is X11's XInitThreads\(). + + - a new #GstGLDisplay + a new #GstGLDisplay - It requires the display's object lock to be held. + It requires the display's object lock to be held. + - a new #GstGLWindow for @display or %NULL. + a new #GstGLWindow for @display or %NULL. - a #GstGLDisplay + a #GstGLDisplay + - the native handle for the display + the native handle for the display - a #GstGLDisplay + a #GstGLDisplay + - whether @context was successfully added. %FALSE may be returned + whether @context was successfully added. %FALSE may be returned if there already exists another context for @context's active thread. Must be called with the object lock held. @@ -2388,107 +2524,113 @@ Must be called with the object lock held. - a #GstGLDisplay + a #GstGLDisplay - a #GstGLContext + a #GstGLContext - It requires the display's object lock to be held. + It requires the display's object lock to be held. + - whether a new context could be created. + whether a new context could be created. - a #GstGLDisplay + a #GstGLDisplay - other #GstGLContext to share resources with. + other #GstGLContext to share resources with. - resulting #GstGLContext + resulting #GstGLContext - It requires the display's object lock to be held. + It requires the display's object lock to be held. + - a new #GstGLWindow for @display or %NULL. + a new #GstGLWindow for @display or %NULL. - a #GstGLDisplay + a #GstGLDisplay - limit the use of OpenGL to the requested @gl_api. This is intended to allow + limit the use of OpenGL to the requested @gl_api. This is intended to allow application and elements to request a specific set of OpenGL API's based on what they support. See gst_gl_context_get_gl_api() for the retreiving the API supported by a #GstGLContext. + - a #GstGLDisplay + a #GstGLDisplay - a #GstGLAPI to filter with + a #GstGLAPI to filter with - Execute @compare_func over the list of windows stored by @display. The + Execute @compare_func over the list of windows stored by @display. The first argment to @compare_func is the #GstGLWindow being checked and the second argument is @data. + - The first #GstGLWindow that causes a match + The first #GstGLWindow that causes a match from @compare_func - a #GstGLDisplay + a #GstGLDisplay - some data to pass to @compare_func + some data to pass to @compare_func - a comparison function to run + a comparison function to run - see gst_gl_display_filter_gl_api() for what the returned value represents + see gst_gl_display_filter_gl_api() for what the returned value represents + - the #GstGLAPI configured for @display + the #GstGLAPI configured for @display - a #GstGLDisplay + a #GstGLDisplay + @@ -2499,59 +2641,63 @@ second argument is @data. + - the #GstGLContext current on @thread or %NULL + the #GstGLContext current on @thread or %NULL Must be called with the object lock held. - a #GstGLDisplay + a #GstGLDisplay - a #GThread + a #GThread + - the native handle for the display + the native handle for the display - a #GstGLDisplay + a #GstGLDisplay + - the #GstGLDisplayType of @display + the #GstGLDisplayType of @display - a #GstGLDisplay + a #GstGLDisplay + - if @window could be removed from @display + if @window could be removed from @display - a #GstGLDisplay + a #GstGLDisplay - a #GstGLWindow to remove + a #GstGLWindow to remove @@ -2580,34 +2726,36 @@ Must be called with the object lock held. - Overrides the @GstGLContext creation mechanism. + Overrides the @GstGLContext creation mechanism. It can be called in any thread and it is emitted with display's object lock held. - the new context. + the new context. - other context to share resources with. + other context to share resources with. + + - the native handle for the display + the native handle for the display - a #GstGLDisplay + a #GstGLDisplay @@ -2615,35 +2763,39 @@ display's object lock held. + - a new #GstGLWindow for @display or %NULL. + a new #GstGLWindow for @display or %NULL. - a #GstGLDisplay + a #GstGLDisplay - + - the contents of a #GstGLDisplayEGL are private and should only be accessed + the contents of a #GstGLDisplayEGL are private and should only be accessed through the provided API + - Create a new #GstGLDisplayEGL using the default EGL_DEFAULT_DISPLAY. + Create a new #GstGLDisplayEGL using the default EGL_DEFAULT_DISPLAY. + - a new #GstGLDisplayEGL or %NULL + a new #GstGLDisplayEGL or %NULL + @@ -2654,20 +2806,21 @@ through the provided API - Attempts to create a new #EGLDisplay from @display. If @type is + Attempts to create a new #EGLDisplay from @display. If @type is %GST_GL_DISPLAY_TYPE_ANY, then @display must be 0. @type must not be %GST_GL_DISPLAY_TYPE_NONE. + - A #EGLDisplay or %EGL_NO_DISPLAY + A #EGLDisplay or %EGL_NO_DISPLAY - a #GstGLDisplayType + a #GstGLDisplayType - pointer to a display (or 0) + pointer to a display (or 0) @@ -2682,81 +2835,86 @@ through the provided API - + + - + + - no display type + no display type - X11 display + X11 display - Wayland display + Wayland display - Cocoa display + Cocoa display - Win32 display + Win32 display - Dispmanx display + Dispmanx display - EGL display + EGL display - Vivante Framebuffer display + Vivante Framebuffer display - Mesa3D GBM display + Mesa3D GBM display - any display type + any display type - the contents of a #GstGLDisplayWayland are private and should only be accessed + the contents of a #GstGLDisplayWayland are private and should only be accessed through the provided API + - Create a new #GstGLDisplayWayland from the wayland display name. See wl_display_connect() + Create a new #GstGLDisplayWayland from the wayland display name. See wl_display_connect() for details on what is a valid name. + - a new #GstGLDisplayWayland or %NULL + a new #GstGLDisplayWayland or %NULL - a display name + a display name - Creates a new display connection from a wl_display Display. + Creates a new display connection from a wl_display Display. + - a new #GstGLDisplayWayland + a new #GstGLDisplayWayland - an existing, wayland display + an existing, wayland display @@ -2783,47 +2941,51 @@ for details on what is a valid name. - + + - + - the contents of a #GstGLDisplayX11 are private and should only be accessed + the contents of a #GstGLDisplayX11 are private and should only be accessed through the provided API + - Create a new #GstGLDisplayX11 from the x11 display name. See XOpenDisplay() + Create a new #GstGLDisplayX11 from the x11 display name. See XOpenDisplay() for details on what is a valid name. + - a new #GstGLDisplayX11 or %NULL + a new #GstGLDisplayX11 or %NULL - a display name + a display name - Creates a new display connection from a X11 Display. + Creates a new display connection from a X11 Display. + - a new #GstGLDisplayX11 + a new #GstGLDisplayX11 - an existing, x11 display + an existing, x11 display @@ -2844,25 +3006,28 @@ for details on what is a valid name. - + + - + - #GstGLFilter helps to implement simple OpenGL filter elements taking a + #GstGLFilter helps to implement simple OpenGL filter elements taking a single input and producing a single output with a #GstGLFramebuffer + + @@ -2873,6 +3038,7 @@ single input and producing a single output with a #GstGLFramebuffer + @@ -2889,14 +3055,15 @@ single input and producing a single output with a #GstGLFramebuffer - Calls filter_texture vfunc with correctly mapped #GstGLMemorys + Calls filter_texture vfunc with correctly mapped #GstGLMemorys + - whether the transformation succeeded + whether the transformation succeeded - a #GstGLFilter + a #GstGLFilter @@ -2908,6 +3075,7 @@ single input and producing a single output with a #GstGLFramebuffer + @@ -2918,6 +3086,7 @@ single input and producing a single output with a #GstGLFramebuffer + @@ -2934,6 +3103,7 @@ single input and producing a single output with a #GstGLFramebuffer + @@ -2953,92 +3123,96 @@ single input and producing a single output with a #GstGLFramebuffer - Render a fullscreen quad using the current GL state. The only GL state this + Render a fullscreen quad using the current GL state. The only GL state this modifies is the necessary vertex/index buffers and, if necessary, a Vertex Array Object for drawing a fullscreen quad. Framebuffer state, any shaders, viewport state, etc must be setup by the caller. + - a #GstGLFilter + a #GstGLFilter - Calls filter_texture vfunc with correctly mapped #GstGLMemorys + Calls filter_texture vfunc with correctly mapped #GstGLMemorys + - whether the transformation succeeded + whether the transformation succeeded - a #GstGLFilter + a #GstGLFilter - an input buffer + an input buffer - an output buffer + an output buffer - Transforms @input into @output using @func on through FBO. + Transforms @input into @output using @func on through FBO. + - the return value of @func + the return value of @func - a #GstGLFilter + a #GstGLFilter - the input texture + the input texture - the output texture + the output texture - the function to transform @input into @output. called with @data + the function to transform @input into @output. called with @data - the data associated with @func + the data associated with @func - Transforms @input into @output using @shader with a FBO. + Transforms @input into @output using @shader with a FBO. See also: gst_gl_filter_render_to_target() + - a #GstGLFilter + a #GstGLFilter - the input texture + the input texture - the output texture + the output texture - the shader to use. + the shader to use. @@ -3047,27 +3221,27 @@ See also: gst_gl_filter_render_to_target() - the video info for input buffers + the video info for input buffers - the video info for output buffers + the video info for output buffers - The texture target of the input buffers (usually 2D) + The texture target of the input buffers (usually 2D) - The texture target of the output buffers (usually 2D) + The texture target of the output buffers (usually 2D) - the output #GstCaps + the output #GstCaps - #GstGLFramebuffer object used for transformations (only for subclass usage) + #GstGLFramebuffer object used for transformations (only for subclass usage) @@ -3101,17 +3275,19 @@ See also: gst_gl_filter_render_to_target() - + + + @@ -3130,6 +3306,7 @@ See also: gst_gl_filter_render_to_target() + @@ -3148,13 +3325,14 @@ See also: gst_gl_filter_render_to_target() + - whether the transformation succeeded + whether the transformation succeeded - a #GstGLFilter + a #GstGLFilter @@ -3168,6 +3346,7 @@ See also: gst_gl_filter_render_to_target() + @@ -3180,6 +3359,7 @@ See also: gst_gl_filter_render_to_target() + @@ -3200,166 +3380,171 @@ See also: gst_gl_filter_render_to_target() - + + - whether the render succeeded + whether the render succeeded - the #GstGLFilter + the #GstGLFilter - the input #GstGLMemory to render + the input #GstGLMemory to render - user data + user data - Single component replicated across R, G, and B textures + Single component replicated across R, G, and B textures components - Single component stored in the A texture component + Single component stored in the A texture component - Combination of #GST_GL_LUMINANCE and #GST_GL_ALPHA + Combination of #GST_GL_LUMINANCE and #GST_GL_ALPHA - Single component stored in the R texture component + Single component stored in the R texture component - Single 8-bit component stored in the R texture component + Single 8-bit component stored in the R texture component - Two components stored in the R and G texture components + Two components stored in the R and G texture components - Two 8-bit components stored in the R and G texture components + Two 8-bit components stored in the R and G texture components - Three components stored in the R, G, and B texture components + Three components stored in the R, G, and B texture components - Three 8-bit components stored in the R, G, and B + Three 8-bit components stored in the R, G, and B texture components - Three components of bit depth 5, 6 and 5 stored in the R, G, + Three components of bit depth 5, 6 and 5 stored in the R, G, and B texture components respectively. - Three 16-bit components stored in the R, G, and B + Three 16-bit components stored in the R, G, and B texture components - Four components stored in the R, G, B, and A texture + Four components stored in the R, G, B, and A texture components respectively. - Four 8-bit components stored in the R, G, B, and A texture + Four 8-bit components stored in the R, G, B, and A texture components respectively. - Four 16-bit components stored in the R, G, B, and A texture + Four 16-bit components stored in the R, G, B, and A texture components respectively. - A single 16-bit component for depth information. + A single 16-bit component for depth information. - A 24-bit component for depth information and + A 24-bit component for depth information and a 8-bit component for stencil informat. + - the #GstGLFormat necessary for holding the data in @plane of @vinfo + the #GstGLFormat necessary for holding the data in @plane of @vinfo - a #GstGLContext + a #GstGLContext - a #GstVideoInfo + a #GstVideoInfo - the plane number in @vinfo + the plane number in @vinfo + - Whether @format is supported by @context based on the OpenGL API, + Whether @format is supported by @context based on the OpenGL API, version, or available OpenGL extension/s. - a #GstGLContext + a #GstGLContext - the #GstGLFormat to check is supported by @context + the #GstGLFormat to check is supported by @context - Get the unsized format and type from @format for usage in glReadPixels, + Get the unsized format and type from @format for usage in glReadPixels, glTex{Sub}Image*, glTexImage* and similar functions. + - the sized internal #GstGLFormat + the sized internal #GstGLFormat - location for the resulting unsized #GstGLFormat + location for the resulting unsized #GstGLFormat - location for the resulting GL type + location for the resulting GL type + - the number of bytes the specified @format, @type combination takes + the number of bytes the specified @format, @type combination takes per pixel - the OpenGL format, %GL_RGBA, %GL_LUMINANCE, etc + the OpenGL format, %GL_RGBA, %GL_LUMINANCE, etc - the OpenGL type, %GL_UNSIGNED_BYTE, %GL_FLOAT, etc + the OpenGL type, %GL_UNSIGNED_BYTE, %GL_FLOAT, etc - - A #GstGLFramebuffer represents and holds an OpenGL framebuffer object with + + A #GstGLFramebuffer represents and holds an OpenGL framebuffer object with it's associated attachments. A #GstGLFramebuffer can be created with gst_gl_framebuffer_new() or @@ -3369,125 +3554,133 @@ gst_gl_framebuffer_attach() Note: OpenGL framebuffers are not shareable resources so cannot be used between multiple OpenGL contexts. + + - a new #GstGLFramebuffer + a new #GstGLFramebuffer - a #GstGLContext + a #GstGLContext + - a new #GstGLFramebuffer with a depth buffer of @width and @height + a new #GstGLFramebuffer with a depth buffer of @width and @height - a #GstGLContext + a #GstGLContext - width for the depth buffer + width for the depth buffer - for the depth buffer + for the depth buffer - attach @mem to @attachment_point + attach @mem to @attachment_point + - a #GstGLFramebuffer + a #GstGLFramebuffer - the OpenGL attachment point to bind @mem to + the OpenGL attachment point to bind @mem to - the memory object to bind to @attachment_point + the memory object to bind to @attachment_point - Bind @fb into the current thread + Bind @fb into the current thread + - a #GstGLFramebuffer + a #GstGLFramebuffer - Perform the steps necessary to have the output of a glDraw* command in + Perform the steps necessary to have the output of a glDraw* command in @func update the contents of @mem. + - the result of executing @func + the result of executing @func - a #GstGLFramebuffer + a #GstGLFramebuffer - the #GstGLMemory to draw to + the #GstGLMemory to draw to - the function to run + the function to run - data to pass to @func + data to pass to @func - Retreive the effective dimensions from the current attachments attached to + Retreive the effective dimensions from the current attachments attached to @fb. + - a #GstGLFramebuffer + a #GstGLFramebuffer - output width + output width - output height + output height + - the OpenGL id for @fb + the OpenGL id for @fb - a #GstGLFramebuffer + a #GstGLFramebuffer @@ -3507,7 +3700,7 @@ between multiple OpenGL contexts. - + @@ -3516,71 +3709,76 @@ between multiple OpenGL contexts. - Opaque #GstGLFramebufferClass struct + Opaque #GstGLFramebufferClass struct + - + - callback definition for operating through a #GstGLFramebuffer object + callback definition for operating through a #GstGLFramebuffer object + - user data + user data + + - GstGLMemory is a #GstGLBaseMemory subclass providing support for the mapping of + GstGLMemory is a #GstGLBaseMemory subclass providing support for the mapping of OpenGL textures. #GstGLMemory is created or wrapped through gst_gl_base_memory_alloc() with #GstGLVideoAllocationParams. Data is uploaded or downloaded from the GPU as is necessary. + - the parent #GstGLBaseMemory object + the parent #GstGLBaseMemory object - the GL texture id for this memory + the GL texture id for this memory - the GL texture target for this memory + the GL texture target for this memory - the texture type + the texture type - the texture's #GstVideoInfo + the texture's #GstVideoInfo - data alignment for system memory mapping + data alignment for system memory mapping - data plane in @info + data plane in @info - GL shader scaling parameters for @valign and/or width/height - + GL shader scaling parameters for @valign and/or width/height + @@ -3594,289 +3792,303 @@ Data is uploaded or downloaded from the GPU as is necessary. - + - Copies @gl_mem into the texture specfified by @tex_id. The format of @tex_id + Copies @gl_mem into the texture specfified by @tex_id. The format of @tex_id is specified by @tex_format, @width and @height. + - Whether the copy suceeded + Whether the copy suceeded - a #GstGLMemory + a #GstGLMemory - OpenGL texture id + OpenGL texture id - the #GstGLTextureTarget + the #GstGLTextureTarget - the #GstGLFormat + the #GstGLFormat - width of @tex_id + width of @tex_id - height of @tex_id + height of @tex_id - Copies the texture in #GstGLMemory into the texture specified by @tex_id, + Copies the texture in #GstGLMemory into the texture specified by @tex_id, @out_target, @out_tex_format, @out_width and @out_height. + - whether the copy succeeded. + whether the copy succeeded. - the source #GstGLMemory + the source #GstGLMemory - the destination texture id + the destination texture id - the destination #GstGLTextureTarget + the destination #GstGLTextureTarget - the destination #GstGLFormat + the destination #GstGLFormat - the destination width + the destination width - the destination height + the destination height + - the #GstGLFormat of @gl_mem + the #GstGLFormat of @gl_mem - a #GstGLMemory + a #GstGLMemory + - the texture height of @gl_mem + the texture height of @gl_mem - a #GstGLMemory + a #GstGLMemory + - the OpenGL texture handle of @gl_mem + the OpenGL texture handle of @gl_mem - a #GstGLMemory + a #GstGLMemory + - the #GstGLTextureTarget of @gl_mem + the #GstGLTextureTarget of @gl_mem - a #GstGLMemory + a #GstGLMemory + - the texture width of @gl_mem + the texture width of @gl_mem - a #GstGLMemory + a #GstGLMemory - Initializes @mem with the required parameters. @info is assumed to have + Initializes @mem with the required parameters. @info is assumed to have already have been modified with gst_video_info_align(). + - the #GstGLBaseMemory to initialize + the #GstGLBaseMemory to initialize - the #GstAllocator to initialize with + the #GstAllocator to initialize with - the parent #GstMemory to initialize with + the parent #GstMemory to initialize with - the #GstGLContext to initialize with + the #GstGLContext to initialize with - the #GstGLTextureTarget for this #GstGLMemory + the #GstGLTextureTarget for this #GstGLMemory - the #GstGLFormat for this #GstGLMemory + the #GstGLFormat for this #GstGLMemory - the @GstAllocationParams to initialize with + the @GstAllocationParams to initialize with - the #GstVideoInfo for this #GstGLMemory + the #GstVideoInfo for this #GstGLMemory - the plane number (starting from 0) for this #GstGLMemory + the plane number (starting from 0) for this #GstGLMemory - optional #GstVideoAlignment parameters + optional #GstVideoAlignment parameters - user data to call @notify with + user data to call @notify with - a #GDestroyNotify + a #GDestroyNotify - Reads the texture in #GstGLMemory into @read_pointer if no buffer is bound + Reads the texture in #GstGLMemory into @read_pointer if no buffer is bound to %GL_PIXEL_PACK_BUFFER. Otherwise @read_pointer is the byte offset into the currently bound %GL_PIXEL_PACK_BUFFER buffer to store the result of glReadPixels. See the OpenGL specification for glReadPixels for more details. + - whether theread operation succeeded + whether theread operation succeeded - a #GstGLMemory + a #GstGLMemory - the data pointer to pass to glReadPixels + the data pointer to pass to glReadPixels - See gst_gl_memory_read_pixels() for what @read_pointer signifies. + See gst_gl_memory_read_pixels() for what @read_pointer signifies. + - a #GstGLMemory + a #GstGLMemory - the data pointer to pass to glTexSubImage + the data pointer to pass to glTexSubImage - Initializes the GL Base Texture allocator. It is safe to call this function + Initializes the GL Base Texture allocator. It is safe to call this function multiple times. This must be called before any other GstGLMemory operation. + + - whether the buffer was correctly setup + whether the buffer was correctly setup - the @GstGLMemoryAllocator to allocate from + the @GstGLMemoryAllocator to allocate from - a #GstBuffer to setup + a #GstBuffer to setup - the #GstGLVideoAllocationParams to allocate with + the #GstGLVideoAllocationParams to allocate with - + a list of #GstGLFormat's to allocate with. - + a list of wrapped data pointers - the number of elements in @tex_formats and @wrapped_data + the number of elements in @tex_formats and @wrapped_data - Opaque #GstGLMemoryAllocator struct + Opaque #GstGLMemoryAllocator struct + + - the default #GstGLMemoryAllocator supported by + the default #GstGLMemoryAllocator supported by @context - a #GstGLContext + a #GstGLContext @@ -3885,29 +4097,30 @@ multiple times. This must be called before any other GstGLMemory operation. - + + - provide a custom map implementation + provide a custom map implementation - provide a custom copy implementation + provide a custom copy implementation - provide a custom unmap implementation + provide a custom unmap implementation - + @@ -3916,10 +4129,11 @@ multiple times. This must be called before any other GstGLMemory operation. - #GstGLMemoryPBO is created or wrapped through gst_gl_base_memory_alloc() + #GstGLMemoryPBO is created or wrapped through gst_gl_base_memory_alloc() with #GstGLVideoAllocationParams. Data is uploaded or downloaded from the GPU as is necessary. + @@ -3927,12 +4141,12 @@ Data is uploaded or downloaded from the GPU as is necessary. - + - Copies @gl_mem into the texture specfified by @tex_id. The format of @tex_id + Copies @gl_mem into the texture specfified by @tex_id. The format of @tex_id is specified by @tex_format, @width and @height. If @respecify is %TRUE, then the copy is performed in terms of the texture @@ -3945,100 +4159,108 @@ output as the RGBA texture. Otherwise, if @respecify is %FALSE, then the copy is performed per texel using glCopyTexImage. See the OpenGL specification for details on the mappings between texture formats. + - Whether the copy suceeded + Whether the copy suceeded - a #GstGLMemoryPBO + a #GstGLMemoryPBO - the destination texture id + the destination texture id - the destination #GstGLTextureTarget + the destination #GstGLTextureTarget - the destination #GstGLFormat + the destination #GstGLFormat - width of @tex_id + width of @tex_id - height of @tex_id + height of @tex_id - stride of the backing texture data + stride of the backing texture data - whether to copy the data or copy per texel + whether to copy the data or copy per texel - Transfer the texture data from the texture into the PBO if necessary. + Transfer the texture data from the texture into the PBO if necessary. + - a #GstGLMemoryPBO + a #GstGLMemoryPBO - Transfer the texture data from the PBO into the texture if necessary. + Transfer the texture data from the PBO into the texture if necessary. + - a #GstGLMemoryPBO + a #GstGLMemoryPBO + - Opaque #GstGLMemoryPBOAllocator struct + Opaque #GstGLMemoryPBOAllocator struct + - + - Only contains private data + Only contains private data + - + - Opaque #GstGLOverlayCompositor object + Opaque #GstGLOverlayCompositor object + + @@ -4049,6 +4271,7 @@ mappings between texture formats. + @@ -4059,6 +4282,7 @@ mappings between texture formats. + @@ -4069,6 +4293,7 @@ mappings between texture formats. + @@ -4079,6 +4304,7 @@ mappings between texture formats. + @@ -4121,72 +4347,76 @@ mappings between texture formats. - + + - + - no platform + no platform - the EGL platform used primarily with the X11, wayland + the EGL platform used primarily with the X11, wayland and android window systems as well as on embedded Linux - the GLX platform used primarily with the X11 window system + the GLX platform used primarily with the X11 window system - the WGL platform used primarily on Windows + the WGL platform used primarily on Windows - the CGL platform used primarily on OS X + the CGL platform used primarily on OS X - the EAGL platform used primarily on iOS + the EAGL platform used primarily on iOS - any OpenGL platform + any OpenGL platform + - The #GstGLPlatform represented by @platform_s + The #GstGLPlatform represented by @platform_s - a space seperated string of OpenGL platformss + a space seperated string of OpenGL platformss + - A space seperated string of the OpenGL platforms enabled in @platform + A space seperated string of the OpenGL platforms enabled in @platform - a #GstGLPlatform to stringify + a #GstGLPlatform to stringify - - A #GstGLQuery represents and holds an OpenGL query object. Various types of + + A #GstGLQuery represents and holds an OpenGL query object. Various types of queries can be run or counters retrieved. + @@ -4206,138 +4436,147 @@ queries can be run or counters retrieved. - + - Record the result of a counter + Record the result of a counter + - a #GstGLQuery + a #GstGLQuery - End counting the query + End counting the query + - a #GstGLQuery + a #GstGLQuery - Frees a #GstGLQuery + Frees a #GstGLQuery + - a #GstGLQuery + a #GstGLQuery + - a #GstGLQuery + a #GstGLQuery - a #GstGLContext + a #GstGLContext - the #GstGLQueryType + the #GstGLQueryType + - the result of the query + the result of the query - a #GstGLQuery + a #GstGLQuery - Start counting the query + Start counting the query + - a #GstGLQuery + a #GstGLQuery - Free any dynamically allocated resources + Free any dynamically allocated resources + - a #GstGLQuery + a #GstGLQuery - Performs a GST_QUERY_CONTEXT query of type "gst.gl.local_context" on all + Performs a GST_QUERY_CONTEXT query of type "gst.gl.local_context" on all #GstPads in @element of @direction for the local OpenGL context used by GStreamer elements. + - whether @context_ptr contains a #GstGLContext + whether @context_ptr contains a #GstGLContext - a #GstElement to query from + a #GstElement to query from - the #GstPadDirection to query + the #GstPadDirection to query - location containing the current and/or resulting + location containing the current and/or resulting #GstGLContext - Free with gst_gl_query_free() + Free with gst_gl_query_free() + - a new #GstGLQuery + a new #GstGLQuery - a #GstGLContext + a #GstGLContext - the #GstGLQueryType to create + the #GstGLQueryType to create @@ -4345,228 +4584,239 @@ GStreamer elements. - no query + no query - query the time elapsed + query the time elapsed - query the current time + query the current time - - GstGLRenderbuffer is a #GstGLBaseMemory subclass providing support for + + GstGLRenderbuffer is a #GstGLBaseMemory subclass providing support for OpenGL renderbuffers. #GstGLRenderbuffer is created or wrapped through gst_gl_base_memory_alloc() with #GstGLRenderbufferAllocationParams. + - the GL texture id for this memory + the GL texture id for this memory - the texture type + the texture type - the width + the width - the height + the height - + + - the #GstGLFormat of @gl_mem + the #GstGLFormat of @gl_mem - a #GstGLRenderbuffer + a #GstGLRenderbuffer + - the configured height of @gl_mem + the configured height of @gl_mem - a #GstGLRenderbuffer + a #GstGLRenderbuffer + - the OpenGL renderbuffer handle of @gl_mem + the OpenGL renderbuffer handle of @gl_mem - a #GstGLRenderbuffer + a #GstGLRenderbuffer + - the configured width of @gl_mem + the configured width of @gl_mem - a #GstGLRenderbuffer + a #GstGLRenderbuffer - Initializes the GL Base Texture allocator. It is safe to call this function + Initializes the GL Base Texture allocator. It is safe to call this function multiple times. This must be called before any other GstGLRenderbuffer operation. + - Allocation parameters + Allocation parameters + - the #GstGLFormat + the #GstGLFormat - the width + the width - the height + the height - + + - a new #GstGLRenderbufferAllocationParams for allocating #GstGLRenderbuffer's + a new #GstGLRenderbufferAllocationParams for allocating #GstGLRenderbuffer's - a #GstGLContext + a #GstGLContext - the #GstAllocationParams for sysmem mappings of the texture + the #GstAllocationParams for sysmem mappings of the texture - the #GstGLFormat for the created textures + the #GstGLFormat for the created textures - the width of the renderbuffer + the width of the renderbuffer - the height of the renderbuffer + the height of the renderbuffer + - a new #GstGLRenderbufferAllocationParams for wrapping @gl_handle as a + a new #GstGLRenderbufferAllocationParams for wrapping @gl_handle as a renderbuffer - a #GstGLContext + a #GstGLContext - the #GstAllocationParams for @tex_id + the #GstAllocationParams for @tex_id - the #GstGLFormat for @tex_id + the #GstGLFormat for @tex_id - the width of the renderbuffer + the width of the renderbuffer - the height of the renderbuffer + the height of the renderbuffer - the GL handle to wrap + the GL handle to wrap - user data to call @notify with + user data to call @notify with - a #GDestroyNotify + a #GDestroyNotify - Opaque #GstGLRenderbufferAllocator struct + Opaque #GstGLRenderbufferAllocator struct + - + - The #GstGLRenderbufferAllocatorClass only contains private data + The #GstGLRenderbufferAllocatorClass only contains private data + - + - Compilation stage that caused an error + Compilation stage that caused an error - Compilation error occured + Compilation error occured - Link error occured + Link error occured - General program error occured + General program error occured @@ -4575,66 +4825,71 @@ multiple times. This must be called before any other GstGLRenderbuffer operatio - GLSL profiles + GLSL profiles - no profile supported/available + no profile supported/available - OpenGL|ES profile + OpenGL|ES profile - OpenGL core profile + OpenGL core profile - OpenGL compatibility profile + OpenGL compatibility profile - any OpenGL/OpenGL|ES profile + any OpenGL/OpenGL|ES profile + - the #GstGLSLProfile of @string or %GST_GLSL_PROFILE_NONE on error + the #GstGLSLProfile of @string or %GST_GLSL_PROFILE_NONE on error - a GLSL version string + a GLSL version string + - the name for @profile or %NULL on error + the name for @profile or %NULL on error - a #GstGLSLProfile + a #GstGLSLProfile - #GstGLSLStage holds and represents a single OpenGL shader stage. + #GstGLSLStage holds and represents a single OpenGL shader stage. + + - a new #GstGLSLStage of the specified @type + a new #GstGLSLStage of the specified @type - a #GstGLContext + a #GstGLContext - the GL enum shader stage type + the GL enum shader stage type + @@ -4645,6 +4900,7 @@ multiple times. This must be called before any other GstGLRenderbuffer operatio + @@ -4655,61 +4911,63 @@ multiple times. This must be called before any other GstGLRenderbuffer operatio + - a new #GstGLSLStage of the specified @type + a new #GstGLSLStage of the specified @type - a #GstGLContext + a #GstGLContext - the GL enum shader stage type + the GL enum shader stage type - the #GstGLSLVersion + the #GstGLSLVersion - the #GstGLSLProfile + the #GstGLSLProfile - a shader string + a shader string + - a new #GstGLSLStage of the specified @type + a new #GstGLSLStage of the specified @type - a #GstGLContext + a #GstGLContext - the GL enum shader stage type + the GL enum shader stage type - the #GstGLSLVersion + the #GstGLSLVersion - the #GstGLSLProfile + the #GstGLSLProfile - the number of strings in @str + the number of strings in @str - + an array of strings concatted together to produce a shader @@ -4718,89 +4976,95 @@ multiple times. This must be called before any other GstGLRenderbuffer operatio + - whether the compilation suceeded + whether the compilation suceeded - a #GstGLSLStage + a #GstGLSLStage + - The GL handle for this shader stage + The GL handle for this shader stage - a #GstGLSLStage + a #GstGLSLStage + - The GLSL profile for the current shader stage + The GLSL profile for the current shader stage - a #GstGLSLStage + a #GstGLSLStage + - The GL shader type for this shader stage + The GL shader type for this shader stage - a #GstGLSLStage + a #GstGLSLStage + - The GLSL version for the current shader stage + The GLSL version for the current shader stage - a #GstGLSLStage + a #GstGLSLStage - Replaces the current shader string with @str. + Replaces the current shader string with @str. + - a #GstGLSLStage + a #GstGLSLStage - a #GstGLSLVersion + a #GstGLSLVersion - a #GstGLSLProfile + a #GstGLSLProfile - number of strings in @str + number of strings in @str - a GLSL shader string + a GLSL shader string @@ -4817,549 +5081,599 @@ multiple times. This must be called before any other GstGLRenderbuffer operatio - + - Opaque #GstGLSLStageClass struct + Opaque #GstGLSLStageClass struct + - + + - GLSL version list + GLSL version list - no version + no version - version 100 (only valid for ES) + version 100 (only valid for ES) - version 110 (only valid for compatibility desktop GL) + version 110 (only valid for compatibility desktop GL) - version 120 (only valid for compatibility desktop GL) + version 120 (only valid for compatibility desktop GL) - version 130 (only valid for compatibility desktop GL) + version 130 (only valid for compatibility desktop GL) - version 140 (only valid for compatibility desktop GL) + version 140 (only valid for compatibility desktop GL) - version 150 (valid for compatibility/core desktop GL) + version 150 (valid for compatibility/core desktop GL) - version 300 (only valid for ES) + version 300 (only valid for ES) - version 310 (only valid for ES) + version 310 (only valid for ES) - version 320 (only valid for ES) + version 320 (only valid for ES) - version 330 (valid for compatibility/core desktop GL) + version 330 (valid for compatibility/core desktop GL) - version 400 (valid for compatibility/core desktop GL) + version 400 (valid for compatibility/core desktop GL) - version 410 (valid for compatibility/core desktop GL) + version 410 (valid for compatibility/core desktop GL) - version 420 (valid for compatibility/core desktop GL) + version 420 (valid for compatibility/core desktop GL) - version 430 (valid for compatibility/core desktop GL) + version 430 (valid for compatibility/core desktop GL) - version 440 (valid for compatibility/core desktop GL) + version 440 (valid for compatibility/core desktop GL) - version 450 (valid for compatibility/core desktop GL) + version 450 (valid for compatibility/core desktop GL) + - the #GstGLSLVersion of @string or %GST_GLSL_VERSION_NONE on error + the #GstGLSLVersion of @string or %GST_GLSL_VERSION_NONE on error - a GLSL version string + a GLSL version string - Note: this function expects either a #version GLSL preprocesser directive + Note: this function expects either a #version GLSL preprocesser directive or a valid GLSL version and/or profile. + - TRUE if a valid #version string was found, FALSE otherwise + TRUE if a valid #version string was found, FALSE otherwise - a valid GLSL #version string + a valid GLSL #version string - resulting #GstGLSLVersion + resulting #GstGLSLVersion - resulting #GstGLSLVersion + resulting #GstGLSLVersion + - the combined GLSL #version string for @version and @profile + the combined GLSL #version string for @version and @profile - a #GstGLSLVersion + a #GstGLSLVersion - a #GstGLSLVersion + a #GstGLSLVersion + - the name of @version or %NULL on error + the name of @version or %NULL on error - a #GstGLSLVersion + a #GstGLSLVersion + + + + + + + + + + + + + + + + + + + + + + - Note: must be called in the GL thread + Note: must be called in the GL thread + - a new empty @shader + a new empty @shader - a #GstGLContext + a #GstGLContext - Note: must be called in the GL thread + Note: must be called in the GL thread + - a default @shader or %NULL on failure + a default @shader or %NULL on failure - a #GstGLContext + a #GstGLContext - Each stage will attempt to be compiled and attached to @shader. Then + Each stage will attempt to be compiled and attached to @shader. Then the shader will be linked. On error, %NULL will be returned and @error will contain the details of the error. Note: must be called in the GL thread + - a new @shader with the specified stages. + a new @shader with the specified stages. - a #GstGLContext + a #GstGLContext - a #GError + a #GError - a NULL terminated list of #GstGLSLStage's + a NULL terminated list of #GstGLSLStage's - Each stage will attempt to be compiled and attached to @shader. On error, + Each stage will attempt to be compiled and attached to @shader. On error, %NULL will be returned and @error will contain the details of the error. Note: must be called in the GL thread + - a new @shader with the specified stages. + a new @shader with the specified stages. - a #GstGLContext + a #GstGLContext - a #GError + a #GError - a NULL terminated list of #GstGLSLStage's + a NULL terminated list of #GstGLSLStage's + - a passthrough shader string for copying an input external-oes + a passthrough shader string for copying an input external-oes texture to the output - a #GstGLContext + a #GstGLContext - a #GstGLSLVersion + a #GstGLSLVersion - a #GstGLSLProfile + a #GstGLSLProfile + - a passthrough shader string for copying an input texture to + a passthrough shader string for copying an input texture to the output - a #GstGLContext + a #GstGLContext - a #GstGLSLVersion + a #GstGLSLVersion - a #GstGLSLProfile + a #GstGLSLProfile - Generates a shader string that defines the precision of float types in + Generates a shader string that defines the precision of float types in GLSL shaders. This is particularly needed for fragment shaders in a GLSL ES context where there is no default precision specified. Practically, this will return the string 'precision mediump float' or 'precision highp float' depending on if high precision floats are determined to be supported. + - a shader string defining the precision of float types based on + a shader string defining the precision of float types based on @context, @version and @profile - a #GstGLContext + a #GstGLContext - a #GstGLSLVersion + a #GstGLSLVersion - a #GstGLSLProfile + a #GstGLSLProfile - Attaches @stage to @shader. @stage must have been successfully compiled + Attaches @stage to @shader. @stage must have been successfully compiled with gst_glsl_stage_compile(). Note: must be called in the GL thread + - whether @stage could be attached to @shader + whether @stage could be attached to @shader - a #GstGLShader + a #GstGLShader - a #GstGLSLStage to attach + a #GstGLSLStage to attach - Attaches @stage to @shader. @stage must have been successfully compiled + Attaches @stage to @shader. @stage must have been successfully compiled with gst_glsl_stage_compile(). Note: must be called in the GL thread + - whether @stage could be attached to @shader + whether @stage could be attached to @shader - a #GstGLShader + a #GstGLShader - a #GstGLSLStage to attach + a #GstGLSLStage to attach - Bind attribute @name to the specified location @index using + Bind attribute @name to the specified location @index using glBindAttributeLocation(). + - a #GstGLShader + a #GstGLShader - attribute index to set + attribute index to set - name of the attribute + name of the attribute - Bind attribute @name to the specified location @index using + Bind attribute @name to the specified location @index using glBindFragDataLocation(). + - a #GstGLShader + a #GstGLShader - attribute index to set + attribute index to set - name of the attribute + name of the attribute - Compiles @stage and attaches it to @shader. + Compiles @stage and attaches it to @shader. Note: must be called in the GL thread + - whether @stage could be compiled and attached to @shader + whether @stage could be compiled and attached to @shader - a #GstGLShader + a #GstGLShader - a #GstGLSLStage to attach + a #GstGLSLStage to attach - Detaches @stage from @shader. @stage must have been successfully attached + Detaches @stage from @shader. @stage must have been successfully attached to @shader with gst_gl_shader_attach() or gst_gl_shader_attach_unlocked(). Note: must be called in the GL thread + - a #GstGLShader + a #GstGLShader - a #GstGLSLStage to attach + a #GstGLSLStage to attach - Detaches @stage from @shader. @stage must have been successfully attached + Detaches @stage from @shader. @stage must have been successfully attached to @shader with gst_gl_shader_attach() or gst_gl_shader_attach_unlocked(). Note: must be called in the GL thread + - a #GstGLShader + a #GstGLShader - a #GstGLSLStage to attach + a #GstGLSLStage to attach + - the attribute index for @name in @shader or -1 on failure + the attribute index for @name in @shader or -1 on failure - a #GstGLShader + a #GstGLShader - name of the attribute + name of the attribute + - the GL program handle for this shader + the GL program handle for this shader - a #GstGLShader + a #GstGLShader - Note: must be called in the GL thread + Note: must be called in the GL thread + - whether @shader has been successfully linked + whether @shader has been successfully linked - a #GstGLShader + a #GstGLShader - Links the current list of #GstGLSLStage's in @shader. + Links the current list of #GstGLSLStage's in @shader. Note: must be called in the GL thread + - whether @shader could be linked together. + whether @shader could be linked together. - a #GstGLShader + a #GstGLShader - Releases the shader and stages. + Releases the shader and stages. Note: must be called in the GL thread + - a #GstGLShader + a #GstGLShader - Releases the shader and stages. + Releases the shader and stages. Note: must be called in the GL thread + - a #GstGLShader + a #GstGLShader - Perform glUniform1f() for @name on @shader + Perform glUniform1f() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - value to set + value to set - Perform glUniform1fv() for @name on @shader + Perform glUniform1fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of values to set + number of values to set - values to set + values to set @@ -5367,45 +5681,47 @@ Note: must be called in the GL thread - Perform glUniform1i() for @name on @shader + Perform glUniform1i() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - value to set + value to set - Perform glUniform1iv() for @name on @shader + Perform glUniform1iv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of values to set + number of values to set - values to set + values to set @@ -5413,49 +5729,51 @@ Note: must be called in the GL thread - Perform glUniform2f() for @name on @shader + Perform glUniform2f() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - first value to set + first value to set - second value to set + second value to set - Perform glUniform2fv() for @name on @shader + Perform glUniform2fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of values to set + number of values to set - values to set + values to set @@ -5463,49 +5781,51 @@ Note: must be called in the GL thread - Perform glUniform2i() for @name on @shader + Perform glUniform2i() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - first value to set + first value to set - second value to set + second value to set - Perform glUniform2iv() for @name on @shader + Perform glUniform2iv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of values to set + number of values to set - values to set + values to set @@ -5513,53 +5833,55 @@ Note: must be called in the GL thread - Perform glUniform3f() for @name on @shader + Perform glUniform3f() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - first value to set + first value to set - second value to set + second value to set - third value to set + third value to set - Perform glUniform3fv() for @name on @shader + Perform glUniform3fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of values to set + number of values to set - values to set + values to set @@ -5567,53 +5889,55 @@ Note: must be called in the GL thread - Perform glUniform3i() for @name on @shader + Perform glUniform3i() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - first value to set + first value to set - second value to set + second value to set - third value to set + third value to set - Perform glUniform3iv() for @name on @shader + Perform glUniform3iv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of values to set + number of values to set - values to set + values to set @@ -5621,57 +5945,59 @@ Note: must be called in the GL thread - Perform glUniform4f() for @name on @shader + Perform glUniform4f() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - first value to set + first value to set - second value to set + second value to set - third value to set + third value to set - fourth value to set + fourth value to set - Perform glUniform4fv() for @name on @shader + Perform glUniform4fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of values to set + number of values to set - values to set + values to set @@ -5679,57 +6005,59 @@ Note: must be called in the GL thread - Perform glUniform4i() for @name on @shader + Perform glUniform4i() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - first value to set + first value to set - second value to set + second value to set - third value to set + third value to set - fourth value to set + fourth value to set - Perform glUniform4iv() for @name on @shader + Perform glUniform4iv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of values to set + number of values to set - values to set + values to set @@ -5737,267 +6065,277 @@ Note: must be called in the GL thread - Perform glUniformMatrix2fv() for @name on @shader + Perform glUniformMatrix2fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of 2x2 matrices to set + number of 2x2 matrices to set - transpose the matrix + transpose the matrix - matrix to set + matrix to set - Perform glUniformMatrix2x3fv() for @name on @shader + Perform glUniformMatrix2x3fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of 2x3 matrices to set + number of 2x3 matrices to set - transpose the matrix + transpose the matrix - values to set + values to set - Perform glUniformMatrix2x4fv() for @name on @shader + Perform glUniformMatrix2x4fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of 2x4 matrices to set + number of 2x4 matrices to set - transpose the matrix + transpose the matrix - values to set + values to set - Perform glUniformMatrix3fv() for @name on @shader + Perform glUniformMatrix3fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of 3x3 matrices to set + number of 3x3 matrices to set - transpose the matrix + transpose the matrix - values to set + values to set - Perform glUniformMatrix3x2fv() for @name on @shader + Perform glUniformMatrix3x2fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of 3x2 matrices to set + number of 3x2 matrices to set - transpose the matrix + transpose the matrix - values to set + values to set - Perform glUniformMatrix3x4fv() for @name on @shader + Perform glUniformMatrix3x4fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of 3x4 matrices to set + number of 3x4 matrices to set - transpose the matrix + transpose the matrix - values to set + values to set - Perform glUniformMatrix4fv() for @name on @shader + Perform glUniformMatrix4fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of 4x4 matrices to set + number of 4x4 matrices to set - transpose the matrix + transpose the matrix - values to set + values to set - Perform glUniformMatrix4x2fv() for @name on @shader + Perform glUniformMatrix4x2fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of 4x2 matrices to set + number of 4x2 matrices to set - transpose the matrix + transpose the matrix - values to set + values to set - Perform glUniformMatrix4x3fv() for @name on @shader + Perform glUniformMatrix4x3fv() for @name on @shader + - a #GstGLShader + a #GstGLShader - name of the uniform + name of the uniform - number of 4x3 matrices to set + number of 4x3 matrices to set - transpose the matrix + transpose the matrix - values to set + values to set - Mark's @shader as being used for the next GL draw command. + Mark's @shader as being used for the next GL draw command. Note: must be called in the GL thread and @shader must have been linked. + - a #GstGLShader + a #GstGLShader @@ -6015,47 +6353,51 @@ Note: must be called in the GL thread and @shader must have been linked. - + + + - Output anaglyph type to generate when downmixing to mono + Output anaglyph type to generate when downmixing to mono - Dubois optimised Green-Magenta anaglyph + Dubois optimised Green-Magenta anaglyph - Dubois optimised Red-Cyan anaglyph + Dubois optimised Red-Cyan anaglyph - Dubois optimised Amber-Blue anaglyph + Dubois optimised Amber-Blue anaglyph - #GstGLSyncMeta provides the ability to synchronize the OpenGL command stream + #GstGLSyncMeta provides the ability to synchronize the OpenGL command stream with the CPU or with other OpenGL contexts. + - the parent #GstMeta + the parent #GstMeta - the #GstGLContext used to allocate the meta + the #GstGLContext used to allocate the meta - a custom data pointer for the implementation + a custom data pointer for the implementation + @@ -6071,6 +6413,7 @@ with the CPU or with other OpenGL contexts. + @@ -6086,6 +6429,7 @@ with the CPU or with other OpenGL contexts. + @@ -6101,6 +6445,7 @@ with the CPU or with other OpenGL contexts. + @@ -6116,6 +6461,7 @@ with the CPU or with other OpenGL contexts. + @@ -6131,6 +6477,7 @@ with the CPU or with other OpenGL contexts. + @@ -6146,6 +6493,7 @@ with the CPU or with other OpenGL contexts. + @@ -6167,6 +6515,7 @@ with the CPU or with other OpenGL contexts. + @@ -6182,6 +6531,7 @@ with the CPU or with other OpenGL contexts. + @@ -6196,57 +6546,61 @@ with the CPU or with other OpenGL contexts. - Set a sync point to possibly wait on at a later time. + Set a sync point to possibly wait on at a later time. + - a #GstGLSyncMeta + a #GstGLSyncMeta - a #GstGLContext + a #GstGLContext - Insert a wait into @context's command stream ensuring all previous OpenGL + Insert a wait into @context's command stream ensuring all previous OpenGL commands before @sync_meta have completed. + - a #GstGLSyncMeta + a #GstGLSyncMeta - a #GstGLContext + a #GstGLContext - Perform a wait so that the sync point has passed from the CPU's perspective + Perform a wait so that the sync point has passed from the CPU's perspective What that means, is that all GL operations changing CPU-visible data before the sync point are now visible. + - a #GstGLSyncMeta + a #GstGLSyncMeta - a #GstGLContext + a #GstGLContext + @@ -6254,185 +6608,198 @@ the sync point are now visible. - no texture target + no texture target - 2D texture target + 2D texture target - rectangle texture target + rectangle texture target - external oes texture target + external oes texture target + - the #GstGLTextureTarget that's equiavalant to @target or + the #GstGLTextureTarget that's equiavalant to @target or %GST_GL_TEXTURE_TARGET_NONE - an OpenGL texture binding target + an OpenGL texture binding target + - the #GstGLTextureTarget represented by @str or + the #GstGLTextureTarget represented by @str or %GST_GL_TEXTURE_TARGET_NONE - a string equivalant to one of the GST_GL_TEXTURE_TARGET_*_STR values + a string equivalant to one of the GST_GL_TEXTURE_TARGET_*_STR values + - a string representing the @GstBufferPoolOption specified by @target + a string representing the @GstBufferPoolOption specified by @target - a #GstGLTextureTarget + a #GstGLTextureTarget + - the OpenGL value for binding the @target with glBindTexture() and + the OpenGL value for binding the @target with glBindTexture() and similar functions or 0 - a #GstGLTextureTarget + a #GstGLTextureTarget + - the stringified version of @target or %NULL + the stringified version of @target or %NULL - a #GstGLTextureTarget + a #GstGLTextureTarget - #GstGLUpload is an object that uploads data from system memory into GL textures. + #GstGLUpload is an object that uploads data from system memory into GL textures. A #GstGLUpload can be created with gst_gl_upload_new() + + - a new #GstGLUpload object + a new #GstGLUpload object - a #GstGLContext + a #GstGLContext + + - a #GstGLUpload + a #GstGLUpload - the input #GstCaps + the input #GstCaps - the output #GstCaps + the output #GstCaps - Uploads @buffer using the transformation specified by + Uploads @buffer using the transformation specified by gst_gl_upload_set_caps() creating a new #GstBuffer in @outbuf_ptr. + - whether the upload was successful + whether the upload was successful - a #GstGLUpload + a #GstGLUpload - input #GstBuffer + input #GstBuffer - resulting #GstBuffer + resulting #GstBuffer - Adds the required allocation parameters to support uploading. + Adds the required allocation parameters to support uploading. + - a #GstGLUpload + a #GstGLUpload - a #GstQuery from a decide allocation + a #GstQuery from a decide allocation - the proposed allocation query + the proposed allocation query - Initializes @upload with the information required for upload. + Initializes @upload with the information required for upload. + - whether @in_caps and @out_caps could be set on @upload + whether @in_caps and @out_caps could be set on @upload - a #GstGLUpload + a #GstGLUpload - input #GstCaps + input #GstCaps - output #GstCaps + output #GstCaps + @@ -6446,6 +6813,7 @@ gst_gl_upload_set_caps() creating a new #GstBuffer in @outbuf_ptr. + @@ -6477,516 +6845,536 @@ gst_gl_upload_set_caps() creating a new #GstBuffer in @outbuf_ptr. - + - The #GstGLUploadClass struct only contains private data + The #GstGLUploadClass struct only contains private data + - + + - No further processing required + No further processing required - An unspecified error occured + An unspecified error occured - The configuration is unsupported. + The configuration is unsupported. - This element requires a reconfiguration. + This element requires a reconfiguration. + - the parent #GstGLAllocationParams structure + the parent #GstGLAllocationParams structure - the #GstVideoInfo to allocate + the #GstVideoInfo to allocate - the video plane index to allocate + the video plane index to allocate - the #GstVideoAlignment to align the system representation to (may be %NULL for the default) + the #GstVideoAlignment to align the system representation to (may be %NULL for the default) - the #GstGLTextureTarget to allocate + the #GstGLTextureTarget to allocate - the #GstGLFormat to allocate + the #GstGLFormat to allocate - + + - a new #GstGLVideoAllocationParams for allocating #GstGLMemory's + a new #GstGLVideoAllocationParams for allocating #GstGLMemory's - a #GstGLContext + a #GstGLContext - the #GstAllocationParams for sysmem mappings of the texture + the #GstAllocationParams for sysmem mappings of the texture - the #GstVideoInfo for the texture + the #GstVideoInfo for the texture - the video plane of @v_info to allocate + the video plane of @v_info to allocate - any #GstVideoAlignment applied to symem mappings of the texture + any #GstVideoAlignment applied to symem mappings of the texture - the #GstGLTextureTarget for the created textures + the #GstGLTextureTarget for the created textures - the #GstGLFormat for the created textures + the #GstGLFormat for the created textures + - a new #GstGLVideoAllocationParams for wrapping @wrapped_data + a new #GstGLVideoAllocationParams for wrapping @wrapped_data - a #GstGLContext + a #GstGLContext - the #GstAllocationParams for @wrapped_data + the #GstAllocationParams for @wrapped_data - the #GstVideoInfo for @wrapped_data + the #GstVideoInfo for @wrapped_data - the video plane @wrapped_data represents + the video plane @wrapped_data represents - any #GstVideoAlignment applied to symem mappings of @wrapped_data + any #GstVideoAlignment applied to symem mappings of @wrapped_data - the #GstGLTextureTarget for @wrapped_data + the #GstGLTextureTarget for @wrapped_data - the #GstGLFormat for @wrapped_data + the #GstGLFormat for @wrapped_data - the data pointer to wrap + the data pointer to wrap - user data to call @notify with + user data to call @notify with - a #GDestroyNotify + a #GDestroyNotify - @gl_handle is defined by the specific OpenGL handle being wrapped + @gl_handle is defined by the specific OpenGL handle being wrapped For #GstGLMemory and #GstGLMemoryPBO it is an OpenGL texture id. Other memory types may define it to require a different type of parameter. + - a new #GstGLVideoAllocationParams for wrapping @gl_handle + a new #GstGLVideoAllocationParams for wrapping @gl_handle - a #GstGLContext + a #GstGLContext - the #GstAllocationParams for @tex_id + the #GstAllocationParams for @tex_id - the #GstVideoInfo for @tex_id + the #GstVideoInfo for @tex_id - the video plane @tex_id represents + the video plane @tex_id represents - any #GstVideoAlignment applied to symem mappings of @tex_id + any #GstVideoAlignment applied to symem mappings of @tex_id - the #GstGLTextureTarget for @tex_id + the #GstGLTextureTarget for @tex_id - the #GstGLFormat for @tex_id + the #GstGLFormat for @tex_id - the GL handle to wrap + the GL handle to wrap - user data to call @notify with + user data to call @notify with - a #GDestroyNotify + a #GDestroyNotify + - a new #GstGLVideoAllocationParams for wrapping @tex_id + a new #GstGLVideoAllocationParams for wrapping @tex_id - a #GstGLContext + a #GstGLContext - the #GstAllocationParams for @tex_id + the #GstAllocationParams for @tex_id - the #GstVideoInfo for @tex_id + the #GstVideoInfo for @tex_id - the video plane @tex_id represents + the video plane @tex_id represents - any #GstVideoAlignment applied to symem mappings of @tex_id + any #GstVideoAlignment applied to symem mappings of @tex_id - the #GstGLTextureTarget for @tex_id + the #GstGLTextureTarget for @tex_id - the #GstGLFormat for @tex_id + the #GstGLFormat for @tex_id - the GL texture to wrap + the GL texture to wrap - user data to call @notify with + user data to call @notify with - a #GDestroyNotify + a #GDestroyNotify - Copy and set any dynamically allocated resources in @dest_vid. Intended + Copy and set any dynamically allocated resources in @dest_vid. Intended for subclass usage only to chain up at the end of a subclass copy function. + - source #GstGLVideoAllocationParams to copy from + source #GstGLVideoAllocationParams to copy from - destination #GstGLVideoAllocationParams to copy into + destination #GstGLVideoAllocationParams to copy into - Unset and free any dynamically allocated resources. Intended for subclass + Unset and free any dynamically allocated resources. Intended for subclass usage only to chain up at the end of a subclass free function. + - a #GstGLVideoAllocationParams + a #GstGLVideoAllocationParams - Intended for subclass usage + Intended for subclass usage + - initializes @params with the parameters specified + initializes @params with the parameters specified - a #GstGLVideoAllocationParams to initialize + a #GstGLVideoAllocationParams to initialize - the size of the struct in @params + the size of the struct in @params - some allocation flags + some allocation flags - a copy function + a copy function - a free function + a free function - a #GstGLContext + a #GstGLContext - the #GstAllocationParams for @wrapped_data + the #GstAllocationParams for @wrapped_data - the #GstVideoInfo for @wrapped_data + the #GstVideoInfo for @wrapped_data - the video plane @wrapped_data represents + the video plane @wrapped_data represents - any #GstVideoAlignment applied to symem mappings of @wrapped_data + any #GstVideoAlignment applied to symem mappings of @wrapped_data - the #GstGLTextureTarget + the #GstGLTextureTarget - the #GstGLFormat + the #GstGLFormat - the optional data pointer to wrap + the optional data pointer to wrap - the optional OpenGL handle to wrap or 0 + the optional OpenGL handle to wrap or 0 - user data to call @notify with + user data to call @notify with - a #GDestroyNotify + a #GDestroyNotify - Convert stereoscopic/multiview video using fragment shaders. + Convert stereoscopic/multiview video using fragment shaders. + + - a new #GstGLViewConvert + a new #GstGLViewConvert - Provides an implementation of #GstBaseTransformClass.fixate_caps() + Provides an implementation of #GstBaseTransformClass.fixate_caps() + - the fixated #GstCaps + the fixated #GstCaps - a #GstGLViewConvert + a #GstGLViewConvert - a #GstPadDirection + a #GstPadDirection - the #GstCaps of @direction + the #GstCaps of @direction - the #GstCaps to fixate + the #GstCaps to fixate - Retrieve the processed output buffer placing the output in @outbuf_ptr. + Retrieve the processed output buffer placing the output in @outbuf_ptr. + - a #GstFlowReturn + a #GstFlowReturn - a #GstGLViewConvert + a #GstGLViewConvert - a #GstBuffer + a #GstBuffer - Converts the data contained by @inbuf using the formats specified by the + Converts the data contained by @inbuf using the formats specified by the #GstCaps passed to gst_gl_view_convert_set_caps() + - a converted #GstBuffer or %NULL + a converted #GstBuffer or %NULL - a #GstGLViewConvert + a #GstGLViewConvert - the #GstGLMemory filled #GstBuffer to convert + the #GstGLMemory filled #GstBuffer to convert - Reset @viewconvert to the default state. Further operation will require + Reset @viewconvert to the default state. Further operation will require setting the caps with gst_gl_view_convert_set_caps(). + - a #GstGLViewConvert + a #GstGLViewConvert - Initializes @viewconvert with the information required for conversion. + Initializes @viewconvert with the information required for conversion. + - a #GstGLViewConvert + a #GstGLViewConvert - input #GstCaps + input #GstCaps - output #GstCaps + output #GstCaps - Set @context on @viewconvert + Set @context on @viewconvert + - a #GstGLViewConvert + a #GstGLViewConvert - the #GstGLContext to set + the #GstGLContext to set - Submit @input to be processed by @viewconvert + Submit @input to be processed by @viewconvert + - a #GstFlowReturn + a #GstFlowReturn - a #GstGLViewConvert + a #GstGLViewConvert - true if we have a discontinuity + true if we have a discontinuity - a #GstBuffer + a #GstBuffer - Provides an implementation of #GstBaseTransformClass.transform_caps() + Provides an implementation of #GstBaseTransformClass.transform_caps() + - the converted #GstCaps + the converted #GstCaps - a #GstGLViewConvert + a #GstGLViewConvert - a #GstPadDirection + a #GstPadDirection - the #GstCaps to transform + the #GstCaps to transform - a set of filter #GstCaps + a set of filter #GstCaps @@ -7058,40 +7446,45 @@ setting the caps with gst_gl_view_convert_set_caps(). - + - Opaque #GstGLViewConvertClass struct + Opaque #GstGLViewConvertClass struct + - + + - GstGLWindow represents a window that elements can render into. A window can + GstGLWindow represents a window that elements can render into. A window can either be a user visible window (onscreen) or hidden (offscreen). + + - a new #GstGLWindow using @display's connection + a new #GstGLWindow using @display's connection - a #GstGLDisplay + a #GstGLDisplay + @@ -7102,75 +7495,81 @@ either be a user visible window (onscreen) or hidden (offscreen). - Checks if @window controls the GL viewport. + Checks if @window controls the GL viewport. + - %TRUE if @window controls the GL viewport, otherwise %FALSE + %TRUE if @window controls the GL viewport, otherwise %FALSE - a #GstGLWindow + a #GstGLWindow - Redraw the window contents. Implementations should invoke the draw callback. + Redraw the window contents. Implementations should invoke the draw callback. + - a #GstGLWindow + a #GstGLWindow + - the windowing system display handle for this @window + the windowing system display handle for this @window - a #GstGLWindow + a #GstGLWindow + - the window handle we are currently rendering into + the window handle we are currently rendering into - a #GstGLWindow + a #GstGLWindow - Tell a @window that it should handle events from the window system. These + Tell a @window that it should handle events from the window system. These events are forwarded upstream as navigation events. In some window systems events are not propagated in the window hierarchy if a client is listening for them. This method allows you to disable events handling completely from the @window. + - a #GstGLWindow + a #GstGLWindow - a #gboolean indicating if events should be handled or not. + a #gboolean indicating if events should be handled or not. + @@ -7181,324 +7580,345 @@ from the @window. - Queue resizing of @window. + Queue resizing of @window. + - a #GstGLWindow + a #GstGLWindow - Quit the runloop's execution. + Quit the runloop's execution. + - a #GstGLWindow + a #GstGLWindow - Start the execution of the runloop. + Start the execution of the runloop. + - a #GstGLWindow + a #GstGLWindow - Invoke @callback with data on the window thread. @callback is guarenteed to + Invoke @callback with data on the window thread. @callback is guarenteed to have executed when this function returns. + - a #GstGLWindow + a #GstGLWindow - function to invoke + function to invoke - data to invoke @callback with + data to invoke @callback with - Invoke @callback with @data on the window thread. The callback may not + Invoke @callback with @data on the window thread. The callback may not have been executed when this function returns. + - a #GstGLWindow + a #GstGLWindow - function to invoke + function to invoke - data to invoke @callback with + data to invoke @callback with - called when @data is not needed anymore + called when @data is not needed anymore - Set the preferred width and height of the window. Implementations are free + Set the preferred width and height of the window. Implementations are free to ignore this information. + - a #GstGLWindow + a #GstGLWindow - new preferred width + new preferred width - new preferred height + new preferred height - Tell a @window that it should render into a specific region of the window + Tell a @window that it should render into a specific region of the window according to the #GstVideoOverlay interface. + - whether the specified region could be set + whether the specified region could be set - a #GstGLWindow + a #GstGLWindow - x position + x position - y position + y position - width + width - height + height - Sets the window that this @window should render into. Some implementations + Sets the window that this @window should render into. Some implementations require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow - handle to the window + handle to the window - Present the window to the screen. + Present the window to the screen. + - a #GstGLWindow + a #GstGLWindow - Checks if @window controls the GL viewport. + Checks if @window controls the GL viewport. + - %TRUE if @window controls the GL viewport, otherwise %FALSE + %TRUE if @window controls the GL viewport, otherwise %FALSE - a #GstGLWindow + a #GstGLWindow - Redraw the window contents. Implementations should invoke the draw callback. + Redraw the window contents. Implementations should invoke the draw callback. + - a #GstGLWindow + a #GstGLWindow + - the #GstGLContext associated with this @window + the #GstGLContext associated with this @window - a #GstGLWindow + a #GstGLWindow + - the windowing system display handle for this @window + the windowing system display handle for this @window - a #GstGLWindow + a #GstGLWindow + - a #GstGLWindow + a #GstGLWindow - resulting surface width + resulting surface width - resulting surface height + resulting surface height + - the window handle we are currently rendering into + the window handle we are currently rendering into - a #GstGLWindow + a #GstGLWindow - Tell a @window that it should handle events from the window system. These + Tell a @window that it should handle events from the window system. These events are forwarded upstream as navigation events. In some window systems events are not propagated in the window hierarchy if a client is listening for them. This method allows you to disable events handling completely from the @window. + - a #GstGLWindow + a #GstGLWindow - a #gboolean indicating if events should be handled or not. + a #gboolean indicating if events should be handled or not. - Queue resizing of @window. + Queue resizing of @window. + - a #GstGLWindow + a #GstGLWindow - Quit the runloop's execution. + Quit the runloop's execution. + - a #GstGLWindow + a #GstGLWindow - Resize @window to the given @width and @height. + Resize @window to the given @width and @height. + - a #GstGLWindow + a #GstGLWindow - new width + new width - new height + new height - Start the execution of the runloop. + Start the execution of the runloop. + - a #GstGLWindow + a #GstGLWindow + @@ -7515,52 +7935,55 @@ from the @window. - Invoke @callback with data on the window thread. @callback is guarenteed to + Invoke @callback with data on the window thread. @callback is guarenteed to have executed when this function returns. + - a #GstGLWindow + a #GstGLWindow - function to invoke + function to invoke - data to invoke @callback with + data to invoke @callback with - Invoke @callback with @data on the window thread. The callback may not + Invoke @callback with @data on the window thread. The callback may not have been executed when this function returns. + - a #GstGLWindow + a #GstGLWindow - function to invoke + function to invoke - data to invoke @callback with + data to invoke @callback with - called when @data is not needed anymore + called when @data is not needed anymore + @@ -7583,153 +8006,160 @@ have been executed when this function returns. - Sets the callback called when the window is about to close. + Sets the callback called when the window is about to close. + - a #GstGLWindow + a #GstGLWindow - function to invoke + function to invoke - data to invoke @callback with + data to invoke @callback with - called when @data is not needed any more + called when @data is not needed any more - Sets the draw callback called everytime gst_gl_window_draw() is called + Sets the draw callback called everytime gst_gl_window_draw() is called + - a #GstGLWindow + a #GstGLWindow - function to invoke + function to invoke - data to invoke @callback with + data to invoke @callback with - called when @data is not needed any more + called when @data is not needed any more - Set the preferred width and height of the window. Implementations are free + Set the preferred width and height of the window. Implementations are free to ignore this information. + - a #GstGLWindow + a #GstGLWindow - new preferred width + new preferred width - new preferred height + new preferred height - Tell a @window that it should render into a specific region of the window + Tell a @window that it should render into a specific region of the window according to the #GstVideoOverlay interface. + - whether the specified region could be set + whether the specified region could be set - a #GstGLWindow + a #GstGLWindow - x position + x position - y position + y position - width + width - height + height - Sets the resize callback called everytime a resize of the window occurs. + Sets the resize callback called everytime a resize of the window occurs. + - a #GstGLWindow + a #GstGLWindow - function to invoke + function to invoke - data to invoke @callback with + data to invoke @callback with - called when @data is not needed any more + called when @data is not needed any more - Sets the window that this @window should render into. Some implementations + Sets the window that this @window should render into. Some implementations require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow - handle to the window + handle to the window - Present the window to the screen. + Present the window to the screen. + - a #GstGLWindow + a #GstGLWindow @@ -7786,52 +8216,53 @@ require this to be called with a valid handle before drawing can commence. - + - Will be emitted when a key event is received by the GstGLwindow. + Will be emitted when a key event is received by the GstGLwindow. - the name of the event + the name of the event - the id of the key pressed + the id of the key pressed - Will be emitted when a mouse event is received by the GstGLwindow. + Will be emitted when a mouse event is received by the GstGLwindow. - the name of the event + the name of the event - the id of the button + the id of the button - the x coordinate of the mouse event + the x coordinate of the mouse event - the y coordinate of the mouse event + the y coordinate of the mouse event + @@ -7842,19 +8273,21 @@ require this to be called with a valid handle before drawing can commence. + - Parent class + Parent class + - the windowing system display handle for this @window + the windowing system display handle for this @window - a #GstGLWindow + a #GstGLWindow @@ -7862,16 +8295,17 @@ require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow - handle to the window + handle to the window @@ -7879,13 +8313,14 @@ require this to be called with a valid handle before drawing can commence. + - the window handle we are currently rendering into + the window handle we are currently rendering into - a #GstGLWindow + a #GstGLWindow @@ -7893,12 +8328,13 @@ require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow @@ -7906,12 +8342,13 @@ require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow @@ -7919,12 +8356,13 @@ require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow @@ -7932,20 +8370,21 @@ require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow - function to invoke + function to invoke - data to invoke @callback with + data to invoke @callback with @@ -7953,24 +8392,25 @@ require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow - function to invoke + function to invoke - data to invoke @callback with + data to invoke @callback with - called when @data is not needed anymore + called when @data is not needed anymore @@ -7978,6 +8418,7 @@ require this to be called with a valid handle before drawing can commence. + @@ -7990,6 +8431,7 @@ require this to be called with a valid handle before drawing can commence. + @@ -8002,16 +8444,17 @@ require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow - a #gboolean indicating if events should be handled or not. + a #gboolean indicating if events should be handled or not. @@ -8019,20 +8462,21 @@ require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow - new preferred width + new preferred width - new preferred height + new preferred height @@ -8040,12 +8484,13 @@ require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow @@ -8053,29 +8498,30 @@ require this to be called with a valid handle before drawing can commence. + - whether the specified region could be set + whether the specified region could be set - a #GstGLWindow + a #GstGLWindow - x position + x position - y position + y position - width + width - height + height @@ -8083,12 +8529,13 @@ require this to be called with a valid handle before drawing can commence. + - a #GstGLWindow + a #GstGLWindow @@ -8096,33 +8543,34 @@ require this to be called with a valid handle before drawing can commence. + - %TRUE if @window controls the GL viewport, otherwise %FALSE + %TRUE if @window controls the GL viewport, otherwise %FALSE - a #GstGLWindow + a #GstGLWindow - + - failed for a unspecified reason + failed for a unspecified reason - the implementation is too old + the implementation is too old - no such resource was found + no such resource was found @@ -8131,8 +8579,10 @@ require this to be called with a valid handle before drawing can commence. + + @@ -8149,260 +8599,1132 @@ require this to be called with a valid handle before drawing can commence. - GL Allocation flag indicating that the implementation should allocate the + GL Allocation flag indicating that the implementation should allocate the necessary resources. + - GL allocation flag indicating the allocation of a GL buffer. + GL allocation flag indicating the allocation of a GL buffer. + - Values >= than #GST_GL_ALLOCATION_PARAMS_ALLOC_FLAG_USER can be used for + Values >= than #GST_GL_ALLOCATION_PARAMS_ALLOC_FLAG_USER can be used for user-defined purposes. + - GL allocation flag indicating the allocation of 2D video frames + GL allocation flag indicating the allocation of 2D video frames + - GL Allocation flag for using the provided GPU handle as storage. + GL Allocation flag for using the provided GPU handle as storage. + - GL Allocation flag for using the provided system memory data as storage. + GL Allocation flag for using the provided system memory data as storage. + - The name for %GST_GL_API_GLES1 used in various places + The name for %GST_GL_API_GLES1 used in various places + - The name for %GST_GL_API_GLES2 used in various places + The name for %GST_GL_API_GLES2 used in various places + - The name for %GST_GL_API_OPENGL3 used in various places + The name for %GST_GL_API_OPENGL3 used in various places + - The name for %GST_GL_API_OPENGL used in various places + The name for %GST_GL_API_OPENGL used in various places + + + Stores a debug message in @ad for later output + + + + the #GstGLAsyncDebug to store the message in + + + the #GstDebugCategory to output the message in + + + the #GstLevel + + + a #GObject to associate with the debug message + + + a printf style format string + + + the list of arguments for @format + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The name of the GL buffer allocator + The name of the GL buffer allocator + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The name of the GL buffer allocator + The name of the GL buffer allocator + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The currently supported formats that can be converted + The currently supported formats that can be converted + - The currently supported #GstCaps that can be converted + The currently supported #GstCaps that can be converted + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The name used in #GstContext queries for requesting a #GstGLDisplay + The name used in #GstContext queries for requesting a #GstGLDisplay + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The name of the GL memory allocator + The name of the GL memory allocator + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The name of the GL Memory PBO allocator + The name of the GL Memory PBO allocator + - List of video formats that are supported by #GstGLMemory + List of video formats that are supported by #GstGLMemory + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The name of the GL renderbuffer allocator + The name of the GL renderbuffer allocator + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - String used for %GST_GL_TEXTURE_TARGET_2D in things like caps values + String used for %GST_GL_TEXTURE_TARGET_2D in things like caps values + - String used for %GST_GL_TEXTURE_TARGET_EXTERNAL_OES in things like caps values + String used for %GST_GL_TEXTURE_TARGET_EXTERNAL_OES in things like caps values + - String used for %GST_GL_TEXTURE_TARGET_RECTANGLE in things like caps values + String used for %GST_GL_TEXTURE_TARGET_RECTANGLE in things like caps values + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Cast to the currect function type for generic window callbacks + + + + the function to cast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Cast to the currect function type for window resize callbacks + + + + the function to cast + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Flag indicating that we should map the GL object instead of to system memory. + Flag indicating that we should map the GL object instead of to system memory. Combining #GST_MAP_GL with #GST_MAP_WRITE has the same semantics as though you are writing to OpenGL. Conversely, combining #GST_MAP_GL with #GST_MAP_READ has the same semantics as though you are reading from OpenGL. + + - the #GstGLSyncMeta added to #GstBuffer + the #GstGLSyncMeta added to #GstBuffer - a #GstGLContext + a #GstGLContext - a #GstBuffer + a #GstBuffer + - the #GstGLSyncMeta added to #GstBuffer + the #GstGLSyncMeta added to #GstBuffer - a #GstGLContext + a #GstGLContext - a #GstBuffer + a #GstBuffer - sync data to hold + sync data to hold + + + + + + + + - the currently set #GstGLAllocationParams or %NULL + the currently set #GstGLAllocationParams or %NULL - a buffer pool config + a buffer pool config - Sets @params on @config + Sets @params on @config + - a buffer pool config + a buffer pool config - a #GstGLAllocationParams + a #GstGLAllocationParams + - Whether @display was in @context + Whether @display was in @context - a #GstContext + a #GstContext - resulting #GstGLDisplay + resulting #GstGLDisplay - Sets @display on @context + Sets @display on @context + - a #GstContext + a #GstContext - resulting #GstGLDisplay + resulting #GstGLDisplay + - The #GstGLAPI represented by @api_s + The #GstGLAPI represented by @api_s - a space seperated string of OpenGL apis + a space seperated string of OpenGL apis + - A space seperated string of the OpenGL api's enabled in @api + A space seperated string of the OpenGL api's enabled in @api - a #GstGLAPI to stringify + a #GstGLAPI to stringify - Free with gst_gl_async_debug_free() + Free with gst_gl_async_debug_free() + - a new #GstGLAsyncDebug + a new #GstGLAsyncDebug + - a new #GstGLBaseMemory from @allocator with the requested @params. + a new #GstGLBaseMemory from @allocator with the requested @params. - a #GstGLBaseMemoryAllocator + a #GstGLBaseMemoryAllocator - the #GstGLAllocationParams to allocate the memory with + the #GstGLAllocationParams to allocate the memory with @@ -8413,31 +9735,34 @@ you are writing to OpenGL. Conversely, combining #GST_MAP_GL with - Initializes the GL Base Memory allocator. It is safe to call this function + Initializes the GL Base Memory allocator. It is safe to call this function multiple times. This must be called before any other GstGLBaseMemory operation. + - Initializes the GL Buffer allocator. It is safe to call this function + Initializes the GL Buffer allocator. It is safe to call this function multiple times. This must be called before any other #GstGLBuffer operation. + + - whether @name is in the space seperated list of @ext + whether @name is in the space seperated list of @ext - the extension to search for + the extension to search for - the list of possible extensions + the list of possible extensions @@ -8447,7 +9772,22 @@ multiple times. This must be called before any other #GstGLBuffer operation. + + + + + + + + + + + + + + + @@ -8461,7 +9801,7 @@ multiple times. This must be called before any other #GstGLBuffer operation. - Perform the steps necessary for retrieving a #GstGLDisplay and (optionally) + Perform the steps necessary for retrieving a #GstGLDisplay and (optionally) an application provided #GstGLContext from the surrounding elements or from the application using the #GstContext mechanism. @@ -8477,504 +9817,569 @@ retrieval. This also performs a #GstContext query (if necessary) for an optional application provided #GstGLContext using the name "gst.gl.app_context". The returned #GstGLContext will be shared with a GStreamer created OpenGL context. + - whether a #GstGLDisplay exists in @display_ptr + whether a #GstGLDisplay exists in @display_ptr - the #GstElement running the query + the #GstElement running the query - the resulting #GstGLDisplay + the resulting #GstGLDisplay - the resulting #GstGLContext + the resulting #GstGLContext + - the #GstGLFormat necessary for holding the data in @plane of @vinfo + the #GstGLFormat necessary for holding the data in @plane of @vinfo - a #GstGLContext + a #GstGLContext - a #GstVideoInfo + a #GstVideoInfo - the plane number in @vinfo + the plane number in @vinfo + - Whether @format is supported by @context based on the OpenGL API, + Whether @format is supported by @context based on the OpenGL API, version, or available OpenGL extension/s. - a #GstGLContext + a #GstGLContext - the #GstGLFormat to check is supported by @context + the #GstGLFormat to check is supported by @context - Get the unsized format and type from @format for usage in glReadPixels, + Get the unsized format and type from @format for usage in glReadPixels, glTex{Sub}Image*, glTexImage* and similar functions. + - the sized internal #GstGLFormat + the sized internal #GstGLFormat - location for the resulting unsized #GstGLFormat + location for the resulting unsized #GstGLFormat - location for the resulting GL type + location for the resulting GL type + - the number of bytes the specified @format, @type combination takes + the number of bytes the specified @format, @type combination takes per pixel - the OpenGL format, %GL_RGBA, %GL_LUMINANCE, etc + the OpenGL format, %GL_RGBA, %GL_LUMINANCE, etc - the OpenGL type, %GL_UNSIGNED_BYTE, %GL_FLOAT, etc + the OpenGL type, %GL_UNSIGNED_BYTE, %GL_FLOAT, etc - Retrieve the size in bytes of a video plane of data with a certain alignment + Retrieve the size in bytes of a video plane of data with a certain alignment + - a #GstVideoInfo + a #GstVideoInfo - a #GstVideoAlignment or %NULL + a #GstVideoAlignment or %NULL - plane number in @info to retrieve the data size of + plane number in @info to retrieve the data size of + - difference between the supposed start of the plane from the @info + difference between the supposed start of the plane from the @info and where the data from the previous plane ends. - a #GstVideoInfo + a #GstVideoInfo - a #GstVideoAlignment or %NULL + a #GstVideoAlignment or %NULL - plane number in @info to retrieve the data size of + plane number in @info to retrieve the data size of + - Whether the @query was successfully responded to from the passed + Whether the @query was successfully responded to from the passed @display, @context, and @other_context. - a #GstElement + a #GstElement - a #GstQuery of type %GST_QUERY_CONTEXT + a #GstQuery of type %GST_QUERY_CONTEXT - a #GstGLDisplay + a #GstGLDisplay - a #GstGLContext + a #GstGLContext - application provided #GstGLContext + application provided #GstGLContext - Helper function for implementing #GstElementClass.set_context() in + Helper function for implementing #GstElementClass.set_context() in OpenGL capable elements. Retrieve's the #GstGLDisplay or #GstGLContext in @context and places the result in @display or @other_context respectively. + - whether the @display or @other_context could be set successfully + whether the @display or @other_context could be set successfully - a #GstElement + a #GstElement - a #GstContext + a #GstContext - location of a #GstGLDisplay + location of a #GstGLDisplay - location of a #GstGLContext + location of a #GstGLContext - Inserts a marker into a GL debug stream. Requires the 'gldebugmarker' + Inserts a marker into a GL debug stream. Requires the 'gldebugmarker' debug category to be at least %GST_LEVEL_FIXME. + - a #GstGLContext + a #GstGLContext - a printf-style format string + a printf-style format string - arguments form @format + arguments form @format - Initializes the GL Base Texture allocator. It is safe to call this function + Initializes the GL Base Texture allocator. It is safe to call this function multiple times. This must be called before any other GstGLMemory operation. + + + - whether the buffer was correctly setup + whether the buffer was correctly setup - the @GstGLMemoryAllocator to allocate from + the @GstGLMemoryAllocator to allocate from - a #GstBuffer to setup + a #GstBuffer to setup - the #GstGLVideoAllocationParams to allocate with + the #GstGLVideoAllocationParams to allocate with - + a list of #GstGLFormat's to allocate with. - + a list of wrapped data pointers - the number of elements in @tex_formats and @wrapped_data + the number of elements in @tex_formats and @wrapped_data + - The #GstGLPlatform represented by @platform_s + The #GstGLPlatform represented by @platform_s - a space seperated string of OpenGL platformss + a space seperated string of OpenGL platformss + - A space seperated string of the OpenGL platforms enabled in @platform + A space seperated string of the OpenGL platforms enabled in @platform - a #GstGLPlatform to stringify + a #GstGLPlatform to stringify + + + + + + + + + + + + + + + + + - Performs a GST_QUERY_CONTEXT query of type "gst.gl.local_context" on all + Performs a GST_QUERY_CONTEXT query of type "gst.gl.local_context" on all #GstPads in @element of @direction for the local OpenGL context used by GStreamer elements. + - whether @context_ptr contains a #GstGLContext + whether @context_ptr contains a #GstGLContext - a #GstElement to query from + a #GstElement to query from - the #GstPadDirection to query + the #GstPadDirection to query - location containing the current and/or resulting + location containing the current and/or resulting #GstGLContext - Free with gst_gl_query_free() + Free with gst_gl_query_free() + - a new #GstGLQuery + a new #GstGLQuery - a #GstGLContext + a #GstGLContext - the #GstGLQueryType to create + the #GstGLQueryType to create + + + + + + + + + + + + + + + + + - Initializes the GL Base Texture allocator. It is safe to call this function + Initializes the GL Base Texture allocator. It is safe to call this function multiple times. This must be called before any other GstGLRenderbuffer operation. + + - the sized internal format specified by @format and @type that can + the sized internal format specified by @format and @type that can be used in @context - a #GstGLContext + a #GstGLContext - an OpenGL format, %GL_RGBA, %GL_LUMINANCE, etc + an OpenGL format, %GL_RGBA, %GL_LUMINANCE, etc - an OpenGL type, %GL_UNSIGNED_BYTE, %GL_FLOAT, etc + an OpenGL type, %GL_UNSIGNED_BYTE, %GL_FLOAT, etc + + + + - the #GstGLTextureTarget that's equiavalant to @target or + the #GstGLTextureTarget that's equiavalant to @target or %GST_GL_TEXTURE_TARGET_NONE - an OpenGL texture binding target + an OpenGL texture binding target + - the #GstGLTextureTarget represented by @str or + the #GstGLTextureTarget represented by @str or %GST_GL_TEXTURE_TARGET_NONE - a string equivalant to one of the GST_GL_TEXTURE_TARGET_*_STR values + a string equivalant to one of the GST_GL_TEXTURE_TARGET_*_STR values + - a string representing the @GstBufferPoolOption specified by @target + a string representing the @GstBufferPoolOption specified by @target - a #GstGLTextureTarget + a #GstGLTextureTarget + - the OpenGL value for binding the @target with glBindTexture() and + the OpenGL value for binding the @target with glBindTexture() and similar functions or 0 - a #GstGLTextureTarget + a #GstGLTextureTarget + - the stringified version of @target or %NULL + the stringified version of @target or %NULL - a #GstGLTextureTarget + a #GstGLTextureTarget - See gst_gl_value_set_texture_target_from_mask() for what entails a mask + See gst_gl_value_set_texture_target_from_mask() for what entails a mask + - the mask of #GstGLTextureTarget's in @value + the mask of #GstGLTextureTarget's in @value - an initialized #GValue of type G_TYPE_STRING + an initialized #GValue of type G_TYPE_STRING + - whether the @target could be set on @value + whether the @target could be set on @value - an initialized #GValue of type G_TYPE_STRING + an initialized #GValue of type G_TYPE_STRING - a #GstGLTextureTarget's + a #GstGLTextureTarget's - A mask is a bitwise OR of (1 << target) where target is a valid + A mask is a bitwise OR of (1 << target) where target is a valid #GstGLTextureTarget + - whether the @target_mask could be set on @value + whether the @target_mask could be set on @value - an uninitialized #GValue + an uninitialized #GValue - a bitwise mask of #GstGLTextureTarget's + a bitwise mask of #GstGLTextureTarget's + - The minimum supported #GstGLSLVersion available for @gl_api, @maj and @min + The minimum supported #GstGLSLVersion available for @gl_api, @maj and @min - the #GstGLAPI + the #GstGLAPI - the major GL version + the major GL version - the minor GL version + the minor GL version @@ -8990,169 +10395,181 @@ multiple times. This must be called before any other GstGLRenderbuffer operatio + - the #GstGLSLProfile of @string or %GST_GLSL_PROFILE_NONE on error + the #GstGLSLProfile of @string or %GST_GLSL_PROFILE_NONE on error - a GLSL version string + a GLSL version string + - the name for @profile or %NULL on error + the name for @profile or %NULL on error - a #GstGLSLProfile + a #GstGLSLProfile - Note: this function first searches the first 1 kilobytes for a #version + Note: this function first searches the first 1 kilobytes for a #version preprocessor directive and then executes gst_glsl_version_profile_from_string(). + - TRUE if a valid #version string was found, FALSE otherwise + TRUE if a valid #version string was found, FALSE otherwise - string to search for a valid #version string + string to search for a valid #version string - resulting #GstGLSLVersion + resulting #GstGLSLVersion - resulting #GstGLSLProfile + resulting #GstGLSLProfile + - the #GstGLSLVersion of @string or %GST_GLSL_VERSION_NONE on error + the #GstGLSLVersion of @string or %GST_GLSL_VERSION_NONE on error - a GLSL version string + a GLSL version string - Note: this function expects either a #version GLSL preprocesser directive + Note: this function expects either a #version GLSL preprocesser directive or a valid GLSL version and/or profile. + - TRUE if a valid #version string was found, FALSE otherwise + TRUE if a valid #version string was found, FALSE otherwise - a valid GLSL #version string + a valid GLSL #version string - resulting #GstGLSLVersion + resulting #GstGLSLVersion - resulting #GstGLSLVersion + resulting #GstGLSLVersion + - the combined GLSL #version string for @version and @profile + the combined GLSL #version string for @version and @profile - a #GstGLSLVersion + a #GstGLSLVersion - a #GstGLSLVersion + a #GstGLSLVersion + - the name of @version or %NULL on error + the name of @version or %NULL on error - a #GstGLSLVersion + a #GstGLSLVersion + - whether the memory at @mem is a #GstGLBaseMemory + whether the memory at @mem is a #GstGLBaseMemory - a #GstMemory + a #GstMemory + - whether the memory at @mem is a #GstGLBuffer + whether the memory at @mem is a #GstGLBuffer - a #GstMemory + a #GstMemory + - whether the memory at @mem is a #GstGLMemory + whether the memory at @mem is a #GstGLMemory - a #GstMemory + a #GstMemory + - whether the memory at @mem is a #GstGLMemoryPBO + whether the memory at @mem is a #GstGLMemoryPBO - a #GstMemory + a #GstMemory + - whether the memory at @mem is a #GstGLRenderbuffer + whether the memory at @mem is a #GstGLRenderbuffer - a #GstMemory + a #GstMemory diff --git a/gir-files/GstMpegts-1.0.gir b/gir-files/GstMpegts-1.0.gir index 08140a90c..5795e7e29 100644 --- a/gir-files/GstMpegts-1.0.gir +++ b/gir-files/GstMpegts-1.0.gir @@ -16,10 +16,13 @@ and/or use gtk-doc annotations. --> c:symbol-prefixes="gst_mpegts,gst"> - These values correspond to the registered descriptor type from + These values correspond to the registered descriptor type from the various ATSC specifications. Consult the relevant specifications for more details. + @@ -106,17 +109,26 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsAtscEIT" glib:get-type="gst_mpegts_atsc_eit_get_type" c:symbol-prefix="atsc_eit"> - Event Information Table (ATSC) + Event Information Table (ATSC) + - The source id + The source id - The protocol version + The protocol version - Events + Events @@ -127,31 +139,46 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsAtscEITEvent" glib:get-type="gst_mpegts_atsc_eit_event_get_type" c:symbol-prefix="atsc_eit_event"> - An ATSC EIT Event + An ATSC EIT Event + - The event id + The event id - The start time + The start time - The etm location + The etm location - The length in seconds + The length in seconds - the titles + the titles - descriptors + descriptors @@ -162,20 +189,29 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsAtscETT" glib:get-type="gst_mpegts_atsc_ett_get_type" c:symbol-prefix="atsc_ett"> - Extended Text Table (ATSC) + Extended Text Table (ATSC) + - The protocol version + The protocol version - The etm id + The etm id - List of texts + List of texts @@ -186,23 +222,34 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsAtscMGT" glib:get-type="gst_mpegts_atsc_mgt_get_type" c:symbol-prefix="atsc_mgt"> - Master Guide Table (A65) + Master Guide Table (A65) + - The protocol version + The protocol version - The numbers of subtables + The numbers of subtables - the tables + the tables - descriptors + descriptors @@ -213,30 +260,42 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsAtscMGTTable" glib:get-type="gst_mpegts_atsc_mgt_table_get_type" c:symbol-prefix="atsc_mgt_table"> - Source from a @GstMpegtsAtscMGT + Source from a @GstMpegtsAtscMGT + - #GstMpegtsAtscMGTTableType + #GstMpegtsAtscMGTTableType - The packet ID + The packet ID - The version number + The version number - descriptors + descriptors + @@ -259,9 +318,12 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsAtscMultString" glib:get-type="gst_mpegts_atsc_mult_string_get_type" c:symbol-prefix="atsc_mult_string"> + - The ISO639 language code - + The ISO639 language code + @@ -276,42 +338,60 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsAtscSTT" glib:get-type="gst_mpegts_atsc_stt_get_type" c:symbol-prefix="atsc_stt"> - System Time Table (A65) + System Time Table (A65) + - The protocol version + The protocol version - The system time + The system time - The GPS to UTC offset + The GPS to UTC offset - The day of month + The day of month - The hour + The hour - descriptors + descriptors - The UTC date and time + The UTC date and time + @@ -327,21 +407,32 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsAtscStringSegment" glib:get-type="gst_mpegts_atsc_string_segment_get_type" c:symbol-prefix="atsc_string_segment"> - A string segment + A string segment + - The compression type + The compression type - The mode + The mode - The size of compressed data + The size of compressed data - The compressed data + The compressed data @@ -349,6 +440,7 @@ Consult the relevant specifications for more details. + @@ -365,25 +457,36 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsAtscVCT" glib:get-type="gst_mpegts_atsc_vct_get_type" c:symbol-prefix="atsc_vct"> - Represents both: + Represents both: Terrestrial Virtual Channel Table (A65) Cable Virtual Channel Table (A65) + - The transport stream + The transport stream - The protocol version + The protocol version - sources + sources - descriptors + descriptors @@ -394,69 +497,104 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsAtscVCTSource" glib:get-type="gst_mpegts_atsc_vct_source_get_type" c:symbol-prefix="atsc_vct_source"> - Source from a @GstMpegtsAtscVCT, can be used both for TVCT and CVCT tables + Source from a @GstMpegtsAtscVCT, can be used both for TVCT and CVCT tables + - The short name of a source + The short name of a source - The major channel number + The major channel number - The minor channel number + The minor channel number - The modulation mode + The modulation mode - The carrier frequency + The carrier frequency - The transport stream ID + The transport stream ID - The program number (see #GstMpegtsPatProgram) + The program number (see #GstMpegtsPatProgram) - The ETM location + The ETM location - is access controlled + is access controlled - is hidden + is hidden - is path select, CVCT only + is path select, CVCT only - is out of band, CVCT only + is out of band, CVCT only - is hide guide + is hide guide - The service type + The service type - The source id + The source id - an array of #GstMpegtsDescriptor + an array of #GstMpegtsDescriptor @@ -467,7 +605,10 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsBAT" glib:get-type="gst_mpegts_bat_get_type" c:symbol-prefix="bat"> - DVB Bouquet Association Table (EN 300 468) + DVB Bouquet Association Table (EN 300 468) + @@ -484,6 +625,7 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsBATStream" glib:get-type="gst_mpegts_bat_stream_get_type" c:symbol-prefix="bat_stream"> + @@ -501,30 +643,44 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsCableDeliverySystemDescriptor" glib:get-type="gst_mpegts_dvb_cable_delivery_system_descriptor_get_type" c:symbol-prefix="dvb_cable_delivery_system_descriptor"> - Cable Delivery System Descriptor (EN 300 468 v.1.13.1) + Cable Delivery System Descriptor (EN 300 468 v.1.13.1) + - the frequency in Hz (Hertz) + the frequency in Hz (Hertz) - the outer FEC scheme used + the outer FEC scheme used - Modulation scheme used + Modulation scheme used - Symbol rate (in symbols per second) + Symbol rate (in symbols per second) - inner FEC scheme used + inner FEC scheme used + @@ -538,6 +694,7 @@ Consult the relevant specifications for more details. + @@ -556,6 +713,7 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsComponentDescriptor" glib:get-type="gst_mpegts_component_descriptor_get_type" c:symbol-prefix="component_descriptor"> + @@ -574,6 +732,7 @@ Consult the relevant specifications for more details. + @@ -612,6 +771,7 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsContent" glib:get-type="gst_mpegts_content_get_type" c:symbol-prefix="content"> + @@ -623,6 +783,7 @@ Consult the relevant specifications for more details. + @@ -667,6 +828,7 @@ Consult the relevant specifications for more details. + @@ -695,12 +857,15 @@ Consult the relevant specifications for more details. - The type of #GstMpegtsDescriptor + The type of #GstMpegtsDescriptor These values correspond to the registered descriptor type from the various DVB specifications. Consult the relevant specifications for more details. + @@ -946,12 +1111,15 @@ Consult the relevant specifications for more details. - The type of #GstMpegtsDescriptor + The type of #GstMpegtsDescriptor These values correspond to the registered extended descriptor type from the various DVB specifications. Consult the relevant specifications for more details. + @@ -1030,35 +1198,49 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsDVBLinkageDescriptor" glib:get-type="gst_mpegts_dvb_linkage_descriptor_get_type" c:symbol-prefix="dvb_linkage_descriptor"> + - the transport id + the transport id - the original network id + the original network id - the service id + the service id - the type which %linkage_data has + the type which %linkage_data has - the length for %private_data_bytes + the length for %private_data_bytes - additional data bytes + additional data bytes + @@ -1071,14 +1253,19 @@ Consult the relevant specifications for more details. + - The #GstMpegtsDVBLinkageEvent or %NULL if an error happened + The #GstMpegtsDVBLinkageEvent or %NULL if an error happened - the #GstMpegtsDVBLinkageDescriptor + the #GstMpegtsDVBLinkageDescriptor @@ -1086,15 +1273,20 @@ Consult the relevant specifications for more details. + - an #GstMpegtsDVBLinkageExtendedEvent array or %NULL if an error happened + an #GstMpegtsDVBLinkageExtendedEvent array or %NULL if an error happened - the #GstMpegtsDVBLinkageDescriptor + the #GstMpegtsDVBLinkageDescriptor @@ -1102,14 +1294,19 @@ Consult the relevant specifications for more details. + - The #GstMpegtsDVBLinkageMobileHandOver or %NULL if an error happened + The #GstMpegtsDVBLinkageMobileHandOver or %NULL if an error happened - the #GstMpegtsDVBLinkageDescriptor + the #GstMpegtsDVBLinkageDescriptor @@ -1121,6 +1318,7 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsDVBLinkageEvent" glib:get-type="gst_mpegts_dvb_linkage_event_get_type" c:symbol-prefix="dvb_linkage_event"> + @@ -1136,6 +1334,7 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsDVBLinkageExtendedEvent" glib:get-type="gst_mpegts_dvb_linkage_extended_event_get_type" c:symbol-prefix="dvb_linkage_extended_event"> + @@ -1172,6 +1371,7 @@ Consult the relevant specifications for more details. + @@ -1194,6 +1394,7 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsDVBLinkageMobileHandOver" glib:get-type="gst_mpegts_dvb_linkage_mobile_hand_over_get_type" c:symbol-prefix="dvb_linkage_mobile_hand_over"> + @@ -1209,7 +1410,10 @@ Consult the relevant specifications for more details. - Linkage Type (EN 300 468 v.1.13.1) + Linkage Type (EN 300 468 v.1.13.1) + @@ -1274,6 +1478,7 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsDVBParentalRatingItem" glib:get-type="gst_mpegts_dvb_parental_rating_item_get_type" c:symbol-prefix="dvb_parental_rating_item"> + @@ -1283,6 +1488,7 @@ Consult the relevant specifications for more details. + @@ -1325,19 +1531,27 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsDVBServiceListItem" glib:get-type="gst_mpegts_dvb_service_list_item_get_type" c:symbol-prefix="dvb_service_list_item"> + - the id of a service + the id of a service - the type of a service + the type of a service - The type of service of a channel. + The type of service of a channel. As specified in Table 87 of ETSI EN 300 468 v1.13.1 + @@ -1442,9 +1656,12 @@ As specified in Table 87 of ETSI EN 300 468 v1.13.1 - The type of teletext page. + The type of teletext page. As specified in Table 100 of ETSI EN 300 468 v1.13.1 + @@ -1467,31 +1684,43 @@ As specified in Table 100 of ETSI EN 300 468 v1.13.1 glib:type-name="GstMpegtsDataBroadcastDescriptor" glib:get-type="gst_mpegts_dvb_data_broadcast_descriptor_get_type" c:symbol-prefix="dvb_data_broadcast_descriptor"> + - the data broadcast id + the data broadcast id - the component tag + the component tag - the selector byte field + the selector byte field - language of @text + language of @text - description of data broadcast + description of data broadcast + @@ -1508,67 +1737,94 @@ As specified in Table 100 of ETSI EN 300 468 v1.13.1 glib:type-name="GstMpegtsDescriptor" glib:get-type="gst_mpegts_descriptor_get_type" c:symbol-prefix="descriptor"> - These are the base descriptor types and methods. + These are the base descriptor types and methods. For more details, refer to the ITU H.222.0 or ISO/IEC 13818-1 specifications and other specifications mentionned in the documentation. + - the type of descriptor + the type of descriptor - the extended type (if @descriptor_tag is 0x7f) + the extended type (if @descriptor_tag is 0x7f) - the length of the descriptor content (excluding tag/length field) + the length of the descriptor content (excluding tag/length field) - the full descriptor data (including tag, extension, length). The first + the full descriptor data (including tag, extension, length). The first two bytes are the @tag and @length. - + - Frees @desc + Frees @desc + - The descriptor to free + The descriptor to free - Extracts the Conditional Access information from @descriptor. + Extracts the Conditional Access information from @descriptor. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_CA #GstMpegtsDescriptor + a %GST_MTS_DESC_CA #GstMpegtsDescriptor - the type of CA system used + the type of CA system used - The PID containing ECM or EMM data + The PID containing ECM or EMM data transfer-ownership="full" optional="1" allow-none="1"> - The private data + The private data @@ -1588,28 +1846,39 @@ two bytes are the @tag and @length. transfer-ownership="full" optional="1" allow-none="1"> - The size of @private_data in bytes + The size of @private_data in bytes - Extracts the cable delivery system information from @descriptor. + Extracts the cable delivery system information from @descriptor. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM #GstMpegtsDescriptor - the #GstMpegtsCableDeliverySystemDescriptor to fill + the #GstMpegtsCableDeliverySystemDescriptor to fill @@ -1617,9 +1886,14 @@ two bytes are the @tag and @length. - Extracts the bouquet name from @descriptor. + Extracts the bouquet name from @descriptor. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. @@ -1632,28 +1906,39 @@ two bytes are the @tag and @length. transfer-ownership="full" optional="1" allow-none="1"> - the bouquet name + the bouquet name - Extracts ca id's from @descriptor. + Extracts ca id's from @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_CA_IDENTIFIER #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_CA_IDENTIFIER #GstMpegtsDescriptor - a list of ca identifier. + a list of ca identifier. Edge entry identifies the CA system. Allocations of the value of this field are found in http://www.dvbservices.com @@ -1664,21 +1949,30 @@ are found in http://www.dvbservices.com - Extracts the DVB component information from @descriptor. + Extracts the DVB component information from @descriptor. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_DVB_COMPONENT #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_COMPONENT #GstMpegtsDescriptor - the #GstMpegtsComponentDescriptor to fill + the #GstMpegtsComponentDescriptor to fill @@ -1686,21 +1980,30 @@ are found in http://www.dvbservices.com - Extracts the DVB content information from @descriptor. + Extracts the DVB content information from @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_CONTENT #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_CONTENT #GstMpegtsDescriptor - #GstMpegtsContent + #GstMpegtsContent @@ -1709,21 +2012,30 @@ are found in http://www.dvbservices.com - Parses out the data broadcast from the @descriptor. + Parses out the data broadcast from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_DATA_BROADCAST #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_DATA_BROADCAST #GstMpegtsDescriptor - #GstMpegtsDataBroadcastDescriptor + #GstMpegtsDataBroadcastDescriptor @@ -1731,28 +2043,39 @@ are found in http://www.dvbservices.com - Parses out the data broadcast id from the @descriptor. + Parses out the data broadcast id from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_DATA_BROADCAST_ID #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_DATA_BROADCAST_ID #GstMpegtsDescriptor - the data broadcast id + the data broadcast id - the selector bytes, if present + the selector bytes, if present @@ -1761,28 +2084,39 @@ are found in http://www.dvbservices.com direction="out" caller-allocates="0" transfer-ownership="full"> - the length of #id_selector_bytes + the length of #id_selector_bytes - Extracts the DVB extended event information from @descriptor. + Extracts the DVB extended event information from @descriptor. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_DVB_EXTENDED_EVENT #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_EXTENDED_EVENT #GstMpegtsDescriptor - the #GstMpegtsExtendedEventDescriptor to fill + the #GstMpegtsExtendedEventDescriptor to fill @@ -1790,28 +2124,39 @@ are found in http://www.dvbservices.com - Parses out a list of frequencies from the @descriptor. + Parses out a list of frequencies from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_FREQUENCY_LIST #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_FREQUENCY_LIST #GstMpegtsDescriptor - %FALSE in Hz, %TRUE in kHz + %FALSE in Hz, %TRUE in kHz - a list of all frequencies in Hz/kHz + a list of all frequencies in Hz/kHz depending on %offset @@ -1821,21 +2166,30 @@ depending on %offset - Extracts the DVB linkage information from @descriptor. + Extracts the DVB linkage information from @descriptor. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_DVB_LINKAGE #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_LINKAGE #GstMpegtsDescriptor - the #GstMpegtsDVBLinkageDescriptor to fill + the #GstMpegtsDVBLinkageDescriptor to fill @@ -1843,14 +2197,21 @@ depending on %offset - Parses out the multilingual bouquet name from the @descriptor. + Parses out the multilingual bouquet name from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_MULTILINGUAL_BOUQUET_NAME + a %GST_MTS_DESC_DVB_MULTILINGUAL_BOUQUET_NAME #GstMpegtsDescriptor @@ -1858,7 +2219,9 @@ depending on %offset direction="out" caller-allocates="0" transfer-ownership="full"> - + a #GstMpegtsDvbMultilingualBouquetNameItem @@ -1868,14 +2231,21 @@ a #GstMpegtsDvbMultilingualBouquetNameItem - Parses out the multilingual component from the @descriptor. + Parses out the multilingual component from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT + a %GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT #GstMpegtsDescriptor @@ -1883,14 +2253,18 @@ a #GstMpegtsDvbMultilingualBouquetNameItem direction="out" caller-allocates="0" transfer-ownership="full"> - the component tag + the component tag - + a #GstMpegtsDvbMultilingualComponentItem @@ -1900,14 +2274,21 @@ a #GstMpegtsDvbMultilingualComponentItem - Parses out the multilingual network name from the @descriptor. + Parses out the multilingual network name from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_MULTILINGUAL_NETWORK_NAME + a %GST_MTS_DESC_DVB_MULTILINGUAL_NETWORK_NAME #GstMpegtsDescriptor @@ -1915,7 +2296,9 @@ a #GstMpegtsDvbMultilingualComponentItem direction="out" caller-allocates="0" transfer-ownership="full"> - + a #GstMpegtsDvbMultilingualNetworkNameItem @@ -1925,14 +2308,21 @@ a #GstMpegtsDvbMultilingualNetworkNameItem - Parses out the multilingual service name from the @descriptor. + Parses out the multilingual service name from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_MULTILINGUAL_SERVICE_NAME + a %GST_MTS_DESC_DVB_MULTILINGUAL_SERVICE_NAME #GstMpegtsDescriptor @@ -1940,7 +2330,9 @@ a #GstMpegtsDvbMultilingualNetworkNameItem direction="out" caller-allocates="0" transfer-ownership="full"> - + a #GstMpegtsDvbMultilingualServiceNameItem @@ -1950,42 +2342,60 @@ a #GstMpegtsDvbMultilingualServiceNameItem - Parses out the dvb network name from the @descriptor: + Parses out the dvb network name from the @descriptor: + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_NETWORK_NAME #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_NETWORK_NAME #GstMpegtsDescriptor - the extracted name + the extracted name - Extracts the DVB parental rating information from @descriptor. + Extracts the DVB parental rating information from @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_PARENTAL_RATING #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_PARENTAL_RATING #GstMpegtsDescriptor - + #GstMpegtsDVBParentalRatingItem @@ -1995,21 +2405,30 @@ a #GstMpegtsDvbMultilingualServiceNameItem - Parses out the private data specifier from the @descriptor. + Parses out the private data specifier from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER #GstMpegtsDescriptor - the private data specifier id + the private data specifier id registered by http://www.dvbservices.com/ @@ -2019,7 +2438,9 @@ registered by http://www.dvbservices.com/ transfer-ownership="full" optional="1" allow-none="1"> - additional data or NULL + additional data or NULL @@ -2030,28 +2451,39 @@ registered by http://www.dvbservices.com/ transfer-ownership="full" optional="1" allow-none="1"> - length of %private_data + length of %private_data - Parses out the scrambling mode from the @descriptor. + Parses out the scrambling mode from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_SCRAMBLING #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_SCRAMBLING #GstMpegtsDescriptor - This 8-bit field identifies the selected + This 8-bit field identifies the selected mode of the scrambling algorithm (#GstMpegtsDVBScramblingModeType). The technical details of the scrambling algorithm are available only to bona-fide users upon signature of a Non Disclosure Agreement (NDA) @@ -2063,14 +2495,21 @@ administered by the DVB Common Scrambling Algorithm Custodian. - Extracts the dvb service information from @descriptor. + Extracts the dvb service information from @descriptor. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_DVB_SERVICE #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_SERVICE #GstMpegtsDescriptor transfer-ownership="full" optional="1" allow-none="1"> - the service type + the service type transfer-ownership="full" optional="1" allow-none="1"> - the service name + the service name transfer-ownership="full" optional="1" allow-none="1"> - the provider name + the provider name - Parses out a list of services from the @descriptor: + Parses out a list of services from the @descriptor: + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_SERVICE_LIST #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_SERVICE_LIST #GstMpegtsDescriptor - + the list of services @@ -2128,14 +2582,21 @@ the list of services - Extracts the DVB short event information from @descriptor. + Extracts the DVB short event information from @descriptor. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_DVB_SHORT_EVENT #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_SHORT_EVENT #GstMpegtsDescriptor transfer-ownership="full" optional="1" allow-none="1"> - the language code + the language code transfer-ownership="full" optional="1" allow-none="1"> - the event name + the event name transfer-ownership="full" optional="1" allow-none="1"> - the event text + the event text - Extracts the component tag from @descriptor. + Extracts the component tag from @descriptor. + - %TRUE if the parsing happended correctly, else %FALSE. + %TRUE if the parsing happended correctly, else %FALSE. - a %GST_MTS_DESC_DVB_CONTENT #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_CONTENT #GstMpegtsDescriptor - the component tag + the component tag - Parses out the stuffing bytes from the @descriptor. + Parses out the stuffing bytes from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_STUFFING #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_STUFFING #GstMpegtsDescriptor - the stuffing bytes + the stuffing bytes - Extracts the DVB subtitling informatio from specific table id in @descriptor. + Extracts the DVB subtitling informatio from specific table id in @descriptor. Note: Use #gst_tag_get_language_code if you want to get the the ISO 639-1 language code from the returned ISO 639-2 one. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_DVB_SUBTITLING #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_SUBTITLING #GstMpegtsDescriptor - Table id of the entry to parse + Table id of the entry to parse - the language code + the language code transfer-ownership="none" optional="1" allow-none="1"> - the type of subtitling + the type of subtitling transfer-ownership="none" optional="1" allow-none="1"> - the composition page id + the composition page id transfer-ownership="none" optional="1" allow-none="1"> - the ancillary page id + the ancillary page id + - The number of entries in @descriptor + The number of entries in @descriptor - a %GST_MTS_DESC_DVB_SUBTITLING #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_SUBTITLING #GstMpegtsDescriptor - Parses out the DVB-T2 delivery system from the @descriptor. + Parses out the DVB-T2 delivery system from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM #GstMpegtsDescriptor + a %GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM #GstMpegtsDescriptor - #GstMpegtsT2DeliverySystemDescriptor + #GstMpegtsT2DeliverySystemDescriptor @@ -2301,18 +2817,27 @@ ISO 639-1 language code from the returned ISO 639-2 one. - Parses teletext number @idx in the @descriptor. The language is in ISO639 format. + Parses teletext number @idx in the @descriptor. The language is in ISO639 format. + - FALSE on out-of-bounds and errors + FALSE on out-of-bounds and errors - a %GST_MTS_DESC_DVB_TELETEXT #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_TELETEXT #GstMpegtsDescriptor - The id of the teletext to get + The id of the teletext to get transfer-ownership="full" optional="1" allow-none="1"> - a null-terminated string + a null-terminated string transfer-ownership="full" optional="1" allow-none="1"> - #GstMpegtsDVBTeletextType + #GstMpegtsDVBTeletextType - Find the number of teletext entries in @descriptor + Find the number of teletext entries in @descriptor + - Number of teletext entries + Number of teletext entries - a %GST_MTS_DESC_DVB_TELETEXT #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_TELETEXT #GstMpegtsDescriptor - Extracts the iso 639-2 language information from @descriptor. + Extracts the iso 639-2 language information from @descriptor. Note: Use #gst_tag_get_language_code if you want to get the the ISO 639-1 language code from the returned ISO 639-2 one. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor + a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor - the #GstMpegtsISO639LanguageDescriptor to fill + the #GstMpegtsISO639LanguageDescriptor to fill @@ -2392,28 +2937,39 @@ ISO 639-1 language code from the returned ISO 639-2 one. - Extracts the iso 639-2 language information from specific table id in @descriptor. + Extracts the iso 639-2 language information from specific table id in @descriptor. Note: Use #gst_tag_get_language_code if you want to get the the ISO 639-1 language code from the returned ISO 639-2 one. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor + a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor - Table id of the language to parse + Table id of the language to parse - 4-byte gchar array to hold the language code + 4-byte gchar array to hold the language code transfer-ownership="none" optional="1" allow-none="1"> - the #GstMpegtsIso639AudioType to set + the #GstMpegtsIso639AudioType to set + - The number of languages in @descriptor + The number of languages in @descriptor - a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor + a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor - Extracts the logical channels from @descriptor. + Extracts the logical channels from @descriptor. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_DTG_LOGICAL_CHANNEL #GstMpegtsDescriptor + a %GST_MTS_DESC_DTG_LOGICAL_CHANNEL #GstMpegtsDescriptor - the #GstMpegtsLogicalChannelDescriptor to fill + the #GstMpegtsLogicalChannelDescriptor to fill @@ -2464,21 +3036,30 @@ ISO 639-1 language code from the returned ISO 639-2 one. - Extracts the satellite delivery system information from @descriptor. + Extracts the satellite delivery system information from @descriptor. + - %TRUE if parsing succeeded, else %FALSE. + %TRUE if parsing succeeded, else %FALSE. - a %GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM #GstMpegtsDescriptor - the #GstMpegtsSatelliteDeliverySystemDescriptor to fill + the #GstMpegtsSatelliteDeliverySystemDescriptor to fill @@ -2486,21 +3067,30 @@ ISO 639-1 language code from the returned ISO 639-2 one. - Parses out the terrestrial delivery system from the @descriptor. + Parses out the terrestrial delivery system from the @descriptor. + - %TRUE if the parsing happened correctly, else %FALSE. + %TRUE if the parsing happened correctly, else %FALSE. - a %GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM #GstMpegtsDescriptor + a %GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM #GstMpegtsDescriptor - #GstMpegtsTerrestrialDeliverySystemDescriptor + #GstMpegtsTerrestrialDeliverySystemDescriptor @@ -2508,176 +3098,248 @@ ISO 639-1 language code from the returned ISO 639-2 one. - Creates a #GstMpegtsDescriptor with custom @tag and @data + Creates a #GstMpegtsDescriptor with custom @tag and @data + - #GstMpegtsDescriptor + #GstMpegtsDescriptor - descriptor tag + descriptor tag - descriptor data (after tag and length field) + descriptor data (after tag and length field) - length of @data + length of @data - Creates a #GstMpegtsDescriptor with custom @tag, @tag_extension and @data + Creates a #GstMpegtsDescriptor with custom @tag, @tag_extension and @data + - #GstMpegtsDescriptor + #GstMpegtsDescriptor - descriptor tag + descriptor tag - descriptor tag extension + descriptor tag extension - descriptor data (after tag and length field) + descriptor data (after tag and length field) - length of @data + length of @data - Creates a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_NETWORK_NAME, + Creates a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_NETWORK_NAME, with the network name @name. The data field of the #GstMpegtsDescriptor will be allocated, and transferred to the caller. + - the #GstMpegtsDescriptor or %NULL on fail + the #GstMpegtsDescriptor or %NULL on fail - the network name to set + the network name to set - Fills a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_SERVICE. + Fills a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_SERVICE. The data field of the #GstMpegtsDescriptor will be allocated, and transferred to the caller. + - the #GstMpegtsDescriptor or %NULL on fail + the #GstMpegtsDescriptor or %NULL on fail - Service type defined as a #GstMpegtsDVBServiceType + Service type defined as a #GstMpegtsDVBServiceType - Name of the service + Name of the service - Name of the service provider + Name of the service provider + - a string containing the ISO639 language + a string containing the ISO639 language - subtitling type + subtitling type - composition page id + composition page id - ancillary page id + ancillary page id - Creates a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor with + Creates a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor with a single language + - #GstMpegtsDescriptor, %NULL on failure + #GstMpegtsDescriptor, %NULL on failure - ISO-639-2 language 3-char code + ISO-639-2 language 3-char code - Creates a %GST_MTS_DESC_REGISTRATION #GstMpegtsDescriptor + Creates a %GST_MTS_DESC_REGISTRATION #GstMpegtsDescriptor + - #GstMpegtsDescriptor, %NULL on failure + #GstMpegtsDescriptor, %NULL on failure - a 4 character format identifier string + a 4 character format identifier string - pointer to optional additional info + pointer to optional additional info - length of the optional @additional_info + length of the optional @additional_info - The type of #GstMpegtsDescriptor + The type of #GstMpegtsDescriptor These values correspond to the registered descriptor type from the base MPEG-TS specifications (ITU H.222.0 | ISO/IEC 13818-1). Consult the relevant specifications for more details. + @@ -2880,13 +3542,20 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsDvbMultilingualBouquetNameItem" glib:get-type="gst_mpegts_dvb_multilingual_bouquet_name_item_get_type" c:symbol-prefix="dvb_multilingual_bouquet_name_item"> - a multilingual bouquet name entry + a multilingual bouquet name entry + - the ISO 639 language code + the ISO 639 language code - the bouquet name + the bouquet name @@ -2895,12 +3564,17 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsDvbMultilingualComponentItem" glib:get-type="gst_mpegts_dvb_multilingual_component_item_get_type" c:symbol-prefix="dvb_multilingual_component_item"> + - the ISO 639 language code + the ISO 639 language code - the component description + the component description @@ -2909,13 +3583,20 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsDvbMultilingualNetworkNameItem" glib:get-type="gst_mpegts_dvb_multilingual_network_name_item_get_type" c:symbol-prefix="dvb_multilingual_network_name_item"> - a multilingual network name entry + a multilingual network name entry + - the ISO 639 language code + the ISO 639 language code - the network name + the network name @@ -2924,17 +3605,26 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsDvbMultilingualServiceNameItem" glib:get-type="gst_mpegts_dvb_multilingual_service_name_item_get_type" c:symbol-prefix="dvb_multilingual_service_name_item"> - a multilingual service name entry + a multilingual service name entry + - the ISO 639 language code + the ISO 639 language code - the provider name + the provider name - the service name + the service name @@ -2943,7 +3633,10 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsEIT" glib:get-type="gst_mpegts_eit_get_type" c:symbol-prefix="eit"> - Event Information Table (EN 300 468) + Event Information Table (EN 300 468) + @@ -2963,7 +3656,9 @@ Consult the relevant specifications for more details. - List of events + List of events @@ -2974,7 +3669,10 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsEITEvent" glib:get-type="gst_mpegts_eit_event_get_type" c:symbol-prefix="eit_event"> - Event from a @GstMpegtsEIT + Event from a @GstMpegtsEIT + @@ -2991,7 +3689,9 @@ Consult the relevant specifications for more details. - List of descriptors + List of descriptors @@ -3002,7 +3702,10 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsExtendedEventDescriptor" glib:get-type="gst_mpegts_extended_event_descriptor_get_type" c:symbol-prefix="extended_event_descriptor"> - Extended Event Descriptor (EN 300 468 v.1.13.1) + Extended Event Descriptor (EN 300 468 v.1.13.1) + @@ -3010,11 +3713,15 @@ Consult the relevant specifications for more details. - NULL terminated language code. + NULL terminated language code. - the #GstMpegtsExtendedEventItem + the #GstMpegtsExtendedEventItem @@ -3024,6 +3731,7 @@ Consult the relevant specifications for more details. + @@ -3040,6 +3748,7 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsExtendedEventItem" glib:get-type="gst_mpegts_extended_event_item_get_type" c:symbol-prefix="extended_event_item"> + @@ -3049,10 +3758,13 @@ Consult the relevant specifications for more details. - These values correspond to the registered descriptor type from + These values correspond to the registered descriptor type from the various ISDB specifications. Consult the relevant specifications for more details. + @@ -3187,6 +3899,7 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsISO639LanguageDescriptor" glib:get-type="gst_mpegts_iso_639_language_get_type" c:symbol-prefix="iso_639_language"> + @@ -3196,14 +3909,13 @@ Consult the relevant specifications for more details. - + + @@ -3216,6 +3928,7 @@ Consult the relevant specifications for more details. + @@ -3238,6 +3951,7 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsLogicalChannel" glib:get-type="gst_mpegts_logical_channel_get_type" c:symbol-prefix="logical_channel"> + @@ -3253,23 +3967,25 @@ Consult the relevant specifications for more details. glib:type-name="GstMpegtsLogicalChannelDescriptor" glib:get-type="gst_mpegts_logical_channel_descriptor_get_type" c:symbol-prefix="logical_channel_descriptor"> + - + - The type of #GstMpegtsDescriptor + The type of #GstMpegtsDescriptor These values correspond to miscellaneous descriptor types that are not yet identified from known specifications. + @@ -3280,6 +3996,7 @@ not yet identified from known specifications. + glib:type-name="GstMpegtsNIT" glib:get-type="gst_mpegts_nit_get_type" c:symbol-prefix="nit"> - Network Information Table (ISO/IEC 13818-1 / EN 300 468) + Network Information Table (ISO/IEC 13818-1 / EN 300 468) + - Whether this NIT corresponds to the actual stream + Whether this NIT corresponds to the actual stream - ID of the network that this NIT describes + ID of the network that this NIT describes - the global descriptors + the global descriptors - the streams + the streams - Allocates and initializes a #GstMpegtsNIT. + Allocates and initializes a #GstMpegtsNIT. + - A newly allocated #GstMpegtsNIT + A newly allocated #GstMpegtsNIT @@ -3376,6 +4109,7 @@ not yet identified from known specifications. glib:type-name="GstMpegtsNITStream" glib:get-type="gst_mpegts_nit_stream_get_type" c:symbol-prefix="nit_stream"> + @@ -3388,9 +4122,14 @@ not yet identified from known specifications. - Allocates and initializes a #GstMpegtsNITStream + Allocates and initializes a #GstMpegtsNITStream + - A newly allocated #GstMpegtsNITStream + A newly allocated #GstMpegtsNITStream @@ -3400,33 +4139,47 @@ not yet identified from known specifications. glib:type-name="GstMpegtsPMT" glib:get-type="gst_mpegts_pmt_get_type" c:symbol-prefix="pmt"> - Program Map Table (ISO/IEC 13818-1). + Program Map Table (ISO/IEC 13818-1). The program_number is contained in the subtable_extension field of the container #GstMpegtsSection. + - PID of the stream containing PCR + PID of the stream containing PCR - array of #GstMpegtsDescriptor + array of #GstMpegtsDescriptor - Array of #GstMpegtsPMTStream + Array of #GstMpegtsPMTStream - Allocates and initializes a new #GstMpegtsPMT. + Allocates and initializes a new #GstMpegtsPMT. + - #GstMpegtsPMT + #GstMpegtsPMT @@ -3436,31 +4189,46 @@ container #GstMpegtsSection. glib:type-name="GstMpegtsPMTStream" glib:get-type="gst_mpegts_pmt_stream_get_type" c:symbol-prefix="pmt_stream"> - An individual stream definition. + An individual stream definition. + - the type of stream. See #GstMpegtsStreamType + the type of stream. See #GstMpegtsStreamType - the PID of the stream + the PID of the stream - the descriptors of the + the descriptors of the stream - Allocates and initializes a new #GstMpegtsPMTStream. + Allocates and initializes a new #GstMpegtsPMTStream. + - #GstMpegtsPMTStream + #GstMpegtsPMTStream + @@ -3475,27 +4243,42 @@ stream glib:type-name="GstMpegtsPatProgram" glib:get-type="gst_mpegts_pat_program_get_type" c:symbol-prefix="pat_program"> - A program entry from a Program Association Table (ITU H.222.0, ISO/IEC 13818-1). + A program entry from a Program Association Table (ITU H.222.0, ISO/IEC 13818-1). + - the program number + the program number - the network of program map PID + the network of program map PID - Allocates a new #GstMpegtsPatProgram. + Allocates a new #GstMpegtsPatProgram. + - A newly allocated #GstMpegtsPatProgram + A newly allocated #GstMpegtsPatProgram - Running status of a service. + Running status of a service. Corresponds to table 6 of ETSI EN 300 468 (v1.13.0) + @@ -3526,29 +4309,45 @@ Corresponds to table 6 of ETSI EN 300 468 (v1.13.0) glib:type-name="GstMpegtsSDT" glib:get-type="gst_mpegts_sdt_get_type" c:symbol-prefix="sdt"> - Service Description Table (EN 300 468) + Service Description Table (EN 300 468) + - Network ID of the originating delivery system + Network ID of the originating delivery system - True if the table describes this transport stream + True if the table describes this transport stream - ID of this transport stream + ID of this transport stream - List of services + List of services - Allocates and initializes a #GstMpegtsSDT. + Allocates and initializes a #GstMpegtsSDT. + - A newly allocated #GstMpegtsSDT + A newly allocated #GstMpegtsSDT @@ -3558,87 +4357,145 @@ Corresponds to table 6 of ETSI EN 300 468 (v1.13.0) glib:type-name="GstMpegtsSDTService" glib:get-type="gst_mpegts_sdt_service_get_type" c:symbol-prefix="sdt_service"> + - The program number this table belongs to + The program number this table belongs to - EIT schedule information is present in this transport stream + EIT schedule information is present in this transport stream - EIT present/following information is present in this transport stream + EIT present/following information is present in this transport stream - Status of this service + Status of this service - True if one or more streams is controlled by a CA system + True if one or more streams is controlled by a CA system - List of descriptors + List of descriptors - Allocates and initializes a #GstMpegtsSDTService. + Allocates and initializes a #GstMpegtsSDTService. + - A newly allocated #GstMpegtsSDTService + A newly allocated #GstMpegtsSDTService + + + + + + + + + + + + + + - Satellite Delivery System Descriptor (EN 300 468 v.1.13.1) + Satellite Delivery System Descriptor (EN 300 468 v.1.13.1) + - the frequency in kHz (kiloHertz) + the frequency in kHz (kiloHertz) - the orbital position in degrees + the orbital position in degrees - If %TRUE, the satellite is in the eastern part of the orbit, + If %TRUE, the satellite is in the eastern part of the orbit, else in the western part. - The polarization of the transmitted signal + The polarization of the transmitted signal - Roll-off factor used in DVB-S2 + Roll-off factor used in DVB-S2 - modulation system, %TRUE if DVB-S2, else DVB-S + modulation system, %TRUE if DVB-S2, else DVB-S - Modulation scheme used + Modulation scheme used - Symbol rate (in symbols per second) + Symbol rate (in symbols per second) - inner FEC scheme used + inner FEC scheme used + @@ -3657,6 +4514,7 @@ else in the western part. + @@ -3671,44 +4529,61 @@ else in the western part. - Type of mpeg-ts streams for SCTE + Type of mpeg-ts streams for SCTE + - SCTE-27 Subtitling + SCTE-27 Subtitling - SCTE-19 Isochronous data + SCTE-19 Isochronous data - SCTE-07 Data Service or + SCTE-07 Data Service or Network Resource Table - Type B - DSM-CC Data Carousel + Type B - DSM-CC Data Carousel [IEC 13818-6]) - Enhanced Television Application + Enhanced Television Application Signaling (OC-SP-ETV-AM1.0.1-120614) - SCTE-07 Synchronous data + SCTE-07 Synchronous data - SCTE-53 Asynchronous data + SCTE-53 Asynchronous data glib:type-name="GstMpegtsSection" glib:get-type="gst_mpegts_section_get_type" c:symbol-prefix="section"> - For more details, refer to the ITU H.222.0 or ISO/IEC 13818-1 specifications + For more details, refer to the ITU H.222.0 or ISO/IEC 13818-1 specifications and other specifications mentioned in the documentation. + - The type of section + The type of section - The pid on which this section was found + The pid on which this section was found - The table id of this section + The table id of this section - This meaning differs per section. See the documentation + This meaning differs per section. See the documentation of the parsed section type for the meaning of this field - Version of the section. + Version of the section. - Applies to current/next stream or not + Applies to current/next stream or not - Number of the section (if multiple) + Number of the section (if multiple) - Number of the last expected section (if multiple) + Number of the last expected section (if multiple) - CRC + CRC @@ -3780,12 +4676,14 @@ of the parsed section type for the meaning of this field - + - Creates a new #GstMpegtsSection from the provided @data. + Creates a new #GstMpegtsSection from the provided @data. Note: Ensuring @data is big enough to contain the full section is the responsibility of the caller. If it is not big enough, %NULL will be @@ -3793,138 +4691,201 @@ returned. Note: it is the responsibility of the caller to ensure @data does point to the beginning of the section. + - A new #GstMpegtsSection if the data was valid, + A new #GstMpegtsSection if the data was valid, else %NULL - the PID to which this section belongs + the PID to which this section belongs - a pointer to the beginning of the section (i.e. the first byte + a pointer to the beginning of the section (i.e. the first byte should contain the table_id field). - size of the @data argument. + size of the @data argument. - Returns the #GstMpegtsAtscVCT contained in the @section + Returns the #GstMpegtsAtscVCT contained in the @section + - The #GstMpegtsAtscVCT contained in the section, or %NULL if an error + The #GstMpegtsAtscVCT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_CVCT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_CVCT - Returns the #GstMpegtsAtscEIT contained in the @section. + Returns the #GstMpegtsAtscEIT contained in the @section. + - The #GstMpegtsAtscEIT contained in the section, or %NULL if an error + The #GstMpegtsAtscEIT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_EIT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_EIT - Returns the #GstMpegtsAtscETT contained in the @section. + Returns the #GstMpegtsAtscETT contained in the @section. + - The #GstMpegtsAtscETT contained in the section, or %NULL if an error + The #GstMpegtsAtscETT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_ETT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_ETT - Returns the #GstMpegtsAtscMGT contained in the @section. + Returns the #GstMpegtsAtscMGT contained in the @section. + - The #GstMpegtsAtscMGT contained in the section, or %NULL if an error + The #GstMpegtsAtscMGT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_MGT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_MGT - Returns the #GstMpegtsAtscSTT contained in the @section. + Returns the #GstMpegtsAtscSTT contained in the @section. + - The #GstMpegtsAtscSTT contained in the section, or %NULL if an error + The #GstMpegtsAtscSTT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_STT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_STT - Returns the #GstMpegtsAtscVCT contained in the @section + Returns the #GstMpegtsAtscVCT contained in the @section + - The #GstMpegtsAtscVCT contained in the section, or %NULL if an error + The #GstMpegtsAtscVCT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_TVCT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_ATSC_TVCT - Returns the #GstMpegtsBAT contained in the @section. + Returns the #GstMpegtsBAT contained in the @section. + - The #GstMpegtsBAT contained in the section, or %NULL if an error + The #GstMpegtsBAT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_BAT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_BAT - Returns the array of #GstMpegtsDescriptor contained in the Conditional + Returns the array of #GstMpegtsDescriptor contained in the Conditional Access Table. + - The + The #GstMpegtsDescriptor contained in the section, or %NULL if an error happened. Release with #g_array_unref when done. @@ -3933,61 +4894,89 @@ happened. Release with #g_array_unref when done. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_CAT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_CAT - Gets the original unparsed section data. + Gets the original unparsed section data. + - The original unparsed section data. + The original unparsed section data. - a #GstMpegtsSection + a #GstMpegtsSection - Returns the #GstMpegtsEIT contained in the @section. + Returns the #GstMpegtsEIT contained in the @section. + - The #GstMpegtsEIT contained in the section, or %NULL if an error + The #GstMpegtsEIT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_EIT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_EIT - Returns the #GstMpegtsNIT contained in the @section. + Returns the #GstMpegtsNIT contained in the @section. + - The #GstMpegtsNIT contained in the section, or %NULL if an error + The #GstMpegtsNIT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_NIT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_NIT - Parses a Program Association Table (ITU H.222.0, ISO/IEC 13818-1). + Parses a Program Association Table (ITU H.222.0, ISO/IEC 13818-1). Returns the array of #GstMpegtsPatProgram contained in the section. Note: The PAT "transport_id" field corresponds to the "subtable_extension" field of the provided @section. + - The + The #GstMpegtsPatProgram contained in the section, or %NULL if an error happened. Release with #g_ptr_array_unref when done. @@ -3996,71 +4985,106 @@ happened. Release with #g_ptr_array_unref when done. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_PAT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_PAT - Returns the #GstMpegtsPMT contained in the @section. + Returns the #GstMpegtsPMT contained in the @section. + - The #GstMpegtsPMT contained in the section, or %NULL if an error + The #GstMpegtsPMT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_PMT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_PMT - Returns the #GstMpegtsSDT contained in the @section. + Returns the #GstMpegtsSDT contained in the @section. + - The #GstMpegtsSDT contained in the section, or %NULL if an error + The #GstMpegtsSDT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_SDT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_SDT - Returns the #GstDateTime of the TDT + Returns the #GstDateTime of the TDT + - The #GstDateTime contained in the section, or %NULL + The #GstDateTime contained in the section, or %NULL if an error happened. Release with #gst_date_time_unref when done. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_TDT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_TDT - Returns the #GstMpegtsTOT contained in the @section. + Returns the #GstMpegtsTOT contained in the @section. + - The #GstMpegtsTOT contained in the section, or %NULL if an error + The #GstMpegtsTOT contained in the section, or %NULL if an error happened. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_TOT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_TOT - Returns the array of #GstMpegtsDescriptor contained in the section + Returns the array of #GstMpegtsDescriptor contained in the section + - The + The #GstMpegtsDescriptor contained in the section, or %NULL if an error happened. Release with #g_array_unref when done. @@ -4069,108 +5093,160 @@ happened. Release with #g_array_unref when done. - a #GstMpegtsSection of type %GST_MPEGTS_SECTION_TSDT + a #GstMpegtsSection of type %GST_MPEGTS_SECTION_TSDT - If the data in @section has already been packetized, the data pointer is returned + If the data in @section has already been packetized, the data pointer is returned immediately. Otherwise, the data field is allocated and populated. + - pointer to section data, or %NULL on fail + pointer to section data, or %NULL on fail - the #GstMpegtsSection that holds the data + the #GstMpegtsSection that holds the data - #gsize to hold the size of the data + #gsize to hold the size of the data - Creates a custom #GstEvent with a @GstMpegtsSection. + Creates a custom #GstEvent with a @GstMpegtsSection. The #GstEvent is sent to the @element #GstElement. + - %TRUE if the event is sent + %TRUE if the event is sent - The #GstMpegtsSection to put in the event + The #GstMpegtsSection to put in the event - The #GstElement to send to section event to + The #GstElement to send to section event to - Ownership of @nit is taken. The data in @nit is managed by the #GstMpegtsSection + Ownership of @nit is taken. The data in @nit is managed by the #GstMpegtsSection + - the #GstMpegtsSection + the #GstMpegtsSection - a #GstMpegtsNIT to create the #GstMpegtsSection from + a #GstMpegtsNIT to create the #GstMpegtsSection from - Creates a PAT #GstMpegtsSection from the @programs array of #GstMpegtsPatPrograms + Creates a PAT #GstMpegtsSection from the @programs array of #GstMpegtsPatPrograms + - a #GstMpegtsSection + a #GstMpegtsSection - an array of #GstMpegtsPatProgram + an array of #GstMpegtsPatProgram - Transport stream ID of the PAT + Transport stream ID of the PAT - Creates a #GstMpegtsSection from @pmt that is bound to @pid + Creates a #GstMpegtsSection from @pmt that is bound to @pid + - #GstMpegtsSection + #GstMpegtsSection - a #GstMpegtsPMT to create a #GstMpegtsSection from + a #GstMpegtsPMT to create a #GstMpegtsSection from - The PID that the #GstMpegtsPMT belongs to + The PID that the #GstMpegtsPMT belongs to - Ownership of @sdt is taken. The data in @sdt is managed by the #GstMpegtsSection + Ownership of @sdt is taken. The data in @sdt is managed by the #GstMpegtsSection + - the #GstMpegtsSection + the #GstMpegtsSection - a #GstMpegtsSDT to create the #GstMpegtsSection from + a #GstMpegtsSDT to create the #GstMpegtsSection from @@ -4178,11 +5254,14 @@ The #GstEvent is sent to the @element #GstElement. - Values for a #GstMpegtsSection table_id. + Values for a #GstMpegtsSection table_id. These are the registered ATSC table_id variants. see also: #GstMpegtsSectionTableID + @@ -4253,11 +5332,14 @@ see also: #GstMpegtsSectionTableID - Values for a #GstMpegtsSection table_id. + Values for a #GstMpegtsSection table_id. These are the registered DVB table_id variants. see also: #GstMpegtsSectionTableID + @@ -4399,18 +5481,25 @@ see also: #GstMpegtsSectionTableID - Values for a #GstMpegtsSection table_id. + Values for a #GstMpegtsSection table_id. These are the registered SCTE table_id variants. see also: #GstMpegtsSectionTableID + - SCTE-18 Emergency Alert System + SCTE-18 Emergency Alert System - CL-SP-ETV-AM 1.0.1 EBIF message + CL-SP-ETV-AM 1.0.1 EBIF message - CL-SP-ETV-AM 1.0.1 EBIF Int. Signaling Sect. + CL-SP-ETV-AM 1.0.1 EBIF Int. Signaling Sect. - CL-SP-ETV-AM 1.0.1 DSMCC DII message + CL-SP-ETV-AM 1.0.1 DSMCC DII message - CL-SP-ETV-AM 1.0.1 DSMCC Data Download Block + CL-SP-ETV-AM 1.0.1 DSMCC Data Download Block - SCTE-35 splice information is carried in a + SCTE-35 splice information is carried in a section stream on a separate PID in the program’s Map Table (PMT) allowing Splice Event notifications to remain associated with the program and pass through multiplexers. - Values for a #GstMpegtsSection table_id + Values for a #GstMpegtsSection table_id These are the registered ITU H.222.0 | ISO/IEC 13818-1 table_id variants. see also #GstMpegtsSectionATSCTableID, #GstMpegtsSectionDVBTableID, and #GstMpegtsSectionSCTETableID + @@ -4503,228 +5603,324 @@ see also #GstMpegtsSectionATSCTableID, #GstMpegtsSectionDVBTableID, and - Types of #GstMpegtsSection that the library handles. + Types of #GstMpegtsSection that the library handles. + - Unknown section type + Unknown section type - Program Association Table (ISO/IEC 13818-1) + Program Association Table (ISO/IEC 13818-1) - Program Map Table (ISO/IEC 13818-1) + Program Map Table (ISO/IEC 13818-1) - Conditional Access Table (ISO/IEC 13818-1) + Conditional Access Table (ISO/IEC 13818-1) - Transport Stream Description Table (ISO/IEC 13818-1) + Transport Stream Description Table (ISO/IEC 13818-1) - Event Information Table (EN 300 468) + Event Information Table (EN 300 468) - Network Information Table (ISO/IEC 13818-1 / EN 300 468) + Network Information Table (ISO/IEC 13818-1 / EN 300 468) - Bouquet Association Table ((EN 300 468) + Bouquet Association Table ((EN 300 468) - Service Description Table (EN 300 468) + Service Description Table (EN 300 468) - Time and Date Table (EN 300 468) + Time and Date Table (EN 300 468) - Time Offset Table (EN 300 468) + Time Offset Table (EN 300 468) - ATSC Terrestrial Virtual Channel Table (A65) + ATSC Terrestrial Virtual Channel Table (A65) - ATSC Cable Virtual Channel Table (A65) + ATSC Cable Virtual Channel Table (A65) - ATSC Master Guide Table (A65) + ATSC Master Guide Table (A65) - ATSC Extended Text Table (A65) + ATSC Extended Text Table (A65) - ATSC Event Information Table (A65) + ATSC Event Information Table (A65) - ATSC System Time Table (A65) + ATSC System Time Table (A65) - Type of mpeg-ts stream type. + Type of mpeg-ts stream type. These values correspond to the base standard registered types. Depending on the variant of mpeg-ts being used (Bluray, ATSC, DVB, ...), other types might also be used, but will not conflict with these. Corresponds to table 2-34 of ITU H.222.0 | ISO/IEC 13818-1 + - ITU-T | ISO/IEC Reserved + ITU-T | ISO/IEC Reserved - ISO/IEC 11172-2 Video + ISO/IEC 11172-2 Video - Rec. ITU-T H.262 | ISO/IEC 13818-2 + Rec. ITU-T H.262 | ISO/IEC 13818-2 Video or ISO/IEC 11172-2 constrained parameter video stream - ISO/IEC 11172-3 Audio + ISO/IEC 11172-3 Audio - ISO/IEC 13818-3 Audio + ISO/IEC 13818-3 Audio - private sections + private sections - PES packets containing private data + PES packets containing private data - ISO/IEC 13522 MHEG + ISO/IEC 13522 MHEG - Annex A DSM-CC + Annex A DSM-CC - Rec. ITU-T H.222.1 + Rec. ITU-T H.222.1 - ISO/IEC 13818-6 type A + ISO/IEC 13818-6 type A - ISO/IEC 13818-6 type B + ISO/IEC 13818-6 type B - ISO/IEC 13818-6 type C + ISO/IEC 13818-6 type C - ISO/IEC 13818-6 type D + ISO/IEC 13818-6 type D - auxiliary streams + auxiliary streams - ISO/IEC 13818-7 Audio with ADTS + ISO/IEC 13818-7 Audio with ADTS transport syntax - ISO/IEC 14496-2 Visual + ISO/IEC 14496-2 Visual - ISO/IEC 14496-3 Audio with the LATM + ISO/IEC 14496-3 Audio with the LATM transport syntax as defined in ISO/IEC 14496-3 - ISO/IEC 14496-1 + ISO/IEC 14496-1 SL-packetized stream or FlexMux stream carried in PES packets - ISO/IEC 14496-1 SL-packetized + ISO/IEC 14496-1 SL-packetized stream or FlexMux stream carried in ISO/IEC 14496_sections - ISO/IEC 13818-6 Synchronized + ISO/IEC 13818-6 Synchronized Download Protocol - Metadata carried in PES packets + Metadata carried in PES packets - Metadata carried in metadata_sections + Metadata carried in metadata_sections - Metadata carried in ISO/IEC + Metadata carried in ISO/IEC 13818-6 Data Carousel - Metadata carried in + Metadata carried in ISO/IEC 13818-6 Object Carousel - Metadata carried in + Metadata carried in ISO/IEC 13818-6 Synchronized Download Protocol - IPMP stream (defined in ISO/IEC 13818-11, + IPMP stream (defined in ISO/IEC 13818-11, MPEG-2 IPMP) - AVC video stream conforming to one or + AVC video stream conforming to one or more profiles defined in Annex A of Rec. ITU-T H.264 | ISO/IEC 14496-10 or AVC video sub-bitstream of SVC as defined in 2.1.78 or MVC base view sub-bitstream, as defined in 2.1.85, or AVC video sub-bitstream of MVC, as @@ -4733,51 +5929,67 @@ defined in 2.1.88 - ISO/IEC 14496-3 Audio, without + ISO/IEC 14496-3 Audio, without using any additional transport syntax, such as DST, ALS and SLS - ISO/IEC 14496-17 Text + ISO/IEC 14496-17 Text - Auxiliary video stream as defined in + Auxiliary video stream as defined in ISO/IEC 23002-3 - SVC video sub-bitstream + SVC video sub-bitstream of an AVC video stream conforming to one or more profiles defined in Annex G of Rec. ITU-T H.264 | ISO/IEC 14496-10 - MVC video sub-bitstream + MVC video sub-bitstream of an AVC video stream conforming to one or more profiles defined in Annex H of Rec. ITU-T H.264 | ISO/IEC 14496-10 - Video stream conforming to one or more + Video stream conforming to one or more profiles as defined in Rec. ITU-T T.800 | ISO/IEC 15444-1 - Additional view + Additional view Rec. ITU-T H.262 | ISO/IEC 13818-2 video stream for service-compatible stereoscopic 3D services - Additional view + Additional view Rec. ITU-T H.264 | ISO/IEC 14496-10 video stream conforming to one or more profiles defined in Annex A for service-compatible stereoscopic 3D services @@ -4788,7 +6000,9 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services - IPMP stream + IPMP stream + - id of the cell + id of the cell - centre frequencies in Hz + centre frequencies in Hz @@ -4817,12 +6036,17 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services + - id of the sub cell + id of the sub cell - centre frequency of the sub cell in Hz + centre frequency of the sub cell in Hz @@ -4831,7 +6055,10 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services - describe DVB-T2 transmissions according to EN 302 755 + describe DVB-T2 transmissions according to EN 302 755 + @@ -4865,6 +6092,7 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services + @@ -4881,12 +6109,17 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services - Time Offset Table (EN 300 468) + Time Offset Table (EN 300 468) + - List of descriptors + List of descriptors @@ -4897,33 +6130,50 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services - Terrestrial Delivery System Descriptor (EN 300 468 v.1.13.1) + Terrestrial Delivery System Descriptor (EN 300 468 v.1.13.1) + - the frequency in Hz (Hertz) + the frequency in Hz (Hertz) - the bandwidth in Hz (Hertz) + the bandwidth in Hz (Hertz) - %TRUE High Priority %FALSE Low Priority + %TRUE High Priority %FALSE Low Priority - %TRUE no time slicing %FALSE time slicing + %TRUE no time slicing %FALSE time slicing - %TRUE no mpe-fec is used %FALSE mpe-fec is use + %TRUE no mpe-fec is used %FALSE mpe-fec is use - the constallation + the constallation - the hierarchy + the hierarchy @@ -4942,12 +6192,15 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services - %TRUE more frequency are use, else not + %TRUE more frequency are use, else not + @@ -4995,6 +6248,7 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services + @@ -5008,6 +6262,7 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services + @@ -5048,24 +6303,35 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services - Creates a #GstMpegtsDescriptor with custom @tag and @data + Creates a #GstMpegtsDescriptor with custom @tag and @data + - #GstMpegtsDescriptor + #GstMpegtsDescriptor - descriptor tag + descriptor tag - descriptor data (after tag and length field) + descriptor data (after tag and length field) - length of @data + length of @data @@ -5073,28 +6339,41 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services - Creates a #GstMpegtsDescriptor with custom @tag, @tag_extension and @data + Creates a #GstMpegtsDescriptor with custom @tag, @tag_extension and @data + - #GstMpegtsDescriptor + #GstMpegtsDescriptor - descriptor tag + descriptor tag - descriptor tag extension + descriptor tag extension - descriptor data (after tag and length field) + descriptor data (after tag and length field) - length of @data + length of @data @@ -5102,16 +6381,23 @@ profiles defined in Annex A for service-compatible stereoscopic 3D services - Creates a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_NETWORK_NAME, + Creates a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_NETWORK_NAME, with the network name @name. The data field of the #GstMpegtsDescriptor will be allocated, and transferred to the caller. + - the #GstMpegtsDescriptor or %NULL on fail + the #GstMpegtsDescriptor or %NULL on fail - the network name to set + the network name to set @@ -5119,30 +6405,41 @@ will be allocated, and transferred to the caller. - Fills a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_SERVICE. + Fills a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_SERVICE. The data field of the #GstMpegtsDescriptor will be allocated, and transferred to the caller. + - the #GstMpegtsDescriptor or %NULL on fail + the #GstMpegtsDescriptor or %NULL on fail - Service type defined as a #GstMpegtsDVBServiceType + Service type defined as a #GstMpegtsDVBServiceType - Name of the service + Name of the service - Name of the service provider + Name of the service provider @@ -5150,24 +6447,33 @@ and transferred to the caller. + - a string containing the ISO639 language + a string containing the ISO639 language - subtitling type + subtitling type - composition page id + composition page id - ancillary page id + ancillary page id @@ -5175,15 +6481,22 @@ and transferred to the caller. - Creates a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor with + Creates a %GST_MTS_DESC_ISO_639_LANGUAGE #GstMpegtsDescriptor with a single language + - #GstMpegtsDescriptor, %NULL on failure + #GstMpegtsDescriptor, %NULL on failure - ISO-639-2 language 3-char code + ISO-639-2 language 3-char code @@ -5191,33 +6504,45 @@ a single language - Creates a %GST_MTS_DESC_REGISTRATION #GstMpegtsDescriptor + Creates a %GST_MTS_DESC_REGISTRATION #GstMpegtsDescriptor + - #GstMpegtsDescriptor, %NULL on failure + #GstMpegtsDescriptor, %NULL on failure - a 4 character format identifier string + a 4 character format identifier string - pointer to optional additional info + pointer to optional additional info - length of the optional @additional_info + length of the optional @additional_info + @@ -5230,89 +6555,129 @@ a single language - Extracts the #GstMpegtsSection contained in the @event #GstEvent + Extracts the #GstMpegtsSection contained in the @event #GstEvent + - The extracted #GstMpegtsSection + The extracted #GstMpegtsSection - #GstEvent containing a #GstMpegtsSection + #GstEvent containing a #GstMpegtsSection - Finds the first descriptor of type @tag in the array. + Finds the first descriptor of type @tag in the array. Note: To look for descriptors that can be present more than once in an array of descriptors, iterate the #GArray manually. + - the first descriptor matchin @tag, else %NULL. + the first descriptor matchin @tag, else %NULL. - an array + an array of #GstMpegtsDescriptor - the tag to look for + the tag to look for - Initializes the MPEG-TS helper library. Must be called before any + Initializes the MPEG-TS helper library. Must be called before any usage. + - Creates a new #GstMessage for a @GstMpegtsSection. + Creates a new #GstMessage for a @GstMpegtsSection. + - The new #GstMessage to be posted, or %NULL if the + The new #GstMessage to be posted, or %NULL if the section is not valid. - The creator of the message + The creator of the message - The #GstMpegtsSection to put in a message + The #GstMpegtsSection to put in a message - Returns the #GstMpegtsSection contained in a message. + Returns the #GstMpegtsSection contained in a message. + - the contained #GstMpegtsSection, or %NULL. + the contained #GstMpegtsSection, or %NULL. - a #GstMessage + a #GstMessage - Parses the descriptors present in @buffer and returns them as an + Parses the descriptors present in @buffer and returns them as an array. Note: The data provided in @buffer will not be copied. + - an + an array of the parsed descriptors or %NULL if there was an error. Release with #g_array_unref when done with it. @@ -5321,19 +6686,28 @@ Release with #g_array_unref when done with it. - descriptors to parse + descriptors to parse - Size of @buffer + Size of @buffer - Allocates a new #GPtrArray for #GstMpegtsPatProgram + Allocates a new #GPtrArray for #GstMpegtsPatProgram + - A newly allocated #GPtrArray + A newly allocated #GPtrArray @@ -5342,14 +6716,21 @@ Release with #g_array_unref when done with it. - Ownership of @nit is taken. The data in @nit is managed by the #GstMpegtsSection + Ownership of @nit is taken. The data in @nit is managed by the #GstMpegtsSection + - the #GstMpegtsSection + the #GstMpegtsSection - a #GstMpegtsNIT to create the #GstMpegtsSection from + a #GstMpegtsNIT to create the #GstMpegtsSection from @@ -5357,20 +6738,29 @@ Release with #g_array_unref when done with it. - Creates a PAT #GstMpegtsSection from the @programs array of #GstMpegtsPatPrograms + Creates a PAT #GstMpegtsSection from the @programs array of #GstMpegtsPatPrograms + - a #GstMpegtsSection + a #GstMpegtsSection - an array of #GstMpegtsPatProgram + an array of #GstMpegtsPatProgram - Transport stream ID of the PAT + Transport stream ID of the PAT @@ -5378,18 +6768,27 @@ Release with #g_array_unref when done with it. - Creates a #GstMpegtsSection from @pmt that is bound to @pid + Creates a #GstMpegtsSection from @pmt that is bound to @pid + - #GstMpegtsSection + #GstMpegtsSection - a #GstMpegtsPMT to create a #GstMpegtsSection from + a #GstMpegtsPMT to create a #GstMpegtsSection from - The PID that the #GstMpegtsPMT belongs to + The PID that the #GstMpegtsPMT belongs to @@ -5397,17 +6796,42 @@ Release with #g_array_unref when done with it. - Ownership of @sdt is taken. The data in @sdt is managed by the #GstMpegtsSection + Ownership of @sdt is taken. The data in @sdt is managed by the #GstMpegtsSection + - the #GstMpegtsSection + the #GstMpegtsSection - a #GstMpegtsSDT to create the #GstMpegtsSection from + a #GstMpegtsSDT to create the #GstMpegtsSection from + + + + + + + + + + + + + + diff --git a/gir-files/GstNet-1.0.gir b/gir-files/GstNet-1.0.gir index 985c06f9d..8a5c2fc2a 100644 --- a/gir-files/GstNet-1.0.gir +++ b/gir-files/GstNet-1.0.gir @@ -15,25 +15,162 @@ and/or use gtk-doc annotations. --> shared-library="libgstnet-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - The size of the packets sent between network clocks. + The size of the packets sent between network clocks. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - #GstNetAddressMeta can be used to store a network address (a #GSocketAddress) + #GstNetAddressMeta can be used to store a network address (a #GSocketAddress) in a #GstBuffer so that it network elements can track the to and from address of the buffer. + - the parent type + the parent type - a #GSocketAddress stored as metadata + a #GSocketAddress stored as metadata + @@ -46,7 +183,9 @@ of the buffer. glib:type-name="GstNetClientClock" glib:get-type="gst_net_client_clock_get_type" glib:type-struct="NetClientClockClass"> - #GstNetClientClock implements a custom #GstClock that synchronizes its time + #GstNetClientClock implements a custom #GstClock that synchronizes its time to a remote time provider such as #GstNetTimeProvider. #GstNtpClock implements a #GstClock that synchronizes its time to a remote NTPv4 server. @@ -68,30 +207,44 @@ gst_pipeline_use_clock(). If you set a #GstBus on the clock via the "bus" object property, it will send @GST_MESSAGE_ELEMENT messages with an attached #GstStructure containing statistics about clock accuracy and network traffic. + - Create a new #GstNetClientInternalClock that will report the time + Create a new #GstNetClientInternalClock that will report the time provided by the #GstNetTimeProvider on @remote_address and @remote_port. + - a new #GstClock that receives a time from the remote + a new #GstClock that receives a time from the remote clock. - a name for the clock + a name for the clock - the address or hostname of the remote clock provider + the address or hostname of the remote clock provider - the port of the remote clock provider + the port of the remote clock provider - initial time of the clock + initial time of the clock @@ -138,7 +291,7 @@ clock. - + @@ -146,11 +299,12 @@ clock. + - + @@ -158,23 +312,32 @@ clock. + - #GstNetControlMessageMeta can be used to store control messages (ancillary + #GstNetControlMessageMeta can be used to store control messages (ancillary data) which was received with or is to be sent alongside the buffer data. When used with socket sinks and sources which understand this meta it allows sending and receiving ancillary data such as unix credentials (See #GUnixCredentialsMessage) and Unix file descriptions (See #GUnixFDMessage). + - the parent type + the parent type - a #GSocketControlMessage stored as metadata + a #GSocketControlMessage stored as metadata + @@ -185,18 +348,27 @@ sending and receiving ancillary data such as unix credentials (See glib:type-name="GstNetTimePacket" glib:get-type="gst_net_time_packet_get_type" c:symbol-prefix="net_time_packet"> - Various functions for receiving, sending an serializing #GstNetTimePacket + Various functions for receiving, sending an serializing #GstNetTimePacket structures. + - the local time when this packet was sent + the local time when this packet was sent - the remote time observation + the remote time observation - Creates a new #GstNetTimePacket from a buffer received over the network. The + Creates a new #GstNetTimePacket from a buffer received over the network. The caller is responsible for ensuring that @buffer is at least #GST_NET_TIME_PACKET_SIZE bytes long. @@ -204,13 +376,18 @@ If @buffer is %NULL, the local and remote times will be set to #GST_CLOCK_TIME_NONE. MT safe. Caller owns return value (gst_net_time_packet_free to free). + - The new #GstNetTimePacket. + The new #GstNetTimePacket. - a buffer from which to construct the packet, or NULL + a buffer from which to construct the packet, or NULL @@ -218,67 +395,97 @@ MT safe. Caller owns return value (gst_net_time_packet_free to free). - Make a copy of @packet. + Make a copy of @packet. + - a copy of @packet, free with gst_net_time_packet_free(). + a copy of @packet, free with gst_net_time_packet_free(). - the #GstNetTimePacket + the #GstNetTimePacket - Free @packet. + Free @packet. + - the #GstNetTimePacket + the #GstNetTimePacket - Sends a #GstNetTimePacket over a socket. + Sends a #GstNetTimePacket over a socket. MT safe. + - TRUE if successful, FALSE in case an error occurred. + TRUE if successful, FALSE in case an error occurred. - the #GstNetTimePacket to send + the #GstNetTimePacket to send - socket to send the time packet on + socket to send the time packet on - address to send the time packet to + address to send the time packet to - Serialized a #GstNetTimePacket into a newly-allocated sequence of + Serialized a #GstNetTimePacket into a newly-allocated sequence of #GST_NET_TIME_PACKET_SIZE bytes, in network byte order. The value returned is suitable for passing to write(2) or sendto(2) for communication over the network. MT safe. Caller owns return value (g_free to free). + - A newly allocated sequence of #GST_NET_TIME_PACKET_SIZE bytes. + A newly allocated sequence of #GST_NET_TIME_PACKET_SIZE bytes. - the #GstNetTimePacket + the #GstNetTimePacket @@ -286,23 +493,32 @@ MT safe. Caller owns return value (g_free to free). - Receives a #GstNetTimePacket over a socket. Handles interrupted system + Receives a #GstNetTimePacket over a socket. Handles interrupted system calls, but otherwise returns NULL on error. + - a new #GstNetTimePacket, or NULL on error. Free + a new #GstNetTimePacket, or NULL on error. Free with gst_net_time_packet_free() when done. - socket to receive the time packet on + socket to receive the time packet on - address of variable to return sender address + address of variable to return sender address @@ -315,7 +531,9 @@ calls, but otherwise returns NULL on error. glib:type-name="GstNetTimeProvider" glib:get-type="gst_net_time_provider_get_type" glib:type-struct="NetTimeProviderClass"> - This object exposes the time of a #GstClock on the network. + This object exposes the time of a #GstClock on the network. A #GstNetTimeProvider is created with gst_net_time_provider_new() which takes a #GstClock, an address and a port number as arguments. @@ -324,28 +542,40 @@ After creating the object, a client clock such as #GstNetClientClock can query the exposed clock over the network for its values. The #GstNetTimeProvider typically wraps the clock used by a #GstPipeline. + - Allows network clients to get the current time of @clock. + Allows network clients to get the current time of @clock. + - the new #GstNetTimeProvider, or NULL on error + the new #GstNetTimeProvider, or NULL on error - a #GstClock to export over the network + a #GstClock to export over the network - an address to bind on as a dotted quad + an address to bind on as a dotted quad (xxx.xxx.xxx.xxx), IPv6 address, or NULL to bind to all addresses - a port to bind on, or 0 to let the kernel choose + a port to bind on, or 0 to let the kernel choose @@ -382,7 +612,7 @@ The #GstNetTimeProvider typically wraps the clock used by a #GstPipeline. c:type="GstNetTimeProviderPrivate*"/> - + @@ -390,11 +620,12 @@ The #GstNetTimeProvider typically wraps the clock used by a #GstPipeline. + - + @@ -402,6 +633,7 @@ The #GstNetTimeProvider typically wraps the clock used by a #GstPipeline. + glib:type-name="GstNtpClock" glib:get-type="gst_ntp_clock_get_type" glib:type-struct="NtpClockClass"> + - Create a new #GstNtpClock that will report the time provided by + Create a new #GstNtpClock that will report the time provided by the NTPv4 server on @remote_address and @remote_port. + - a new #GstClock that receives a time from the remote + a new #GstClock that receives a time from the remote clock. - a name for the clock + a name for the clock - the address or hostname of the remote clock provider + the address or hostname of the remote clock provider - the port of the remote clock provider + the port of the remote clock provider - initial time of the clock + initial time of the clock @@ -444,7 +690,7 @@ clock. - + @@ -452,50 +698,79 @@ clock. + - + + + + + + + + + + + + + + + - PTP clock identification that can be passed to gst_ptp_init() to + PTP clock identification that can be passed to gst_ptp_init() to automatically select one based on the MAC address of interfaces + + + + + - GstPtpClock implements a PTP (IEEE1588:2008) ordinary clock in slave-only + GstPtpClock implements a PTP (IEEE1588:2008) ordinary clock in slave-only mode, that allows a GStreamer pipeline to synchronize to a PTP network clock in some specific domain. @@ -516,8 +791,11 @@ To gather statistics about the PTP clock synchronization, gst_ptp_statistics_callback_add() can be used. This gives the application the possibility to collect all kinds of statistics from the clock synchronization. + - Creates a new PTP clock instance that exports the PTP time of the master + Creates a new PTP clock instance that exports the PTP time of the master clock in @domain. This clock can be slaved to other clocks as needed. If gst_ptp_init() was not called before, this will call gst_ptp_init() with @@ -528,17 +806,24 @@ times from the PTP master clock on the network. Once this happens the GstPtpClock::internal-clock property will become non-NULL. You can check this with gst_clock_wait_for_sync(), the GstClock::synced signal and gst_clock_is_synced(). + - A new #GstClock + A new #GstClock - Name of the clock + Name of the clock - PTP domain + PTP domain @@ -565,7 +850,7 @@ gst_clock_is_synced(). - + @@ -573,21 +858,29 @@ gst_clock_is_synced(). - Opaque #GstPtpClockClass structure. + Opaque #GstPtpClockClass structure. + - parented to #GstSystemClockClass + parented to #GstSystemClockClass - + + - The statistics can be the following structures: + The statistics can be the following structures: GST_PTP_STATISTICS_NEW_DOMAIN_FOUND: "domain" G_TYPE_UINT The domain identifier of the domain @@ -623,16 +916,21 @@ GST_PTP_STATISTICS_TIME_UPDATED: "rate" G_TYPE_DOUBLE Internal/external rate If %FALSE is returned, the callback is removed and never called again. + - PTP domain identifier + PTP domain identifier - New statistics + New statistics nullable="1" allow-none="1" closure="2"> - Data passed to gst_ptp_statistics_callback_add() + Data passed to gst_ptp_statistics_callback_add() - Attaches @addr as metadata in a #GstNetAddressMeta to @buffer. + Attaches @addr as metadata in a #GstNetAddressMeta to @buffer. + - a #GstNetAddressMeta connected to @buffer + a #GstNetAddressMeta connected to @buffer - a #GstBuffer + a #GstBuffer - a @GSocketAddress to connect to @buffer + a @GSocketAddress to connect to @buffer - Attaches @message as metadata in a #GstNetControlMessageMeta to @buffer. + Attaches @message as metadata in a #GstNetControlMessageMeta to @buffer. + - a #GstNetControlMessageMeta connected to @buffer + a #GstNetControlMessageMeta connected to @buffer - a #GstBuffer + a #GstBuffer - a @GSocketControlMessage to attach to @buffer + a @GSocketControlMessage to attach to @buffer @@ -684,21 +1002,38 @@ If %FALSE is returned, the callback is removed and never called again. - Find the #GstNetAddressMeta on @buffer. + Find the #GstNetAddressMeta on @buffer. + - the #GstNetAddressMeta or %NULL when there + the #GstNetAddressMeta or %NULL when there is no such metadata on @buffer. - a #GstBuffer + a #GstBuffer + + + + + + + + @@ -706,12 +1041,14 @@ is no such metadata on @buffer. + + @@ -719,6 +1056,7 @@ is no such metadata on @buffer. + @@ -727,37 +1065,51 @@ is no such metadata on @buffer. c:identifier="gst_net_time_packet_receive" moved-to="NetTimePacket.receive" throws="1"> - Receives a #GstNetTimePacket over a socket. Handles interrupted system + Receives a #GstNetTimePacket over a socket. Handles interrupted system calls, but otherwise returns NULL on error. + - a new #GstNetTimePacket, or NULL on error. Free + a new #GstNetTimePacket, or NULL on error. Free with gst_net_time_packet_free() when done. - socket to receive the time packet on + socket to receive the time packet on - address of variable to return sender address + address of variable to return sender address - Deinitialize the GStreamer PTP subsystem and stop the PTP clock. If there + Deinitialize the GStreamer PTP subsystem and stop the PTP clock. If there are any remaining GstPtpClock instances, they won't be further synchronized to the PTP network clock. + - Initialize the GStreamer PTP subsystem and create a PTP ordinary clock in + Initialize the GStreamer PTP subsystem and create a PTP ordinary clock in slave-only mode for all domains on the given @interfaces with the given @clock_id. @@ -766,20 +1118,27 @@ generated from the MAC address of the first network interface. This function is automatically called by gst_ptp_clock_new() with default parameters if it wasn't called before. + - %TRUE if the GStreamer PTP clock subsystem could be initialized. + %TRUE if the GStreamer PTP clock subsystem could be initialized. - PTP clock id of this process' clock or %GST_PTP_CLOCK_ID_NONE + PTP clock id of this process' clock or %GST_PTP_CLOCK_ID_NONE - network interfaces to run the clock on + network interfaces to run the clock on @@ -789,19 +1148,29 @@ parameters if it wasn't called before. - Check if the GStreamer PTP clock subsystem is initialized. + Check if the GStreamer PTP clock subsystem is initialized. + - %TRUE if the GStreamer PTP clock subsystem is initialized. + %TRUE if the GStreamer PTP clock subsystem is initialized. - Check if PTP clocks are generally supported on this system, and if previous + Check if PTP clocks are generally supported on this system, and if previous initializations did not fail. + - %TRUE if PTP clocks are generally supported on this system, and + %TRUE if PTP clocks are generally supported on this system, and previous initializations did not fail. @@ -809,10 +1178,15 @@ previous initializations did not fail. - Installs a new statistics callback for gathering PTP statistics. See + Installs a new statistics callback for gathering PTP statistics. See GstPtpStatisticsCallback for a list of statistics that are provided. + - Id for the callback that can be passed to + Id for the callback that can be passed to gst_ptp_statistics_callback_remove() @@ -822,7 +1196,9 @@ gst_ptp_statistics_callback_remove() scope="notified" closure="1" destroy="2"> - GstPtpStatisticsCallback to call + GstPtpStatisticsCallback to call @@ -830,11 +1206,15 @@ gst_ptp_statistics_callback_remove() transfer-ownership="none" nullable="1" allow-none="1"> - Data to pass to the callback + Data to pass to the callback - GDestroyNotify to destroy the data + GDestroyNotify to destroy the data @@ -842,14 +1222,19 @@ gst_ptp_statistics_callback_remove() - Removes a PTP statistics callback that was previously added with + Removes a PTP statistics callback that was previously added with gst_ptp_statistics_callback_add(). + - Callback id to remove + Callback id to remove diff --git a/gir-files/GstPbutils-1.0.gir b/gir-files/GstPbutils-1.0.gir index bd72900d6..ac9f90507 100644 --- a/gir-files/GstPbutils-1.0.gir +++ b/gir-files/GstPbutils-1.0.gir @@ -19,30 +19,64 @@ and/or use gtk-doc annotations. --> c:symbol-prefixes="gst"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GstAudioVisualizer" glib:get-type="gst_audio_visualizer_get_type" glib:type-struct="AudioVisualizerClass"> - A baseclass for scopes (visualizers). It takes care of re-fitting the + A baseclass for scopes (visualizers). It takes care of re-fitting the audio-rate to video-rate and handles renegotiation (downstream video size changes). It also provides several background shading effects. These effects are applied to a previous picture before the render() implementation can draw a new frame. + + @@ -72,6 +110,7 @@ new frame. + @@ -88,6 +127,7 @@ new frame. + @@ -123,11 +163,13 @@ new frame. + + @@ -140,6 +182,7 @@ new frame. + @@ -158,6 +201,7 @@ new frame. + @@ -175,75 +219,99 @@ new frame. + - Different types of supported background shading functions. + Different types of supported background shading functions. - no shading + no shading - plain fading + plain fading - fade and move up + fade and move up - fade and move down + fade and move down - fade and move left + fade and move left - fade and move right + fade and move right - fade and move horizontally out + fade and move horizontally out - fade and move horizontally in + fade and move horizontally in - fade and move vertically out + fade and move vertically out - fade and move vertically in + fade and move vertically in + @@ -259,6 +327,91 @@ new frame. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GstDiscoverer" glib:get-type="gst_discoverer_get_type" glib:type-struct="DiscovererClass"> - The #GstDiscoverer is a utility object which allows to get as much + The #GstDiscoverer is a utility object which allows to get as much information as possible from one or many URIs. It provides two APIs, allowing usage in blocking or non-blocking mode. @@ -282,10 +437,16 @@ By default this will use the GLib default main context unless you have set a custom context using g_main_context_push_thread_default(). All the information is returned in a #GstDiscovererInfo structure. + - Creates a new #GstDiscoverer with the provided timeout. + Creates a new #GstDiscoverer with the provided timeout. + - The new #GstDiscoverer. + The new #GstDiscoverer. If an error occurred when creating the discoverer, @err will be set accordingly and %NULL will be returned. If @err is set, the caller must free it when no longer needed using g_error_free(). @@ -293,13 +454,16 @@ free it when no longer needed using g_error_free(). - timeout per file, in nanoseconds. Allowed are values between + timeout per file, in nanoseconds. Allowed are values between one second (#GST_SECOND) and one hour (3600 * #GST_SECOND) + @@ -316,6 +480,7 @@ free it when no longer needed using g_error_free(). + @@ -326,6 +491,7 @@ free it when no longer needed using g_error_free(). + @@ -339,6 +505,7 @@ free it when no longer needed using g_error_free(). + @@ -351,73 +518,101 @@ free it when no longer needed using g_error_free(). - Synchronously discovers the given @uri. + Synchronously discovers the given @uri. A copy of @uri will be made internally, so the caller can safely g_free() afterwards. + - the result of the scanning. Can be %NULL if an + the result of the scanning. Can be %NULL if an error occurred. - A #GstDiscoverer + A #GstDiscoverer - The URI to run on. + The URI to run on. - Appends the given @uri to the list of URIs to discoverer. The actual + Appends the given @uri to the list of URIs to discoverer. The actual discovery of the @uri will only take place if gst_discoverer_start() has been called. A copy of @uri will be made internally, so the caller can safely g_free() afterwards. + - %TRUE if the @uri was successfully appended to the list of pending + %TRUE if the @uri was successfully appended to the list of pending uris, else %FALSE - A #GstDiscoverer + A #GstDiscoverer - the URI to add. + the URI to add. - Allow asynchronous discovering of URIs to take place. + Allow asynchronous discovering of URIs to take place. A #GMainLoop must be available for #GstDiscoverer to properly work in asynchronous mode. + - A #GstDiscoverer + A #GstDiscoverer - Stop the discovery of any pending URIs and clears the list of + Stop the discovery of any pending URIs and clears the list of pending URIS (if any). + - A #GstDiscoverer + A #GstDiscoverer @@ -426,7 +621,9 @@ pending URIS (if any). writable="1" construct="1" transfer-ownership="none"> - The duration (in nanoseconds) after which the discovery of an individual + The duration (in nanoseconds) after which the discovery of an individual URI will timeout. If the discovery of a URI times out, the %GST_DISCOVERER_TIMEOUT will be @@ -446,12 +643,14 @@ set on the result flags. - + - Will be emitted in async mode when all information on a URI could be + Will be emitted in async mode when all information on a URI could be discovered, or an error occurred. When an error occurs, @info might still contain some partial information, @@ -461,14 +660,18 @@ depending on the circumstances of the error. - the results #GstDiscovererInfo + the results #GstDiscovererInfo - #GError, which will be non-NULL + #GError, which will be non-NULL if an error occurred during discovery. You must not free this #GError, it will be freed by @@ -478,13 +681,17 @@ depending on the circumstances of the error. - Will be emitted in async mode when all pending URIs have been processed. + Will be emitted in async mode when all pending URIs have been processed. - This signal is emitted after the source element has been created for, so + This signal is emitted after the source element has been created for, so the URI being discovered, so it can be configured by setting additional properties (e.g. set a proxy server for an http source, or set the device and read speed for an audio cd source). @@ -496,13 +703,17 @@ thread. - source element + source element - Will be emitted when the discover starts analyzing the pending URIs + Will be emitted when the discover starts analyzing the pending URIs @@ -514,16 +725,23 @@ thread. parent="DiscovererStreamInfo" glib:type-name="GstDiscovererAudioInfo" glib:get-type="gst_discoverer_audio_info_get_type"> - #GstDiscovererStreamInfo specific to audio streams. + #GstDiscovererStreamInfo specific to audio streams. + - the average or nominal bitrate of the stream in bits/second. + the average or nominal bitrate of the stream in bits/second. - a #GstDiscovererAudioInfo + a #GstDiscovererAudioInfo @@ -532,15 +750,20 @@ thread. + - the channel-mask of the stream, refer to + the channel-mask of the stream, refer to gst_audio_channel_positions_from_mask() for more information. - a #GstDiscovererAudioInfo + a #GstDiscovererAudioInfo @@ -548,13 +771,18 @@ information. + - the number of channels in the stream. + the number of channels in the stream. - a #GstDiscovererAudioInfo + a #GstDiscovererAudioInfo @@ -562,13 +790,18 @@ information. + - the number of bits used per sample in each channel. + the number of bits used per sample in each channel. - a #GstDiscovererAudioInfo + a #GstDiscovererAudioInfo @@ -576,13 +809,18 @@ information. + - the language of the stream, or NULL if unknown. + the language of the stream, or NULL if unknown. - a #GstDiscovererAudioInfo + a #GstDiscovererAudioInfo @@ -590,13 +828,18 @@ information. + - the maximum bitrate of the stream in bits/second. + the maximum bitrate of the stream in bits/second. - a #GstDiscovererAudioInfo + a #GstDiscovererAudioInfo @@ -604,13 +847,18 @@ information. + - the sample rate of the stream in Hertz. + the sample rate of the stream in Hertz. - a #GstDiscovererAudioInfo + a #GstDiscovererAudioInfo @@ -620,11 +868,13 @@ information. + + @@ -637,6 +887,7 @@ information. + @@ -649,6 +900,7 @@ information. + @@ -667,6 +919,7 @@ information. + @@ -681,7 +934,7 @@ information. - + @@ -692,11 +945,16 @@ information. parent="DiscovererStreamInfo" glib:type-name="GstDiscovererContainerInfo" glib:get-type="gst_discoverer_container_info_get_type"> - #GstDiscovererStreamInfo specific to container streams. + #GstDiscovererStreamInfo specific to container streams. + - the list of + the list of #GstDiscovererStreamInfo this container stream offers. Free with gst_discoverer_stream_info_list_free() after usage. @@ -705,7 +963,9 @@ Free with gst_discoverer_stream_info_list_free() after usage. - a #GstDiscovererStreamInfo + a #GstDiscovererStreamInfo @@ -718,40 +978,59 @@ Free with gst_discoverer_stream_info_list_free() after usage. parent="GObject.Object" glib:type-name="GstDiscovererInfo" glib:get-type="gst_discoverer_info_get_type"> - Structure containing the information of a URI analyzed by #GstDiscoverer. + Structure containing the information of a URI analyzed by #GstDiscoverer. - Parses a #GVariant as produced by gst_discoverer_info_to_variant() + Parses a #GVariant as produced by gst_discoverer_info_to_variant() back to a #GstDiscovererInfo. + - A newly-allocated #GstDiscovererInfo. + A newly-allocated #GstDiscovererInfo. - A #GVariant to deserialize into a #GstDiscovererInfo. + A #GVariant to deserialize into a #GstDiscovererInfo. + - A copy of the #GstDiscovererInfo + A copy of the #GstDiscovererInfo - a #GstDiscovererInfo + a #GstDiscovererInfo - Finds all the #GstDiscovererAudioInfo contained in @info + Finds all the #GstDiscovererAudioInfo contained in @info + - A #GList of + A #GList of matching #GstDiscovererStreamInfo. The caller should free it with gst_discoverer_stream_info_list_free(). @@ -760,16 +1039,23 @@ gst_discoverer_stream_info_list_free(). - a #GstDiscovererInfo + a #GstDiscovererInfo - Finds all the #GstDiscovererContainerInfo contained in @info + Finds all the #GstDiscovererContainerInfo contained in @info + - A #GList of + A #GList of matching #GstDiscovererStreamInfo. The caller should free it with gst_discoverer_stream_info_list_free(). @@ -778,20 +1064,27 @@ gst_discoverer_stream_info_list_free(). - a #GstDiscovererInfo + a #GstDiscovererInfo + - the duration of the URI in #GstClockTime (nanoseconds). + the duration of the URI in #GstClockTime (nanoseconds). - a #GstDiscovererInfo + a #GstDiscovererInfo @@ -799,13 +1092,18 @@ gst_discoverer_stream_info_list_free(). + - whether the URI is live. + whether the URI is live. - a #GstDiscovererInfo + a #GstDiscovererInfo @@ -815,15 +1113,20 @@ gst_discoverer_stream_info_list_free(). deprecated="1"> This functions is deprecated since version 1.4, use #gst_discoverer_info_get_missing_elements_installer_details + - Miscellaneous information stored as a #GstStructure + Miscellaneous information stored as a #GstStructure (for example: information about missing plugins). If you wish to use the #GstStructure after the life-time of @info, you will need to copy it. - a #GstDiscovererInfo + a #GstDiscovererInfo @@ -831,9 +1134,14 @@ gst_discoverer_stream_info_list_free(). - Get the installer details for missing elements + Get the installer details for missing elements + - An array of strings + An array of strings containing informations about how to install the various missing elements for @info to be usable. If you wish to use the strings after the life-time of @info, you will need to copy them. @@ -843,41 +1151,56 @@ of @info, you will need to copy them. - a #GstDiscovererStreamInfo to retrieve installer detail + a #GstDiscovererStreamInfo to retrieve installer detail for the missing element + - the result of the discovery as a #GstDiscovererResult. + the result of the discovery as a #GstDiscovererResult. - a #GstDiscovererInfo + a #GstDiscovererInfo + - the whether the URI is seekable. + the whether the URI is seekable. - a #GstDiscovererInfo + a #GstDiscovererInfo + - the structure (or topology) of the URI as a + the structure (or topology) of the URI as a #GstDiscovererStreamInfo. This structure can be traversed to see the original hierarchy. Unref with gst_discoverer_stream_info_unref() after usage. @@ -885,15 +1208,20 @@ gst_discoverer_stream_info_unref() after usage. - a #GstDiscovererInfo + a #GstDiscovererInfo + - the list of + the list of all streams contained in the #info. Free after usage with gst_discoverer_stream_info_list_free(). @@ -902,17 +1230,24 @@ with gst_discoverer_stream_info_list_free(). - a #GstDiscovererInfo + a #GstDiscovererInfo - Finds the #GstDiscovererStreamInfo contained in @info that match the + Finds the #GstDiscovererStreamInfo contained in @info that match the given @streamtype. + - A #GList of + A #GList of matching #GstDiscovererStreamInfo. The caller should free it with gst_discoverer_stream_info_list_free(). @@ -921,20 +1256,29 @@ gst_discoverer_stream_info_list_free(). - a #GstDiscovererInfo + a #GstDiscovererInfo - a #GType derived from #GstDiscovererStreamInfo + a #GType derived from #GstDiscovererStreamInfo - Finds all the #GstDiscovererSubtitleInfo contained in @info + Finds all the #GstDiscovererSubtitleInfo contained in @info + - A #GList of + A #GList of matching #GstDiscovererStreamInfo. The caller should free it with gst_discoverer_stream_info_list_free(). @@ -943,55 +1287,77 @@ gst_discoverer_stream_info_list_free(). - a #GstDiscovererInfo + a #GstDiscovererInfo + - all tags contained in the URI. If you wish to use + all tags contained in the URI. If you wish to use the tags after the life-time of @info, you will need to copy them. - a #GstDiscovererInfo + a #GstDiscovererInfo + - TOC contained in the URI. If you wish to use + TOC contained in the URI. If you wish to use the TOC after the life-time of @info, you will need to copy it. - a #GstDiscovererInfo + a #GstDiscovererInfo + - the URI to which this information corresponds to. + the URI to which this information corresponds to. Copy it if you wish to use it after the life-time of @info. - a #GstDiscovererInfo + a #GstDiscovererInfo - Finds all the #GstDiscovererVideoInfo contained in @info + Finds all the #GstDiscovererVideoInfo contained in @info + - A #GList of + A #GList of matching #GstDiscovererStreamInfo. The caller should free it with gst_discoverer_stream_info_list_free(). @@ -1000,7 +1366,9 @@ gst_discoverer_stream_info_list_free(). - a #GstDiscovererInfo + a #GstDiscovererInfo @@ -1008,22 +1376,31 @@ gst_discoverer_stream_info_list_free(). - Serializes @info to a #GVariant that can be parsed again + Serializes @info to a #GVariant that can be parsed again through gst_discoverer_info_from_variant(). Note that any #GstToc (s) that might have been discovered will not be serialized for now. + - A newly-allocated #GVariant representing @info. + A newly-allocated #GVariant representing @info. - A #GstDiscovererInfo + A #GstDiscovererInfo - A combination of #GstDiscovererSerializeFlags to specify + A combination of #GstDiscovererSerializeFlags to specify what needs to be serialized. @@ -1034,47 +1411,62 @@ what needs to be serialized. + - Result values for the discovery process. + Result values for the discovery process. - The discovery was successful + The discovery was successful - the URI is invalid + the URI is invalid - an error happened and the GError is set + an error happened and the GError is set - the discovery timed-out + the discovery timed-out - the discoverer was already discovering a file + the discoverer was already discovering a file - Some plugins are missing for full discovery + Some plugins are missing for full discovery glib:type-name="GstDiscovererSerializeFlags" glib:get-type="gst_discoverer_serialize_flags_get_type" c:type="GstDiscovererSerializeFlags"> - You can use these flags to control what is serialized by + You can use these flags to control what is serialized by gst_discoverer_info_to_variant() - Serialize only basic information, excluding + Serialize only basic information, excluding caps, tags and miscellaneous information - Serialize the caps for each stream + Serialize the caps for each stream - Serialize the tags for each stream + Serialize the tags for each stream - Serialize miscellaneous information for each stream + Serialize miscellaneous information for each stream - Serialize all the available info, including + Serialize all the available info, including caps, tags and miscellaneous information @@ -1123,7 +1527,9 @@ caps, tags and miscellaneous information parent="GObject.Object" glib:type-name="GstDiscovererStreamInfo" glib:get-type="gst_discoverer_stream_info_get_type"> - Base structure for information concerning a media stream. Depending on the + Base structure for information concerning a media stream. Depending on the stream type, one can find more media-specific information in #GstDiscovererAudioInfo, #GstDiscovererVideoInfo, and #GstDiscovererContainerInfo. @@ -1140,14 +1546,19 @@ corresponding to the AVI container, which in turn will have a for the audio and video streams respectively. - Decrements the reference count of all contained #GstDiscovererStreamInfo + Decrements the reference count of all contained #GstDiscovererStreamInfo and fress the #GList. + - a #GList of #GstDiscovererStreamInfo + a #GList of #GstDiscovererStreamInfo @@ -1156,14 +1567,19 @@ and fress the #GList. + - the #GstCaps of the stream. Unref with + the #GstCaps of the stream. Unref with #gst_caps_unref after usage. - a #GstDiscovererStreamInfo + a #GstDiscovererStreamInfo @@ -1174,15 +1590,20 @@ and fress the #GList. deprecated="1"> This functions is deprecated since version 1.4, use #gst_discoverer_info_get_missing_elements_installer_details + - additional information regarding the stream (for + additional information regarding the stream (for example codec version, profile, etc..). If you wish to use the #GstStructure after the life-time of @info you will need to copy it. - a #GstDiscovererStreamInfo + a #GstDiscovererStreamInfo @@ -1190,15 +1611,20 @@ after the life-time of @info you will need to copy it. + - the next #GstDiscovererStreamInfo in a chain. %NULL + the next #GstDiscovererStreamInfo in a chain. %NULL for final streams. Unref with #gst_discoverer_stream_info_unref after usage. - a #GstDiscovererStreamInfo + a #GstDiscovererStreamInfo @@ -1206,15 +1632,20 @@ Unref with #gst_discoverer_stream_info_unref after usage. + - the previous #GstDiscovererStreamInfo in a chain. + the previous #GstDiscovererStreamInfo in a chain. %NULL for starting points. Unref with #gst_discoverer_stream_info_unref after usage. - a #GstDiscovererStreamInfo + a #GstDiscovererStreamInfo @@ -1222,14 +1653,19 @@ after usage. + - the stream ID of this stream. If you wish to + the stream ID of this stream. If you wish to use the stream ID after the life-time of @info you will need to copy it. - a #GstDiscovererStreamInfo + a #GstDiscovererStreamInfo @@ -1237,14 +1673,19 @@ use the stream ID after the life-time of @info you will need to copy it. + - a human readable name for the stream type of the given @info (ex : "audio", + a human readable name for the stream type of the given @info (ex : "audio", "container",...). - a #GstDiscovererStreamInfo + a #GstDiscovererStreamInfo @@ -1252,28 +1693,38 @@ use the stream ID after the life-time of @info you will need to copy it. + - the tags contained in this stream. If you wish to + the tags contained in this stream. If you wish to use the tags after the life-time of @info you will need to copy them. - a #GstDiscovererStreamInfo + a #GstDiscovererStreamInfo + - the TOC contained in this stream. If you wish to + the TOC contained in this stream. If you wish to use the TOC after the life-time of @info you will need to copy it. - a #GstDiscovererStreamInfo + a #GstDiscovererStreamInfo @@ -1286,17 +1737,24 @@ use the TOC after the life-time of @info you will need to copy it. parent="DiscovererStreamInfo" glib:type-name="GstDiscovererSubtitleInfo" glib:get-type="gst_discoverer_subtitle_info_get_type"> - #GstDiscovererStreamInfo specific to subtitle streams (this includes text and + #GstDiscovererStreamInfo specific to subtitle streams (this includes text and image based ones). + - the language of the stream, or NULL if unknown. + the language of the stream, or NULL if unknown. - a #GstDiscovererSubtitleInfo + a #GstDiscovererSubtitleInfo @@ -1309,16 +1767,23 @@ image based ones). parent="DiscovererStreamInfo" glib:type-name="GstDiscovererVideoInfo" glib:get-type="gst_discoverer_video_info_get_type"> - #GstDiscovererStreamInfo specific to video streams (this includes images). + #GstDiscovererStreamInfo specific to video streams (this includes images). + - the average or nominal bitrate of the video stream in bits/second. + the average or nominal bitrate of the video stream in bits/second. - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo @@ -1326,13 +1791,18 @@ image based ones). + - the depth in bits of the video stream. + the depth in bits of the video stream. - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo @@ -1340,13 +1810,18 @@ image based ones). + - the framerate of the video stream (denominator). + the framerate of the video stream (denominator). - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo @@ -1354,13 +1829,18 @@ image based ones). + - the framerate of the video stream (numerator). + the framerate of the video stream (numerator). - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo @@ -1368,13 +1848,18 @@ image based ones). + - the height of the video stream in pixels. + the height of the video stream in pixels. - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo @@ -1382,13 +1867,18 @@ image based ones). + - the maximum bitrate of the video stream in bits/second. + the maximum bitrate of the video stream in bits/second. - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo @@ -1396,13 +1886,18 @@ image based ones). + - the Pixel Aspect Ratio (PAR) of the video stream (denominator). + the Pixel Aspect Ratio (PAR) of the video stream (denominator). - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo @@ -1410,13 +1905,18 @@ image based ones). + - the Pixel Aspect Ratio (PAR) of the video stream (numerator). + the Pixel Aspect Ratio (PAR) of the video stream (numerator). - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo @@ -1424,13 +1924,18 @@ image based ones). + - the width of the video stream in pixels. + the width of the video stream in pixels. - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo @@ -1438,14 +1943,19 @@ image based ones). + - %TRUE if the video stream corresponds to an image (i.e. only contains + %TRUE if the video stream corresponds to an image (i.e. only contains one frame). - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo @@ -1453,62 +1963,127 @@ one frame). + - %TRUE if the stream is interlaced, else %FALSE. + %TRUE if the stream is interlaced, else %FALSE. - a #GstDiscovererVideoInfo + a #GstDiscovererVideoInfo + + + + + + + - #GstEncodingTarget category for recording and capture. + #GstEncodingTarget category for recording and capture. Targets within this category are optimized for low latency encoding. + - #GstEncodingTarget category for device-specific targets. + #GstEncodingTarget category for device-specific targets. The name of the target will usually be the constructor and model of the device, and that target will contain #GstEncodingProfiles suitable for that device. + - #GstEncodingTarget category for file extensions. + #GstEncodingTarget category for file extensions. The name of the target will be the name of the file extensions possible for a particular target. Those targets are defining like 'default' formats usually used for a particular file extension. + - #GstEncodingTarget category for online-services. + #GstEncodingTarget category for online-services. The name of the target will usually be the name of the online service and that target will contain #GstEncodingProfiles suitable for that online service. + - #GstEncodingTarget category for storage, archiving and editing targets. + #GstEncodingTarget category for storage, archiving and editing targets. Those targets can be lossless and/or provide very fast random access content. The name of the target will usually be the container type or editing target, and that target will contain #GstEncodingProfiles suitable for editing or storage. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GstEncodingAudioProfile" glib:get-type="gst_encoding_audio_profile_get_type" glib:type-struct="EncodingAudioProfileClass"> - Variant of #GstEncodingProfile for audio streams. + Variant of #GstEncodingProfile for audio streams. + - Creates a new #GstEncodingAudioProfile + Creates a new #GstEncodingAudioProfile All provided allocatable arguments will be internally copied, so can be safely freed/unreferenced after calling this method. + - the newly created #GstEncodingAudioProfile. + the newly created #GstEncodingAudioProfile. - the #GstCaps + the #GstCaps - the preset(s) to use on the encoder, can be %NULL + the preset(s) to use on the encoder, can be %NULL - the #GstCaps used to restrict the input to the encoder, can be + the #GstCaps used to restrict the input to the encoder, can be NULL. See gst_encoding_profile_get_restriction() for more details. - the number of time this stream must be used. 0 means any number of + the number of time this stream must be used. 0 means any number of times (including never) @@ -1558,6 +2149,7 @@ NULL. See gst_encoding_profile_get_restriction() for more details. c:type="GstEncodingAudioProfileClass" disguised="1" glib:is-gtype-struct-for="EncodingAudioProfile"> + glib:type-name="GstEncodingContainerProfile" glib:get-type="gst_encoding_container_profile_get_type" glib:type-struct="EncodingContainerProfileClass"> - Encoding profiles for containers. Keeps track of a list of #GstEncodingProfile + Encoding profiles for containers. Keeps track of a list of #GstEncodingProfile + - Creates a new #GstEncodingContainerProfile. + Creates a new #GstEncodingContainerProfile. + - The newly created #GstEncodingContainerProfile. + The newly created #GstEncodingContainerProfile. @@ -1580,77 +2180,106 @@ NULL. See gst_encoding_profile_get_restriction() for more details. transfer-ownership="none" nullable="1" allow-none="1"> - The name of the container profile, can be %NULL + The name of the container profile, can be %NULL - The description of the container profile, + The description of the container profile, can be %NULL - The format to use for this profile + The format to use for this profile - The preset to use for this profile. + The preset to use for this profile. - Add a #GstEncodingProfile to the list of profiles handled by @container. + Add a #GstEncodingProfile to the list of profiles handled by @container. No copy of @profile will be made, if you wish to use it elsewhere after this method you should increment its reference count. + - %TRUE if the @stream was properly added, else %FALSE. + %TRUE if the @stream was properly added, else %FALSE. - the #GstEncodingContainerProfile to use + the #GstEncodingContainerProfile to use - the #GstEncodingProfile to add. + the #GstEncodingProfile to add. - Checks if @container contains a #GstEncodingProfile identical to + Checks if @container contains a #GstEncodingProfile identical to @profile. + - %TRUE if @container contains a #GstEncodingProfile identical + %TRUE if @container contains a #GstEncodingProfile identical to @profile, else %FALSE. - a #GstEncodingContainerProfile + a #GstEncodingContainerProfile - a #GstEncodingProfile + a #GstEncodingProfile + - + the list of contained #GstEncodingProfile. @@ -1658,7 +2287,9 @@ the list of contained #GstEncodingProfile. - a #GstEncodingContainerProfile + a #GstEncodingContainerProfile @@ -1669,6 +2300,7 @@ the list of contained #GstEncodingProfile. c:type="GstEncodingContainerProfileClass" disguised="1" glib:is-gtype-struct-for="EncodingContainerProfile"> + glib:type-name="GstEncodingProfile" glib:get-type="gst_encoding_profile_get_type" glib:type-struct="EncodingProfileClass"> - The opaque base class object for all encoding profiles. This contains generic + The opaque base class object for all encoding profiles. This contains generic information like name, description, format and preset. + - Find the #GstEncodingProfile with the specified name and category. + Find the #GstEncodingProfile with the specified name and category. + - The matching #GstEncodingProfile or %NULL. + The matching #GstEncodingProfile or %NULL. - The name of the target + The name of the target - The name of the profile, if %NULL + The name of the profile, if %NULL provided, it will default to the encoding profile called `default`. @@ -1702,23 +2346,32 @@ provided, it will default to the encoding profile called `default`. transfer-ownership="none" nullable="1" allow-none="1"> - The target category. Can be %NULL + The target category. Can be %NULL - Creates a #GstEncodingProfile matching the formats from the given + Creates a #GstEncodingProfile matching the formats from the given #GstDiscovererInfo. Streams other than audio or video (eg, subtitles), are currently ignored. + - The new #GstEncodingProfile or %NULL. + The new #GstEncodingProfile or %NULL. - The #GstDiscovererInfo to read from + The #GstDiscovererInfo to read from @@ -1726,142 +2379,199 @@ subtitles), are currently ignored. - Makes a deep copy of @self + Makes a deep copy of @self + - The copy of @self + The copy of @self - The #GstEncodingProfile to copy + The #GstEncodingProfile to copy - Get whether the format that has been negotiated in at some point can be renegotiated + Get whether the format that has been negotiated in at some point can be renegotiated later during the encoding. + - a #GstEncodingProfile + a #GstEncodingProfile + - the description of the profile, can be %NULL. + the description of the profile, can be %NULL. - a #GstEncodingProfile + a #GstEncodingProfile + - a suitable file extension for @profile, or NULL. + a suitable file extension for @profile, or NULL. - a #GstEncodingProfile + a #GstEncodingProfile + - the #GstCaps corresponding to the media format used + the #GstCaps corresponding to the media format used in the profile. Unref after usage. - a #GstEncodingProfile + a #GstEncodingProfile - Computes the full output caps that this @profile will be able to consume. + Computes the full output caps that this @profile will be able to consume. + - The full caps the given @profile can consume. Call + The full caps the given @profile can consume. Call gst_caps_unref() when you are done with the caps. - a #GstEncodingProfile + a #GstEncodingProfile + - the name of the profile, can be %NULL. + the name of the profile, can be %NULL. - a #GstEncodingProfile + a #GstEncodingProfile + - The number of times the profile is used in its parent + The number of times the profile is used in its parent container profile. If 0, it is not a mandatory stream. - a #GstEncodingProfile + a #GstEncodingProfile + - the name of the #GstPreset to be used in the profile. + the name of the #GstPreset to be used in the profile. This is the name that has been set when saving the preset. - a #GstEncodingProfile + a #GstEncodingProfile + - the name of the #GstPreset factory to be used in the profile. + the name of the #GstPreset factory to be used in the profile. - a #GstEncodingProfile + a #GstEncodingProfile + - The restriction #GstCaps to apply before the encoder + The restriction #GstCaps to apply before the encoder that will be used in the profile. The fields present in restriction caps are properties of the raw stream (that is before encoding), such as height and width for video and depth and sampling rate for audio. Does not apply to @@ -1871,25 +2581,33 @@ Can be %NULL. Unref after usage. - a #GstEncodingProfile + a #GstEncodingProfile + - the human-readable name of the type of @profile. + the human-readable name of the type of @profile. - a #GstEncodingProfile + a #GstEncodingProfile + @@ -1900,36 +2618,52 @@ Can be %NULL. Unref after usage. - Checks whether the two #GstEncodingProfile are equal + Checks whether the two #GstEncodingProfile are equal + - %TRUE if @a and @b are equal, else %FALSE. + %TRUE if @a and @b are equal, else %FALSE. - a #GstEncodingProfile + a #GstEncodingProfile - a #GstEncodingProfile + a #GstEncodingProfile - Sets whether the format that has been negotiated in at some point can be renegotiated + Sets whether the format that has been negotiated in at some point can be renegotiated later during the encoding. + - a #GstEncodingProfile + a #GstEncodingProfile - Whether the format that has been negotiated first can be renegotiated + Whether the format that has been negotiated first can be renegotiated during the encoding @@ -1937,21 +2671,28 @@ during the encoding - Set @description as the given description for the @profile. A copy of + Set @description as the given description for the @profile. A copy of @description will be made internally. + - a #GstEncodingProfile + a #GstEncodingProfile - the description to set on the profile + the description to set on the profile @@ -1959,134 +2700,183 @@ during the encoding - Set whether the profile should be used or not. + Set whether the profile should be used or not. + - a #GstEncodingProfile + a #GstEncodingProfile - %FALSE to disable #profile, %TRUE to enable it + %FALSE to disable #profile, %TRUE to enable it - Sets the media format used in the profile. + Sets the media format used in the profile. + - a #GstEncodingProfile + a #GstEncodingProfile - the media format to use in the profile. + the media format to use in the profile. - Set @name as the given name for the @profile. A copy of @name will be made + Set @name as the given name for the @profile. A copy of @name will be made internally. + - a #GstEncodingProfile + a #GstEncodingProfile - the name to set on the profile + the name to set on the profile - Set the number of time the profile is used in its parent + Set the number of time the profile is used in its parent container profile. If 0, it is not a mandatory stream + - a #GstEncodingProfile + a #GstEncodingProfile - the number of time the profile can be used + the number of time the profile can be used - Sets the name of the #GstElement that implements the #GstPreset interface + Sets the name of the #GstElement that implements the #GstPreset interface to use for the profile. This is the name that has been set when saving the preset. + - a #GstEncodingProfile + a #GstEncodingProfile - the element preset to use + the element preset to use - Sets the name of the #GstPreset's factory to be used in the profile. + Sets the name of the #GstPreset's factory to be used in the profile. + - a #GstEncodingProfile + a #GstEncodingProfile - The name of the preset to use in this @profile. + The name of the preset to use in this @profile. - Set the restriction #GstCaps to apply before the encoder + Set the restriction #GstCaps to apply before the encoder that will be used in the profile. See gst_encoding_profile_get_restriction() for more about restrictions. Does not apply to #GstEncodingContainerProfile. + - a #GstEncodingProfile + a #GstEncodingProfile - the restriction to apply + the restriction to apply @@ -2099,6 +2889,7 @@ for more about restrictions. Does not apply to #GstEncodingContainerProfile. + - Collection of #GstEncodingProfile for a specific target or use-case. + Collection of #GstEncodingProfile for a specific target or use-case. When being stored/loaded, targets come from a specific category, like #GST_ENCODING_CATEGORY_DEVICE. - Creates a new #GstEncodingTarget. + Creates a new #GstEncodingTarget. The name and category can only consist of lowercase ASCII letters for the first character, followed by either lowercase ASCII letters, digits or @@ -2121,28 +2916,39 @@ The @category <emphasis>should</emphasis> be one of the existing well-defined categories, like #GST_ENCODING_CATEGORY_DEVICE, but it <emphasis>can</emphasis> be a application or user specific category if needed. + - The newly created #GstEncodingTarget or %NULL if + The newly created #GstEncodingTarget or %NULL if there was an error. - The name of the target. + The name of the target. - The name of the category to which this @target + The name of the category to which this @target belongs. For example: #GST_ENCODING_CATEGORY_DEVICE. - A description of #GstEncodingTarget in the + A description of #GstEncodingTarget in the current locale. - A #GList of + A #GList of #GstEncodingProfile. @@ -2151,18 +2957,25 @@ current locale. - Searches for the #GstEncodingTarget with the given name, loads it + Searches for the #GstEncodingTarget with the given name, loads it and returns it. If the category name is specified only targets from that category will be searched for. + - The #GstEncodingTarget if available, else %NULL. + The #GstEncodingTarget if available, else %NULL. - the name of the #GstEncodingTarget to load (automatically + the name of the #GstEncodingTarget to load (automatically converted to lower case internally as capital letters are not valid for target names). @@ -2171,7 +2984,9 @@ valid for target names). transfer-ownership="none" nullable="1" allow-none="1"> - the name of the target category, like + the name of the target category, like #GST_ENCODING_CATEGORY_DEVICE. Can be %NULL @@ -2180,102 +2995,143 @@ valid for target names). - Opens the provided file and returns the contained #GstEncodingTarget. + Opens the provided file and returns the contained #GstEncodingTarget. + - The #GstEncodingTarget contained in the file, else + The #GstEncodingTarget contained in the file, else %NULL - The file location to load the #GstEncodingTarget from + The file location to load the #GstEncodingTarget from - Adds the given @profile to the @target. Each added profile must have + Adds the given @profile to the @target. Each added profile must have a unique name within the profile. The @target will steal a reference to the @profile. If you wish to use the profile after calling this method, you should increase its reference count. + - %TRUE if the profile was added, else %FALSE. + %TRUE if the profile was added, else %FALSE. - the #GstEncodingTarget to add a profile to + the #GstEncodingTarget to add a profile to - the #GstEncodingProfile to add + the #GstEncodingProfile to add + - The category of the @target. For example: + The category of the @target. For example: #GST_ENCODING_CATEGORY_DEVICE. - a #GstEncodingTarget + a #GstEncodingTarget + - The description of the @target. + The description of the @target. - a #GstEncodingTarget + a #GstEncodingTarget + - The name of the @target. + The name of the @target. - a #GstEncodingTarget + a #GstEncodingTarget + - The matching #GstEncodingProfile, or %NULL. + The matching #GstEncodingProfile, or %NULL. - a #GstEncodingTarget + a #GstEncodingTarget - the name of the profile to retrieve + the name of the profile to retrieve + - A list of + A list of #GstEncodingProfile(s) this @target handles. @@ -2283,20 +3139,29 @@ count. - a #GstEncodingTarget + a #GstEncodingTarget - Saves the @target to a default user-local directory. + Saves the @target to a default user-local directory. + - %TRUE if the target was correctly saved, else %FALSE. + %TRUE if the target was correctly saved, else %FALSE. - a #GstEncodingTarget + a #GstEncodingTarget @@ -2304,18 +3169,27 @@ count. - Saves the @target to the provided file location. + Saves the @target to the provided file location. + - %TRUE if the target was correctly saved, else %FALSE. + %TRUE if the target was correctly saved, else %FALSE. - a #GstEncodingTarget + a #GstEncodingTarget - the location to store the @target at. + the location to store the @target at. @@ -2328,9 +3202,14 @@ count. glib:type-name="GstEncodingVideoProfile" glib:get-type="gst_encoding_video_profile_get_type" glib:type-struct="EncodingVideoProfileClass"> - Variant of #GstEncodingProfile for video streams, allows specifying the @pass. + Variant of #GstEncodingProfile for video streams, allows specifying the @pass. + - Creates a new #GstEncodingVideoProfile + Creates a new #GstEncodingVideoProfile All provided allocatable arguments will be internally copied, so can be safely freed/unreferenced after calling this method. @@ -2340,32 +3219,43 @@ please refer to the gst_encoding_video_profile_set_pass() documentation. If you wish to use/force a constant framerate please refer to the gst_encoding_video_profile_set_variableframerate() documentation. + - the newly created #GstEncodingVideoProfile. + the newly created #GstEncodingVideoProfile. - the #GstCaps + the #GstCaps - the preset(s) to use on the encoder, can be %NULL + the preset(s) to use on the encoder, can be %NULL - the #GstCaps used to restrict the input to the encoder, can be + the #GstCaps used to restrict the input to the encoder, can be NULL. See gst_encoding_profile_get_restriction() for more details. - the number of time this stream must be used. 0 means any number of + the number of time this stream must be used. 0 means any number of times (including never) @@ -2373,15 +3263,22 @@ NULL. See gst_encoding_profile_get_restriction() for more details. - Get the pass number if this is part of a multi-pass profile. + Get the pass number if this is part of a multi-pass profile. + - The pass number. Starts at 1 for multi-pass. 0 if this is + The pass number. Starts at 1 for multi-pass. 0 if this is not a multi-pass profile - a #GstEncodingVideoProfile + a #GstEncodingVideoProfile @@ -2389,13 +3286,18 @@ not a multi-pass profile + - Whether non-constant video framerate is allowed for encoding. + Whether non-constant video framerate is allowed for encoding. - a #GstEncodingVideoProfile + a #GstEncodingVideoProfile @@ -2403,41 +3305,55 @@ not a multi-pass profile - Sets the pass number of this video profile. The first pass profile should have + Sets the pass number of this video profile. The first pass profile should have this value set to 1. If this video profile isn't part of a multi-pass profile, you may set it to 0 (the default value). + - a #GstEncodingVideoProfile + a #GstEncodingVideoProfile - the pass number for this profile + the pass number for this profile - If set to %TRUE, then the incoming stream will be allowed to have non-constant + If set to %TRUE, then the incoming stream will be allowed to have non-constant framerate. If set to %FALSE (default value), then the incoming stream will be normalized by dropping/duplicating frames in order to produce a constance framerate. + - a #GstEncodingVideoProfile + a #GstEncodingVideoProfile - a boolean + a boolean @@ -2447,24 +3363,169 @@ constance framerate. c:type="GstEncodingVideoProfileClass" disguised="1" glib:is-gtype-struct-for="EncodingVideoProfile"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Opaque context structure for the plugin installation. Use the provided + Opaque context structure for the plugin installation. Use the provided API to set details on it. + - Creates a new #GstInstallPluginsContext. + Creates a new #GstInstallPluginsContext. + - a new #GstInstallPluginsContext. Free with + a new #GstInstallPluginsContext. Free with gst_install_plugins_context_free() when no longer needed + @@ -2477,13 +3538,18 @@ gst_install_plugins_context_free() when no longer needed - Frees a #GstInstallPluginsContext. + Frees a #GstInstallPluginsContext. + - a #GstInstallPluginsContext + a #GstInstallPluginsContext @@ -2492,22 +3558,29 @@ gst_install_plugins_context_free() when no longer needed - This function is used to tell the external installer process whether it + This function is used to tell the external installer process whether it should ask for confirmation or not before searching for missing plugins. If set, this option will be passed to the installer via a --interaction=[show-confirm-search|hide-confirm-search] command line option. + - a #GstInstallPluginsContext + a #GstInstallPluginsContext - whether to ask for confirmation before searching for plugins + whether to ask for confirmation before searching for plugins @@ -2515,7 +3588,9 @@ If set, this option will be passed to the installer via a - This function is used to pass the calling application's desktop file ID to + This function is used to pass the calling application's desktop file ID to the external installer process. A desktop file ID is the basename of the desktop file, including the @@ -2523,17 +3598,22 @@ A desktop file ID is the basename of the desktop file, including the If set, the desktop file ID will be passed to the installer via a --desktop-id= command line option. + - a #GstInstallPluginsContext + a #GstInstallPluginsContext - the desktop file ID of the calling application + the desktop file ID of the calling application @@ -2541,7 +3621,9 @@ If set, the desktop file ID will be passed to the installer via a - Sets the startup notification ID for the launched process. + Sets the startup notification ID for the launched process. This is typically used to to pass the current X11 event timestamp to the external installer process. @@ -2559,24 +3641,31 @@ like this: startup_id = g_strdup_printf ("_TIME%u", timestamp); ... ]| + - a #GstInstallPluginsContext + a #GstInstallPluginsContext - the startup notification ID + the startup notification ID - This function is for X11-based applications (such as most Gtk/Qt + This function is for X11-based applications (such as most Gtk/Qt applications on linux/unix) only. You can use it to tell the external installer the XID of your main application window. That way the installer can make its own window transient to your application window during the @@ -2598,17 +3687,22 @@ window like this: ##endif ... ]| + - a #GstInstallPluginsContext + a #GstInstallPluginsContext - the XWindow ID (XID) of the top-level application + the XWindow ID (XID) of the top-level application @@ -2616,15 +3710,20 @@ window like this: - The prototype of the callback function that will be called once the + The prototype of the callback function that will be called once the external plugin installer program has returned. You only need to provide a callback function if you are using the asynchronous interface. + - whether the installation of the requested plugins succeeded or not + whether the installation of the requested plugins succeeded or not nullable="1" allow-none="1" closure="1"> - the user data passed to gst_install_plugins_async() + the user data passed to gst_install_plugins_async() @@ -2641,7 +3742,9 @@ a callback function if you are using the asynchronous interface. glib:type-name="GstInstallPluginsReturn" glib:get-type="gst_install_plugins_return_get_type" c:type="GstInstallPluginsReturn"> - Result codes returned by gst_install_plugins_async() and + Result codes returned by gst_install_plugins_async() and gst_install_plugins_sync(), and also the result code passed to the #GstInstallPluginsResultFunc specified with gst_install_plugins_async(). @@ -2651,14 +3754,18 @@ program and to what extent the requested plugins could be installed. value="0" c:identifier="GST_INSTALL_PLUGINS_SUCCESS" glib:nick="success"> - all of the requested plugins could be + all of the requested plugins could be installed - no appropriate installation candidate for + no appropriate installation candidate for any of the requested plugins could be found. Only return this if nothing has been installed. Return #GST_INSTALL_PLUGINS_PARTIAL_SUCCESS if some (but not all) of the requested plugins could be installed. @@ -2667,7 +3774,9 @@ program and to what extent the requested plugins could be installed. value="2" c:identifier="GST_INSTALL_PLUGINS_ERROR" glib:nick="error"> - an error occured during the installation. If + an error occured during the installation. If this happens, the user has already seen an error message and another one should not be displayed @@ -2675,33 +3784,43 @@ program and to what extent the requested plugins could be installed. value="3" c:identifier="GST_INSTALL_PLUGINS_PARTIAL_SUCCESS" glib:nick="partial-success"> - some of the requested plugins could + some of the requested plugins could be installed, but not all - the user has aborted the installation + the user has aborted the installation - the installer had an unclean exit code + the installer had an unclean exit code (ie. death by signal) - the helper returned an invalid status code + the helper returned an invalid status code - returned by gst_install_plugins_async() to + returned by gst_install_plugins_async() to indicate that everything went fine so far and the provided callback will be called with the result of the installation later @@ -2709,85 +3828,128 @@ program and to what extent the requested plugins could be installed. value="201" c:identifier="GST_INSTALL_PLUGINS_INTERNAL_FAILURE" glib:nick="internal-failure"> - some internal failure has + some internal failure has occured when trying to start the installer - the helper script to call the + the helper script to call the actual installer is not installed - a previously-started plugin + a previously-started plugin installation is still in progress, try again later - Convenience function to return the descriptive string associated + Convenience function to return the descriptive string associated with a status code. This function returns English strings and should not be used for user messages. It is here only to assist in debugging. + - a descriptive string for the status code in @ret + a descriptive string for the status code in @ret - the return status code + the return status code + + + + + + + - The major version of GStreamer's gst-plugins-base libraries at compile time. + The major version of GStreamer's gst-plugins-base libraries at compile time. + - The micro version of GStreamer's gst-plugins-base libraries at compile time. + The micro version of GStreamer's gst-plugins-base libraries at compile time. + - The minor version of GStreamer's gst-plugins-base libraries at compile time. + The minor version of GStreamer's gst-plugins-base libraries at compile time. + - The nano version of GStreamer's gst-plugins-base libraries at compile time. + The nano version of GStreamer's gst-plugins-base libraries at compile time. Actual releases have 0, GIT versions have 1, prerelease versions have 2-... + - Sets the level and profile on @caps if it can be determined from + Sets the level and profile on @caps if it can be determined from @audio_config. See gst_codec_utils_aac_get_level() and gst_codec_utils_aac_get_profile() for more details on the parameters. @caps must be audio/mpeg caps with an "mpegversion" field of either 2 or 4. If mpegversion is 4, the "base-profile" field is also set in @caps. + - %TRUE if the level and profile could be set, %FALSE otherwise. + %TRUE if the level and profile could be set, %FALSE otherwise. - the #GstCaps to which level and profile fields are to be added + the #GstCaps to which level and profile fields are to be added - a pointer to the AudioSpecificConfig + a pointer to the AudioSpecificConfig as specified in the Elementary Stream Descriptor (esds) in ISO/IEC 14496-1. (See below for more details) @@ -2795,7 +3957,9 @@ If mpegversion is 4, the "base-profile" field is also set in @caps. - Length of @audio_config in bytes + Length of @audio_config in bytes @@ -2803,14 +3967,21 @@ If mpegversion is 4, the "base-profile" field is also set in @caps. - Returns the channels of the given AAC stream. + Returns the channels of the given AAC stream. + - The channels or 0 if the channel could not be determined. + The channels or 0 if the channel could not be determined. - a pointer to the AudioSpecificConfig + a pointer to the AudioSpecificConfig as specified in the Elementary Stream Descriptor (esds) in ISO/IEC 14496-1. @@ -2818,29 +3989,40 @@ If mpegversion is 4, the "base-profile" field is also set in @caps. - Length of @audio_config in bytes + Length of @audio_config in bytes - Translates the sample rate to the index corresponding to it in AAC spec. + Translates the sample rate to the index corresponding to it in AAC spec. + - The AAC index for this sample rate, -1 if the rate is not a + The AAC index for this sample rate, -1 if the rate is not a valid AAC sample rate. - Sample rate + Sample rate - Determines the level of a stream as defined in ISO/IEC 14496-3. For AAC LC + Determines the level of a stream as defined in ISO/IEC 14496-3. For AAC LC streams, the constraints from the AAC audio profile are applied. For AAC Main, LTP, SSR and others, the Main profile is used. @@ -2853,14 +4035,19 @@ most significant bit of the first byte: next 24 bits define the actual sample frequency, and subsequent fields are appropriately shifted). * Bit 9:12 contains the channel configuration + - The level as a const string and %NULL if the level could not be + The level as a const string and %NULL if the level could not be determined. - a pointer to the AudioSpecificConfig + a pointer to the AudioSpecificConfig as specified in the Elementary Stream Descriptor (esds) in ISO/IEC 14496-1. @@ -2868,24 +4055,33 @@ determined. - Length of @audio_config in bytes + Length of @audio_config in bytes - Returns the profile of the given AAC stream as a string. The profile is + Returns the profile of the given AAC stream as a string. The profile is normally determined using the AudioObjectType field which is in the first 5 bits of @audio_config + - The profile as a const string and %NULL if the profile could not be + The profile as a const string and %NULL if the profile could not be determined. - a pointer to the AudioSpecificConfig + a pointer to the AudioSpecificConfig as specified in the Elementary Stream Descriptor (esds) in ISO/IEC 14496-1. @@ -2893,7 +4089,9 @@ determined. - Length of @audio_config in bytes + Length of @audio_config in bytes @@ -2901,15 +4099,22 @@ determined. - Translates the sample rate index found in AAC headers to the actual sample + Translates the sample rate index found in AAC headers to the actual sample rate. + - The sample rate if sr_idx is valid, 0 otherwise. + The sample rate if sr_idx is valid, 0 otherwise. - a pointer to the AudioSpecificConfig + a pointer to the AudioSpecificConfig as specified in the Elementary Stream Descriptor (esds) in ISO/IEC 14496-1. @@ -2917,22 +4122,31 @@ rate. - Length of @audio_config + Length of @audio_config - Translates the sample rate index found in AAC headers to the actual sample + Translates the sample rate index found in AAC headers to the actual sample rate. + - The sample rate if @sr_idx is valid, 0 otherwise. + The sample rate if @sr_idx is valid, 0 otherwise. - Sample rate index as from the AudioSpecificConfig (MPEG-4 + Sample rate index as from the AudioSpecificConfig (MPEG-4 container) or ADTS frame header @@ -2940,69 +4154,98 @@ rate. - Sets the level and profile in @caps if it can be determined from @sps. See + Sets the level and profile in @caps if it can be determined from @sps. See gst_codec_utils_h264_get_level() and gst_codec_utils_h264_get_profile() for more details on the parameters. + - %TRUE if the level and profile could be set, %FALSE otherwise. + %TRUE if the level and profile could be set, %FALSE otherwise. - the #GstCaps to which the level and profile are to be added + the #GstCaps to which the level and profile are to be added - Pointer to the sequence parameter set for the stream. + Pointer to the sequence parameter set for the stream. - Length of the data available in @sps. + Length of the data available in @sps. - Converts the level indication (level_idc) in the stream's + Converts the level indication (level_idc) in the stream's sequence parameter set into a string. The SPS is expected to have the same format as for gst_codec_utils_h264_get_profile(). + - The level as a const string, or %NULL if there is an error. + The level as a const string, or %NULL if there is an error. - Pointer to the sequence parameter set for the stream. + Pointer to the sequence parameter set for the stream. - Length of the data available in @sps. + Length of the data available in @sps. - Transform a level string from the caps into the level_idc + Transform a level string from the caps into the level_idc + - the level_idc or 0 if the level is unknown + the level_idc or 0 if the level is unknown - A level string from caps + A level string from caps - Converts the profile indication (profile_idc) in the stream's + Converts the profile indication (profile_idc) in the stream's sequence parameter set into a string. The SPS is expected to have the following format, as defined in the H.264 specification. The SPS is viewed as a bitstream here, with bit 0 being the most significant bit of the first @@ -3016,19 +4259,26 @@ byte. * Bit 12 - constraint_set3_flag * Bit 13:15 - Reserved * Bit 16:24 - Level indication + - The profile as a const string, or %NULL if there is an error. + The profile as a const string, or %NULL if there is an error. - Pointer to the sequence parameter set for the stream. + Pointer to the sequence parameter set for the stream. - Length of the data available in @sps. + Length of the data available in @sps. @@ -3036,28 +4286,39 @@ byte. - Sets the level, tier and profile in @caps if it can be determined from + Sets the level, tier and profile in @caps if it can be determined from @profile_tier_level. See gst_codec_utils_h265_get_level(), gst_codec_utils_h265_get_tier() and gst_codec_utils_h265_get_profile() for more details on the parameters. + - %TRUE if the level, tier, profile could be set, %FALSE otherwise. + %TRUE if the level, tier, profile could be set, %FALSE otherwise. - the #GstCaps to which the level, tier and profile are to be added + the #GstCaps to which the level, tier and profile are to be added - Pointer to the profile_tier_level + Pointer to the profile_tier_level struct - Length of the data available in @profile_tier_level. + Length of the data available in @profile_tier_level. @@ -3065,23 +4326,32 @@ for more details on the parameters. - Converts the level indication (general_level_idc) in the stream's + Converts the level indication (general_level_idc) in the stream's profile_tier_level structure into a string. The profiel_tier_level is expected to have the same format as for gst_codec_utils_h264_get_profile(). + - The level as a const string, or %NULL if there is an error. + The level as a const string, or %NULL if there is an error. - Pointer to the profile_tier_level + Pointer to the profile_tier_level for the stream - Length of the data available in @profile_tier_level. + Length of the data available in @profile_tier_level. @@ -3089,14 +4359,21 @@ expected to have the same format as for gst_codec_utils_h264_get_profile(). - Transform a level string from the caps into the level_idc + Transform a level string from the caps into the level_idc + - the level_idc or 0 if the level is unknown + the level_idc or 0 if the level is unknown - A level string from caps + A level string from caps @@ -3104,7 +4381,9 @@ expected to have the same format as for gst_codec_utils_h264_get_profile(). - Converts the profile indication (general_profile_idc) in the stream's + Converts the profile indication (general_profile_idc) in the stream's profile_level_tier structure into a string. The profile_tier_level is expected to have the following format, as defined in the H.265 specification. The profile_tier_level is viewed as a bitstream here, @@ -3120,20 +4399,27 @@ with bit 0 being the most significant bit of the first byte. * Bit 43 - general_frame_only_constraint_flag * Bit 44:87 - general_reserved_zero_44bits * Bit 88:95 - general_level_idc + - The profile as a const string, or %NULL if there is an error. + The profile as a const string, or %NULL if there is an error. - Pointer to the profile_tier_level + Pointer to the profile_tier_level structure for the stream. - Length of the data available in @profile_tier_level + Length of the data available in @profile_tier_level @@ -3141,99 +4427,137 @@ with bit 0 being the most significant bit of the first byte. - Converts the tier indication (general_tier_flag) in the stream's + Converts the tier indication (general_tier_flag) in the stream's profile_tier_level structure into a string. The profile_tier_level is expected to have the same format as for gst_codec_utils_h264_get_profile(). + - The tier as a const string, or %NULL if there is an error. + The tier as a const string, or %NULL if there is an error. - Pointer to the profile_tier_level + Pointer to the profile_tier_level for the stream. - Length of the data available in @profile_tier_level. + Length of the data available in @profile_tier_level. - Sets the level and profile in @caps if it can be determined from + Sets the level and profile in @caps if it can be determined from @vis_obj_seq. See gst_codec_utils_mpeg4video_get_level() and gst_codec_utils_mpeg4video_get_profile() for more details on the parameters. + - %TRUE if the level and profile could be set, %FALSE otherwise. + %TRUE if the level and profile could be set, %FALSE otherwise. - the #GstCaps to which the level and profile are to be added + the #GstCaps to which the level and profile are to be added - Pointer to the visual object + Pointer to the visual object sequence for the stream. - Length of the data available in @sps. + Length of the data available in @sps. - Converts the level indication in the stream's visual object sequence into + Converts the level indication in the stream's visual object sequence into a string. @vis_obj_seq is expected to be the data following the visual object sequence start code. Only the first byte (profile_and_level_indication) is used. + - The level as a const string, or NULL if there is an error. + The level as a const string, or NULL if there is an error. - Pointer to the visual object + Pointer to the visual object sequence for the stream. - Length of the data available in @sps. + Length of the data available in @sps. - Converts the profile indication in the stream's visual object sequence into + Converts the profile indication in the stream's visual object sequence into a string. @vis_obj_seq is expected to be the data following the visual object sequence start code. Only the first byte (profile_and_level_indication) is used. + - The profile as a const string, or NULL if there is an error. + The profile as a const string, or NULL if there is an error. - Pointer to the visual object + Pointer to the visual object sequence for the stream. - Length of the data available in @sps. + Length of the data available in @sps. @@ -3241,38 +4565,55 @@ object sequence start code. Only the first byte - Creates Opus caps from the given parameters. + Creates Opus caps from the given parameters. + - The #GstCaps, or %NULL if the parameters would lead to + The #GstCaps, or %NULL if the parameters would lead to invalid Opus caps. - the sample rate + the sample rate - the number of channels + the number of channels - the channel mapping family + the channel mapping family - the number of independent streams + the number of independent streams - the number of stereo streams + the number of stereo streams - the mapping between the streams + the mapping between the streams @@ -3282,22 +4623,31 @@ invalid Opus caps. - Creates Opus caps from the given OpusHead @header and comment header + Creates Opus caps from the given OpusHead @header and comment header @comments. + - The #GstCaps. + The #GstCaps. - OpusHead header + OpusHead header - Comment header or NULL + Comment header or NULL @@ -3305,47 +4655,68 @@ invalid Opus caps. - Creates OpusHead header from the given parameters. + Creates OpusHead header from the given parameters. + - The #GstBuffer containing the OpusHead. + The #GstBuffer containing the OpusHead. - the sample rate + the sample rate - the number of channels + the number of channels - the channel mapping family + the channel mapping family - the number of independent streams + the number of independent streams - the number of stereo streams + the number of stereo streams - the mapping between the streams + the mapping between the streams - Pre-skip in 48kHz samples or 0 + Pre-skip in 48kHz samples or 0 - Output gain or 0 + Output gain or 0 @@ -3353,56 +4724,75 @@ invalid Opus caps. - Parses Opus caps and fills the different fields with defaults if possible. + Parses Opus caps and fills the different fields with defaults if possible. + - %TRUE if parsing was successful, %FALSE otherwise. + %TRUE if parsing was successful, %FALSE otherwise. - the #GstCaps to parse the data from + the #GstCaps to parse the data from - the sample rate + the sample rate - the number of channels + the number of channels - the channel mapping family + the channel mapping family - the number of independent streams + the number of independent streams - the number of stereo streams + the number of stereo streams - the mapping between the streams + the mapping between the streams @@ -3412,56 +4802,75 @@ invalid Opus caps. - Parses the OpusHead header. + Parses the OpusHead header. + - %TRUE if parsing was successful, %FALSE otherwise. + %TRUE if parsing was successful, %FALSE otherwise. - the OpusHead #GstBuffer + the OpusHead #GstBuffer - the sample rate + the sample rate - the number of channels + the number of channels - the channel mapping family + the channel mapping family - the number of independent streams + the number of independent streams - the number of stereo streams + the number of stereo streams - the mapping between the streams + the mapping between the streams @@ -3470,24 +4879,93 @@ invalid Opus caps. direction="out" caller-allocates="0" transfer-ownership="full"> - Pre-skip in 48kHz samples or 0 + Pre-skip in 48kHz samples or 0 - Output gain or 0 + Output gain or 0 + + Increments the reference count of @info. + + + + a #GstDiscovererInfo + + + + + Decrements the reference count of @info. + + + + a #GstDiscovererInfo + + + + + Increments the reference count of @info. + + + + a #GstDiscovererStreamInfo + + + + + Decrements the reference count of @info. + + + + a #GstDiscovererStreamInfo + + + - List all available #GstEncodingTarget for the specified category, or all categories + List all available #GstEncodingTarget for the specified category, or all categories if @categoryname is %NULL. + - The list of #GstEncodingTarget + The list of #GstEncodingTarget @@ -3497,7 +4975,9 @@ if @categoryname is %NULL. transfer-ownership="none" nullable="1" allow-none="1"> - The category, for ex: #GST_ENCODING_CATEGORY_DEVICE. + The category, for ex: #GST_ENCODING_CATEGORY_DEVICE. Can be %NULL. @@ -3505,18 +4985,85 @@ Can be %NULL. - Lists all #GstEncodingTarget categories present on disk. + Lists all #GstEncodingTarget categories present on disk. + - A list + A list of #GstEncodingTarget categories. + + Increases the reference count of the @profile. + + + + a #GstEncodingProfile + + + + + Decreases the reference count of the @profile, possibly freeing the @profile. + + + + a #GstEncodingProfile + + + + + Increases the reference count of the @target. + + + + a #GstEncodingTarget + + + + + Decreases the reference count of the @target, possibly freeing it. + + + + a #GstEncodingTarget + + + - Requests plugin installation without blocking. Once the plugins have been + Requests plugin installation without blocking. Once the plugins have been installed or installation has failed, @func will be called with the result of the installation and your provided @user_data pointer. @@ -3532,13 +5079,18 @@ application via the provided API, such as gst_missing_element_message_new(). It is possible to request the installation of multiple missing plugins in one go (as might be required if there is a demuxer for a certain format installed but no suitable video decoder and no suitable audio decoder). + - result code whether an external installer could be started + result code whether an external installer could be started - NULL-terminated array + NULL-terminated array of installer string details (see below) @@ -3548,7 +5100,9 @@ installed but no suitable video decoder and no suitable audio decoder). transfer-ownership="none" nullable="1" allow-none="1"> - a #GstInstallPluginsContext, or NULL + a #GstInstallPluginsContext, or NULL @@ -3556,7 +5110,9 @@ installed but no suitable video decoder and no suitable audio decoder). transfer-ownership="none" scope="async" closure="3"> - the function to call when the installer program returns + the function to call when the installer program returns @@ -3564,52 +5120,73 @@ installed but no suitable video decoder and no suitable audio decoder). transfer-ownership="none" nullable="1" allow-none="1"> - the user data to pass to @func when called, or NULL + the user data to pass to @func when called, or NULL - Checks whether plugin installation (initiated by this application only) + Checks whether plugin installation (initiated by this application only) is currently in progress. + - TRUE if plugin installation is in progress, otherwise FALSE + TRUE if plugin installation is in progress, otherwise FALSE - Convenience function to return the descriptive string associated + Convenience function to return the descriptive string associated with a status code. This function returns English strings and should not be used for user messages. It is here only to assist in debugging. + - a descriptive string for the status code in @ret + a descriptive string for the status code in @ret - the return status code + the return status code - Checks whether plugin installation is likely to be supported by the + Checks whether plugin installation is likely to be supported by the current environment. This currently only checks whether the helper script that is to be provided by the distribution or operating system vendor exists. + - TRUE if plugin installation is likely to be supported. + TRUE if plugin installation is likely to be supported. - Requests plugin installation and block until the plugins have been + Requests plugin installation and block until the plugins have been installed or installation has failed. This function should almost never be used, it only exists for cases where @@ -3617,13 +5194,18 @@ a non-GLib main loop is running and the user wants to run it in a separate thread and marshal the result back asynchronously into the main thread using the other non-GLib main loop. You should almost always use gst_install_plugins_async() instead of this function. + - the result of the installation. + the result of the installation. - NULL-terminated array + NULL-terminated array of installer string details @@ -3633,7 +5215,9 @@ gst_install_plugins_async() instead of this function. transfer-ownership="none" nullable="1" allow-none="1"> - a #GstInstallPluginsContext, or NULL + a #GstInstallPluginsContext, or NULL @@ -3641,21 +5225,30 @@ gst_install_plugins_async() instead of this function. - Checks whether @msg is a missing plugins message. + Checks whether @msg is a missing plugins message. + - %TRUE if @msg is a missing-plugins message, otherwise %FALSE. + %TRUE if @msg is a missing-plugins message, otherwise %FALSE. - a #GstMessage + a #GstMessage - Returns an opaque string containing all the details about the missing + Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async() or gst_install_plugins_sync(). @@ -3663,41 +5256,57 @@ This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing. + - a newly-allocated detail string, or NULL on error. Free string + a newly-allocated detail string, or NULL on error. Free string with g_free() when not needed any longer. - the (fixed) caps for which a decoder element is needed + the (fixed) caps for which a decoder element is needed - Creates a missing-plugin message for @element to notify the application + Creates a missing-plugin message for @element to notify the application that a decoder element for a particular set of (fixed) caps is missing. This function is mainly for use in plugins. + - a new #GstMessage, or NULL on error + a new #GstMessage, or NULL on error - the #GstElement posting the message + the #GstElement posting the message - the (fixed) caps for which a decoder element is needed + the (fixed) caps for which a decoder element is needed - Returns an opaque string containing all the details about the missing + Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async() or gst_install_plugins_sync(). @@ -3705,14 +5314,19 @@ This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing. + - a newly-allocated detail string, or NULL on error. Free string + a newly-allocated detail string, or NULL on error. Free string with g_free() when not needed any longer. - the name of the missing element (element factory), + the name of the missing element (element factory), e.g. "videoscale" or "cdparanoiasrc" @@ -3720,20 +5334,29 @@ missing. - Creates a missing-plugin message for @element to notify the application + Creates a missing-plugin message for @element to notify the application that a certain required element is missing. This function is mainly for use in plugins. + - a new #GstMessage, or NULL on error + a new #GstMessage, or NULL on error - the #GstElement posting the message + the #GstElement posting the message - the name of the missing element (element factory), + the name of the missing element (element factory), e.g. "videoscale" or "cdparanoiasrc" @@ -3741,7 +5364,9 @@ use in plugins. - Returns an opaque string containing all the details about the missing + Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async() or gst_install_plugins_sync(). @@ -3749,82 +5374,112 @@ This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing. + - a newly-allocated detail string, or NULL on error. Free string + a newly-allocated detail string, or NULL on error. Free string with g_free() when not needed any longer. - the (fixed) caps for which an encoder element is needed + the (fixed) caps for which an encoder element is needed - Creates a missing-plugin message for @element to notify the application + Creates a missing-plugin message for @element to notify the application that an encoder element for a particular set of (fixed) caps is missing. This function is mainly for use in plugins. + - a new #GstMessage, or NULL on error + a new #GstMessage, or NULL on error - the #GstElement posting the message + the #GstElement posting the message - the (fixed) caps for which an encoder element is needed + the (fixed) caps for which an encoder element is needed - Returns a localised string describing the missing feature, for use in + Returns a localised string describing the missing feature, for use in error dialogs and the like. Should never return NULL unless @msg is not a valid missing-plugin message. This function is mainly for applications that need a human-readable string describing a missing plugin, given a previously collected missing-plugin message + - a newly-allocated description string, or NULL on error. Free + a newly-allocated description string, or NULL on error. Free string with g_free() when not needed any longer. - a missing-plugin #GstMessage of type #GST_MESSAGE_ELEMENT + a missing-plugin #GstMessage of type #GST_MESSAGE_ELEMENT - Returns an opaque string containing all the details about the missing + Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async() or gst_install_plugins_sync(). This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions. + - a newly-allocated detail string, or NULL on error. Free string + a newly-allocated detail string, or NULL on error. Free string with g_free() when not needed any longer. - a missing-plugin #GstMessage of type #GST_MESSAGE_ELEMENT + a missing-plugin #GstMessage of type #GST_MESSAGE_ELEMENT - Returns an opaque string containing all the details about the missing + Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async() or gst_install_plugins_sync(). @@ -3832,14 +5487,19 @@ This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing. + - a newly-allocated detail string, or NULL on error. Free string + a newly-allocated detail string, or NULL on error. Free string with g_free() when not needed any longer. - the URI protocol the missing source needs to implement, + the URI protocol the missing source needs to implement, e.g. "http" or "mms" @@ -3847,20 +5507,29 @@ missing. - Creates a missing-plugin message for @element to notify the application + Creates a missing-plugin message for @element to notify the application that a sink element for a particular URI protocol is missing. This function is mainly for use in plugins. + - a new #GstMessage, or NULL on error + a new #GstMessage, or NULL on error - the #GstElement posting the message + the #GstElement posting the message - the URI protocol the missing sink needs to implement, + the URI protocol the missing sink needs to implement, e.g. "http" or "smb" @@ -3868,7 +5537,9 @@ function is mainly for use in plugins. - Returns an opaque string containing all the details about the missing + Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async() or gst_install_plugins_sync(). @@ -3876,14 +5547,19 @@ This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing. + - a newly-allocated detail string, or NULL on error. Free string + a newly-allocated detail string, or NULL on error. Free string with g_free() when not needed any longer. - the URI protocol the missing source needs to implement, + the URI protocol the missing source needs to implement, e.g. "http" or "mms" @@ -3891,20 +5567,29 @@ missing. - Creates a missing-plugin message for @element to notify the application + Creates a missing-plugin message for @element to notify the application that a source element for a particular URI protocol is missing. This function is mainly for use in plugins. + - a new #GstMessage, or NULL on error + a new #GstMessage, or NULL on error - the #GstElement posting the message + the #GstElement posting the message - the URI protocol the missing source needs to implement, + the URI protocol the missing source needs to implement, e.g. "http" or "mms" @@ -3912,170 +5597,229 @@ function is mainly for use in plugins. - Adds a codec tag describing the format specified by @caps to @taglist. + Adds a codec tag describing the format specified by @caps to @taglist. + - TRUE if a codec tag was added, FALSE otherwise. + TRUE if a codec tag was added, FALSE otherwise. - a #GstTagList + a #GstTagList - a GStreamer codec tag such as #GST_TAG_AUDIO_CODEC, + a GStreamer codec tag such as #GST_TAG_AUDIO_CODEC, #GST_TAG_VIDEO_CODEC or #GST_TAG_CODEC. If none is specified, the function will attempt to detect the appropriate category. - the (fixed) #GstCaps for which a codec tag should be added. + the (fixed) #GstCaps for which a codec tag should be added. - Returns a localised (as far as this is possible) string describing the + Returns a localised (as far as this is possible) string describing the media format specified in @caps, for use in error dialogs or other messages to be seen by the user. Should never return NULL unless @caps is invalid. Also see the convenience function gst_pb_utils_add_codec_description_to_tag_list(). + - a newly-allocated description string, or NULL on error. Free + a newly-allocated description string, or NULL on error. Free string with g_free() when not needed any longer. - the (fixed) #GstCaps for which an format description is needed + the (fixed) #GstCaps for which an format description is needed - Returns a localised string describing an decoder for the format specified + Returns a localised string describing an decoder for the format specified in @caps, for use in error dialogs or other messages to be seen by the user. Should never return NULL unless @factory_name or @caps are invalid. This function is mainly for internal use, applications would typically use gst_missing_plugin_message_get_description() to get a description of a missing feature from a missing-plugin message. + - a newly-allocated description string, or NULL on error. Free + a newly-allocated description string, or NULL on error. Free string with g_free() when not needed any longer. - the (fixed) #GstCaps for which an decoder description is needed + the (fixed) #GstCaps for which an decoder description is needed - Returns a localised string describing the given element, for use in + Returns a localised string describing the given element, for use in error dialogs or other messages to be seen by the user. Should never return NULL unless @factory_name is invalid. This function is mainly for internal use, applications would typically use gst_missing_plugin_message_get_description() to get a description of a missing feature from a missing-plugin message. + - a newly-allocated description string, or NULL on error. Free + a newly-allocated description string, or NULL on error. Free string with g_free() when not needed any longer. - the name of the element, e.g. "giosrc" + the name of the element, e.g. "giosrc" - Returns a localised string describing an encoder for the format specified + Returns a localised string describing an encoder for the format specified in @caps, for use in error dialogs or other messages to be seen by the user. Should never return NULL unless @factory_name or @caps are invalid. This function is mainly for internal use, applications would typically use gst_missing_plugin_message_get_description() to get a description of a missing feature from a missing-plugin message. + - a newly-allocated description string, or NULL on error. Free + a newly-allocated description string, or NULL on error. Free string with g_free() when not needed any longer. - the (fixed) #GstCaps for which an encoder description is needed + the (fixed) #GstCaps for which an encoder description is needed - Returns a localised string describing a sink element handling the protocol + Returns a localised string describing a sink element handling the protocol specified in @protocol, for use in error dialogs or other messages to be seen by the user. Should never return NULL unless @protocol is invalid. This function is mainly for internal use, applications would typically use gst_missing_plugin_message_get_description() to get a description of a missing feature from a missing-plugin message. + - a newly-allocated description string, or NULL on error. Free + a newly-allocated description string, or NULL on error. Free string with g_free() when not needed any longer. - the protocol the sink element needs to handle, e.g. "http" + the protocol the sink element needs to handle, e.g. "http" - Returns a localised string describing a source element handling the protocol + Returns a localised string describing a source element handling the protocol specified in @protocol, for use in error dialogs or other messages to be seen by the user. Should never return NULL unless @protocol is invalid. This function is mainly for internal use, applications would typically use gst_missing_plugin_message_get_description() to get a description of a missing feature from a missing-plugin message. + - a newly-allocated description string, or NULL on error. Free + a newly-allocated description string, or NULL on error. Free string with g_free() when not needed any longer. - the protocol the source element needs to handle, e.g. "http" + the protocol the source element needs to handle, e.g. "http" - Initialises the base utils support library. This function is not + Initialises the base utils support library. This function is not thread-safe. Applications should call it after calling gst_init(), plugins should call it from their plugin_init function. This function may be called multiple times. It will do nothing if the library has already been initialised. + - Gets the version number of the GStreamer Plugins Base libraries. + Gets the version number of the GStreamer Plugins Base libraries. + @@ -4084,39 +5828,52 @@ library has already been initialised. direction="out" caller-allocates="0" transfer-ownership="full"> - pointer to a guint to store the major version number, or %NULL + pointer to a guint to store the major version number, or %NULL - pointer to a guint to store the minor version number, or %NULL + pointer to a guint to store the minor version number, or %NULL - pointer to a guint to store the micro version number, or %NULL + pointer to a guint to store the micro version number, or %NULL - pointer to a guint to store the nano version number, or %NULL + pointer to a guint to store the nano version number, or %NULL - This function returns a string that is useful for describing this version + This function returns a string that is useful for describing this version of GStreamer's gst-plugins-base libraries to the outside world: user agent strings, logging, about dialogs ... + - a newly allocated string describing this version of gst-plugins-base + a newly allocated string describing this version of gst-plugins-base diff --git a/gir-files/GstPlayer-1.0.gir b/gir-files/GstPlayer-1.0.gir index 11a17a2ac..8e42d7a1c 100644 --- a/gir-files/GstPlayer-1.0.gir +++ b/gir-files/GstPlayer-1.0.gir @@ -15,6 +15,421 @@ and/or use gtk-doc annotations. --> shared-library="libgstplayer-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GstPlayer" glib:get-type="gst_player_get_type" glib:type-struct="PlayerClass"> + - Creates a new #GstPlayer instance that uses @signal_dispatcher to dispatch + Creates a new #GstPlayer instance that uses @signal_dispatcher to dispatch signals to some event loop system, or emits signals directly if NULL is passed. See gst_player_g_main_context_signal_dispatcher_new(). Video is going to be rendered by @video_renderer, or if %NULL is provided no special video set up will be done and some default handling will be performed. + - a new #GstPlayer instance + a new #GstPlayer instance @@ -39,14 +460,18 @@ performed. transfer-ownership="full" nullable="1" allow-none="1"> - GstPlayerVideoRenderer to use + GstPlayerVideoRenderer to use - GstPlayerSignalDispatcher to use + GstPlayerSignalDispatcher to use @@ -55,13 +480,18 @@ performed. + - current position update interval in milliseconds + current position update interval in milliseconds - a #GstPlayer configuration + a #GstPlayer configuration @@ -69,13 +499,18 @@ performed. + - %TRUE if accurate seeking is enabled + %TRUE if accurate seeking is enabled - a #GstPlayer configuration + a #GstPlayer configuration @@ -83,15 +518,22 @@ performed. - Return the user agent which has been configured using + Return the user agent which has been configured using gst_player_config_set_user_agent() if any. + - the configured agent, or %NULL + the configured agent, or %NULL - a #GstPlayer configuration + a #GstPlayer configuration @@ -99,18 +541,25 @@ gst_player_config_set_user_agent() if any. - set interval in milliseconds between two position-updated signals. + set interval in milliseconds between two position-updated signals. pass 0 to stop updating the position. + - a #GstPlayer configuration + a #GstPlayer configuration - interval in ms + interval in ms @@ -118,7 +567,9 @@ pass 0 to stop updating the position. - Enable or disable accurate seeking. When enabled, elements will try harder + Enable or disable accurate seeking. When enabled, elements will try harder to seek as accurately as possible to the requested seek position. Generally it will be slower especially for formats that don't have any indexes or timestamp markers in the stream. @@ -127,16 +578,21 @@ If accurate seeking is disabled, elements will seek as close as the request position without slowing down seeking too much. Accurate seeking is disabled by default. + - a #GstPlayer configuration + a #GstPlayer configuration - accurate seek or not + accurate seek or not @@ -144,27 +600,37 @@ Accurate seeking is disabled by default. - Set the user agent to pass to the server if @player needs to connect + Set the user agent to pass to the server if @player needs to connect to a server during playback. This is typically used when playing HTTP or RTSP streams. + - a #GstPlayer configuration + a #GstPlayer configuration - the string to use as user agent + the string to use as user agent + - A #GList of + A #GList of matching #GstPlayerAudioInfo. @@ -172,15 +638,20 @@ matching #GstPlayerAudioInfo. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - A #GList of + A #GList of matching #GstPlayerSubtitleInfo. @@ -188,15 +659,20 @@ matching #GstPlayerSubtitleInfo. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - A #GList of + A #GList of matching #GstPlayerVideoInfo. @@ -204,20 +680,27 @@ matching #GstPlayerVideoInfo. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo - Frees a %NULL terminated array of #GstPlayerVisualization. + Frees a %NULL terminated array of #GstPlayerVisualization. + - a %NULL terminated array of #GstPlayerVisualization to free + a %NULL terminated array of #GstPlayerVisualization to free @@ -225,8 +708,11 @@ matching #GstPlayerVideoInfo. + - + a %NULL terminated array containing all available visualizations. Use gst_player_visualizations_free() after usage. @@ -238,33 +724,49 @@ matching #GstPlayerVideoInfo. - Retrieve the current value of audio-video-offset property + Retrieve the current value of audio-video-offset property + - The current value of audio-video-offset in nanoseconds + The current value of audio-video-offset in nanoseconds - #GstPlayer instance + #GstPlayer instance - Retrieve the current value of the indicated @type. + Retrieve the current value of the indicated @type. + - The current value of @type, between [0,1]. In case of + The current value of @type, between [0,1]. In case of error -1 is returned. - #GstPlayer instance + #GstPlayer instance - #GstPlayerColorBalanceType + #GstPlayerColorBalanceType @@ -273,108 +775,155 @@ matching #GstPlayerVideoInfo. - Get a copy of the current configuration of the player. This configuration + Get a copy of the current configuration of the player. This configuration can either be modified and used for the gst_player_set_config() call or it must be freed after usage. + - a copy of the current configuration of @player. Use + a copy of the current configuration of @player. Use gst_structure_free() after usage or gst_player_set_config(). - #GstPlayer instance + #GstPlayer instance - A Function to get current audio #GstPlayerAudioInfo instance. + A Function to get current audio #GstPlayerAudioInfo instance. + - current audio track. + current audio track. The caller should free it with g_object_unref() - #GstPlayer instance + #GstPlayer instance - A Function to get current subtitle #GstPlayerSubtitleInfo instance. + A Function to get current subtitle #GstPlayerSubtitleInfo instance. + - current subtitle track. + current subtitle track. The caller should free it with g_object_unref() - #GstPlayer instance + #GstPlayer instance - A Function to get current video #GstPlayerVideoInfo instance. + A Function to get current video #GstPlayerVideoInfo instance. + - current video track. + current video track. The caller should free it with g_object_unref() - #GstPlayer instance + #GstPlayer instance + - Name of the currently enabled visualization. + Name of the currently enabled visualization. g_free() after usage. - #GstPlayer instance + #GstPlayer instance - Retrieves the duration of the media stream that self represents. + Retrieves the duration of the media stream that self represents. + - the duration of the currently-playing media stream, in + the duration of the currently-playing media stream, in nanoseconds. - #GstPlayer instance + #GstPlayer instance - A Function to get the current media info #GstPlayerMediaInfo instance. + A Function to get the current media info #GstPlayerMediaInfo instance. + - media info instance. + media info instance. The caller should free it with g_object_unref() - #GstPlayer instance + #GstPlayer instance @@ -382,15 +931,22 @@ The caller should free it with g_object_unref() - Retrieve the current value of the indicated @type. + Retrieve the current value of the indicated @type. + - The current value of @type, Default: 0x00000000 "none + The current value of @type, Default: 0x00000000 "none - #GstPlayer instance + #GstPlayer instance @@ -398,79 +954,113 @@ The caller should free it with g_object_unref() - Retrieve the current value of the indicated @type. + Retrieve the current value of the indicated @type. + - The current value of @type, Default: -1 "none" + The current value of @type, Default: -1 "none" - #GstPlayer instance + #GstPlayer instance + - %TRUE if the currently-playing stream is muted. + %TRUE if the currently-playing stream is muted. - #GstPlayer instance + #GstPlayer instance + - The internal playbin instance + The internal playbin instance - #GstPlayer instance + #GstPlayer instance + - the absolute position time, in nanoseconds, of the + the absolute position time, in nanoseconds, of the currently-playing stream. - #GstPlayer instance + #GstPlayer instance + - current playback rate + current playback rate - #GstPlayer instance + #GstPlayer instance - current subtitle URI + current subtitle URI + - URI of the current external subtitle. + URI of the current external subtitle. g_free() after usage. - #GstPlayer instance + #GstPlayer instance @@ -478,28 +1068,42 @@ currently-playing stream. - Retrieve the current value of subtitle-video-offset property + Retrieve the current value of subtitle-video-offset property + - The current value of subtitle-video-offset in nanoseconds + The current value of subtitle-video-offset in nanoseconds - #GstPlayer instance + #GstPlayer instance - Gets the URI of the currently-playing stream. + Gets the URI of the currently-playing stream. + - a string containing the URI of the + a string containing the URI of the currently-playing stream. g_free() after usage. - #GstPlayer instance + #GstPlayer instance @@ -507,23 +1111,32 @@ currently-playing stream. g_free() after usage. - Get a snapshot of the currently selected video stream, if any. The format can be + Get a snapshot of the currently selected video stream, if any. The format can be selected with @format and optional configuration is possible with @config Currently supported settings are: - width, height of type G_TYPE_INT - pixel-aspect-ratio of type GST_TYPE_FRACTION Except for GST_PLAYER_THUMBNAIL_RAW_NATIVE format, if no config is set, pixel-aspect-ratio would be 1/1 + - Current video snapshot sample or %NULL on failure + Current video snapshot sample or %NULL on failure - #GstPlayer instance + #GstPlayer instance - output format of the video snapshot + output format of the video snapshot @@ -531,111 +1144,158 @@ Currently supported settings are: transfer-ownership="none" nullable="1" allow-none="1"> - Additional configuration + Additional configuration - Returns the current volume level, as a percentage between 0 and 1. + Returns the current volume level, as a percentage between 0 and 1. + - the volume as percentage between 0 and 1. + the volume as percentage between 0 and 1. - #GstPlayer instance + #GstPlayer instance - Checks whether the @player has color balance support available. + Checks whether the @player has color balance support available. + - %TRUE if @player has color balance support. Otherwise, + %TRUE if @player has color balance support. Otherwise, %FALSE. - #GstPlayer instance + #GstPlayer instance - Pauses the current stream. + Pauses the current stream. + - #GstPlayer instance + #GstPlayer instance - Request to play the loaded stream. + Request to play the loaded stream. + - #GstPlayer instance + #GstPlayer instance - Seeks the currently-playing stream to the absolute @position time + Seeks the currently-playing stream to the absolute @position time in nanoseconds. + - #GstPlayer instance + #GstPlayer instance - position to seek in nanoseconds + position to seek in nanoseconds + - %TRUE or %FALSE + %TRUE or %FALSE Sets the audio track @stream_idex. - #GstPlayer instance + #GstPlayer instance - stream index + stream index - Enable or disable the current audio track. + Enable or disable the current audio track. + - #GstPlayer instance + #GstPlayer instance - TRUE or FALSE + TRUE or FALSE @@ -643,40 +1303,56 @@ Sets the audio track @stream_idex. - Sets audio-video-offset property by value of @offset + Sets audio-video-offset property by value of @offset + - #GstPlayer instance + #GstPlayer instance - #gint64 in nanoseconds + #gint64 in nanoseconds - Sets the current value of the indicated channel @type to the passed + Sets the current value of the indicated channel @type to the passed value. + - #GstPlayer instance + #GstPlayer instance - #GstPlayerColorBalanceType + #GstPlayerColorBalanceType - The new value for the @type, ranged [0,1] + The new value for the @type, ranged [0,1] @@ -684,7 +1360,9 @@ value. - Set the configuration of the player. If the player is already configured, and + Set the configuration of the player. If the player is already configured, and the configuration haven't change, this function will return %TRUE. If the player is not in the GST_PLAYER_STATE_STOPPED, this method will return %FALSE and active configuration will remain. @@ -693,17 +1371,24 @@ and active configuration will remain. the player. This function takes ownership of @config. + - %TRUE when the configuration could be set. + %TRUE when the configuration could be set. - #GstPlayer instance + #GstPlayer instance - a #GstStructure + a #GstStructure @@ -711,18 +1396,25 @@ This function takes ownership of @config. - Sets the current value of the indicated mode @type to the passed + Sets the current value of the indicated mode @type to the passed value. + - #GstPlayer instance + #GstPlayer instance - The new value for the @type + The new value for the @type @@ -731,106 +1423,148 @@ value. - Sets the current value of the indicated mode @type to the passed + Sets the current value of the indicated mode @type to the passed value. + - #GstPlayer instance + #GstPlayer instance - The new value for the @type + The new value for the @type - %TRUE if the currently-playing stream should be muted. + %TRUE if the currently-playing stream should be muted. + - #GstPlayer instance + #GstPlayer instance - Mute state the should be set + Mute state the should be set - Playback at specified rate + Playback at specified rate + - #GstPlayer instance + #GstPlayer instance - playback rate + playback rate + - %TRUE or %FALSE + %TRUE or %FALSE Sets the subtitle strack @stream_index. - #GstPlayer instance + #GstPlayer instance - stream index + stream index - Enable or disable the current subtitle track. + Enable or disable the current subtitle track. + - #GstPlayer instance + #GstPlayer instance - TRUE or FALSE + TRUE or FALSE - Sets the external subtitle URI. This should be combined with a call to + Sets the external subtitle URI. This should be combined with a call to gst_player_set_subtitle_track_enabled(@player, TRUE) so the subtitles are actually rendered. + - #GstPlayer instance + #GstPlayer instance - subtitle URI + subtitle URI @@ -838,86 +1572,121 @@ rendered. - Sets subtitle-video-offset property by value of @offset + Sets subtitle-video-offset property by value of @offset + - #GstPlayer instance + #GstPlayer instance - #gint64 in nanoseconds + #gint64 in nanoseconds - Sets the next URI to play. + Sets the next URI to play. + - #GstPlayer instance + #GstPlayer instance - next URI to play. + next URI to play. + - %TRUE or %FALSE + %TRUE or %FALSE Sets the video track @stream_index. - #GstPlayer instance + #GstPlayer instance - stream index + stream index - Enable or disable the current video track. + Enable or disable the current video track. + - #GstPlayer instance + #GstPlayer instance - TRUE or FALSE + TRUE or FALSE + - %TRUE if the visualizations was set correctly. Otherwise, + %TRUE if the visualizations was set correctly. Otherwise, %FALSE. - #GstPlayer instance + #GstPlayer instance - visualization element obtained from + visualization element obtained from #gst_player_visualizations_get() @@ -925,46 +1694,65 @@ Sets the video track @stream_index. - Enable or disable the visualization. + Enable or disable the visualization. + - #GstPlayer instance + #GstPlayer instance - TRUE or FALSE + TRUE or FALSE - Sets the volume level of the stream as a percentage between 0 and 1. + Sets the volume level of the stream as a percentage between 0 and 1. + - #GstPlayer instance + #GstPlayer instance - the new volume level, as a percentage between 0 and 1 + the new volume level, as a percentage between 0 and 1 - Stops playing the current stream and resets to the first position + Stops playing the current stream and resets to the first position in the stream. + - #GstPlayer instance + #GstPlayer instance @@ -1186,68 +1974,96 @@ in the stream. glib:type-name="GstPlayerAudioInfo" glib:get-type="gst_player_audio_info_get_type" glib:type-struct="PlayerAudioInfoClass"> - #GstPlayerStreamInfo specific to audio streams. + #GstPlayerStreamInfo specific to audio streams. + + - the audio bitrate in #GstPlayerAudioInfo. + the audio bitrate in #GstPlayerAudioInfo. - a #GstPlayerAudioInfo + a #GstPlayerAudioInfo + - the number of audio channels in #GstPlayerAudioInfo. + the number of audio channels in #GstPlayerAudioInfo. - a #GstPlayerAudioInfo + a #GstPlayerAudioInfo + - the language of the stream, or NULL if unknown. + the language of the stream, or NULL if unknown. - a #GstPlayerAudioInfo + a #GstPlayerAudioInfo + - the audio maximum bitrate in #GstPlayerAudioInfo. + the audio maximum bitrate in #GstPlayerAudioInfo. - a #GstPlayerAudioInfo + a #GstPlayerAudioInfo + - the audio sample rate in #GstPlayerAudioInfo. + the audio sample rate in #GstPlayerAudioInfo. - a #GstPlayerAudioInfo + a #GstPlayerAudioInfo @@ -1257,11 +2073,13 @@ in the stream. c:type="GstPlayerAudioInfoClass" disguised="1" glib:is-gtype-struct-for="PlayerAudioInfo"> + + value="3" c:identifier="GST_PLAYER_COLOR_BALANCE_HUE" glib:nick="hue"> - hue or color balance. + hue or color balance. - brightness or black level. + brightness or black level. - color saturation or chroma + color saturation or chroma gain. - contrast or luma gain. + contrast or luma gain. - Gets a string representing the given color balance type. + Gets a string representing the given color balance type. + - a string with the name of the color + a string with the name of the color balance type. - a #GstPlayerColorBalanceType + a #GstPlayerColorBalanceType @@ -1318,17 +2151,26 @@ gain. value="0" c:identifier="GST_PLAYER_ERROR_FAILED" glib:nick="failed"> - generic error. + generic error. - Gets a string representing the given error. + Gets a string representing the given error. + - a string with the given error. + a string with the given error. - a #GstPlayerError + a #GstPlayerError @@ -1346,13 +2188,21 @@ gain. glib:type-name="GstPlayerGMainContextSignalDispatcher" glib:get-type="gst_player_g_main_context_signal_dispatcher_get_type" glib:type-struct="PlayerGMainContextSignalDispatcherClass"> + - Creates a new GstPlayerSignalDispatcher that uses @application_context, + Creates a new GstPlayerSignalDispatcher that uses @application_context, or the thread default one if %NULL is used. See gst_player_new_full(). + - the new GstPlayerSignalDispatcher + the new GstPlayerSignalDispatcher @@ -1361,7 +2211,9 @@ or the thread default one if %NULL is used. See gst_player_new_full(). transfer-ownership="none" nullable="1" allow-none="1"> - GMainContext to use or %NULL + GMainContext to use or %NULL @@ -1377,6 +2229,8 @@ or the thread default one if %NULL is used. See gst_player_new_full(). c:type="GstPlayerGMainContextSignalDispatcherClass" disguised="1" glib:is-gtype-struct-for="PlayerGMainContextSignalDispatcher"> + glib:type-name="GstPlayerMediaInfo" glib:get-type="gst_player_media_info_get_type" glib:type-struct="PlayerMediaInfoClass"> - Structure containing the media information of a URI. + Structure containing the media information of a URI. + + - A #GList of + A #GList of matching #GstPlayerAudioInfo. @@ -1397,48 +2257,67 @@ matching #GstPlayerAudioInfo. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - the container format. + the container format. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - duration of the media. + duration of the media. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo - Function to get the image (or preview-image) stored in taglist. + Function to get the image (or preview-image) stored in taglist. Application can use gst_sample_*_() API's to get caps, buffer etc. + - GstSample or NULL. + GstSample or NULL. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo @@ -1446,13 +2325,18 @@ Application can use gst_sample_*_() API's to get caps, buffer etc. + - number of audio streams. + number of audio streams. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo @@ -1460,13 +2344,18 @@ Application can use gst_sample_*_() API's to get caps, buffer etc. + - number of total streams. + number of total streams. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo @@ -1474,13 +2363,18 @@ Application can use gst_sample_*_() API's to get caps, buffer etc. + - number of subtitle streams. + number of subtitle streams. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo @@ -1488,21 +2382,29 @@ Application can use gst_sample_*_() API's to get caps, buffer etc. + - number of video streams. + number of video streams. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - A #GList of + A #GList of matching #GstPlayerStreamInfo. @@ -1510,15 +2412,20 @@ matching #GstPlayerStreamInfo. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - A #GList of + A #GList of matching #GstPlayerSubtitleInfo. @@ -1526,51 +2433,71 @@ matching #GstPlayerSubtitleInfo. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - the tags contained in media info. + the tags contained in media info. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - the media title. + the media title. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - the URI associated with #GstPlayerMediaInfo. + the URI associated with #GstPlayerMediaInfo. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - A #GList of + A #GList of matching #GstPlayerVideoInfo. @@ -1578,32 +2505,44 @@ matching #GstPlayerVideoInfo. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - %TRUE if the media is live. + %TRUE if the media is live. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo + - %TRUE if the media is seekable. + %TRUE if the media is seekable. - a #GstPlayerMediaInfo + a #GstPlayerMediaInfo @@ -1613,6 +2552,7 @@ matching #GstPlayerVideoInfo. c:type="GstPlayerMediaInfoClass" disguised="1" glib:is-gtype-struct-for="PlayerMediaInfo"> + glib:type-name="GstPlayerSignalDispatcher" glib:get-type="gst_player_signal_dispatcher_get_type" glib:type-struct="PlayerSignalDispatcherInterface"> + + @@ -1654,6 +2596,7 @@ matching #GstPlayerVideoInfo. + @@ -1669,11 +2612,13 @@ matching #GstPlayerVideoInfo. + + @@ -1707,6 +2652,7 @@ matching #GstPlayerVideoInfo. + @@ -1732,36 +2678,51 @@ matching #GstPlayerVideoInfo. value="0" c:identifier="GST_PLAYER_STATE_STOPPED" glib:nick="stopped"> - the player is stopped. + the player is stopped. - the player is buffering. + the player is buffering. - the player is paused. + the player is paused. - the player is currently playing a + the player is currently playing a stream. - Gets a string representing the given state. + Gets a string representing the given state. + - a string with the name of the state. + a string with the name of the state. - a #GstPlayerState + a #GstPlayerState @@ -1775,70 +2736,104 @@ stream. glib:type-name="GstPlayerStreamInfo" glib:get-type="gst_player_stream_info_get_type" glib:type-struct="PlayerStreamInfoClass"> - Base structure for information concering a media stream. Depending on + Base structure for information concering a media stream. Depending on the stream type, one can find more media-specific information in #GstPlayerVideoInfo, #GstPlayerAudioInfo, #GstPlayerSubtitleInfo. + + - the #GstCaps of the stream. + the #GstCaps of the stream. - a #GstPlayerStreamInfo + a #GstPlayerStreamInfo - A string describing codec used in #GstPlayerStreamInfo. + A string describing codec used in #GstPlayerStreamInfo. + - codec string or NULL on unknown. + codec string or NULL on unknown. - a #GstPlayerStreamInfo + a #GstPlayerStreamInfo - Function to get stream index from #GstPlayerStreamInfo instance. + Function to get stream index from #GstPlayerStreamInfo instance. + - the stream index of this stream. + the stream index of this stream. - a #GstPlayerStreamInfo + a #GstPlayerStreamInfo - Function to return human readable name for the stream type + Function to return human readable name for the stream type of the given @info (ex: "audio", "video", "subtitle") + - a human readable name + a human readable name - a #GstPlayerStreamInfo + a #GstPlayerStreamInfo + - the tags contained in this stream. + the tags contained in this stream. - a #GstPlayerStreamInfo + a #GstPlayerStreamInfo @@ -1848,6 +2843,7 @@ of the given @info (ex: "audio", "video", "subtitle") c:type="GstPlayerStreamInfoClass" disguised="1" glib:is-gtype-struct-for="PlayerStreamInfo"> + glib:type-name="GstPlayerSubtitleInfo" glib:get-type="gst_player_subtitle_info_get_type" glib:type-struct="PlayerSubtitleInfoClass"> - #GstPlayerStreamInfo specific to subtitle streams. + #GstPlayerStreamInfo specific to subtitle streams. + + - the language of the stream, or NULL if unknown. + the language of the stream, or NULL if unknown. - a #GstPlayerSubtitleInfo + a #GstPlayerSubtitleInfo @@ -1876,6 +2880,7 @@ of the given @info (ex: "audio", "video", "subtitle") c:type="GstPlayerSubtitleInfoClass" disguised="1" glib:is-gtype-struct-for="PlayerSubtitleInfo"> + glib:type-name="GstPlayerVideoInfo" glib:get-type="gst_player_video_info_get_type" glib:type-struct="PlayerVideoInfoClass"> - #GstPlayerStreamInfo specific to video streams. + #GstPlayerStreamInfo specific to video streams. + + - the current bitrate of video in #GstPlayerVideoInfo. + the current bitrate of video in #GstPlayerVideoInfo. - a #GstPlayerVideoInfo + a #GstPlayerVideoInfo + - a #GstPlayerVideoInfo + a #GstPlayerVideoInfo - Numerator of frame rate + Numerator of frame rate - Denominator of frame rate + Denominator of frame rate + - the height of video in #GstPlayerVideoInfo. + the height of video in #GstPlayerVideoInfo. - a #GstPlayerVideoInfo + a #GstPlayerVideoInfo + - the maximum bitrate of video in #GstPlayerVideoInfo. + the maximum bitrate of video in #GstPlayerVideoInfo. - a #GstPlayerVideoInfo + a #GstPlayerVideoInfo - Returns the pixel aspect ratio in @par_n and @par_d + Returns the pixel aspect ratio in @par_n and @par_d + - a #GstPlayerVideoInfo + a #GstPlayerVideoInfo - numerator + numerator - denominator + denominator + - the width of video in #GstPlayerVideoInfo. + the width of video in #GstPlayerVideoInfo. - a #GstPlayerVideoInfo + a #GstPlayerVideoInfo @@ -1994,6 +3038,7 @@ of the given @info (ex: "audio", "video", "subtitle") c:type="GstPlayerVideoInfoClass" disguised="1" glib:is-gtype-struct-for="PlayerVideoInfo"> + glib:type-name="GstPlayerVideoOverlayVideoRenderer" glib:get-type="gst_player_video_overlay_video_renderer_get_type" glib:type-struct="PlayerVideoOverlayVideoRendererClass"> + + @@ -2013,7 +3062,9 @@ of the given @info (ex: "audio", "video", "subtitle") transfer-ownership="none" nullable="1" allow-none="1"> - Window handle to use or %NULL + Window handle to use or %NULL @@ -2021,6 +3072,8 @@ of the given @info (ex: "audio", "video", "subtitle") + @@ -2029,25 +3082,35 @@ of the given @info (ex: "audio", "video", "subtitle") transfer-ownership="none" nullable="1" allow-none="1"> - Window handle to use or %NULL + Window handle to use or %NULL - the custom video_sink element to be set for the video renderer + the custom video_sink element to be set for the video renderer - Tell an overlay that it has been exposed. This will redraw the current frame + Tell an overlay that it has been exposed. This will redraw the current frame in the drawable even if the pipeline is PAUSED. + - a #GstPlayerVideoOverlayVideoRenderer instance. + a #GstPlayerVideoOverlayVideoRenderer instance. @@ -2055,14 +3118,20 @@ in the drawable even if the pipeline is PAUSED. - Return the currently configured render rectangle. See gst_player_video_overlay_video_renderer_set_render_rectangle() + Return the currently configured render rectangle. See gst_player_video_overlay_video_renderer_set_render_rectangle() for details. + - a #GstPlayerVideoOverlayVideoRenderer instance + a #GstPlayerVideoOverlayVideoRenderer instance @@ -2072,7 +3141,9 @@ for details. transfer-ownership="full" optional="1" allow-none="1"> - the horizontal offset of the render area inside the window + the horizontal offset of the render area inside the window transfer-ownership="full" optional="1" allow-none="1"> - the vertical offset of the render area inside the window + the vertical offset of the render area inside the window transfer-ownership="full" optional="1" allow-none="1"> - the width of the render area inside the window + the width of the render area inside the window transfer-ownership="full" optional="1" allow-none="1"> - the height of the render area inside the window + the height of the render area inside the window + - The currently set, platform specific window + The currently set, platform specific window handle - #GstPlayerVideoRenderer instance + #GstPlayerVideoRenderer instance @@ -2121,7 +3204,9 @@ handle - Configure a subregion as a video target within the window set by + Configure a subregion as a video target within the window set by gst_player_video_overlay_video_renderer_set_window_handle(). If this is not used or not supported the video will fill the area of the window set as the overlay to 100%. By specifying the rectangle, the video can be overlaid to @@ -2131,43 +3216,61 @@ redraw. To unset the region pass -1 for the @width and @height parameters. This method is needed for non fullscreen video overlay in UI toolkits that do not support subwindows. + - a #GstPlayerVideoOverlayVideoRenderer instance + a #GstPlayerVideoOverlayVideoRenderer instance - the horizontal offset of the render area inside the window + the horizontal offset of the render area inside the window - the vertical offset of the render area inside the window + the vertical offset of the render area inside the window - the width of the render area inside the window + the width of the render area inside the window - the height of the render area inside the window + the height of the render area inside the window - Sets the platform specific window handle into which the video + Sets the platform specific window handle into which the video should be rendered + - #GstPlayerVideoRenderer instance + #GstPlayerVideoRenderer instance @@ -2175,7 +3278,9 @@ should be rendered transfer-ownership="none" nullable="1" allow-none="1"> - handle referencing to the platform specific window + handle referencing to the platform specific window @@ -2194,6 +3299,8 @@ should be rendered c:type="GstPlayerVideoOverlayVideoRendererClass" disguised="1" glib:is-gtype-struct-for="PlayerVideoOverlayVideoRenderer"> + glib:type-name="GstPlayerVideoRenderer" glib:get-type="gst_player_video_renderer_get_type" glib:type-struct="PlayerVideoRendererInterface"> + + @@ -2218,11 +3327,13 @@ should be rendered + + @@ -2243,38 +3354,57 @@ should be rendered glib:type-name="GstPlayerVisualization" glib:get-type="gst_player_visualization_get_type" c:symbol-prefix="player_visualization"> - A #GstPlayerVisualization descriptor. + A #GstPlayerVisualization descriptor. + - name of the visualization. + name of the visualization. - description of the visualization. + description of the visualization. - Makes a copy of the #GstPlayerVisualization. The result must be + Makes a copy of the #GstPlayerVisualization. The result must be freed using gst_player_visualization_free(). + - an allocated copy of @vis. + an allocated copy of @vis. - #GstPlayerVisualization instance + #GstPlayerVisualization instance - Frees a #GstPlayerVisualization. + Frees a #GstPlayerVisualization. + - #GstPlayerVisualization instance + #GstPlayerVisualization instance @@ -2283,15 +3413,22 @@ freed using gst_player_visualization_free(). - Gets a string representing the given color balance type. + Gets a string representing the given color balance type. + - a string with the name of the color + a string with the name of the color balance type. - a #GstPlayerColorBalanceType + a #GstPlayerColorBalanceType @@ -2300,14 +3437,21 @@ freed using gst_player_visualization_free(). - Gets a string representing the given error. + Gets a string representing the given error. + - a string with the given error. + a string with the given error. - a #GstPlayerError + a #GstPlayerError @@ -2322,14 +3466,21 @@ freed using gst_player_visualization_free(). - Gets a string representing the given state. + Gets a string representing the given state. + - a string with the name of the state. + a string with the name of the state. - a #GstPlayerState + a #GstPlayerState diff --git a/gir-files/GstRtp-1.0.gir b/gir-files/GstRtp-1.0.gir index bbfc42c36..244aaede9 100644 --- a/gir-files/GstRtp-1.0.gir +++ b/gir-files/GstRtp-1.0.gir @@ -15,8 +15,64 @@ and/or use gtk-doc annotations. --> shared-library="libgstrtp-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Note: The API in this module is not yet declared stable. + Note: The API in this module is not yet declared stable. The GstRTPCBuffer helper functions makes it easy to parse and create regular #GstBuffer objects that contain compound RTCP packets. These buffers are typically @@ -26,6 +82,7 @@ An RTCP buffer consists of 1 or more #GstRTCPPacket structures that you can retrieve with gst_rtcp_buffer_get_first_packet(). #GstRTCPPacket acts as a pointer into the RTCP buffer; you can move to the next packet with gst_rtcp_packet_move_to_next(). + @@ -33,189 +90,271 @@ gst_rtcp_packet_move_to_next(). - Add a new packet of @type to @rtcp. @packet will point to the newly created + Add a new packet of @type to @rtcp. @packet will point to the newly created packet. + - %TRUE if the packet could be created. This function returns %FALSE + %TRUE if the packet could be created. This function returns %FALSE if the max mtu is exceeded for the buffer. - a valid RTCP buffer + a valid RTCP buffer - the #GstRTCPType of the new packet + the #GstRTCPType of the new packet - pointer to new packet + pointer to new packet - Initialize a new #GstRTCPPacket pointer that points to the first packet in + Initialize a new #GstRTCPPacket pointer that points to the first packet in @rtcp. + - TRUE if the packet existed in @rtcp. + TRUE if the packet existed in @rtcp. - a valid RTCP buffer + a valid RTCP buffer - a #GstRTCPPacket + a #GstRTCPPacket - Get the number of RTCP packets in @rtcp. + Get the number of RTCP packets in @rtcp. + - the number of RTCP packets in @rtcp. + the number of RTCP packets in @rtcp. - a valid RTCP buffer + a valid RTCP buffer - Finish @rtcp after being constructed. This function is usually called + Finish @rtcp after being constructed. This function is usually called after gst_rtcp_buffer_map() and after adding the RTCP items to the new buffer. The function adjusts the size of @rtcp with the total length of all the added packets. + - a buffer with an RTCP packet + a buffer with an RTCP packet - Open @buffer for reading or writing, depending on @flags. The resulting RTCP + Open @buffer for reading or writing, depending on @flags. The resulting RTCP buffer state is stored in @rtcp. + - a buffer with an RTCP packet + a buffer with an RTCP packet - flags for the mapping + flags for the mapping - resulting #GstRTCPBuffer + resulting #GstRTCPBuffer - Create a new buffer for constructing RTCP packets. The packet will have a + Create a new buffer for constructing RTCP packets. The packet will have a maximum size of @mtu. + - A newly allocated buffer. + A newly allocated buffer. - the maximum mtu size. + the maximum mtu size. - Create a new buffer and set the data to a copy of @len + Create a new buffer and set the data to a copy of @len bytes of @data and the size to @len. The data will be freed when the buffer is freed. + - A newly allocated buffer with a copy of @data and of size @len. + A newly allocated buffer with a copy of @data and of size @len. - data for the new buffer + data for the new buffer - the length of data + the length of data - Create a new buffer and set the data and size of the buffer to @data and @len + Create a new buffer and set the data and size of the buffer to @data and @len respectively. @data will be freed when the buffer is unreffed, so this function transfers ownership of @data to the new buffer. + - A newly allocated buffer with @data and of size @len. + A newly allocated buffer with @data and of size @len. - data for the new buffer + data for the new buffer - the length of data + the length of data - Check if the data pointed to by @buffer is a valid RTCP packet using + Check if the data pointed to by @buffer is a valid RTCP packet using gst_rtcp_buffer_validate_data(). + - TRUE if @buffer is a valid RTCP packet. + TRUE if @buffer is a valid RTCP packet. - the buffer to validate + the buffer to validate - Check if the @data and @size point to the data of a valid compound, + Check if the @data and @size point to the data of a valid compound, non-reduced size RTCP packet. Use this function to validate a packet before using the other functions in this module. + - TRUE if the data points to a valid RTCP packet. + TRUE if the data points to a valid RTCP packet. - the data to validate + the data to validate - the length of @data to validate + the length of @data to validate @@ -223,26 +362,35 @@ this module. - Check if the @data and @size point to the data of a valid RTCP packet. + Check if the @data and @size point to the data of a valid RTCP packet. Use this function to validate a packet before using the other functions in this module. This function is updated to support reduced size rtcp packets according to RFC 5506 and will validate full compound RTCP packets as well as reduced size RTCP packets. + - TRUE if the data points to a valid RTCP packet. + TRUE if the data points to a valid RTCP packet. - the data to validate + the data to validate - the length of @data to validate + the length of @data to validate @@ -250,15 +398,22 @@ size RTCP packets. - Check if the data pointed to by @buffer is a valid RTCP packet using + Check if the data pointed to by @buffer is a valid RTCP packet using gst_rtcp_buffer_validate_reduced(). + - TRUE if @buffer is a valid RTCP packet. + TRUE if @buffer is a valid RTCP packet. - the buffer to validate + the buffer to validate @@ -268,97 +423,132 @@ gst_rtcp_buffer_validate_reduced(). glib:type-name="GstRTCPFBType" glib:get-type="gst_rtcpfb_type_get_type" c:type="GstRTCPFBType"> - Different types of feedback messages. + Different types of feedback messages. - Invalid type + Invalid type - Generic NACK + Generic NACK - Temporary Maximum Media Stream Bit Rate Request + Temporary Maximum Media Stream Bit Rate Request - Temporary Maximum Media Stream Bit Rate + Temporary Maximum Media Stream Bit Rate Notification - Request an SR packet for early + Request an SR packet for early synchronization - Picture Loss Indication + Picture Loss Indication - Slice Loss Indication + Slice Loss Indication - Reference Picture Selection Indication + Reference Picture Selection Indication - Application layer Feedback + Application layer Feedback - Full Intra Request Command + Full Intra Request Command - Temporal-Spatial Trade-off Request + Temporal-Spatial Trade-off Request - Temporal-Spatial Trade-off Notification + Temporal-Spatial Trade-off Notification - Video Back Channel Message + Video Back Channel Message - Data structure that points to a packet at @offset in @buffer. + Data structure that points to a packet at @offset in @buffer. The size of the structure is made public to allow stack allocations. + - pointer to RTCP buffer + pointer to RTCP buffer - offset of packet in buffer data + offset of packet in buffer data @@ -384,69 +574,101 @@ The size of the structure is made public to allow stack allocations. - Add profile-specific extension @data to @packet. If @packet already + Add profile-specific extension @data to @packet. If @packet already contains profile-specific extension @data will be appended to the existing extension. + - %TRUE if the profile specific extension data was added. + %TRUE if the profile specific extension data was added. - a valid SR or RR #GstRTCPPacket + a valid SR or RR #GstRTCPPacket - profile-specific data + profile-specific data - length of the profile-specific data in bytes + length of the profile-specific data in bytes - Add a new report block to @packet with the given values. + Add a new report block to @packet with the given values. + - %TRUE if the packet was created. This function can return %FALSE if + %TRUE if the packet was created. This function can return %FALSE if the max MTU is exceeded or the number of report blocks is greater than #GST_RTCP_MAX_RB_COUNT. - a valid SR or RR #GstRTCPPacket + a valid SR or RR #GstRTCPPacket - data source being reported + data source being reported - fraction lost since last SR/RR + fraction lost since last SR/RR - the cumululative number of packets lost + the cumululative number of packets lost - the extended last sequence number received + the extended last sequence number received - the interarrival jitter + the interarrival jitter - the last SR packet from this source + the last SR packet from this source - the delay since last SR packet + the delay since last SR packet @@ -454,14 +676,21 @@ the max MTU is exceeded or the number of report blocks is greater than - Get the application-dependent data attached to a RTPFB or PSFB @packet. + Get the application-dependent data attached to a RTPFB or PSFB @packet. + - A pointer to the data + A pointer to the data - a valid APP #GstRTCPPacket + a valid APP #GstRTCPPacket @@ -469,15 +698,22 @@ the max MTU is exceeded or the number of report blocks is greater than - Get the length of the application-dependent data attached to an APP + Get the length of the application-dependent data attached to an APP @packet. + - The length of data in 32-bit words. + The length of data in 32-bit words. - a valid APP #GstRTCPPacket + a valid APP #GstRTCPPacket @@ -485,14 +721,21 @@ the max MTU is exceeded or the number of report blocks is greater than - Get the name field of the APP @packet. + Get the name field of the APP @packet. + - The 4-byte name field, not zero-terminated. + The 4-byte name field, not zero-terminated. - a valid APP #GstRTCPPacket + a valid APP #GstRTCPPacket @@ -500,14 +743,21 @@ the max MTU is exceeded or the number of report blocks is greater than - Get the SSRC/CSRC field of the APP @packet. + Get the SSRC/CSRC field of the APP @packet. + - The SSRC/CSRC. + The SSRC/CSRC. - a valid APP #GstRTCPPacket + a valid APP #GstRTCPPacket @@ -515,14 +765,21 @@ the max MTU is exceeded or the number of report blocks is greater than - Get the subtype field of the APP @packet. + Get the subtype field of the APP @packet. + - The subtype. + The subtype. - a valid APP #GstRTCPPacket + a valid APP #GstRTCPPacket @@ -530,20 +787,29 @@ the max MTU is exceeded or the number of report blocks is greater than - Set the length of the application-dependent data attached to an APP + Set the length of the application-dependent data attached to an APP @packet. + - %TRUE if there was enough space in the packet to add this much + %TRUE if there was enough space in the packet to add this much data. - a valid APP #GstRTCPPacket + a valid APP #GstRTCPPacket - Length of the data in 32-bit words + Length of the data in 32-bit words @@ -551,17 +817,24 @@ data. - Set the name field of the APP @packet. + Set the name field of the APP @packet. + - a valid APP #GstRTCPPacket + a valid APP #GstRTCPPacket - 4-byte ASCII name + 4-byte ASCII name @@ -569,17 +842,24 @@ data. - Set the SSRC/CSRC field of the APP @packet. + Set the SSRC/CSRC field of the APP @packet. + - a valid APP #GstRTCPPacket + a valid APP #GstRTCPPacket - SSRC/CSRC of the packet + SSRC/CSRC of the packet @@ -587,164 +867,239 @@ data. - Set the subtype field of the APP @packet. + Set the subtype field of the APP @packet. + - a valid APP #GstRTCPPacket + a valid APP #GstRTCPPacket - subtype of the packet + subtype of the packet - Add @ssrc to the BYE @packet. + Add @ssrc to the BYE @packet. + - %TRUE if the ssrc was added. This function can return %FALSE if + %TRUE if the ssrc was added. This function can return %FALSE if the max MTU is exceeded or the number of sources blocks is greater than #GST_RTCP_MAX_BYE_SSRC_COUNT. - a valid BYE #GstRTCPPacket + a valid BYE #GstRTCPPacket - an SSRC to add + an SSRC to add - Adds @len SSRCs in @ssrc to BYE @packet. + Adds @len SSRCs in @ssrc to BYE @packet. + - %TRUE if the all the SSRCs were added. This function can return %FALSE if + %TRUE if the all the SSRCs were added. This function can return %FALSE if the max MTU is exceeded or the number of sources blocks is greater than #GST_RTCP_MAX_BYE_SSRC_COUNT. - a valid BYE #GstRTCPPacket + a valid BYE #GstRTCPPacket - an array of SSRCs to add + an array of SSRCs to add - number of elements in @ssrc + number of elements in @ssrc - Get the @nth SSRC of the BYE @packet. + Get the @nth SSRC of the BYE @packet. + - The @nth SSRC of @packet. + The @nth SSRC of @packet. - a valid BYE #GstRTCPPacket + a valid BYE #GstRTCPPacket - the nth SSRC to get + the nth SSRC to get - Get the reason in @packet. + Get the reason in @packet. + - The reason for the BYE @packet or NULL if the packet did not contain + The reason for the BYE @packet or NULL if the packet did not contain a reason string. The string must be freed with g_free() after usage. - a valid BYE #GstRTCPPacket + a valid BYE #GstRTCPPacket - Get the length of the reason string. + Get the length of the reason string. + - The length of the reason string or 0 when there is no reason string + The length of the reason string or 0 when there is no reason string present. - a valid BYE #GstRTCPPacket + a valid BYE #GstRTCPPacket - Get the number of SSRC fields in @packet. + Get the number of SSRC fields in @packet. + - The number of SSRC fields in @packet. + The number of SSRC fields in @packet. - a valid BYE #GstRTCPPacket + a valid BYE #GstRTCPPacket - Set the reason string to @reason in @packet. + Set the reason string to @reason in @packet. + - TRUE if the string could be set. + TRUE if the string could be set. - a valid BYE #GstRTCPPacket + a valid BYE #GstRTCPPacket - a reason string + a reason string - The profile-specific extension data is copied into a new allocated + The profile-specific extension data is copied into a new allocated memory area @data. This must be freed with g_free() after usage. + - %TRUE if there was valid data. + %TRUE if there was valid data. - a valid SR or RR #GstRTCPPacket + a valid SR or RR #GstRTCPPacket - result profile-specific data + result profile-specific data @@ -753,206 +1108,301 @@ memory area @data. This must be freed with g_free() after usage. direction="out" caller-allocates="0" transfer-ownership="full"> - length of the profile-specific extension data + length of the profile-specific extension data - Get the Feedback Control Information attached to a RTPFB or PSFB @packet. + Get the Feedback Control Information attached to a RTPFB or PSFB @packet. + - a pointer to the FCI + a pointer to the FCI - a valid RTPFB or PSFB #GstRTCPPacket + a valid RTPFB or PSFB #GstRTCPPacket - Get the length of the Feedback Control Information attached to a + Get the length of the Feedback Control Information attached to a RTPFB or PSFB @packet. + - The length of the FCI in 32-bit words. + The length of the FCI in 32-bit words. - a valid RTPFB or PSFB #GstRTCPPacket + a valid RTPFB or PSFB #GstRTCPPacket - Get the media SSRC field of the RTPFB or PSFB @packet. + Get the media SSRC field of the RTPFB or PSFB @packet. + - the media SSRC. + the media SSRC. - a valid RTPFB or PSFB #GstRTCPPacket + a valid RTPFB or PSFB #GstRTCPPacket - Get the sender SSRC field of the RTPFB or PSFB @packet. + Get the sender SSRC field of the RTPFB or PSFB @packet. + - the sender SSRC. + the sender SSRC. - a valid RTPFB or PSFB #GstRTCPPacket + a valid RTPFB or PSFB #GstRTCPPacket - Get the feedback message type of the FB @packet. + Get the feedback message type of the FB @packet. + - The feedback message type. + The feedback message type. - a valid RTPFB or PSFB #GstRTCPPacket + a valid RTPFB or PSFB #GstRTCPPacket - Set the length of the Feedback Control Information attached to a + Set the length of the Feedback Control Information attached to a RTPFB or PSFB @packet. + - %TRUE if there was enough space in the packet to add this much FCI + %TRUE if there was enough space in the packet to add this much FCI - a valid RTPFB or PSFB #GstRTCPPacket + a valid RTPFB or PSFB #GstRTCPPacket - Length of the FCI in 32-bit words + Length of the FCI in 32-bit words - Set the media SSRC field of the RTPFB or PSFB @packet. + Set the media SSRC field of the RTPFB or PSFB @packet. + - a valid RTPFB or PSFB #GstRTCPPacket + a valid RTPFB or PSFB #GstRTCPPacket - a media SSRC + a media SSRC - Set the sender SSRC field of the RTPFB or PSFB @packet. + Set the sender SSRC field of the RTPFB or PSFB @packet. + - a valid RTPFB or PSFB #GstRTCPPacket + a valid RTPFB or PSFB #GstRTCPPacket - a sender SSRC + a sender SSRC - Set the feedback message type of the FB @packet. + Set the feedback message type of the FB @packet. + - a valid RTPFB or PSFB #GstRTCPPacket + a valid RTPFB or PSFB #GstRTCPPacket - the #GstRTCPFBType to set + the #GstRTCPFBType to set - Get the count field in @packet. + Get the count field in @packet. + - The count field in @packet or -1 if @packet does not point to a + The count field in @packet or -1 if @packet does not point to a valid packet. - a valid #GstRTCPPacket + a valid #GstRTCPPacket - Get the length field of @packet. This is the length of the packet in + Get the length field of @packet. This is the length of the packet in 32-bit words minus one. + - The length field of @packet. + The length field of @packet. - a valid #GstRTCPPacket + a valid #GstRTCPPacket - Get the packet padding of the packet pointed to by @packet. + Get the packet padding of the packet pointed to by @packet. + - If the packet has the padding bit set. + If the packet has the padding bit set. - a valid #GstRTCPPacket + a valid #GstRTCPPacket + - %TRUE if there was valid data. + %TRUE if there was valid data. - a valid SR or RR #GstRTCPPacket + a valid SR or RR #GstRTCPPacket - result profile-specific data + result profile-specific data @@ -961,199 +1411,282 @@ valid packet. direction="out" caller-allocates="0" transfer-ownership="full"> - result length of the profile-specific data + result length of the profile-specific data + - The number of 32-bit words containing profile-specific extension + The number of 32-bit words containing profile-specific extension data from @packet. - a valid SR or RR #GstRTCPPacket + a valid SR or RR #GstRTCPPacket - Parse the values of the @nth report block in @packet and store the result in + Parse the values of the @nth report block in @packet and store the result in the values. + - a valid SR or RR #GstRTCPPacket + a valid SR or RR #GstRTCPPacket - the nth report block in @packet + the nth report block in @packet - result for data source being reported + result for data source being reported - result for fraction lost since last SR/RR + result for fraction lost since last SR/RR - result for the cumululative number of packets lost + result for the cumululative number of packets lost - result for the extended last sequence number received + result for the extended last sequence number received - result for the interarrival jitter + result for the interarrival jitter - result for the last SR packet from this source + result for the last SR packet from this source - result for the delay since last SR packet + result for the delay since last SR packet - Get the number of report blocks in @packet. + Get the number of report blocks in @packet. + - The number of report blocks in @packet. + The number of report blocks in @packet. - a valid SR or RR #GstRTCPPacket + a valid SR or RR #GstRTCPPacket - Get the packet type of the packet pointed to by @packet. + Get the packet type of the packet pointed to by @packet. + - The packet type or GST_RTCP_TYPE_INVALID when @packet is not + The packet type or GST_RTCP_TYPE_INVALID when @packet is not pointing to a valid packet. - a valid #GstRTCPPacket + a valid #GstRTCPPacket - Move the packet pointer @packet to the next packet in the payload. + Move the packet pointer @packet to the next packet in the payload. Use gst_rtcp_buffer_get_first_packet() to initialize @packet. + - TRUE if @packet is pointing to a valid packet after calling this + TRUE if @packet is pointing to a valid packet after calling this function. - a #GstRTCPPacket + a #GstRTCPPacket - Removes the packet pointed to by @packet and moves pointer to the next one + Removes the packet pointed to by @packet and moves pointer to the next one + - TRUE if @packet is pointing to a valid packet after calling this + TRUE if @packet is pointing to a valid packet after calling this function. - a #GstRTCPPacket + a #GstRTCPPacket - Get the ssrc field of the RR @packet. + Get the ssrc field of the RR @packet. + - the ssrc. + the ssrc. - a valid RR #GstRTCPPacket + a valid RR #GstRTCPPacket - Set the ssrc field of the RR @packet. + Set the ssrc field of the RR @packet. + - a valid RR #GstRTCPPacket + a valid RR #GstRTCPPacket - the SSRC to set + the SSRC to set - Add a new SDES entry to the current item in @packet. + Add a new SDES entry to the current item in @packet. + - %TRUE if the item could be added, %FALSE if the MTU has been + %TRUE if the item could be added, %FALSE if the MTU has been reached. - a valid SDES #GstRTCPPacket + a valid SDES #GstRTCPPacket - the #GstRTCPSDESType of the SDES entry + the #GstRTCPSDESType of the SDES entry - the data length + the data length - the data + the data @@ -1162,52 +1695,74 @@ reached. - Add a new SDES item for @ssrc to @packet. + Add a new SDES item for @ssrc to @packet. + - %TRUE if the item could be added, %FALSE if the maximum amount of + %TRUE if the item could be added, %FALSE if the maximum amount of items has been exceeded for the SDES packet or the MTU has been reached. - a valid SDES #GstRTCPPacket + a valid SDES #GstRTCPPacket - the SSRC of the new item to add + the SSRC of the new item to add - This function is like gst_rtcp_packet_sdes_get_entry() but it returns a + This function is like gst_rtcp_packet_sdes_get_entry() but it returns a null-terminated copy of the data instead. use g_free() after usage. + - %TRUE if there was valid data. + %TRUE if there was valid data. - a valid SDES #GstRTCPPacket + a valid SDES #GstRTCPPacket - result of the entry type + result of the entry type - result length of the entry data + result length of the entry data - result entry data + result entry data @@ -1216,66 +1771,93 @@ null-terminated copy of the data instead. use g_free() after usage. - Move to the first SDES entry in the current item. + Move to the first SDES entry in the current item. + - %TRUE if there was a first entry. + %TRUE if there was a first entry. - a valid SDES #GstRTCPPacket + a valid SDES #GstRTCPPacket - Move to the first SDES item in @packet. + Move to the first SDES item in @packet. + - TRUE if there was a first item. + TRUE if there was a first item. - a valid SDES #GstRTCPPacket + a valid SDES #GstRTCPPacket - Get the data of the current SDES item entry. @type (when not NULL) will + Get the data of the current SDES item entry. @type (when not NULL) will contain the type of the entry. @data (when not NULL) will point to @len bytes. When @type refers to a text item, @data will point to a UTF8 string. Note that this UTF8 string is NOT null-terminated. Use gst_rtcp_packet_sdes_copy_entry() to get a null-terminated copy of the entry. + - %TRUE if there was valid data. + %TRUE if there was valid data. - a valid SDES #GstRTCPPacket + a valid SDES #GstRTCPPacket - result of the entry type + result of the entry type - result length of the entry data + result length of the entry data - result entry data + result entry data @@ -1284,183 +1866,262 @@ gst_rtcp_packet_sdes_copy_entry() to get a null-terminated copy of the entry. - Get the number of items in the SDES packet @packet. + Get the number of items in the SDES packet @packet. + - The number of items in @packet. + The number of items in @packet. - a valid SDES #GstRTCPPacket + a valid SDES #GstRTCPPacket - Get the SSRC of the current SDES item. + Get the SSRC of the current SDES item. + - the SSRC of the current item. + the SSRC of the current item. - a valid SDES #GstRTCPPacket + a valid SDES #GstRTCPPacket - Move to the next SDES entry in the current item. + Move to the next SDES entry in the current item. + - %TRUE if there was a next entry. + %TRUE if there was a next entry. - a valid SDES #GstRTCPPacket + a valid SDES #GstRTCPPacket - Move to the next SDES item in @packet. + Move to the next SDES item in @packet. + - TRUE if there was a next item. + TRUE if there was a next item. - a valid SDES #GstRTCPPacket + a valid SDES #GstRTCPPacket - Set the @nth new report block in @packet with the given values. + Set the @nth new report block in @packet with the given values. Note: Not implemented. + - a valid SR or RR #GstRTCPPacket + a valid SR or RR #GstRTCPPacket - the nth report block to set + the nth report block to set - data source being reported + data source being reported - fraction lost since last SR/RR + fraction lost since last SR/RR - the cumululative number of packets lost + the cumululative number of packets lost - the extended last sequence number received + the extended last sequence number received - the interarrival jitter + the interarrival jitter - the last SR packet from this source + the last SR packet from this source - the delay since last SR packet + the delay since last SR packet - Parse the SR sender info and store the values. + Parse the SR sender info and store the values. + - a valid SR #GstRTCPPacket + a valid SR #GstRTCPPacket - result SSRC + result SSRC - result NTP time + result NTP time - result RTP time + result RTP time - result packet count + result packet count - result octet count + result octet count - Set the given values in the SR packet @packet. + Set the given values in the SR packet @packet. + - a valid SR #GstRTCPPacket + a valid SR #GstRTCPPacket - the SSRC + the SSRC - the NTP time + the NTP time - the RTP time + the RTP time - the packet count + the packet count - the octet count + the octet count @@ -1468,14 +2129,21 @@ Note: Not implemented. - Move to the first extended report block in XR @packet. + Move to the first extended report block in XR @packet. + - TRUE if there was a first extended report block. + TRUE if there was a first extended report block. - a valid XR #GstRTCPPacket + a valid XR #GstRTCPPacket @@ -1483,14 +2151,19 @@ Note: Not implemented. + - The number of 32-bit words containing type-specific block + The number of 32-bit words containing type-specific block data from @packet. - a valid XR #GstRTCPPacket + a valid XR #GstRTCPPacket @@ -1498,14 +2171,21 @@ Note: Not implemented. - Get the extended report block type of the XR @packet. + Get the extended report block type of the XR @packet. + - The extended report block type. + The extended report block type. - a valid XR #GstRTCPPacket + a valid XR #GstRTCPPacket @@ -1513,30 +2193,45 @@ Note: Not implemented. - Parse the extended report block for DLRR report block type. + Parse the extended report block for DLRR report block type. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has DLRR Report Block. + a valid XR #GstRTCPPacket which has DLRR Report Block. - the index of sub-block to retrieve. + the index of sub-block to retrieve. - the SSRC of the receiver. + the SSRC of the receiver. - the last receiver reference timestamp of @ssrc. + the last receiver reference timestamp of @ssrc. - the delay since @last_rr. + the delay since @last_rr. @@ -1544,22 +2239,33 @@ Note: Not implemented. - Retrieve the packet receipt time of @seq which ranges in [begin_seq, end_seq). + Retrieve the packet receipt time of @seq which ranges in [begin_seq, end_seq). + - %TRUE if the report block returns the receipt time correctly. + %TRUE if the report block returns the receipt time correctly. - a valid XR #GstRTCPPacket which has the Packet Recept Times Report Block. + a valid XR #GstRTCPPacket which has the Packet Recept Times Report Block. - the sequence to retrieve the time. + the sequence to retrieve the time. - the packet receipt time of @seq. + the packet receipt time of @seq. @@ -1567,30 +2273,45 @@ Note: Not implemented. - Parse the Packet Recept Times Report Block from a XR @packet + Parse the Packet Recept Times Report Block from a XR @packet + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has a Packet Receipt Times Report Block + a valid XR #GstRTCPPacket which has a Packet Receipt Times Report Block - the SSRC of the RTP data packet source being reported upon by this report block. + the SSRC of the RTP data packet source being reported upon by this report block. - the amount of thinning performed on the sequence number space. + the amount of thinning performed on the sequence number space. - the first sequence number that this block reports on. + the first sequence number that this block reports on. - the last sequence number that this block reports on plus one. + the last sequence number that this block reports on plus one. @@ -1598,34 +2319,51 @@ Note: Not implemented. - Parse the extended report block for Loss RLE and Duplicated LRE block type. + Parse the extended report block for Loss RLE and Duplicated LRE block type. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which is Loss RLE or Duplicate RLE report. + a valid XR #GstRTCPPacket which is Loss RLE or Duplicate RLE report. - the SSRC of the RTP data packet source being reported upon by this report block. + the SSRC of the RTP data packet source being reported upon by this report block. - the amount of thinning performed on the sequence number space. + the amount of thinning performed on the sequence number space. - the first sequence number that this block reports on. + the first sequence number that this block reports on. - the last sequence number that this block reports on plus one. + the last sequence number that this block reports on plus one. - the number of chunks calculated by block length. + the number of chunks calculated by block length. @@ -1633,22 +2371,33 @@ Note: Not implemented. - Retrieve actual chunk data. + Retrieve actual chunk data. + - %TRUE if the report block returns chunk correctly. + %TRUE if the report block returns chunk correctly. - a valid XR #GstRTCPPacket which is Loss RLE or Duplicate RLE report. + a valid XR #GstRTCPPacket which is Loss RLE or Duplicate RLE report. - the index of chunk to retrieve. + the index of chunk to retrieve. - the @nth chunk. + the @nth chunk. @@ -1656,17 +2405,24 @@ Note: Not implemented. + - %TRUE if the report block returns the reference time correctly. + %TRUE if the report block returns the reference time correctly. - a valid XR #GstRTCPPacket which has the Receiver Reference Time. + a valid XR #GstRTCPPacket which has the Receiver Reference Time. - NTP timestamp + NTP timestamp @@ -1674,14 +2430,21 @@ Note: Not implemented. - Get the ssrc field of the XR @packet. + Get the ssrc field of the XR @packet. + - the ssrc. + the ssrc. - a valid XR #GstRTCPPacket + a valid XR #GstRTCPPacket @@ -1689,26 +2452,39 @@ Note: Not implemented. - Extract a basic information from static summary report block of XR @packet. + Extract a basic information from static summary report block of XR @packet. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has Statics Summary Report Block. + a valid XR #GstRTCPPacket which has Statics Summary Report Block. - the SSRC of the source. + the SSRC of the source. - the first sequence number that this block reports on. + the first sequence number that this block reports on. - the last sequence number that this block reports on plus one. + the last sequence number that this block reports on plus one. @@ -1716,31 +2492,46 @@ Note: Not implemented. - Extract jitter information from the statistics summary. If the jitter flag in + Extract jitter information from the statistics summary. If the jitter flag in a block header is set as zero, all of jitters will be zero. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has Statics Summary Report Block. + a valid XR #GstRTCPPacket which has Statics Summary Report Block. - the minimum relative transit time between two sequences. + the minimum relative transit time between two sequences. - the maximum relative transit time between two sequences. + the maximum relative transit time between two sequences. - the mean relative transit time between two sequences. + the mean relative transit time between two sequences. - the standard deviation of the relative transit time between two sequences. + the standard deviation of the relative transit time between two sequences. @@ -1748,23 +2539,34 @@ a block header is set as zero, all of jitters will be zero. - Get the number of lost or duplicate packets. If the flag in a block header + Get the number of lost or duplicate packets. If the flag in a block header is set as zero, @lost_packets or @dup_packets will be zero. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has Statics Summary Report Block. + a valid XR #GstRTCPPacket which has Statics Summary Report Block. - the number of lost packets between begin_seq and end_seq. + the number of lost packets between begin_seq and end_seq. - the number of duplicate packets between begin_seq and end_seq. + the number of duplicate packets between begin_seq and end_seq. @@ -1772,34 +2574,51 @@ is set as zero, @lost_packets or @dup_packets will be zero. - Extract the value of ttl for ipv4, or hop limit for ipv6. + Extract the value of ttl for ipv4, or hop limit for ipv6. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has Statics Summary Report Block. + a valid XR #GstRTCPPacket which has Statics Summary Report Block. - the flag to indicate that the return values are ipv4 ttl or ipv6 hop limits. + the flag to indicate that the return values are ipv4 ttl or ipv6 hop limits. - the minimum TTL or Hop Limit value of data packets between two sequences. + the minimum TTL or Hop Limit value of data packets between two sequences. - the maximum TTL or Hop Limit value of data packets between two sequences. + the maximum TTL or Hop Limit value of data packets between two sequences. - the mean TTL or Hop Limit value of data packets between two sequences. + the mean TTL or Hop Limit value of data packets between two sequences. - the standard deviation of the TTL or Hop Limit value of data packets between two sequences. + the standard deviation of the TTL or Hop Limit value of data packets between two sequences. @@ -1807,29 +2626,42 @@ is set as zero, @lost_packets or @dup_packets will be zero. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. + a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. - the fraction of RTP data packets within burst periods. + the fraction of RTP data packets within burst periods. - the fraction of RTP data packets within inter-burst gaps. + the fraction of RTP data packets within inter-burst gaps. - the mean duration(ms) of the burst periods. + the mean duration(ms) of the burst periods. - the mean duration(ms) of the gap periods. + the mean duration(ms) of the gap periods. @@ -1837,21 +2669,30 @@ is set as zero, @lost_packets or @dup_packets will be zero. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. + a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. - the gap threshold. + the gap threshold. - the receiver configuration byte. + the receiver configuration byte. @@ -1859,21 +2700,30 @@ is set as zero, @lost_packets or @dup_packets will be zero. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. + a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. - the most recently calculated round trip time between RTP interfaces(ms) + the most recently calculated round trip time between RTP interfaces(ms) - the most recently estimated end system delay(ms) + the most recently estimated end system delay(ms) @@ -1881,25 +2731,36 @@ is set as zero, @lost_packets or @dup_packets will be zero. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. + a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. - the current nominal jitter buffer delay(ms) + the current nominal jitter buffer delay(ms) - the current maximum jitter buffer delay(ms) + the current maximum jitter buffer delay(ms) - the absolute maximum delay(ms) + the absolute maximum delay(ms) @@ -1907,17 +2768,24 @@ is set as zero, @lost_packets or @dup_packets will be zero. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. + a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. - the SSRC of source + the SSRC of source @@ -1925,21 +2793,30 @@ is set as zero, @lost_packets or @dup_packets will be zero. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. + a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. - the fraction of RTP data packets from the source lost. + the fraction of RTP data packets from the source lost. - the fraction of RTP data packets from the source that have been discarded. + the fraction of RTP data packets from the source that have been discarded. @@ -1947,29 +2824,42 @@ is set as zero, @lost_packets or @dup_packets will be zero. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. + a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. - the R factor is a voice quality metric describing the segment of the call. + the R factor is a voice quality metric describing the segment of the call. - the external R factor is a voice quality metric. + the external R factor is a voice quality metric. - the estimated mean opinion score for listening quality. + the estimated mean opinion score for listening quality. - the estimated mean opinion score for conversational quality. + the estimated mean opinion score for conversational quality. @@ -1977,29 +2867,42 @@ is set as zero, @lost_packets or @dup_packets will be zero. + - %TRUE if the report block is correctly parsed. + %TRUE if the report block is correctly parsed. - a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. + a valid XR #GstRTCPPacket which has VoIP Metrics Report Block. - the ratio of the signal level to a 0 dBm reference. + the ratio of the signal level to a 0 dBm reference. - the ratio of the silent period background noise level to a 0 dBm reference. + the ratio of the silent period background noise level to a 0 dBm reference. - the residual echo return loss value. + the residual echo return loss value. - the gap threshold. + the gap threshold. @@ -2007,14 +2910,21 @@ is set as zero, @lost_packets or @dup_packets will be zero. - Move to the next extended report block in XR @packet. + Move to the next extended report block in XR @packet. + - TRUE if there was a next extended report block. + TRUE if there was a next extended report block. - a valid XR #GstRTCPPacket + a valid XR #GstRTCPPacket @@ -2024,126 +2934,168 @@ is set as zero, @lost_packets or @dup_packets will be zero. glib:type-name="GstRTCPSDESType" glib:get-type="gst_rtcpsdes_type_get_type" c:type="GstRTCPSDESType"> - Different types of SDES content. + Different types of SDES content. - Invalid SDES entry + Invalid SDES entry - End of SDES list + End of SDES list - Canonical name + Canonical name - User name + User name - User's electronic mail address + User's electronic mail address - User's phone number + User's phone number - Geographic user location + Geographic user location - Name of application or tool + Name of application or tool - Notice about the source + Notice about the source - Private extensions + Private extensions - Different RTCP packet types. + Different RTCP packet types. - Invalid type + Invalid type - Sender report + Sender report - Receiver report + Receiver report - Source description + Source description - Goodbye + Goodbye - Application defined + Application defined - Transport layer feedback. + Transport layer feedback. - Payload-specific feedback. + Payload-specific feedback. - Extended report. + Extended report. glib:type-name="GstRTCPXRType" glib:get-type="gst_rtcpxr_type_get_type" c:type="GstRTCPXRType"> - Types of RTCP Extended Reports, those are defined in RFC 3611 and other RFCs + Types of RTCP Extended Reports, those are defined in RFC 3611 and other RFCs according to the [IANA registry](https://www.iana.org/assignments/rtcp-xr-block-types/rtcp-xr-block-types.xhtml). - Invalid XR Report Block + Invalid XR Report Block - Loss RLE Report Block + Loss RLE Report Block - Duplicate RLE Report Block + Duplicate RLE Report Block - Packet Receipt Times Report Block + Packet Receipt Times Report Block - Receiver Reference Time Report Block + Receiver Reference Time Report Block - Delay since the last Receiver Report + Delay since the last Receiver Report - Statistics Summary Report Block + Statistics Summary Report Block - VoIP Metrics Report Block + VoIP Metrics Report Block - The maximum amount of SSRCs in a BYE packet. + The maximum amount of SSRCs in a BYE packet. + - The maximum amount of Receiver report blocks in RR and SR messages. + The maximum amount of Receiver report blocks in RR and SR messages. + - The maximum text length for an SDES item. + The maximum text length for an SDES item. + - The maximum amount of SDES items. + The maximum amount of SDES items. + - Mask for version, padding bit and packet type pair allowing reduced size + Mask for version, padding bit and packet type pair allowing reduced size packets, basically it accepts other types than RR and SR + - Mask for version, padding bit and packet type pair + Mask for version, padding bit and packet type pair + - Valid value for the first two bytes of an RTCP packet after applying + Valid value for the first two bytes of an RTCP packet after applying #GST_RTCP_VALID_MASK to them. + - The supported RTCP version 2. + The supported RTCP version 2. + glib:type-name="GstRTPBaseAudioPayload" glib:get-type="gst_rtp_base_audio_payload_get_type" glib:type-struct="RTPBaseAudioPayloadClass"> - Provides a base class for audio RTP payloaders for frame or sample based + Provides a base class for audio RTP payloaders for frame or sample based audio codecs (constant bitrate) This class derives from GstRTPBasePayload. It can be used for payloading @@ -2283,162 +3279,227 @@ GstRTPBaseAudioPayload derives from GstRTPBasePayload, the child element must set any variables or call/override any functions required by that base class. The child element does not need to override any other functions specific to GstRTPBaseAudioPayload. + - Create an RTP buffer and store @payload_len bytes of the adapter as the + Create an RTP buffer and store @payload_len bytes of the adapter as the payload. Set the timestamp on the new buffer to @timestamp before pushing the buffer downstream. If @payload_len is -1, all pending bytes will be flushed. If @timestamp is -1, the timestamp will be calculated automatically. + - a #GstFlowReturn + a #GstFlowReturn - a #GstRTPBasePayload + a #GstRTPBasePayload - length of payload + length of payload - a #GstClockTime + a #GstClockTime - Gets the internal adapter used by the depayloader. + Gets the internal adapter used by the depayloader. + - a #GstAdapter. + a #GstAdapter. - a #GstRTPBaseAudioPayload + a #GstRTPBaseAudioPayload - Create an RTP buffer and store @payload_len bytes of @data as the + Create an RTP buffer and store @payload_len bytes of @data as the payload. Set the timestamp on the new buffer to @timestamp before pushing the buffer downstream. + - a #GstFlowReturn + a #GstFlowReturn - a #GstRTPBasePayload + a #GstRTPBasePayload - data to set as payload + data to set as payload - length of payload + length of payload - a #GstClockTime + a #GstClockTime - Tells #GstRTPBaseAudioPayload that the child element is for a frame based + Tells #GstRTPBaseAudioPayload that the child element is for a frame based audio codec + - a pointer to the element. + a pointer to the element. - Sets the options for frame based audio codecs. + Sets the options for frame based audio codecs. + - a pointer to the element. + a pointer to the element. - The duraction of an audio frame in milliseconds. + The duraction of an audio frame in milliseconds. - The size of an audio frame in bytes. + The size of an audio frame in bytes. - Tells #GstRTPBaseAudioPayload that the child element is for a sample based + Tells #GstRTPBaseAudioPayload that the child element is for a sample based audio codec + - a pointer to the element. + a pointer to the element. - Sets the options for sample based audio codecs. + Sets the options for sample based audio codecs. + - a pointer to the element. + a pointer to the element. - Size per sample in bytes. + Size per sample in bytes. - Sets the options for sample based audio codecs. + Sets the options for sample based audio codecs. + - a pointer to the element. + a pointer to the element. - Size per sample in bits. + Size per sample in bits. @@ -2466,7 +3527,7 @@ audio codec - + @@ -2474,13 +3535,18 @@ audio codec - Base class for audio RTP payloader. + Base class for audio RTP payloader. + - the parent class + the parent class - + @@ -2488,6 +3554,7 @@ audio codec + glib:type-name="GstRTPBaseDepayload" glib:get-type="gst_rtp_base_depayload_get_type" glib:type-struct="RTPBaseDepayloadClass"> - Provides a base class for RTP depayloaders + Provides a base class for RTP depayloaders + + @@ -2512,6 +3583,7 @@ audio codec + @@ -2525,6 +3597,7 @@ audio codec + @@ -2538,6 +3611,7 @@ audio codec + @@ -2551,6 +3625,7 @@ audio codec + @@ -2566,53 +3641,78 @@ audio codec - Queries whether #GstRTPSourceMeta will be added to depayloaded buffers. + Queries whether #GstRTPSourceMeta will be added to depayloaded buffers. + - %TRUE if source-info is enabled. + %TRUE if source-info is enabled. - a #GstRTPBaseDepayload + a #GstRTPBaseDepayload - Push @out_buf to the peer of @filter. This function takes ownership of + Push @out_buf to the peer of @filter. This function takes ownership of @out_buf. This function will by default apply the last incomming timestamp on the outgoing buffer when it didn't have a timestamp already. + - a #GstFlowReturn. + a #GstFlowReturn. - a #GstRTPBaseDepayload + a #GstRTPBaseDepayload - a #GstBuffer + a #GstBuffer - Push @out_list to the peer of @filter. This function takes ownership of + Push @out_list to the peer of @filter. This function takes ownership of @out_list. + - a #GstFlowReturn. + a #GstFlowReturn. - a #GstRTPBaseDepayload + a #GstRTPBaseDepayload - a #GstBufferList + a #GstBufferList @@ -2620,17 +3720,24 @@ the outgoing buffer when it didn't have a timestamp already. - Enable or disable adding #GstRTPSourceMeta to depayloaded buffers. + Enable or disable adding #GstRTPSourceMeta to depayloaded buffers. + - a #GstRTPBaseDepayload + a #GstRTPBaseDepayload - whether to add meta about RTP sources to buffer + whether to add meta about RTP sources to buffer @@ -2639,11 +3746,15 @@ the outgoing buffer when it didn't have a timestamp already. version="1.16" writable="1" transfer-ownership="none"> - Add RTP source information found in RTP header as meta to output buffer. + Add RTP source information found in RTP header as meta to output buffer. - Various depayloader statistics retrieved atomically (and are therefore + Various depayloader statistics retrieved atomically (and are therefore synchroized with each other). This property return a GstStructure named application/x-rtp-depayload-stats containing the following fields relating to the last processed buffer and current state of the stream being depayloaded: @@ -2684,7 +3795,7 @@ the last processed buffer and current state of the stream being depayloaded: c:type="GstRTPBaseDepayloadPrivate*"/> - + @@ -2692,13 +3803,19 @@ the last processed buffer and current state of the stream being depayloaded: - Base class for RTP depayloaders. + Base class for RTP depayloaders. + - the parent class + the parent class + @@ -2714,6 +3831,7 @@ the last processed buffer and current state of the stream being depayloaded: + @@ -2729,6 +3847,7 @@ the last processed buffer and current state of the stream being depayloaded: + @@ -2744,6 +3863,7 @@ the last processed buffer and current state of the stream being depayloaded: + @@ -2759,6 +3879,7 @@ the last processed buffer and current state of the stream being depayloaded: + @@ -2773,7 +3894,7 @@ the last processed buffer and current state of the stream being depayloaded: - + @@ -2781,6 +3902,7 @@ the last processed buffer and current state of the stream being depayloaded: + - Provides a base class for RTP payloaders + Provides a base class for RTP payloaders + + @@ -2808,6 +3934,7 @@ the last processed buffer and current state of the stream being depayloaded: + @@ -2821,6 +3948,7 @@ the last processed buffer and current state of the stream being depayloaded: + @@ -2837,6 +3965,7 @@ the last processed buffer and current state of the stream being depayloaded: + @@ -2850,6 +3979,7 @@ the last processed buffer and current state of the stream being depayloaded: + @@ -2863,6 +3993,7 @@ the last processed buffer and current state of the stream being depayloaded: + @@ -2878,30 +4009,43 @@ the last processed buffer and current state of the stream being depayloaded: - Allocate a new #GstBuffer with enough data to hold an RTP packet with + Allocate a new #GstBuffer with enough data to hold an RTP packet with minimum @csrc_count CSRCs, a payload length of @payload_len and padding of @pad_len. If @payload has #GstRTPBasePayload:source-info %TRUE additional CSRCs may be allocated and filled with RTP source information. + - A newly allocated buffer that can hold an RTP packet with given + A newly allocated buffer that can hold an RTP packet with given parameters. - a #GstRTPBasePayload + a #GstRTPBasePayload - the length of the payload + the length of the payload - the amount of padding + the amount of padding - the minimum number of CSRC entries + the minimum number of CSRC entries @@ -2909,43 +4053,63 @@ parameters. - Count the total number of RTP sources found in the meta of @buffer, which + Count the total number of RTP sources found in the meta of @buffer, which will be automically added by gst_rtp_base_payload_allocate_output_buffer(). If #GstRTPBasePayload:source-info is %FALSE the count will be 0. + - The number of sources. + The number of sources. - a #GstRTPBasePayload + a #GstRTPBasePayload - a #GstBuffer, typically the buffer to payload + a #GstBuffer, typically the buffer to payload - Check if the packet with @size and @duration would exceed the configured + Check if the packet with @size and @duration would exceed the configured maximum size. + - %TRUE if the packet of @size and @duration would exceed the + %TRUE if the packet of @size and @duration would exceed the configured MTU or max_ptime. - a #GstRTPBasePayload + a #GstRTPBasePayload - the size of the packet + the size of the packet - the duration of the packet + the duration of the packet @@ -2953,86 +4117,124 @@ configured MTU or max_ptime. - Queries whether the payloader will add contributing sources (CSRCs) to the + Queries whether the payloader will add contributing sources (CSRCs) to the RTP header from #GstRTPSourceMeta. + - %TRUE if source-info is enabled. + %TRUE if source-info is enabled. - a #GstRTPBasePayload + a #GstRTPBasePayload - Push @buffer to the peer element of the payloader. The SSRC, payload type, + Push @buffer to the peer element of the payloader. The SSRC, payload type, seqnum and timestamp of the RTP buffer will be updated first. This function takes ownership of @buffer. + - a #GstFlowReturn. + a #GstFlowReturn. - a #GstRTPBasePayload + a #GstRTPBasePayload - a #GstBuffer + a #GstBuffer - Push @list to the peer element of the payloader. The SSRC, payload type, + Push @list to the peer element of the payloader. The SSRC, payload type, seqnum and timestamp of the RTP buffer will be updated first. This function takes ownership of @list. + - a #GstFlowReturn. + a #GstFlowReturn. - a #GstRTPBasePayload + a #GstRTPBasePayload - a #GstBufferList + a #GstBufferList - Set the rtp options of the payloader. These options will be set in the caps + Set the rtp options of the payloader. These options will be set in the caps of the payloader. Subclasses must call this method before calling gst_rtp_base_payload_push() or gst_rtp_base_payload_set_outcaps(). + - a #GstRTPBasePayload + a #GstRTPBasePayload - the media type (typically "audio" or "video") + the media type (typically "audio" or "video") - if the payload type is dynamic + if the payload type is dynamic - the encoding name + the encoding name - the clock rate of the media + the clock rate of the media @@ -3040,25 +4242,36 @@ gst_rtp_base_payload_push() or gst_rtp_base_payload_set_outcaps(). - Configure the output caps with the optional parameters. + Configure the output caps with the optional parameters. Variable arguments should be in the form field name, field type (as a GType), value(s). The last variable argument should be NULL. + - %TRUE if the caps could be set. + %TRUE if the caps could be set. - a #GstRTPBasePayload + a #GstRTPBasePayload - the first field name or %NULL + the first field name or %NULL - field values + field values @@ -3066,18 +4279,25 @@ Variable arguments should be in the form field name, field type - Enable or disable adding contributing sources to RTP packets from + Enable or disable adding contributing sources to RTP packets from #GstRTPSourceMeta. + - a #GstRTPBasePayload + a #GstRTPBasePayload - whether to add contributing sources to RTP packets + whether to add contributing sources to RTP packets @@ -3086,7 +4306,9 @@ Variable arguments should be in the form field name, field type - Minimum duration of the packet data in ns (can't go above MTU) + Minimum duration of the packet data in ns (can't go above MTU) @@ -3096,12 +4318,16 @@ Variable arguments should be in the form field name, field type version="1.16" writable="1" transfer-ownership="none"> - Make the payloader timestamp packets according to the Rate-Control=no + Make the payloader timestamp packets according to the Rate-Control=no behaviour specified in the ONVIF replay spec. - Try to use the offset fields to generate perfect RTP timestamps. When this + Try to use the offset fields to generate perfect RTP timestamps. When this option is disabled, RTP timestamps are generated from GST_BUFFER_PTS of each payloaded buffer. The PTSes of buffers may not necessarily increment with the amount of data in each input buffer, consider e.g. the case where @@ -3122,7 +4348,9 @@ timestamps for audio streams. - Force buffers to be multiples of this duration in ns (0 disables) + Force buffers to be multiples of this duration in ns (0 disables) @@ -3135,7 +4363,9 @@ timestamps for audio streams. version="1.16" writable="1" transfer-ownership="none"> - Enable writing the CSRC field in allocated RTP header based on RTP source + Enable writing the CSRC field in allocated RTP header based on RTP source information found in the input buffer's #GstRTPSourceMeta. @@ -3143,7 +4373,9 @@ information found in the input buffer's #GstRTPSourceMeta. - Various payloader statistics retrieved atomically (and are therefore + Various payloader statistics retrieved atomically (and are therefore synchroized with each other), these can be used e.g. to generate an RTP-Info header. This property return a GstStructure named application/x-rtp-payload-stats containing the following fields relating to @@ -3235,7 +4467,7 @@ the last processed buffer and current state of the stream being payloaded: - + @@ -3243,13 +4475,19 @@ the last processed buffer and current state of the stream being payloaded: - Base class for audio RTP payloader. + Base class for audio RTP payloader. + - the parent class + the parent class + @@ -3268,6 +4506,7 @@ the last processed buffer and current state of the stream being payloaded: + @@ -3283,6 +4522,7 @@ the last processed buffer and current state of the stream being payloaded: + @@ -3298,6 +4538,7 @@ the last processed buffer and current state of the stream being payloaded: + @@ -3313,6 +4554,7 @@ the last processed buffer and current state of the stream being payloaded: + @@ -3328,6 +4570,7 @@ the last processed buffer and current state of the stream being payloaded: + @@ -3345,7 +4588,7 @@ the last processed buffer and current state of the stream being payloaded: - + @@ -3353,149 +4596,214 @@ the last processed buffer and current state of the stream being payloaded: + - The GstRTPBuffer helper functions makes it easy to parse and create regular + The GstRTPBuffer helper functions makes it easy to parse and create regular #GstBuffer objects that contain RTP payloads. These buffers are typically of 'application/x-rtp' #GstCaps. + - pointer to RTP buffer + pointer to RTP buffer - internal state + internal state - array of data - + array of data + - array of size - + array of size + - array of #GstMapInfo - + array of #GstMapInfo + - Adds a RFC 5285 header extension with a one byte header to the end of the + Adds a RFC 5285 header extension with a one byte header to the end of the RTP header. If there is already a RFC 5285 header extension with a one byte header, the new extension will be appended. It will not work if there is already a header extension that does not follow the mecanism described in RFC 5285 or if there is a header extension with a two bytes header as described in RFC 5285. In that case, use gst_rtp_buffer_add_extension_twobytes_header() + - %TRUE if header extension could be added + %TRUE if header extension could be added - the RTP packet + the RTP packet - The ID of the header extension (between 1 and 14). + The ID of the header extension (between 1 and 14). - location for data + location for data - the size of the data in bytes + the size of the data in bytes - Adds a RFC 5285 header extension with a two bytes header to the end of the + Adds a RFC 5285 header extension with a two bytes header to the end of the RTP header. If there is already a RFC 5285 header extension with a two bytes header, the new extension will be appended. It will not work if there is already a header extension that does not follow the mecanism described in RFC 5285 or if there is a header extension with a one byte header as described in RFC 5285. In that case, use gst_rtp_buffer_add_extension_onebyte_header() + - %TRUE if header extension could be added + %TRUE if header extension could be added - the RTP packet + the RTP packet - Application specific bits + Application specific bits - The ID of the header extension + The ID of the header extension - location for data + location for data - the size of the data in bytes + the size of the data in bytes - Get the CSRC at index @idx in @buffer. + Get the CSRC at index @idx in @buffer. + - the CSRC at index @idx in host order. + the CSRC at index @idx in host order. - the RTP packet + the RTP packet - the index of the CSRC to get + the index of the CSRC to get - Get the CSRC count of the RTP packet in @buffer. + Get the CSRC count of the RTP packet in @buffer. + - the CSRC count of @buffer. + the CSRC count of @buffer. - the RTP packet + the RTP packet - Check if the extension bit is set on the RTP packet in @buffer. + Check if the extension bit is set on the RTP packet in @buffer. + - TRUE if @buffer has the extension bit set. + TRUE if @buffer has the extension bit set. - the RTP packet + the RTP packet @@ -3504,7 +4812,9 @@ gst_rtp_buffer_add_extension_onebyte_header() c:identifier="gst_rtp_buffer_get_extension_bytes" shadows="get_extension_data" version="1.2"> - Similar to gst_rtp_buffer_get_extension_data, but more suitable for language + Similar to gst_rtp_buffer_get_extension_data, but more suitable for language bindings usage. @bits will contain the extension 16 bits of custom data and the extension data (not including the extension header) is placed in a new #GBytes structure. @@ -3512,21 +4822,28 @@ the extension data (not including the extension header) is placed in a new If @rtp did not contain an extension, this function will return %NULL, with @bits unchanged. If there is an extension header but no extension data then an empty #GBytes will be returned. + - A new #GBytes if an extension header was present + A new #GBytes if an extension header was present and %NULL otherwise. - the RTP packet + the RTP packet - location for header bits + location for header bits @@ -3535,33 +4852,44 @@ and %NULL otherwise. c:identifier="gst_rtp_buffer_get_extension_data" shadowed-by="get_extension_bytes" introspectable="0"> - Get the extension data. @bits will contain the extension 16 bits of custom + Get the extension data. @bits will contain the extension 16 bits of custom data. @data will point to the data in the extension and @wordlen will contain the length of @data in 32 bits words. If @buffer did not contain an extension, this function will return %FALSE with @bits, @data and @wordlen unchanged. + - TRUE if @buffer had the extension bit set. + TRUE if @buffer had the extension bit set. - the RTP packet + the RTP packet - location for result bits + location for result bits - location for data + location for data @@ -3570,37 +4898,52 @@ with @bits, @data and @wordlen unchanged. direction="out" caller-allocates="0" transfer-ownership="full"> - location for length of @data in 32 bits words + location for length of @data in 32 bits words - Parses RFC 5285 style header extensions with a one byte header. It will + Parses RFC 5285 style header extensions with a one byte header. It will return the nth extension with the requested id. + - TRUE if @buffer had the requested header extension + TRUE if @buffer had the requested header extension - the RTP packet + the RTP packet - The ID of the header extension to be read (between 1 and 14). + The ID of the header extension to be read (between 1 and 14). - Read the nth extension packet with the requested ID + Read the nth extension packet with the requested ID - + location for data @@ -3610,44 +4953,61 @@ return the nth extension with the requested id. direction="out" caller-allocates="0" transfer-ownership="full"> - the size of the data in bytes + the size of the data in bytes - Parses RFC 5285 style header extensions with a two bytes header. It will + Parses RFC 5285 style header extensions with a two bytes header. It will return the nth extension with the requested id. + - TRUE if @buffer had the requested header extension + TRUE if @buffer had the requested header extension - the RTP packet + the RTP packet - Application specific bits + Application specific bits - The ID of the header extension to be read (between 1 and 14). + The ID of the header extension to be read (between 1 and 14). - Read the nth extension packet with the requested ID + Read the nth extension packet with the requested ID - + location for data @@ -3657,62 +5017,92 @@ return the nth extension with the requested id. direction="out" caller-allocates="0" transfer-ownership="full"> - the size of the data in bytes + the size of the data in bytes - Return the total length of the header in @buffer. This include the length of + Return the total length of the header in @buffer. This include the length of the fixed header, the CSRC list and the extension header. + - The total length of the header in @buffer. + The total length of the header in @buffer. - the RTP packet + the RTP packet - Check if the marker bit is set on the RTP packet in @buffer. + Check if the marker bit is set on the RTP packet in @buffer. + - TRUE if @buffer has the marker bit set. + TRUE if @buffer has the marker bit set. - the RTP packet + the RTP packet - Return the total length of the packet in @buffer. + Return the total length of the packet in @buffer. + - The total length of the packet in @buffer. + The total length of the packet in @buffer. - the RTP packet + the RTP packet - Check if the padding bit is set on the RTP packet in @buffer. + Check if the padding bit is set on the RTP packet in @buffer. + - TRUE if @buffer has the padding bit set. + TRUE if @buffer has the padding bit set. - the RTP packet + the RTP packet @@ -3721,10 +5111,15 @@ the fixed header, the CSRC list and the extension header. c:identifier="gst_rtp_buffer_get_payload" shadowed-by="get_payload_bytes" introspectable="0"> - Get a pointer to the payload data in @buffer. This pointer is valid as long + Get a pointer to the payload data in @buffer. This pointer is valid as long as a reference to @buffer is held. + - A pointer + A pointer to the payload data in @buffer. @@ -3732,23 +5127,32 @@ to the payload data in @buffer. - the RTP packet + the RTP packet - Create a buffer of the payload of the RTP packet in @buffer. This function + Create a buffer of the payload of the RTP packet in @buffer. This function will internally create a subbuffer of @buffer so that a memcpy can be avoided. + - A new buffer with the data of the payload. + A new buffer with the data of the payload. - the RTP packet + the RTP packet @@ -3757,475 +5161,688 @@ avoided. c:identifier="gst_rtp_buffer_get_payload_bytes" shadows="get_payload" version="1.2"> - Similar to gst_rtp_buffer_get_payload, but more suitable for language + Similar to gst_rtp_buffer_get_payload, but more suitable for language bindings usage. The return value is a pointer to a #GBytes structure containing the payload data in @rtp. + - A new #GBytes containing the payload data in @rtp. + A new #GBytes containing the payload data in @rtp. - the RTP packet + the RTP packet - Get the length of the payload of the RTP packet in @buffer. + Get the length of the payload of the RTP packet in @buffer. + - The length of the payload in @buffer. + The length of the payload in @buffer. - the RTP packet + the RTP packet - Create a subbuffer of the payload of the RTP packet in @buffer. @offset bytes + Create a subbuffer of the payload of the RTP packet in @buffer. @offset bytes are skipped in the payload and the subbuffer will be of size @len. If @len is -1 the total payload starting from @offset is subbuffered. + - A new buffer with the specified data of the payload. + A new buffer with the specified data of the payload. - the RTP packet + the RTP packet - the offset in the payload + the offset in the payload - the length in the payload + the length in the payload - Get the payload type of the RTP packet in @buffer. + Get the payload type of the RTP packet in @buffer. + - The payload type. + The payload type. - the RTP packet + the RTP packet - Get the sequence number of the RTP packet in @buffer. + Get the sequence number of the RTP packet in @buffer. + - The sequence number in host order. + The sequence number in host order. - the RTP packet + the RTP packet - Get the SSRC of the RTP packet in @buffer. + Get the SSRC of the RTP packet in @buffer. + - the SSRC of @buffer in host order. + the SSRC of @buffer in host order. - the RTP packet + the RTP packet - Get the timestamp of the RTP packet in @buffer. + Get the timestamp of the RTP packet in @buffer. + - The timestamp in host order. + The timestamp in host order. - the RTP packet + the RTP packet - Get the version number of the RTP packet in @buffer. + Get the version number of the RTP packet in @buffer. + - The version of @buffer. + The version of @buffer. - the RTP packet + the RTP packet - Set the amount of padding in the RTP packet in @buffer to + Set the amount of padding in the RTP packet in @buffer to @len. If @len is 0, the padding is removed. NOTE: This function does not work correctly. + - the RTP packet + the RTP packet - the new amount of padding + the new amount of padding - Modify the CSRC at index @idx in @buffer to @csrc. + Modify the CSRC at index @idx in @buffer to @csrc. + - the RTP packet + the RTP packet - the CSRC index to set + the CSRC index to set - the CSRC in host order to set at @idx + the CSRC in host order to set at @idx - Set the extension bit on the RTP packet in @buffer to @extension. + Set the extension bit on the RTP packet in @buffer to @extension. + - the RTP packet + the RTP packet - the new extension + the new extension - Set the extension bit of the rtp buffer and fill in the @bits and @length of the + Set the extension bit of the rtp buffer and fill in the @bits and @length of the extension header. If the existing extension data is not large enough, it will be made larger. + - True if done. + True if done. - the RTP packet + the RTP packet - the bits specific for the extension + the bits specific for the extension - the length that counts the number of 32-bit words in + the length that counts the number of 32-bit words in the extension, excluding the extension header ( therefore zero is a valid length) - Set the marker bit on the RTP packet in @buffer to @marker. + Set the marker bit on the RTP packet in @buffer to @marker. + - the RTP packet + the RTP packet - the new marker + the new marker - Set the total @rtp size to @len. The data in the buffer will be made + Set the total @rtp size to @len. The data in the buffer will be made larger if needed. Any padding will be removed from the packet. + - the RTP packet + the RTP packet - the new packet length + the new packet length - Set the padding bit on the RTP packet in @buffer to @padding. + Set the padding bit on the RTP packet in @buffer to @padding. + - the buffer + the buffer - the new padding + the new padding - Set the payload type of the RTP packet in @buffer to @payload_type. + Set the payload type of the RTP packet in @buffer to @payload_type. + - the RTP packet + the RTP packet - the new type + the new type - Set the sequence number of the RTP packet in @buffer to @seq. + Set the sequence number of the RTP packet in @buffer to @seq. + - the RTP packet + the RTP packet - the new sequence number + the new sequence number - Set the SSRC on the RTP packet in @buffer to @ssrc. + Set the SSRC on the RTP packet in @buffer to @ssrc. + - the RTP packet + the RTP packet - the new SSRC + the new SSRC - Set the timestamp of the RTP packet in @buffer to @timestamp. + Set the timestamp of the RTP packet in @buffer to @timestamp. + - the RTP packet + the RTP packet - the new timestamp + the new timestamp - Set the version of the RTP packet in @buffer to @version. + Set the version of the RTP packet in @buffer to @version. + - the RTP packet + the RTP packet - the new version + the new version - Unmap @rtp previously mapped with gst_rtp_buffer_map(). + Unmap @rtp previously mapped with gst_rtp_buffer_map(). + - a #GstRTPBuffer + a #GstRTPBuffer - Allocate enough data in @buffer to hold an RTP packet with @csrc_count CSRCs, + Allocate enough data in @buffer to hold an RTP packet with @csrc_count CSRCs, a payload length of @payload_len and padding of @pad_len. @buffer must be writable and all previous memory in @buffer will be freed. If @pad_len is >0, the padding bit will be set. All other RTP header fields will be set to 0/FALSE. + - a #GstBuffer + a #GstBuffer - the length of the payload + the length of the payload - the amount of padding + the amount of padding - the number of CSRC entries + the number of CSRC entries - Calculate the header length of an RTP packet with @csrc_count CSRC entries. + Calculate the header length of an RTP packet with @csrc_count CSRC entries. An RTP packet can have at most 15 CSRC entries. + - The length of an RTP header with @csrc_count CSRC entries. + The length of an RTP header with @csrc_count CSRC entries. - the number of CSRC entries + the number of CSRC entries - Calculate the total length of an RTP packet with a payload size of @payload_len, + Calculate the total length of an RTP packet with a payload size of @payload_len, a padding of @pad_len and a @csrc_count CSRC entries. + - The total length of an RTP header with given parameters. + The total length of an RTP header with given parameters. - the length of the payload + the length of the payload - the amount of padding + the amount of padding - the number of CSRC entries + the number of CSRC entries - Calculate the length of the payload of an RTP packet with size @packet_len, + Calculate the length of the payload of an RTP packet with size @packet_len, a padding of @pad_len and a @csrc_count CSRC entries. + - The length of the payload of an RTP packet with given parameters. + The length of the payload of an RTP packet with given parameters. - the length of the total RTP packet + the length of the total RTP packet - the amount of padding + the amount of padding - the number of CSRC entries + the number of CSRC entries - Compare two sequence numbers, taking care of wraparounds. This function + Compare two sequence numbers, taking care of wraparounds. This function returns the difference between @seqnum1 and @seqnum2. + - a negative value if @seqnum1 is bigger than @seqnum2, 0 if they + a negative value if @seqnum1 is bigger than @seqnum2, 0 if they are equal or a positive value if @seqnum1 is smaller than @segnum2. - a sequence number + a sequence number - a sequence number + a sequence number - Get the default clock-rate for the static payload type @payload_type. + Get the default clock-rate for the static payload type @payload_type. + - the default clock rate or -1 if the payload type is not static or + the default clock rate or -1 if the payload type is not static or the clock-rate is undefined. - the static payload type + the static payload type - Update the @exttimestamp field with the extended timestamp of @timestamp + Update the @exttimestamp field with the extended timestamp of @timestamp For the first call of the method, @exttimestamp should point to a location with a value of -1. @@ -4233,8 +5850,11 @@ This function is able to handle both forward and backward timestamps taking into account: - timestamp wraparound making sure that the returned value is properly increased. - timestamp unwraparound making sure that the returned value is properly decreased. + - The extended timestamp of @timestamp or 0 if the result can't go anywhere backwards. + The extended timestamp of @timestamp or 0 if the result can't go anywhere backwards. @@ -4242,130 +5862,185 @@ into account: direction="inout" caller-allocates="0" transfer-ownership="full"> - a previous extended timestamp + a previous extended timestamp - a new timestamp + a new timestamp - Map the contents of @buffer into @rtp. + Map the contents of @buffer into @rtp. + - %TRUE if @buffer could be mapped. + %TRUE if @buffer could be mapped. - a #GstBuffer + a #GstBuffer - #GstMapFlags + #GstMapFlags - a #GstRTPBuffer + a #GstRTPBuffer - Allocate a new #GstBuffer with enough data to hold an RTP packet with + Allocate a new #GstBuffer with enough data to hold an RTP packet with @csrc_count CSRCs, a payload length of @payload_len and padding of @pad_len. All other RTP header fields will be set to 0/FALSE. + - A newly allocated buffer that can hold an RTP packet with given + A newly allocated buffer that can hold an RTP packet with given parameters. - the length of the payload + the length of the payload - the amount of padding + the amount of padding - the number of CSRC entries + the number of CSRC entries - Create a new #GstBuffer that can hold an RTP packet that is exactly + Create a new #GstBuffer that can hold an RTP packet that is exactly @packet_len long. The length of the payload depends on @pad_len and @csrc_count and can be calculated with gst_rtp_buffer_calc_payload_len(). All RTP header fields will be set to 0/FALSE. + - A newly allocated buffer that can hold an RTP packet of @packet_len. + A newly allocated buffer that can hold an RTP packet of @packet_len. - the total length of the packet + the total length of the packet - the amount of padding + the amount of padding - the number of CSRC entries + the number of CSRC entries - Create a new buffer and set the data to a copy of @len + Create a new buffer and set the data to a copy of @len bytes of @data and the size to @len. The data will be freed when the buffer is freed. + - A newly allocated buffer with a copy of @data and of size @len. + A newly allocated buffer with a copy of @data and of size @len. - data for the new + data for the new buffer - the length of data + the length of data - Create a new buffer and set the data and size of the buffer to @data and @len + Create a new buffer and set the data and size of the buffer to @data and @len respectively. @data will be freed when the buffer is unreffed, so this function transfers ownership of @data to the new buffer. + - A newly allocated buffer with @data and of size @len. + A newly allocated buffer with @data and of size @len. - + data for the new buffer - the length of data + the length of data @@ -4376,7 +6051,9 @@ function transfers ownership of @data to the new buffer. glib:type-name="GstRTPBufferFlags" glib:get-type="gst_rtp_buffer_flags_get_type" c:type="GstRTPBufferFlags"> - Additional RTP buffer flags. These flags can potentially be used on any + Additional RTP buffer flags. These flags can potentially be used on any buffers carrying RTP packets. Note that these are only valid for #GstCaps of type: application/x-rtp (x-rtcp). @@ -4385,14 +6062,18 @@ They can conflict with other extended buffer flags. value="1048576" c:identifier="GST_RTP_BUFFER_FLAG_RETRANSMISSION" glib:nick="retransmission"> - The #GstBuffer was once wrapped + The #GstBuffer was once wrapped in a retransmitted packet as specified by RFC 4588. - The packet represents redundant RTP packet. + The packet represents redundant RTP packet. The flag is used in gstrtpstorage to be able to hold the packetback and use it only for recovery from packet loss. Since: 1.14 @@ -4401,7 +6082,9 @@ They can conflict with other extended buffer flags. value="268435456" c:identifier="GST_RTP_BUFFER_FLAG_LAST" glib:nick="last"> - Offset to define more flags. + Offset to define more flags. glib:type-name="GstRTPBufferMapFlags" glib:get-type="gst_rtp_buffer_map_flags_get_type" c:type="GstRTPBufferMapFlags"> - Additional mapping flags for gst_rtp_buffer_map(). + Additional mapping flags for gst_rtp_buffer_map(). - Skip mapping and validation of RTP + Skip mapping and validation of RTP padding and RTP pad count when present. Useful for buffers where the padding may be encrypted. @@ -4422,14 +6109,18 @@ They can conflict with other extended buffer flags. value="16777216" c:identifier="GST_RTP_BUFFER_MAP_FLAG_LAST" glib:nick="last"> - Offset to define more flags + Offset to define more flags - Standard predefined fixed payload types. + Standard predefined fixed payload types. The official list is at: http://www.iana.org/assignments/rtp-parameters @@ -4445,224 +6136,307 @@ Reserved for RTCP conflict avoidance: 72-76 value="0" c:identifier="GST_RTP_PAYLOAD_PCMU" glib:nick="pcmu"> - ITU-T G.711. mu-law audio (RFC 3551) + ITU-T G.711. mu-law audio (RFC 3551) - RFC 3551 says reserved + RFC 3551 says reserved - RFC 3551 says reserved + RFC 3551 says reserved - GSM audio + GSM audio - ITU G.723.1 audio + ITU G.723.1 audio - IMA ADPCM wave type (RFC 3551) + IMA ADPCM wave type (RFC 3551) - IMA ADPCM wave type (RFC 3551) + IMA ADPCM wave type (RFC 3551) - experimental linear predictive encoding + experimental linear predictive encoding - ITU-T G.711 A-law audio (RFC 3551) + ITU-T G.711 A-law audio (RFC 3551) - ITU-T G.722 (RFC 3551) + ITU-T G.722 (RFC 3551) - stereo PCM + stereo PCM - mono PCM + mono PCM - EIA & TIA standard IS-733 + EIA & TIA standard IS-733 - Comfort Noise (RFC 3389) + Comfort Noise (RFC 3389) - Audio MPEG 1-3. + Audio MPEG 1-3. - ITU-T G.728 Speech coder (RFC 3551) + ITU-T G.728 Speech coder (RFC 3551) - IMA ADPCM wave type (RFC 3551) + IMA ADPCM wave type (RFC 3551) - IMA ADPCM wave type (RFC 3551) + IMA ADPCM wave type (RFC 3551) - ITU-T G.729 Speech coder (RFC 3551) + ITU-T G.729 Speech coder (RFC 3551) - See RFC 2029 + See RFC 2029 - ISO Standards 10918-1 and 10918-2 (RFC 2435) + ISO Standards 10918-1 and 10918-2 (RFC 2435) - nv encoding by Ron Frederick + nv encoding by Ron Frederick - ITU-T Recommendation H.261 (RFC 2032) + ITU-T Recommendation H.261 (RFC 2032) - Video MPEG 1 & 2 (RFC 2250) + Video MPEG 1 & 2 (RFC 2250) - MPEG-2 transport stream (RFC 2250) + MPEG-2 transport stream (RFC 2250) - Video H263 (RFC 2190) + Video H263 (RFC 2190) - Structure holding default payload type information. + Structure holding default payload type information. + - payload type, -1 means dynamic + payload type, -1 means dynamic - the media type(s), usually "audio", "video", "application", "text", + the media type(s), usually "audio", "video", "application", "text", "message". - the encoding name of @pt + the encoding name of @pt - default clock rate, 0 = unknown/variable + default clock rate, 0 = unknown/variable - encoding parameters. For audio this is the number of + encoding parameters. For audio this is the number of channels. NULL = not applicable. - the bitrate of the media. 0 = unknown/variable. + the bitrate of the media. 0 = unknown/variable. - + - Get the #GstRTPPayloadInfo for @media and @encoding_name. This function is + Get the #GstRTPPayloadInfo for @media and @encoding_name. This function is mostly used to get the default clock-rate and bandwidth for dynamic payload types specified with @media and @encoding name. The search for @encoding_name will be performed in a case insensitve way. + - a #GstRTPPayloadInfo or NULL when no info could be found. + a #GstRTPPayloadInfo or NULL when no info could be found. - the media to find + the media to find - the encoding name to find + the encoding name to find - Get the #GstRTPPayloadInfo for @payload_type. This function is + Get the #GstRTPPayloadInfo for @payload_type. This function is mostly used to get the default clock-rate and bandwidth for static payload types specified with @payload_type. + - a #GstRTPPayloadInfo or NULL when no info could be found. + a #GstRTPPayloadInfo or NULL when no info could be found. - the payload_type to find + the payload_type to find @@ -4673,81 +6447,117 @@ types specified with @payload_type. glib:type-name="GstRTPProfile" glib:get-type="gst_rtp_profile_get_type" c:type="GstRTPProfile"> - The transfer profile to use. + The transfer profile to use. - invalid profile + invalid profile - the Audio/Visual profile (RFC 3551) + the Audio/Visual profile (RFC 3551) - the secure Audio/Visual profile (RFC 3711) + the secure Audio/Visual profile (RFC 3711) - the Audio/Visual profile with feedback (RFC 4585) + the Audio/Visual profile with feedback (RFC 4585) - the secure Audio/Visual profile with feedback (RFC 5124) + the secure Audio/Visual profile with feedback (RFC 5124) - Meta describing the source(s) of the buffer. + Meta describing the source(s) of the buffer. + - parent #GstMeta + parent #GstMeta - the SSRC + the SSRC - whether @ssrc is set and valid + whether @ssrc is set and valid - pointer to the CSRCs - + pointer to the CSRCs + - number of elements in @csrc + number of elements in @csrc - Appends @csrc to the list of contributing sources in @meta. + Appends @csrc to the list of contributing sources in @meta. + - %TRUE if all elements in @csrc was added, %FALSE otherwise. + %TRUE if all elements in @csrc was added, %FALSE otherwise. - a #GstRTPSourceMeta + a #GstRTPSourceMeta - the csrcs to append + the csrcs to append - number of elements in @csrc + number of elements in @csrc @@ -4755,14 +6565,21 @@ types specified with @payload_type. - Count the total number of RTP sources found in @meta, both SSRC and CSRC. + Count the total number of RTP sources found in @meta, both SSRC and CSRC. + - The number of RTP sources + The number of RTP sources - a #GstRTPSourceMeta + a #GstRTPSourceMeta @@ -4770,265 +6587,524 @@ types specified with @payload_type. - Sets @ssrc in @meta. If @ssrc is %NULL the ssrc of @meta will be unset. + Sets @ssrc in @meta. If @ssrc is %NULL the ssrc of @meta will be unset. + - %TRUE on success, %FALSE otherwise. + %TRUE on success, %FALSE otherwise. - a #GstRTPSourceMeta + a #GstRTPSourceMeta - pointer to the SSRC + pointer to the SSRC + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Get access to the configured MTU of @payload. + + + + a #GstRTPBasePayload + + + + + Get access to the configured payload type of @payload. + + + + a #GstRTPBasePayload + + + + + Get access to the sinkpad of @payload. + + + + a #GstRTPBasePayload + + + + + Get access to the srcpad of @payload. + + + + a #GstRTPBasePayload + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Check if @pt is a dynamic payload type. + + + + a payload type + + + + + + + + + + + + + + + + + + + - The supported RTP version 2. + The supported RTP version 2. + - Attaches RTP source information to @buffer. + Attaches RTP source information to @buffer. + - the #GstRTPSourceMeta on @buffer. + the #GstRTPSourceMeta on @buffer. - a #GstBuffer + a #GstBuffer - pointer to the SSRC + pointer to the SSRC - pointer to the CSRCs + pointer to the CSRCs - number of elements in @csrc + number of elements in @csrc @@ -5036,15 +7112,22 @@ types specified with @payload_type. - Find the #GstRTPSourceMeta on @buffer. + Find the #GstRTPSourceMeta on @buffer. + - the #GstRTPSourceMeta or %NULL when there + the #GstRTPSourceMeta or %NULL when there is no such metadata on @buffer. - a #GstBuffer + a #GstBuffer @@ -5052,22 +7135,31 @@ is no such metadata on @buffer. - Open @buffer for reading or writing, depending on @flags. The resulting RTCP + Open @buffer for reading or writing, depending on @flags. The resulting RTCP buffer state is stored in @rtcp. + - a buffer with an RTCP packet + a buffer with an RTCP packet - flags for the mapping + flags for the mapping - resulting #GstRTCPBuffer + resulting #GstRTCPBuffer @@ -5075,15 +7167,22 @@ buffer state is stored in @rtcp. - Create a new buffer for constructing RTCP packets. The packet will have a + Create a new buffer for constructing RTCP packets. The packet will have a maximum size of @mtu. + - A newly allocated buffer. + A newly allocated buffer. - the maximum mtu size. + the maximum mtu size. @@ -5091,22 +7190,31 @@ maximum size of @mtu. - Create a new buffer and set the data to a copy of @len + Create a new buffer and set the data to a copy of @len bytes of @data and the size to @len. The data will be freed when the buffer is freed. + - A newly allocated buffer with a copy of @data and of size @len. + A newly allocated buffer with a copy of @data and of size @len. - data for the new buffer + data for the new buffer - the length of data + the length of data @@ -5114,22 +7222,31 @@ is freed. - Create a new buffer and set the data and size of the buffer to @data and @len + Create a new buffer and set the data and size of the buffer to @data and @len respectively. @data will be freed when the buffer is unreffed, so this function transfers ownership of @data to the new buffer. + - A newly allocated buffer with @data and of size @len. + A newly allocated buffer with @data and of size @len. - data for the new buffer + data for the new buffer - the length of data + the length of data @@ -5137,15 +7254,22 @@ function transfers ownership of @data to the new buffer. - Check if the data pointed to by @buffer is a valid RTCP packet using + Check if the data pointed to by @buffer is a valid RTCP packet using gst_rtcp_buffer_validate_data(). + - TRUE if @buffer is a valid RTCP packet. + TRUE if @buffer is a valid RTCP packet. - the buffer to validate + the buffer to validate @@ -5153,23 +7277,32 @@ gst_rtcp_buffer_validate_data(). - Check if the @data and @size point to the data of a valid compound, + Check if the @data and @size point to the data of a valid compound, non-reduced size RTCP packet. Use this function to validate a packet before using the other functions in this module. + - TRUE if the data points to a valid RTCP packet. + TRUE if the data points to a valid RTCP packet. - the data to validate + the data to validate - the length of @data to validate + the length of @data to validate @@ -5178,26 +7311,35 @@ this module. c:identifier="gst_rtcp_buffer_validate_data_reduced" moved-to="RTCPBuffer.validate_data_reduced" version="1.6"> - Check if the @data and @size point to the data of a valid RTCP packet. + Check if the @data and @size point to the data of a valid RTCP packet. Use this function to validate a packet before using the other functions in this module. This function is updated to support reduced size rtcp packets according to RFC 5506 and will validate full compound RTCP packets as well as reduced size RTCP packets. + - TRUE if the data points to a valid RTCP packet. + TRUE if the data points to a valid RTCP packet. - the data to validate + the data to validate - the length of @data to validate + the length of @data to validate @@ -5206,79 +7348,114 @@ size RTCP packets. c:identifier="gst_rtcp_buffer_validate_reduced" moved-to="RTCPBuffer.validate_reduced" version="1.6"> - Check if the data pointed to by @buffer is a valid RTCP packet using + Check if the data pointed to by @buffer is a valid RTCP packet using gst_rtcp_buffer_validate_reduced(). + - TRUE if @buffer is a valid RTCP packet. + TRUE if @buffer is a valid RTCP packet. - the buffer to validate + the buffer to validate - Converts an NTP time to UNIX nanoseconds. @ntptime can typically be + Converts an NTP time to UNIX nanoseconds. @ntptime can typically be the NTP time of an SR RTCP message and contains, in the upper 32 bits, the number of seconds since 1900 and, in the lower 32 bits, the fractional seconds. The resulting value will be the number of nanoseconds since 1970. + - the UNIX time for @ntptime in nanoseconds. + the UNIX time for @ntptime in nanoseconds. - an NTP timestamp + an NTP timestamp - Convert @name into a @GstRTCPSDESType. @name is typically a key in a + Convert @name into a @GstRTCPSDESType. @name is typically a key in a #GstStructure containing SDES items. + - the #GstRTCPSDESType for @name or #GST_RTCP_SDES_PRIV when @name + the #GstRTCPSDESType for @name or #GST_RTCP_SDES_PRIV when @name is a private sdes item. - a SDES name + a SDES name - Converts @type to the string equivalent. The string is typically used as a + Converts @type to the string equivalent. The string is typically used as a key in a #GstStructure containing SDES items. + - the string equivalent of @type + the string equivalent of @type - a #GstRTCPSDESType + a #GstRTCPSDESType - Converts a UNIX timestamp in nanoseconds to an NTP time. The caller should + Converts a UNIX timestamp in nanoseconds to an NTP time. The caller should pass a value with nanoseconds since 1970. The NTP time will, in the upper 32 bits, contain the number of seconds since 1900 and, in the lower 32 bits, the fractional seconds. The resulting value can be used as an ntptime for constructing SR RTCP packets. + - the NTP time for @unixtime. + the NTP time for @unixtime. - an UNIX timestamp in nanoseconds + an UNIX timestamp in nanoseconds @@ -5286,29 +7463,40 @@ for constructing SR RTCP packets. - Allocate enough data in @buffer to hold an RTP packet with @csrc_count CSRCs, + Allocate enough data in @buffer to hold an RTP packet with @csrc_count CSRCs, a payload length of @payload_len and padding of @pad_len. @buffer must be writable and all previous memory in @buffer will be freed. If @pad_len is >0, the padding bit will be set. All other RTP header fields will be set to 0/FALSE. + - a #GstBuffer + a #GstBuffer - the length of the payload + the length of the payload - the amount of padding + the amount of padding - the number of CSRC entries + the number of CSRC entries @@ -5316,15 +7504,22 @@ will be set to 0/FALSE. - Calculate the header length of an RTP packet with @csrc_count CSRC entries. + Calculate the header length of an RTP packet with @csrc_count CSRC entries. An RTP packet can have at most 15 CSRC entries. + - The length of an RTP header with @csrc_count CSRC entries. + The length of an RTP header with @csrc_count CSRC entries. - the number of CSRC entries + the number of CSRC entries @@ -5332,23 +7527,34 @@ An RTP packet can have at most 15 CSRC entries. - Calculate the total length of an RTP packet with a payload size of @payload_len, + Calculate the total length of an RTP packet with a payload size of @payload_len, a padding of @pad_len and a @csrc_count CSRC entries. + - The total length of an RTP header with given parameters. + The total length of an RTP header with given parameters. - the length of the payload + the length of the payload - the amount of padding + the amount of padding - the number of CSRC entries + the number of CSRC entries @@ -5356,23 +7562,34 @@ a padding of @pad_len and a @csrc_count CSRC entries. - Calculate the length of the payload of an RTP packet with size @packet_len, + Calculate the length of the payload of an RTP packet with size @packet_len, a padding of @pad_len and a @csrc_count CSRC entries. + - The length of the payload of an RTP packet with given parameters. + The length of the payload of an RTP packet with given parameters. - the length of the total RTP packet + the length of the total RTP packet - the amount of padding + the amount of padding - the number of CSRC entries + the number of CSRC entries @@ -5380,20 +7597,29 @@ a padding of @pad_len and a @csrc_count CSRC entries. - Compare two sequence numbers, taking care of wraparounds. This function + Compare two sequence numbers, taking care of wraparounds. This function returns the difference between @seqnum1 and @seqnum2. + - a negative value if @seqnum1 is bigger than @seqnum2, 0 if they + a negative value if @seqnum1 is bigger than @seqnum2, 0 if they are equal or a positive value if @seqnum1 is smaller than @segnum2. - a sequence number + a sequence number - a sequence number + a sequence number @@ -5401,15 +7627,22 @@ are equal or a positive value if @seqnum1 is smaller than @segnum2. - Get the default clock-rate for the static payload type @payload_type. + Get the default clock-rate for the static payload type @payload_type. + - the default clock rate or -1 if the payload type is not static or + the default clock rate or -1 if the payload type is not static or the clock-rate is undefined. - the static payload type + the static payload type @@ -5417,7 +7650,9 @@ the clock-rate is undefined. - Update the @exttimestamp field with the extended timestamp of @timestamp + Update the @exttimestamp field with the extended timestamp of @timestamp For the first call of the method, @exttimestamp should point to a location with a value of -1. @@ -5425,8 +7660,11 @@ This function is able to handle both forward and backward timestamps taking into account: - timestamp wraparound making sure that the returned value is properly increased. - timestamp unwraparound making sure that the returned value is properly decreased. + - The extended timestamp of @timestamp or 0 if the result can't go anywhere backwards. + The extended timestamp of @timestamp or 0 if the result can't go anywhere backwards. @@ -5434,11 +7672,15 @@ into account: direction="inout" caller-allocates="0" transfer-ownership="full"> - a previous extended timestamp + a previous extended timestamp - a new timestamp + a new timestamp @@ -5446,25 +7688,36 @@ into account: - Map the contents of @buffer into @rtp. + Map the contents of @buffer into @rtp. + - %TRUE if @buffer could be mapped. + %TRUE if @buffer could be mapped. - a #GstBuffer + a #GstBuffer - #GstMapFlags + #GstMapFlags - a #GstRTPBuffer + a #GstRTPBuffer @@ -5472,25 +7725,36 @@ into account: - Allocate a new #GstBuffer with enough data to hold an RTP packet with + Allocate a new #GstBuffer with enough data to hold an RTP packet with @csrc_count CSRCs, a payload length of @payload_len and padding of @pad_len. All other RTP header fields will be set to 0/FALSE. + - A newly allocated buffer that can hold an RTP packet with given + A newly allocated buffer that can hold an RTP packet with given parameters. - the length of the payload + the length of the payload - the amount of padding + the amount of padding - the number of CSRC entries + the number of CSRC entries @@ -5498,25 +7762,36 @@ parameters. - Create a new #GstBuffer that can hold an RTP packet that is exactly + Create a new #GstBuffer that can hold an RTP packet that is exactly @packet_len long. The length of the payload depends on @pad_len and @csrc_count and can be calculated with gst_rtp_buffer_calc_payload_len(). All RTP header fields will be set to 0/FALSE. + - A newly allocated buffer that can hold an RTP packet of @packet_len. + A newly allocated buffer that can hold an RTP packet of @packet_len. - the total length of the packet + the total length of the packet - the amount of padding + the amount of padding - the number of CSRC entries + the number of CSRC entries @@ -5524,23 +7799,32 @@ All RTP header fields will be set to 0/FALSE. - Create a new buffer and set the data to a copy of @len + Create a new buffer and set the data to a copy of @len bytes of @data and the size to @len. The data will be freed when the buffer is freed. + - A newly allocated buffer with a copy of @data and of size @len. + A newly allocated buffer with a copy of @data and of size @len. - data for the new + data for the new buffer - the length of data + the length of data @@ -5548,89 +7832,125 @@ is freed. - Create a new buffer and set the data and size of the buffer to @data and @len + Create a new buffer and set the data and size of the buffer to @data and @len respectively. @data will be freed when the buffer is unreffed, so this function transfers ownership of @data to the new buffer. + - A newly allocated buffer with @data and of size @len. + A newly allocated buffer with @data and of size @len. - + data for the new buffer - the length of data + the length of data - Reads the NTP time from the @size NTP-56 extension bytes in @data and store the + Reads the NTP time from the @size NTP-56 extension bytes in @data and store the result in @ntptime. + - %TRUE on success. + %TRUE on success. - the data to read from + the data to read from - the size of @data + the size of @data - the result NTP time + the result NTP time - Reads the NTP time from the @size NTP-64 extension bytes in @data and store the + Reads the NTP time from the @size NTP-64 extension bytes in @data and store the result in @ntptime. + - %TRUE on success. + %TRUE on success. - the data to read from + the data to read from - the size of @data + the size of @data - the result NTP time + the result NTP time - Writes the NTP time in @ntptime to the format required for the NTP-56 header + Writes the NTP time in @ntptime to the format required for the NTP-56 header extension. @data must hold at least #GST_RTP_HDREXT_NTP_56_SIZE bytes. + - %TRUE on success. + %TRUE on success. @@ -5638,25 +7958,36 @@ extension. @data must hold at least #GST_RTP_HDREXT_NTP_56_SIZE bytes. transfer-ownership="none" nullable="1" allow-none="1"> - the data to write to + the data to write to - the size of @data + the size of @data - the NTP time + the NTP time - Writes the NTP time in @ntptime to the format required for the NTP-64 header + Writes the NTP time in @ntptime to the format required for the NTP-64 header extension. @data must hold at least #GST_RTP_HDREXT_NTP_64_SIZE bytes. + - %TRUE on success. + %TRUE on success. @@ -5664,15 +7995,21 @@ extension. @data must hold at least #GST_RTP_HDREXT_NTP_64_SIZE bytes. transfer-ownership="none" nullable="1" allow-none="1"> - the data to write to + the data to write to - the size of @data + the size of @data - the NTP time + the NTP time @@ -5680,22 +8017,31 @@ extension. @data must hold at least #GST_RTP_HDREXT_NTP_64_SIZE bytes. - Get the #GstRTPPayloadInfo for @media and @encoding_name. This function is + Get the #GstRTPPayloadInfo for @media and @encoding_name. This function is mostly used to get the default clock-rate and bandwidth for dynamic payload types specified with @media and @encoding name. The search for @encoding_name will be performed in a case insensitve way. + - a #GstRTPPayloadInfo or NULL when no info could be found. + a #GstRTPPayloadInfo or NULL when no info could be found. - the media to find + the media to find - the encoding name to find + the encoding name to find @@ -5703,22 +8049,30 @@ The search for @encoding_name will be performed in a case insensitve way. - Get the #GstRTPPayloadInfo for @payload_type. This function is + Get the #GstRTPPayloadInfo for @payload_type. This function is mostly used to get the default clock-rate and bandwidth for static payload types specified with @payload_type. + - a #GstRTPPayloadInfo or NULL when no info could be found. + a #GstRTPPayloadInfo or NULL when no info could be found. - the payload_type to find + the payload_type to find + @@ -5726,6 +8080,7 @@ types specified with @payload_type. + diff --git a/gir-files/GstRtsp-1.0.gir b/gir-files/GstRtsp-1.0.gir index dda99da82..8fe1ef50b 100644 --- a/gir-files/GstRtsp-1.0.gir +++ b/gir-files/GstRtsp-1.0.gir @@ -17,22 +17,40 @@ and/or use gtk-doc annotations. --> shared-library="libgstrtsp-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> + + + + + + + - RTSP Authentication credentials + RTSP Authentication credentials + - a #GstRTSPAuthMethod + a #GstRTSPAuthMethod - A NULL-terminated array of #GstRTSPAuthParam + A NULL-terminated array of #GstRTSPAuthParam - The authorization for the basic schem + The authorization for the basic schem @@ -40,24 +58,32 @@ and/or use gtk-doc annotations. --> glib:type-name="GstRTSPAuthMethod" glib:get-type="gst_rtsp_auth_method_get_type" c:type="GstRTSPAuthMethod"> - Authentication methods, ordered by strength + Authentication methods, ordered by strength - no authentication + no authentication - basic authentication + basic authentication - digest authentication + digest authentication glib:type-name="GstRTSPAuthParam" glib:get-type="gst_rtsp_auth_param_get_type" c:symbol-prefix="rtsp_auth_param"> - RTSP Authentication parameter + RTSP Authentication parameter + - The name of the parameter + The name of the parameter - The value of the parameter + The value of the parameter + @@ -85,6 +119,7 @@ and/or use gtk-doc annotations. --> + @@ -96,53 +131,77 @@ and/or use gtk-doc annotations. --> - This object manages the RTSP connection to the server. It provides function + This object manages the RTSP connection to the server. It provides function to receive and send bytes and messages. + - Clear the list of authentication directives stored in @conn. + Clear the list of authentication directives stored in @conn. + - a #GstRTSPConnection + a #GstRTSPConnection - Close the connected @conn. After this call, the connection is in the same + Close the connected @conn. After this call, the connection is in the same state as when it was first created. + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPConnection + a #GstRTSPConnection - Attempt to connect to the url of @conn made with + Attempt to connect to the url of @conn made with gst_rtsp_connection_create(). If @timeout is %NULL this function can block forever. If @timeout contains a valid timeout, this function will return #GST_RTSP_ETIMEOUT after the timeout expired. This function can be cancelled with gst_rtsp_connection_flush(). + - #GST_RTSP_OK when a connection could be made. + #GST_RTSP_OK when a connection could be made. - a #GstRTSPConnection + a #GstRTSPConnection - a #GTimeVal timeout + a #GTimeVal timeout @@ -150,34 +209,47 @@ This function can be cancelled with gst_rtsp_connection_flush(). - Attempt to connect to the url of @conn made with + Attempt to connect to the url of @conn made with gst_rtsp_connection_create(). If @timeout is %NULL this function can block forever. If @timeout contains a valid timeout, this function will return #GST_RTSP_ETIMEOUT after the timeout expired. If @conn is set to tunneled, @response will contain a response to the tunneling request messages. This function can be cancelled with gst_rtsp_connection_flush(). + - #GST_RTSP_OK when a connection could be made. + #GST_RTSP_OK when a connection could be made. - a #GstRTSPConnection + a #GstRTSPConnection - a #GTimeVal timeout + a #GTimeVal timeout - a #GstRTSPMessage + a #GstRTSPMessage - If @conn received the first tunnel connection and @conn2 received + If @conn received the first tunnel connection and @conn2 received the second tunnel connection, link the two connections together so that @conn manages the tunneled connection. @@ -186,92 +258,134 @@ gst_rtsp_connection_free(). If @conn2 is %NULL then only the base64 decoding context will be setup for @conn. + - return GST_RTSP_OK on success. + return GST_RTSP_OK on success. - a #GstRTSPConnection + a #GstRTSPConnection - a #GstRTSPConnection or %NULL + a #GstRTSPConnection or %NULL - Start or stop the flushing action on @conn. When flushing, all current + Start or stop the flushing action on @conn. When flushing, all current and future actions on @conn will return #GST_RTSP_EINTR until the connection is set to non-flushing mode again. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPConnection + a #GstRTSPConnection - start or stop the flush + start or stop the flush - Close and free @conn. + Close and free @conn. + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPConnection + a #GstRTSPConnection - Retrieve the IP address of the other end of @conn. + Retrieve the IP address of the other end of @conn. + - The IP address as a string. this value remains valid until the + The IP address as a string. this value remains valid until the connection is closed. - a #GstRTSPConnection + a #GstRTSPConnection - Get the file descriptor for reading. + Get the file descriptor for reading. + - the file descriptor used for reading or %NULL on + the file descriptor used for reading or %NULL on error. The file descriptor remains valid until the connection is closed. - a #GstRTSPConnection + a #GstRTSPConnection + - %TRUE if the #GstRTSPConnection remembers the session id in the + %TRUE if the #GstRTSPConnection remembers the session id in the last response to set it on any further request. - a #GstRTSPConnection + a #GstRTSPConnection @@ -280,7 +394,9 @@ last response to set it on any further request. c:identifier="gst_rtsp_connection_get_tls" version="1.2" throws="1"> - Get the TLS connection of @conn. + Get the TLS connection of @conn. For client side this will return the #GTlsClientConnection when connected over TLS. @@ -288,13 +404,18 @@ over TLS. For server side connections, this function will create a GTlsServerConnection when called the first time and will return that same connection on subsequent calls. The server is then responsible for configuring the TLS connection. + - the TLS connection for @conn. + the TLS connection for @conn. - a #GstRTSPConnection + a #GstRTSPConnection @@ -302,18 +423,25 @@ calls. The server is then responsible for configuring the TLS connection. - Gets the anchor certificate authorities database that will be used + Gets the anchor certificate authorities database that will be used after a server certificate can't be verified with the default certificate database. + - the anchor certificate authorities database, or NULL if no + the anchor certificate authorities database, or NULL if no database has been previously set. Use g_object_unref() to release the certificate database. - a #GstRTSPConnection + a #GstRTSPConnection @@ -321,17 +449,24 @@ certificate database. - Gets a #GTlsInteraction object to be used when the connection or certificate + Gets a #GTlsInteraction object to be used when the connection or certificate database need to interact with the user. This will be used to prompt the user for passwords where necessary. + - a reference on the #GTlsInteraction. Use + a reference on the #GTlsInteraction. Use g_object_unref() to release. - a #GstRTSPConnection + a #GstRTSPConnection @@ -339,96 +474,142 @@ g_object_unref() to release. - Gets the TLS validation flags used to verify the peer certificate + Gets the TLS validation flags used to verify the peer certificate when a TLS connection is established. + - the validationg flags. + the validationg flags. - a #GstRTSPConnection + a #GstRTSPConnection - Get the tunnel session id the connection. + Get the tunnel session id the connection. + - returns a non-empty string if @conn is being tunneled over HTTP. + returns a non-empty string if @conn is being tunneled over HTTP. - a #GstRTSPConnection + a #GstRTSPConnection - Retrieve the URL of the other end of @conn. + Retrieve the URL of the other end of @conn. + - The URL. This value remains valid until the + The URL. This value remains valid until the connection is freed. - a #GstRTSPConnection + a #GstRTSPConnection - Get the file descriptor for writing. + Get the file descriptor for writing. + - the file descriptor used for writing or NULL on + the file descriptor used for writing or NULL on error. The file descriptor remains valid until the connection is closed. - a #GstRTSPConnection + a #GstRTSPConnection - Get the tunneling state of the connection. + Get the tunneling state of the connection. + - if @conn is using HTTP tunneling. + if @conn is using HTTP tunneling. - a #GstRTSPConnection + a #GstRTSPConnection - Calculate the next timeout for @conn, storing the result in @timeout. + Calculate the next timeout for @conn, storing the result in @timeout. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPConnection + a #GstRTSPConnection - a timeout + a timeout - Wait up to the specified @timeout for the connection to become available for + Wait up to the specified @timeout for the connection to become available for at least one of the operations specified in @events. When the function returns with #GST_RTSP_OK, @revents will contain a bitmask of available operations on @conn. @@ -436,118 +617,171 @@ with #GST_RTSP_OK, @revents will contain a bitmask of available operations on @timeout can be %NULL, in which case this function might block forever. This function can be cancelled with gst_rtsp_connection_flush(). + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPConnection + a #GstRTSPConnection - a bitmask of #GstRTSPEvent flags to check + a bitmask of #GstRTSPEvent flags to check - location for result flags + location for result flags - a timeout + a timeout - Attempt to read @size bytes into @data from the connected @conn, blocking up to + Attempt to read @size bytes into @data from the connected @conn, blocking up to the specified @timeout. @timeout can be %NULL, in which case this function might block forever. This function can be cancelled with gst_rtsp_connection_flush(). + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPConnection + a #GstRTSPConnection - the data to read + the data to read - the size of @data + the size of @data - a timeout value or %NULL + a timeout value or %NULL - Attempt to read into @message from the connected @conn, blocking up to + Attempt to read into @message from the connected @conn, blocking up to the specified @timeout. @timeout can be %NULL, in which case this function might block forever. This function can be cancelled with gst_rtsp_connection_flush(). + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPConnection + a #GstRTSPConnection - the message to read + the message to read - a timeout value or %NULL + a timeout value or %NULL - Reset the timeout of @conn. + Reset the timeout of @conn. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPConnection + a #GstRTSPConnection - Attempt to send @message to the connected @conn, blocking up to + Attempt to send @message to the connected @conn, blocking up to the specified @timeout. @timeout can be %NULL, in which case this function might block forever. This function can be cancelled with gst_rtsp_connection_flush(). + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPConnection + a #GstRTSPConnection - the message to send + the message to send - a timeout value or %NULL + a timeout value or %NULL @@ -555,32 +789,45 @@ This function can be cancelled with gst_rtsp_connection_flush(). - Attempt to send @messages to the connected @conn, blocking up to + Attempt to send @messages to the connected @conn, blocking up to the specified @timeout. @timeout can be %NULL, in which case this function might block forever. This function can be cancelled with gst_rtsp_connection_flush(). + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPConnection + a #GstRTSPConnection - the messages to send + the messages to send - the number of messages to send + the number of messages to send - a timeout value or %NULL + a timeout value or %NULL @@ -588,18 +835,23 @@ This function can be cancelled with gst_rtsp_connection_flush(). - Sets a custom accept-certificate function for checking certificates for + Sets a custom accept-certificate function for checking certificates for validity. This will directly map to #GTlsConnection 's "accept-certificate" signal and be performed after the default checks of #GstRTSPConnection (checking against the #GTlsDatabase with the given #GTlsCertificateFlags) have failed. If no #GTlsDatabase is set on this connection, only @func will be called. + - a #GstRTSPConnection + a #GstRTSPConnection scope="notified" closure="1" destroy="2"> - a #GstRTSPConnectionAcceptCertificateFunc to check certificates + a #GstRTSPConnectionAcceptCertificateFunc to check certificates @@ -615,158 +869,225 @@ be called. transfer-ownership="none" nullable="1" allow-none="1"> - User data passed to @func + User data passed to @func - #GDestroyNotify for @user_data + #GDestroyNotify for @user_data - Configure @conn for authentication mode @method with @user and @pass as the + Configure @conn for authentication mode @method with @user and @pass as the user and password respectively. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPConnection + a #GstRTSPConnection - authentication method + authentication method - the user + the user - the password + the password - Setup @conn with authentication directives. This is not necesary for + Setup @conn with authentication directives. This is not necesary for methods #GST_RTSP_AUTH_NONE and #GST_RTSP_AUTH_BASIC. For #GST_RTSP_AUTH_DIGEST, directives should be taken from the digest challenge in the WWW-Authenticate response header and can include realm, domain, nonce, opaque, stale, algorithm, qop as per RFC2617. + - a #GstRTSPConnection + a #GstRTSPConnection - authentication directive + authentication directive - value + value - By setting the HTTP mode to %TRUE the message parsing will support HTTP + By setting the HTTP mode to %TRUE the message parsing will support HTTP messages in addition to the RTSP messages. It will also disable the automatic handling of setting up an HTTP tunnel. + - a #GstRTSPConnection + a #GstRTSPConnection - %TRUE to enable manual HTTP mode + %TRUE to enable manual HTTP mode - Set the IP address of the server. + Set the IP address of the server. + - a #GstRTSPConnection + a #GstRTSPConnection - an ip address + an ip address - Set the proxy host and port. + Set the proxy host and port. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPConnection + a #GstRTSPConnection - the proxy host + the proxy host - the proxy port + the proxy port - Configure @conn to use the specified DSCP value. + Configure @conn to use the specified DSCP value. + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPConnection + a #GstRTSPConnection - DSCP value + DSCP value - Sets if the #GstRTSPConnection should remember the session id from the last + Sets if the #GstRTSPConnection should remember the session id from the last response received and force it onto any further requests. The default value is %TRUE + - a #GstRTSPConnection + a #GstRTSPConnection - %TRUE if the connection should remember the session id + %TRUE if the connection should remember the session id @@ -774,19 +1095,26 @@ The default value is %TRUE - Sets the anchor certificate authorities database. This certificate + Sets the anchor certificate authorities database. This certificate database will be used to verify the server's certificate in case it can't be verified with the default certificate database first. + - a #GstRTSPConnection + a #GstRTSPConnection - a #GTlsDatabase + a #GTlsDatabase @@ -794,19 +1122,26 @@ can't be verified with the default certificate database first. - Sets a #GTlsInteraction object to be used when the connection or certificate + Sets a #GTlsInteraction object to be used when the connection or certificate database need to interact with the user. This will be used to prompt the user for passwords where necessary. + - a #GstRTSPConnection + a #GstRTSPConnection - a #GTlsInteraction + a #GTlsInteraction @@ -814,20 +1149,29 @@ user for passwords where necessary. - Sets the TLS validation flags to be used to verify the peer + Sets the TLS validation flags to be used to verify the peer certificate when a TLS connection is established. + - TRUE if the validation flags are set correctly, or FALSE if + TRUE if the validation flags are set correctly, or FALSE if @conn is NULL or is not a TLS connection. - a #GstRTSPConnection + a #GstRTSPConnection - the validation flags. + the validation flags. @@ -835,134 +1179,189 @@ certificate when a TLS connection is established. - Set the HTTP tunneling state of the connection. This must be configured before + Set the HTTP tunneling state of the connection. This must be configured before the @conn is connected. + - a #GstRTSPConnection + a #GstRTSPConnection - the new state + the new state - Attempt to write @size bytes of @data to the connected @conn, blocking up to + Attempt to write @size bytes of @data to the connected @conn, blocking up to the specified @timeout. @timeout can be %NULL, in which case this function might block forever. This function can be cancelled with gst_rtsp_connection_flush(). + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPConnection + a #GstRTSPConnection - the data to write + the data to write - the size of @data + the size of @data - a timeout value or %NULL + a timeout value or %NULL - Accept a new connection on @socket and create a new #GstRTSPConnection for + Accept a new connection on @socket and create a new #GstRTSPConnection for handling communication on new socket. + - #GST_RTSP_OK when @conn contains a valid connection. + #GST_RTSP_OK when @conn contains a valid connection. - a socket + a socket - storage for a #GstRTSPConnection + storage for a #GstRTSPConnection - a #GCancellable to cancel the operation + a #GCancellable to cancel the operation - Create a newly allocated #GstRTSPConnection from @url and store it in @conn. + Create a newly allocated #GstRTSPConnection from @url and store it in @conn. The connection will not yet attempt to connect to @url, use gst_rtsp_connection_connect(). A copy of @url will be made. + - #GST_RTSP_OK when @conn contains a valid connection. + #GST_RTSP_OK when @conn contains a valid connection. - a #GstRTSPUrl + a #GstRTSPUrl - storage for a #GstRTSPConnection + storage for a #GstRTSPConnection - Create a new #GstRTSPConnection for handling communication on the existing + Create a new #GstRTSPConnection for handling communication on the existing socket @socket. The @initial_buffer contains zero terminated data already read from @socket which should be used before starting to read new data. + - #GST_RTSP_OK when @conn contains a valid connection. + #GST_RTSP_OK when @conn contains a valid connection. - a #GSocket + a #GSocket - the IP address of the other end + the IP address of the other end - the port used by the other end + the port used by the other end - data already read from @fd + data already read from @fd - storage for a #GstRTSPConnection + storage for a #GstRTSPConnection @@ -970,6 +1369,7 @@ read from @socket which should be used before starting to read new data. + @@ -996,18 +1396,24 @@ read from @socket which should be used before starting to read new data. glib:type-name="GstRTSPEvent" glib:get-type="gst_rtsp_event_get_type" c:type="GstRTSPEvent"> - The possible events for the connection. + The possible events for the connection. - connection is readable + connection is readable - connection is writable + connection is writable glib:type-name="GstRTSPExtension" glib:get-type="gst_rtsp_extension_get_type" glib:type-struct="RTSPExtensionInterface"> - This interface is implemented e.g. by the Windows Media Streaming RTSP + This interface is implemented e.g. by the Windows Media Streaming RTSP exentension (rtspwms) and the RealMedia RTSP extension (rtspreal). + + @@ -1035,6 +1445,7 @@ read from @socket which should be used before starting to read new data. + @@ -1048,6 +1459,7 @@ read from @socket which should be used before starting to read new data. + @@ -1061,6 +1473,7 @@ read from @socket which should be used before starting to read new data. + @@ -1074,6 +1487,7 @@ read from @socket which should be used before starting to read new data. + @@ -1090,6 +1504,7 @@ read from @socket which should be used before starting to read new data. + @@ -1106,6 +1521,7 @@ read from @socket which should be used before starting to read new data. + @@ -1119,6 +1535,7 @@ read from @socket which should be used before starting to read new data. + @@ -1135,6 +1552,7 @@ read from @socket which should be used before starting to read new data. + @@ -1148,6 +1566,7 @@ read from @socket which should be used before starting to read new data. + @@ -1161,6 +1580,7 @@ read from @socket which should be used before starting to read new data. + @@ -1177,6 +1597,7 @@ read from @socket which should be used before starting to read new data. + @@ -1191,6 +1612,7 @@ read from @socket which should be used before starting to read new data. + @@ -1205,6 +1627,7 @@ read from @socket which should be used before starting to read new data. + @@ -1219,6 +1642,7 @@ read from @socket which should be used before starting to read new data. + @@ -1235,6 +1659,7 @@ read from @socket which should be used before starting to read new data. + @@ -1252,6 +1677,7 @@ read from @socket which should be used before starting to read new data. + @@ -1265,6 +1691,7 @@ read from @socket which should be used before starting to read new data. + @@ -1281,6 +1708,7 @@ read from @socket which should be used before starting to read new data. + @@ -1295,6 +1723,7 @@ read from @socket which should be used before starting to read new data. + @@ -1330,12 +1759,16 @@ read from @socket which should be used before starting to read new data. - An interface representing RTSP extensions. + An interface representing RTSP extensions. + + @@ -1351,6 +1784,7 @@ read from @socket which should be used before starting to read new data. + @@ -1366,6 +1800,7 @@ read from @socket which should be used before starting to read new data. + @@ -1384,6 +1819,7 @@ read from @socket which should be used before starting to read new data. + @@ -1402,6 +1838,7 @@ read from @socket which should be used before starting to read new data. + @@ -1417,6 +1854,7 @@ read from @socket which should be used before starting to read new data. + @@ -1432,6 +1870,7 @@ read from @socket which should be used before starting to read new data. + @@ -1450,6 +1889,7 @@ read from @socket which should be used before starting to read new data. + @@ -1465,6 +1905,7 @@ read from @socket which should be used before starting to read new data. + @@ -1483,6 +1924,7 @@ read from @socket which should be used before starting to read new data. + @@ -1497,7 +1939,7 @@ read from @socket which should be used before starting to read new data. - + @@ -1506,31 +1948,41 @@ read from @socket which should be used before starting to read new data. glib:type-name="GstRTSPFamily" glib:get-type="gst_rtsp_family_get_type" c:type="GstRTSPFamily"> - The possible network families. + The possible network families. - unknown network family + unknown network family - internet + internet - internet V6 + internet V6 - Enumeration of rtsp header fields + Enumeration of rtsp header fields glib:type-name="GstRTSPLowerTrans" glib:get-type="gst_rtsp_lower_trans_get_type" c:type="GstRTSPLowerTrans"> - The different transport methods. + The different transport methods. - invalid transport flag + invalid transport flag - stream data over UDP + stream data over UDP - stream data over UDP multicast + stream data over UDP multicast - stream data over TCP + stream data over TCP - stream data tunneled over HTTP. + stream data tunneled over HTTP. - encrypt TCP and HTTP with TLS + encrypt TCP and HTTP with TLS glib:type-name="GstRTSPMessage" glib:get-type="gst_rtsp_msg_get_type" c:symbol-prefix="rtsp_msg"> - Provides methods for creating and parsing request, response and data messages. + Provides methods for creating and parsing request, response and data messages. + - the message type + the message type + + @@ -2047,6 +2520,7 @@ read from @socket which should be used before starting to read new data. + @@ -2058,6 +2532,7 @@ read from @socket which should be used before starting to read new data. + @@ -2078,28 +2553,39 @@ read from @socket which should be used before starting to read new data. - + - Add a header with key @field and @value to @msg. This function takes a copy + Add a header with key @field and @value to @msg. This function takes a copy of @value. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - a #GstRTSPHeaderField + a #GstRTSPHeaderField - the value of the header + the value of the header @@ -2107,114 +2593,166 @@ of @value. - Add a header with key @header and @value to @msg. This function takes a copy + Add a header with key @header and @value to @msg. This function takes a copy of @value. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - header string + header string - the value of the header + the value of the header - Append the currently configured headers in @msg to the #GString @str suitable + Append the currently configured headers in @msg to the #GString @str suitable for transmission. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage - a string + a string - Allocate a new copy of @msg and store the result in @copy. The value in + Allocate a new copy of @msg and store the result in @copy. The value in @copy should be release with gst_rtsp_message_free function. + - a #GstRTSPResult + a #GstRTSPResult - a #GstRTSPMessage + a #GstRTSPMessage - pointer to new #GstRTSPMessage + pointer to new #GstRTSPMessage - Dump the contents of @msg to stdout. + Dump the contents of @msg to stdout. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage - Free the memory used by @msg. + Free the memory used by @msg. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - Get the body of @msg. @data remains valid for as long as @msg is valid and + Get the body of @msg. @data remains valid for as long as @msg is valid and unchanged. If the message body was set as a #GstBuffer before this will cause the data to be copied and stored in the message. The #GstBuffer will no longer be kept in the message. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage - location for the data + location for the data @@ -2223,7 +2761,9 @@ kept in the message. direction="out" caller-allocates="0" transfer-ownership="full"> - location for the size of @data + location for the size of @data @@ -2231,56 +2771,78 @@ kept in the message. - Get the body of @msg. @buffer remains valid for as long as @msg is valid and + Get the body of @msg. @buffer remains valid for as long as @msg is valid and unchanged. If body data was set from raw memory instead of a #GstBuffer this function will always return %NULL. The caller can check if there is a body buffer by calling gst_rtsp_message_has_body_buffer(). + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage - location for the buffer + location for the buffer - Get the @indx header value with key @field from @msg. The result in @value + Get the @indx header value with key @field from @msg. The result in @value stays valid as long as it remains present in @msg. + - #GST_RTSP_OK when @field was found, #GST_RTSP_ENOTIMPL if the key + #GST_RTSP_OK when @field was found, #GST_RTSP_ENOTIMPL if the key was not found. - a #GstRTSPMessage + a #GstRTSPMessage - a #GstRTSPHeaderField + a #GstRTSPHeaderField - pointer to hold the result + pointer to hold the result - the index of the header + the index of the header @@ -2288,44 +2850,64 @@ was not found. - Get the @index header value with key @header from @msg. The result in @value + Get the @index header value with key @header from @msg. The result in @value stays valid as long as it remains present in @msg. + - #GST_RTSP_OK when @field was found, #GST_RTSP_ENOTIMPL if the key + #GST_RTSP_OK when @field was found, #GST_RTSP_ENOTIMPL if the key was not found. - a #GstRTSPMessage + a #GstRTSPMessage - a #GstRTSPHeaderField + a #GstRTSPHeaderField - pointer to hold the result + pointer to hold the result - the index of the header + the index of the header - Get the message type of @msg. + Get the message type of @msg. + - the message type. + the message type. - a #GstRTSPMessage + a #GstRTSPMessage @@ -2333,105 +2915,152 @@ was not found. - Checks if @msg has a body and the body is stored as #GstBuffer. + Checks if @msg has a body and the body is stored as #GstBuffer. + - %TRUE if @msg has a body and it's stored as #GstBuffer, %FALSE + %TRUE if @msg has a body and it's stored as #GstBuffer, %FALSE otherwise. - a #GstRTSPMessage + a #GstRTSPMessage - Initialize @msg. This function is mostly used when @msg is allocated on the + Initialize @msg. This function is mostly used when @msg is allocated on the stack. The reverse operation of this is gst_rtsp_message_unset(). + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - Initialize a new data #GstRTSPMessage for @channel. + Initialize a new data #GstRTSPMessage for @channel. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - a channel + a channel - Initialize @msg as a request message with @method and @uri. To clear @msg + Initialize @msg as a request message with @method and @uri. To clear @msg again, use gst_rtsp_message_unset(). + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - the request method to use + the request method to use - the uri of the request + the uri of the request - Initialize @msg with @code and @reason. + Initialize @msg with @code and @reason. When @reason is %NULL, the default reason for @code will be used. When @request is not %NULL, the relevant headers will be copied to the new response message. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - the status code + the status code - the status reason or %NULL + the status reason or %NULL - the request that triggered the response or %NULL + the request that triggered the response or %NULL @@ -2439,9 +3068,14 @@ response message. - Parses the credentials given in a WWW-Authenticate or Authorization header. + Parses the credentials given in a WWW-Authenticate or Authorization header. + - + %NULL-terminated array of GstRTSPAuthCredential or %NULL. @@ -2449,49 +3083,69 @@ response message. - a #GstRTSPMessage + a #GstRTSPMessage - a #GstRTSPHeaderField + a #GstRTSPHeaderField - Parse the data message @msg and store the channel in @channel. + Parse the data message @msg and store the channel in @channel. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - location to hold the channel + location to hold the channel - Parse the request message @msg and store the values @method, @uri and + Parse the request message @msg and store the values @method, @uri and @version. The result locations can be %NULL if one is not interested in its value. @uri remains valid for as long as @msg is valid and unchanged. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - location to hold the method + location to hold the method - location to hold the uri + location to hold the uri - location to hold the version + location to hold the version - Parse the response message @msg and store the values @code, @reason and + Parse the response message @msg and store the values @code, @reason and @version. The result locations can be %NULL if one is not interested in its value. @reason remains valid for as long as @msg is valid and unchanged. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - location to hold the status code + location to hold the status code - location to hold the status reason + location to hold the status reason - location to hold the version + location to hold the version - Remove the @indx header with key @field from @msg. If @indx equals -1, all + Remove the @indx header with key @field from @msg. If @indx equals -1, all headers will be removed. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - a #GstRTSPHeaderField + a #GstRTSPHeaderField - the index of the header + the index of the header @@ -2594,47 +3278,69 @@ headers will be removed. - Remove the @index header with key @header from @msg. If @index equals -1, + Remove the @index header with key @header from @msg. If @index equals -1, all matching headers will be removed. + - a #GstRTSPResult + a #GstRTSPResult - a #GstRTSPMessage + a #GstRTSPMessage - the header string + the header string - the index of the header + the index of the header - Set the body of @msg to a copy of @data. Any existing body or body buffer + Set the body of @msg to a copy of @data. Any existing body or body buffer will be replaced by the new body. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage - the data + the data - the size of @data + the size of @data @@ -2642,40 +3348,58 @@ will be replaced by the new body. - Set the body of @msg to @buffer. Any existing body or body buffer + Set the body of @msg to @buffer. Any existing body or body buffer will be replaced by the new body. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage - a #GstBuffer + a #GstBuffer - Take the body of @msg and store it in @data and @size. After this method, + Take the body of @msg and store it in @data and @size. After this method, the body and size of @msg will be set to %NULL and 0 respectively. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage - location for the data + location for the data @@ -2684,7 +3408,9 @@ the body and size of @msg will be set to %NULL and 0 respectively. direction="out" caller-allocates="0" transfer-ownership="full"> - location for the size of @data + location for the size of @data @@ -2692,50 +3418,70 @@ the body and size of @msg will be set to %NULL and 0 respectively. - Take the body of @msg and store it in @buffer. After this method, + Take the body of @msg and store it in @buffer. After this method, the body and size of @msg will be set to %NULL and 0 respectively. If body data was set from raw memory instead of a #GstBuffer this function will always return %NULL. The caller can check if there is a body buffer by calling gst_rtsp_message_has_body_buffer(). + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage - location for the buffer + location for the buffer - Set the body of @msg to @data and @size. This method takes ownership of + Set the body of @msg to @data and @size. This method takes ownership of @data. Any existing body or body buffer will be replaced by the new body. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage - the data + the data - the size of @data + the size of @data @@ -2743,41 +3489,61 @@ calling gst_rtsp_message_has_body_buffer(). - Set the body of @msg to @buffer. This method takes ownership of @buffer. + Set the body of @msg to @buffer. This method takes ownership of @buffer. Any existing body or body buffer will be replaced by the new body. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage - a #GstBuffer + a #GstBuffer - Add a header with key @field and @value to @msg. This function takes + Add a header with key @field and @value to @msg. This function takes ownership of @value. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - a #GstRTSPHeaderField + a #GstRTSPHeaderField - the value of the header + the value of the header @@ -2785,39 +3551,57 @@ ownership of @value. - Add a header with key @header and @value to @msg. This function takes + Add a header with key @header and @value to @msg. This function takes ownership of @value, but not of @header. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPMessage + a #GstRTSPMessage - a header string + a header string - the value of the header + the value of the header - Unset the contents of @msg so that it becomes an uninitialized + Unset the contents of @msg so that it becomes an uninitialized #GstRTSPMessage again. This function is mostly used in combination with gst_rtsp_message_init_request(), gst_rtsp_message_init_response() and gst_rtsp_message_init_data() on stack allocated #GstRTSPMessage structures. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPMessage + a #GstRTSPMessage @@ -2827,100 +3611,137 @@ gst_rtsp_message_init_data() on stack allocated #GstRTSPMessage structures. - The different supported RTSP methods. + The different supported RTSP methods. - invalid method + invalid method - the DESCRIBE method + the DESCRIBE method - the ANNOUNCE method + the ANNOUNCE method - the GET_PARAMETER method + the GET_PARAMETER method - the OPTIONS method + the OPTIONS method - the PAUSE method + the PAUSE method - the PLAY method + the PLAY method - the RECORD method + the RECORD method - the REDIRECT method + the REDIRECT method - the SETUP method + the SETUP method - the SET_PARAMETER method + the SET_PARAMETER method - the TEARDOWN method + the TEARDOWN method - the GET method (HTTP). + the GET method (HTTP). - the POST method (HTTP). + the POST method (HTTP). - Convert @method to a string. + Convert @method to a string. + - a string representation of @method. + a string representation of @method. - a #GstRTSPMethod + a #GstRTSPMethod @@ -2930,118 +3751,165 @@ gst_rtsp_message_init_data() on stack allocated #GstRTSPMessage structures. - The type of a message. + The type of a message. - invalid message type + invalid message type - RTSP request message + RTSP request message - RTSP response message + RTSP response message - HTTP request message. + HTTP request message. - HTTP response message. + HTTP response message. - data message + data message - The transfer profile to use. + The transfer profile to use. - invalid profile + invalid profile - the Audio/Visual profile (RFC 3551) + the Audio/Visual profile (RFC 3551) - the secure Audio/Visual profile (RFC 3711) + the secure Audio/Visual profile (RFC 3711) - the Audio/Visual profile with feedback (RFC 4585) + the Audio/Visual profile with feedback (RFC 4585) - the secure Audio/Visual profile with feedback (RFC 5124) + the secure Audio/Visual profile with feedback (RFC 5124) - Provides helper functions to deal with time ranges. + Provides helper functions to deal with time ranges. + - minimum value of the range + minimum value of the range - maximum value of the range + maximum value of the range - Converts the range in-place between different types of units. + Converts the range in-place between different types of units. Ranges containing the special value #GST_RTSP_TIME_NOW can not be converted as these are only valid for #GST_RTSP_RANGE_NPT. + - %TRUE if the range could be converted + %TRUE if the range could be converted - a #GstRTSPTimeRange + a #GstRTSPTimeRange - the unit to convert the range into + the unit to convert the range into - Free the memory allocated by @range. + Free the memory allocated by @range. + - a #GstRTSPTimeRange + a #GstRTSPTimeRange @@ -3049,67 +3917,94 @@ converted as these are only valid for #GST_RTSP_RANGE_NPT. - Retrieve the minimum and maximum values from @range converted to + Retrieve the minimum and maximum values from @range converted to #GstClockTime in @min and @max. A value of %GST_CLOCK_TIME_NONE will be used to signal #GST_RTSP_TIME_NOW and #GST_RTSP_TIME_END for @min and @max respectively. UTC times will be converted to nanoseconds since 1900. + - %TRUE on success. + %TRUE on success. - a #GstRTSPTimeRange + a #GstRTSPTimeRange - result minimum #GstClockTime + result minimum #GstClockTime - result maximum #GstClockTime + result maximum #GstClockTime - Parse @rangestr to a #GstRTSPTimeRange. + Parse @rangestr to a #GstRTSPTimeRange. + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a range string to parse + a range string to parse - location to hold the #GstRTSPTimeRange result + location to hold the #GstRTSPTimeRange result - Convert @range into a string representation. + Convert @range into a string representation. + - The string representation of @range. g_free() after usage. + The string representation of @range. g_free() after usage. - a #GstRTSPTimeRange + a #GstRTSPTimeRange @@ -3119,196 +4014,262 @@ UTC times will be converted to nanoseconds since 1900. glib:type-name="GstRTSPRangeUnit" glib:get-type="gst_rtsp_range_unit_get_type" c:type="GstRTSPRangeUnit"> - Different possible time range units. + Different possible time range units. - SMPTE timecode + SMPTE timecode - 29.97 frames per second + 29.97 frames per second - 25 frames per second + 25 frames per second - Normal play time + Normal play time - Absolute time expressed as ISO 8601 timestamps + Absolute time expressed as ISO 8601 timestamps - Result codes from the RTSP functions. + Result codes from the RTSP functions. - no error + no error - some unspecified error occured + some unspecified error occured - invalid arguments were provided to a function + invalid arguments were provided to a function - an operation was canceled + an operation was canceled - no memory was available for the operation + no memory was available for the operation - a host resolve error occured + a host resolve error occured - function not implemented + function not implemented - a system error occured, errno contains more details + a system error occured, errno contains more details - a parsing error occured + a parsing error occured - windows networking could not start + windows networking could not start - windows networking stack has wrong version + windows networking stack has wrong version - end-of-file was reached + end-of-file was reached - a network problem occured, h_errno contains more details + a network problem occured, h_errno contains more details - the host is not an IP host + the host is not an IP host - a timeout occured + a timeout occured - the tunnel GET request has been performed + the tunnel GET request has been performed - the tunnel POST request has been performed + the tunnel POST request has been performed - last error + last error - The different RTSP states. + The different RTSP states. - invalid state + invalid state - initializing + initializing - ready for operation + ready for operation - seeking in progress + seeking in progress - playing + playing - recording + recording - Enumeration of rtsp status codes + Enumeration of rtsp status codes - A time indication. + A time indication. + - the time of the time + the time of the time - seconds when @type is GST_RTSP_TIME_SECONDS, + seconds when @type is GST_RTSP_TIME_SECONDS, GST_RTSP_TIME_UTC and GST_RTSP_TIME_FRAMES - Extra fields for a time indication. + Extra fields for a time indication. + - frames and subframes when type in GstRTSPTime is + frames and subframes when type in GstRTSPTime is GST_RTSP_TIME_FRAMES - year when type is GST_RTSP_TIME_UTC + year when type is GST_RTSP_TIME_UTC - month when type is GST_RTSP_TIME_UTC + month when type is GST_RTSP_TIME_UTC - day when type is GST_RTSP_TIME_UTC + day when type is GST_RTSP_TIME_UTC - A time range. + A time range. + - the time units used + the time units used - the minimum interval + the minimum interval - the maximum interval + the maximum interval - extra fields in the minimum interval (Since: 1.2) + extra fields in the minimum interval (Since: 1.2) - extra fields in the maximum interval (Since: 1.2) + extra fields in the maximum interval (Since: 1.2) @@ -3599,157 +4591,220 @@ UTC times will be converted to nanoseconds since 1900. glib:type-name="GstRTSPTimeType" glib:get-type="gst_rtsp_time_type_get_type" c:type="GstRTSPTimeType"> - Possible time types. + Possible time types. - seconds + seconds - now + now - end + end - frames and subframes + frames and subframes - UTC time + UTC time - The transfer mode to use. + The transfer mode to use. - invalid tansport mode + invalid tansport mode - transfer RTP data + transfer RTP data - transfer RDT (RealMedia) data + transfer RDT (RealMedia) data - Provides helper functions to deal with RTSP transport strings. + Provides helper functions to deal with RTSP transport strings. + - the transport mode + the transport mode - the tansport profile + the tansport profile - the lower transport + the lower transport - the destination ip/hostname + the destination ip/hostname - the source ip/hostname + the source ip/hostname - the number of layers + the number of layers - if play mode was selected + if play mode was selected - if record mode was selected + if record mode was selected - is append mode was selected + is append mode was selected - the interleave range + the interleave range - the time to live for multicast UDP + the time to live for multicast UDP - the port pair for multicast sessions + the port pair for multicast sessions - the client port pair for receiving data. For TCP + the client port pair for receiving data. For TCP based transports, applications can use this field to store the sender and receiver ports of the client. - the server port pair for receiving data. For TCP + the server port pair for receiving data. For TCP based transports, applications can use this field to store the sender and receiver ports of the server. - the ssrc that the sender/receiver will use + the ssrc that the sender/receiver will use - + - Convert @transport into a string that can be used to signal the transport in + Convert @transport into a string that can be used to signal the transport in an RTSP SETUP response. + - a string describing the RTSP transport or %NULL when the transport + a string describing the RTSP transport or %NULL when the transport is invalid. - a #GstRTSPTransport + a #GstRTSPTransport - Free the memory used by @transport. + Free the memory used by @transport. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPTransport + a #GstRTSPTransport @@ -3757,55 +4812,78 @@ is invalid. - Get the media type of @transport. This media type is typically + Get the media type of @transport. This media type is typically used to generate #GstCaps events. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPTransport + a #GstRTSPTransport - media type of @transport + media type of @transport - Initialize @transport so that it can be used. + Initialize @transport so that it can be used. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPTransport + a #GstRTSPTransport - Get the #GstElement that can handle the buffers transported over @trans. + Get the #GstElement that can handle the buffers transported over @trans. It is possible that there are several managers available, use @option to selected one. @manager will contain an element name or %NULL when no manager is needed/available for @trans. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPTransMode + a #GstRTSPTransMode caller-allocates="0" transfer-ownership="none" nullable="1"> - location to hold the result + location to hold the result - option index. + option index. @@ -3825,53 +4907,78 @@ needed/available for @trans. - Get the mime type of the transport mode @trans. This mime type is typically + Get the mime type of the transport mode @trans. This mime type is typically used to generate #GstCaps events. This functions only deals with the GstRTSPTransMode and only returns the mime type for #GST_RTSP_PROFILE_AVP. Use gst_rtsp_transport_get_media_type() instead. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPTransMode + a #GstRTSPTransMode - location to hold the result + location to hold the result - Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free() + Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free() after usage. + - a #GstRTSPResult. + a #GstRTSPResult. - location to hold the new #GstRTSPTransport + location to hold the new #GstRTSPTransport - Parse the RTSP transport string @str into @transport. + Parse the RTSP transport string @str into @transport. + - a #GstRTSPResult. + a #GstRTSPResult. - a transport string + a transport string - a #GstRTSPTransport + a #GstRTSPTransport @@ -3882,55 +4989,83 @@ after usage. glib:type-name="GstRTSPUrl" glib:get-type="gst_rtsp_url_get_type" c:symbol-prefix="rtsp_url"> - Provides helper functions to handle RTSP urls. + Provides helper functions to handle RTSP urls. + - the transports allowed + the transports allowed - the family + the family - the user + the user - the password + the password - the host + the host - the port + the port - the absolute path + the absolute path - additional query parameters + additional query parameters - Make a copy of @url. + Make a copy of @url. + - a copy of @url. Free with gst_rtsp_url_free () after usage. + a copy of @url. Free with gst_rtsp_url_free () after usage. - a #GstRTSPUrl + a #GstRTSPUrl - Splits the path of @url on '/' boundaries, decoding the resulting components, + Splits the path of @url on '/' boundaries, decoding the resulting components, The decoding performed by this routine is "URI decoding", as defined in RFC 3986, commonly known as percent-decoding. For example, a string "foo\%2fbar" @@ -3941,8 +5076,11 @@ unescaped to NUL, as that would prematurely terminate the string. Also note that since paths usually start with a slash, the first component will usually be the empty string. + - %NULL-terminated array of URL components. Free with + %NULL-terminated array of URL components. Free with g_strfreev() when no longer needed. @@ -3950,91 +5088,132 @@ g_strfreev() when no longer needed. - a #GstRTSPUrl + a #GstRTSPUrl - Free the memory used by @url. + Free the memory used by @url. + - a #GstRTSPUrl + a #GstRTSPUrl - Get the port number of @url. + Get the port number of @url. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPUrl + a #GstRTSPUrl - location to hold the port + location to hold the port - Get a newly allocated string describing the request URI for @url. + Get a newly allocated string describing the request URI for @url. + - a string with the request URI. g_free() after usage. + a string with the request URI. g_free() after usage. - a #GstRTSPUrl + a #GstRTSPUrl - Set the port number in @url to @port. + Set the port number in @url to @port. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPUrl + a #GstRTSPUrl - the port + the port - Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage + Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage with gst_rtsp_url_free(). + - a #GstRTSPResult. + a #GstRTSPResult. - the url string to parse + the url string to parse - location to hold the result. + location to hold the result. @@ -4044,61 +5223,90 @@ with gst_rtsp_url_free(). glib:type-name="GstRTSPVersion" glib:get-type="gst_rtsp_version_get_type" c:type="GstRTSPVersion"> - The supported RTSP versions. + The supported RTSP versions. - unknown/invalid version + unknown/invalid version - version 1.0 + version 1.0 - version 1.1. + version 1.1. - version 2.0. + version 2.0. - Convert @version to a string. + Convert @version to a string. + - a string representation of @version. + a string representation of @version. - a #GstRTSPVersion + a #GstRTSPVersion - Opaque RTSP watch object that can be used for asynchronous RTSP + Opaque RTSP watch object that can be used for asynchronous RTSP operations. + - Adds a #GstRTSPWatch to a context so that it will be executed within that context. + Adds a #GstRTSPWatch to a context so that it will be executed within that context. + - the ID (greater than 0) for the watch within the GMainContext. + the ID (greater than 0) for the watch within the GMainContext. - a #GstRTSPWatch + a #GstRTSPWatch - a GMainContext (if NULL, the default context will be used) + a GMainContext (if NULL, the default context will be used) @@ -4106,14 +5314,19 @@ operations. - Get the maximum amount of bytes and messages that will be queued in @watch. + Get the maximum amount of bytes and messages that will be queued in @watch. See gst_rtsp_watch_set_send_backlog(). + - a #GstRTSPWatch + a #GstRTSPWatch transfer-ownership="full" optional="1" allow-none="1"> - maximum bytes + maximum bytes transfer-ownership="full" optional="1" allow-none="1"> - maximum messages + maximum messages - Reset @watch, this is usually called after gst_rtsp_connection_do_tunnel() + Reset @watch, this is usually called after gst_rtsp_connection_do_tunnel() when the file descriptors of the connection might have changed. + - a #GstRTSPWatch + a #GstRTSPWatch - Send a @message using the connection of the @watch. If it cannot be sent + Send a @message using the connection of the @watch. If it cannot be sent immediately, it will be queued for transmission in @watch. The contents of @message will then be serialized and transmitted when the connection of the @watch becomes writable. In case the @message is queued, the ID returned in @id will be non-zero and used as the ID argument in the message_sent callback. + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPWatch + a #GstRTSPWatch - a #GstRTSPMessage + a #GstRTSPMessage transfer-ownership="full" optional="1" allow-none="1"> - location for a message ID or %NULL + location for a message ID or %NULL @@ -4183,30 +5416,41 @@ callback. - Sends @messages using the connection of the @watch. If they cannot be sent + Sends @messages using the connection of the @watch. If they cannot be sent immediately, they will be queued for transmission in @watch. The contents of @messages will then be serialized and transmitted when the connection of the @watch becomes writable. In case the @messages are queued, the ID returned in @id will be non-zero and used as the ID argument in the message_sent callback once the last message is sent. The callback will only be called once for the last message. + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a #GstRTSPWatch + a #GstRTSPWatch - the messages to send + the messages to send - the number of messages to send + the number of messages to send transfer-ownership="full" optional="1" allow-none="1"> - location for a message ID or %NULL + location for a message ID or %NULL @@ -4223,19 +5469,26 @@ once for the last message. - When @flushing is %TRUE, abort a call to gst_rtsp_watch_wait_backlog() + When @flushing is %TRUE, abort a call to gst_rtsp_watch_wait_backlog() and make sure gst_rtsp_watch_write_data() returns immediately with #GST_RTSP_EINTR. And empty the queue. + - a #GstRTSPWatch + a #GstRTSPWatch - new flushing state + new flushing state @@ -4243,38 +5496,52 @@ and make sure gst_rtsp_watch_write_data() returns immediately with - Set the maximum amount of bytes and messages that will be queued in @watch. + Set the maximum amount of bytes and messages that will be queued in @watch. When the maximum amounts are exceeded, gst_rtsp_watch_write_data() and gst_rtsp_watch_send_message() will return #GST_RTSP_ENOMEM. A value of 0 for @bytes or @messages means no limits. + - a #GstRTSPWatch + a #GstRTSPWatch - maximum bytes + maximum bytes - maximum messages + maximum messages - Decreases the reference count of @watch by one. If the resulting reference + Decreases the reference count of @watch by one. If the resulting reference count is zero the watch and associated memory will be destroyed. + - a #GstRTSPWatch + a #GstRTSPWatch @@ -4282,7 +5549,9 @@ count is zero the watch and associated memory will be destroyed. - Wait until there is place in the backlog queue, @timeout is reached + Wait until there is place in the backlog queue, @timeout is reached or @watch is set to flushing. If @timeout is %NULL this function can block forever. If @timeout @@ -4292,8 +5561,11 @@ after the timeout expired. The typically use of this function is when gst_rtsp_watch_write_data returns %GST_RTSP_ENOMEM. The caller then calls this function to wait for free space in the backlog queue and try again. + - %GST_RTSP_OK when if there is room in queue. + %GST_RTSP_OK when if there is room in queue. %GST_RTSP_ETIMEOUT when @timeout was reached. %GST_RTSP_EINTR when @watch is flushing %GST_RTSP_EINVAL when called with invalid parameters. @@ -4301,17 +5573,23 @@ free space in the backlog queue and try again. - a #GstRTSPWatch + a #GstRTSPWatch - a #GTimeVal timeout + a #GTimeVal timeout - Write @data using the connection of the @watch. If it cannot be sent + Write @data using the connection of the @watch. If it cannot be sent immediately, it will be queued for transmission in @watch. The contents of @message will then be serialized and transmitted when the connection of the @watch becomes writable. In case the @message is queued, the ID returned in @@ -4323,24 +5601,33 @@ This function will take ownership of @data and g_free() it after use. If the amount of queued data exceeds the limits set with gst_rtsp_watch_set_send_backlog(), this function will return #GST_RTSP_ENOMEM. + - #GST_RTSP_OK on success. #GST_RTSP_ENOMEM when the backlog limits + #GST_RTSP_OK on success. #GST_RTSP_ENOMEM when the backlog limits are reached. #GST_RTSP_EINTR when @watch was flushing. - a #GstRTSPWatch + a #GstRTSPWatch - the data to queue + the data to queue - the size of @data + the size of @data transfer-ownership="full" optional="1" allow-none="1"> - location for a message ID or %NULL + location for a message ID or %NULL @@ -4357,45 +5646,62 @@ are reached. #GST_RTSP_EINTR when @watch was flushing. - Create a watch object for @conn. The functions provided in @funcs will be + Create a watch object for @conn. The functions provided in @funcs will be called with @user_data when activity happened on the watch. The new watch is usually created so that it can be attached to a maincontext with gst_rtsp_watch_attach(). @conn must exist for the entire lifetime of the watch. + - a #GstRTSPWatch that can be used for asynchronous RTSP + a #GstRTSPWatch that can be used for asynchronous RTSP communication. Free with gst_rtsp_watch_unref () after usage. - a #GstRTSPConnection + a #GstRTSPConnection - watch functions + watch functions - user data to pass to @funcs + user data to pass to @funcs - notify when @user_data is not referenced anymore + notify when @user_data is not referenced anymore - Callback functions from a #GstRTSPWatch. + Callback functions from a #GstRTSPWatch. + + @@ -4418,6 +5724,7 @@ communication. Free with gst_rtsp_watch_unref () after usage. + @@ -4440,6 +5747,7 @@ communication. Free with gst_rtsp_watch_unref () after usage. + @@ -4459,6 +5767,7 @@ communication. Free with gst_rtsp_watch_unref () after usage. + @@ -4481,6 +5790,7 @@ communication. Free with gst_rtsp_watch_unref () after usage. + @@ -4500,6 +5810,7 @@ communication. Free with gst_rtsp_watch_unref () after usage. + @@ -4519,6 +5830,7 @@ communication. Free with gst_rtsp_watch_unref () after usage. + @@ -4547,6 +5859,7 @@ communication. Free with gst_rtsp_watch_unref () after usage. + @@ -4566,6 +5879,7 @@ communication. Free with gst_rtsp_watch_unref () after usage. + @@ -4590,28 +5904,102 @@ communication. Free with gst_rtsp_watch_unref () after usage. - + + + Macro that checks the return value of @stmt and jumps to @label when it does +not equal #GST_RTSP_OK. + + + + a statement + + + a label + + + - The default RTSP port to connect to. + The default RTSP port to connect to. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Free a %NULL-terminated array of credentials returned from + Free a %NULL-terminated array of credentials returned from gst_rtsp_message_parse_auth_credentials(). + - a %NULL-terminated array of #GstRTSPAuthCredential + a %NULL-terminated array of #GstRTSPAuthCredential @@ -4619,29 +6007,40 @@ gst_rtsp_message_parse_auth_credentials(). - Accept a new connection on @socket and create a new #GstRTSPConnection for + Accept a new connection on @socket and create a new #GstRTSPConnection for handling communication on new socket. + - #GST_RTSP_OK when @conn contains a valid connection. + #GST_RTSP_OK when @conn contains a valid connection. - a socket + a socket - storage for a #GstRTSPConnection + storage for a #GstRTSPConnection - a #GCancellable to cancel the operation + a #GCancellable to cancel the operation @@ -4649,25 +6048,34 @@ handling communication on new socket. - Create a newly allocated #GstRTSPConnection from @url and store it in @conn. + Create a newly allocated #GstRTSPConnection from @url and store it in @conn. The connection will not yet attempt to connect to @url, use gst_rtsp_connection_connect(). A copy of @url will be made. + - #GST_RTSP_OK when @conn contains a valid connection. + #GST_RTSP_OK when @conn contains a valid connection. - a #GstRTSPUrl + a #GstRTSPUrl - storage for a #GstRTSPConnection + storage for a #GstRTSPConnection @@ -4675,64 +6083,93 @@ A copy of @url will be made. - Create a new #GstRTSPConnection for handling communication on the existing + Create a new #GstRTSPConnection for handling communication on the existing socket @socket. The @initial_buffer contains zero terminated data already read from @socket which should be used before starting to read new data. + - #GST_RTSP_OK when @conn contains a valid connection. + #GST_RTSP_OK when @conn contains a valid connection. - a #GSocket + a #GSocket - the IP address of the other end + the IP address of the other end - the port used by the other end + the port used by the other end - data already read from @fd + data already read from @fd - storage for a #GstRTSPConnection + storage for a #GstRTSPConnection - Convert @header to a #GstRTSPHeaderField. + Convert @header to a #GstRTSPHeaderField. + - a #GstRTSPHeaderField for @header or #GST_RTSP_HDR_INVALID if the + a #GstRTSPHeaderField for @header or #GST_RTSP_HDR_INVALID if the header field is unknown. - a header string + a header string - Convert @method to a #GstRTSPMethod. + Convert @method to a #GstRTSPMethod. + - a #GstRTSPMethod for @method or #GST_RTSP_INVALID if the + a #GstRTSPMethod for @method or #GST_RTSP_INVALID if the method is unknown. - a method + a method @@ -4740,12 +6177,17 @@ method is unknown. - Calculates the digest auth response from the values given by the server and + Calculates the digest auth response from the values given by the server and the username and password. See RFC2069 for details. Currently only supported algorithm "md5". + - Authentication response or %NULL if unsupported + Authentication response or %NULL if unsupported @@ -4753,31 +6195,45 @@ Currently only supported algorithm "md5". transfer-ownership="none" nullable="1" allow-none="1"> - Hash algorithm to use, or %NULL for MD5 + Hash algorithm to use, or %NULL for MD5 - Request method, e.g. PLAY + Request method, e.g. PLAY - Realm + Realm - Username + Username - Password + Password - Original request URI + Original request URI - Nonce + Nonce @@ -4785,15 +6241,20 @@ Currently only supported algorithm "md5". - Calculates the digest auth response from the values given by the server and + Calculates the digest auth response from the values given by the server and the md5sum. See RFC2069 for details. This function is useful when the passwords are not stored in clear text, but instead in the same format as the .htdigest file. Currently only supported algorithm "md5". + - Authentication response or %NULL if unsupported + Authentication response or %NULL if unsupported @@ -4801,59 +6262,88 @@ Currently only supported algorithm "md5". transfer-ownership="none" nullable="1" allow-none="1"> - Hash algorithm to use, or %NULL for MD5 + Hash algorithm to use, or %NULL for MD5 - Request method, e.g. PLAY + Request method, e.g. PLAY - The md5 sum of username:realm:password + The md5 sum of username:realm:password - Original request URI + Original request URI - Nonce + Nonce - Check whether @field may appear multiple times in a message. + Check whether @field may appear multiple times in a message. + - %TRUE if multiple headers are allowed. + %TRUE if multiple headers are allowed. - a #GstRTSPHeaderField + a #GstRTSPHeaderField - Convert @field to a string. + Convert @field to a string. + - a string representation of @field. + a string representation of @field. - a #GstRTSPHeaderField + a #GstRTSPHeaderField - Create a new initialized #GstRTSPMessage. Free with gst_rtsp_message_free(). + Create a new initialized #GstRTSPMessage. Free with gst_rtsp_message_free(). + - a #GstRTSPResult. + a #GstRTSPResult. @@ -4861,17 +6351,24 @@ Currently only supported algorithm "md5". direction="out" caller-allocates="0" transfer-ownership="full"> - a location for the new #GstRTSPMessage + a location for the new #GstRTSPMessage - Create a new data #GstRTSPMessage with @channel and store the + Create a new data #GstRTSPMessage with @channel and store the result message in @msg. Free with gst_rtsp_message_free(). + - a #GstRTSPResult. + a #GstRTSPResult. @@ -4879,21 +6376,30 @@ result message in @msg. Free with gst_rtsp_message_free(). direction="out" caller-allocates="0" transfer-ownership="full"> - a location for the new #GstRTSPMessage + a location for the new #GstRTSPMessage - the channel + the channel - Create a new #GstRTSPMessage with @method and @uri and store the result + Create a new #GstRTSPMessage with @method and @uri and store the result request message in @msg. Free with gst_rtsp_message_free(). + - a #GstRTSPResult. + a #GstRTSPResult. @@ -4901,30 +6407,41 @@ request message in @msg. Free with gst_rtsp_message_free(). direction="out" caller-allocates="0" transfer-ownership="full"> - a location for the new #GstRTSPMessage + a location for the new #GstRTSPMessage - the request method to use + the request method to use - the uri of the request + the uri of the request - Create a new response #GstRTSPMessage with @code and @reason and store the + Create a new response #GstRTSPMessage with @code and @reason and store the result message in @msg. Free with gst_rtsp_message_free(). When @reason is %NULL, the default reason for @code will be used. When @request is not %NULL, the relevant headers will be copied to the new response message. + - a #GstRTSPResult. + a #GstRTSPResult. @@ -4932,25 +6449,33 @@ response message. direction="out" caller-allocates="0" transfer-ownership="full"> - a location for the new #GstRTSPMessage + a location for the new #GstRTSPMessage - the status code + the status code - the status reason or %NULL + the status reason or %NULL - the request that triggered the response or %NULL + the request that triggered the response or %NULL @@ -4958,28 +6483,42 @@ response message. - Convert @method to a string. + Convert @method to a string. + - a string representation of @method. + a string representation of @method. - a #GstRTSPMethod + a #GstRTSPMethod - Convert @options to a string. + Convert @options to a string. + - a new string of @options. g_free() after usage. + a new string of @options. g_free() after usage. - one or more #GstRTSPMethod + one or more #GstRTSPMethod @@ -4987,15 +6526,22 @@ response message. - Convert the comma separated list @options to a #GstRTSPMethod bitwise or + Convert the comma separated list @options to a #GstRTSPMethod bitwise or of methods. This functions is the reverse of gst_rtsp_options_as_text(). + - a #GstRTSPMethod + a #GstRTSPMethod - a comma separated list of options + a comma separated list of options @@ -5003,20 +6549,29 @@ of methods. This functions is the reverse of gst_rtsp_options_as_text(). - Converts the range in-place between different types of units. + Converts the range in-place between different types of units. Ranges containing the special value #GST_RTSP_TIME_NOW can not be converted as these are only valid for #GST_RTSP_RANGE_NPT. + - %TRUE if the range could be converted + %TRUE if the range could be converted - a #GstRTSPTimeRange + a #GstRTSPTimeRange - the unit to convert the range into + the unit to convert the range into @@ -5024,13 +6579,18 @@ converted as these are only valid for #GST_RTSP_RANGE_NPT. - Free the memory allocated by @range. + Free the memory allocated by @range. + - a #GstRTSPTimeRange + a #GstRTSPTimeRange @@ -5039,34 +6599,45 @@ converted as these are only valid for #GST_RTSP_RANGE_NPT. c:identifier="gst_rtsp_range_get_times" moved-to="RTSPRange.get_times" version="1.2"> - Retrieve the minimum and maximum values from @range converted to + Retrieve the minimum and maximum values from @range converted to #GstClockTime in @min and @max. A value of %GST_CLOCK_TIME_NONE will be used to signal #GST_RTSP_TIME_NOW and #GST_RTSP_TIME_END for @min and @max respectively. UTC times will be converted to nanoseconds since 1900. + - %TRUE on success. + %TRUE on success. - a #GstRTSPTimeRange + a #GstRTSPTimeRange - result minimum #GstClockTime + result minimum #GstClockTime - result maximum #GstClockTime + result maximum #GstClockTime @@ -5074,21 +6645,30 @@ UTC times will be converted to nanoseconds since 1900. - Parse @rangestr to a #GstRTSPTimeRange. + Parse @rangestr to a #GstRTSPTimeRange. + - #GST_RTSP_OK on success. + #GST_RTSP_OK on success. - a range string to parse + a range string to parse - location to hold the #GstRTSPTimeRange result + location to hold the #GstRTSPTimeRange result @@ -5096,41 +6676,62 @@ UTC times will be converted to nanoseconds since 1900. - Convert @range into a string representation. + Convert @range into a string representation. + - The string representation of @range. g_free() after usage. + The string representation of @range. g_free() after usage. - a #GstRTSPTimeRange + a #GstRTSPTimeRange - Convert @code to a string. + Convert @code to a string. + - a string representation of @code. + a string representation of @code. - a #GstRTSPStatusCode + a #GstRTSPStatusCode - Convert @result in a human readable string. + Convert @result in a human readable string. + - a newly allocated string. g_free() after usage. + a newly allocated string. g_free() after usage. - a #GstRTSPResult + a #GstRTSPResult @@ -5138,20 +6739,27 @@ UTC times will be converted to nanoseconds since 1900. - Get the #GstElement that can handle the buffers transported over @trans. + Get the #GstElement that can handle the buffers transported over @trans. It is possible that there are several managers available, use @option to selected one. @manager will contain an element name or %NULL when no manager is needed/available for @trans. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPTransMode + a #GstRTSPTransMode caller-allocates="0" transfer-ownership="none" nullable="1"> - location to hold the result + location to hold the result - option index. + option index. @@ -5172,22 +6784,31 @@ needed/available for @trans. c:identifier="gst_rtsp_transport_get_mime" moved-to="RTSPTransport.get_mime" deprecated="1"> - Get the mime type of the transport mode @trans. This mime type is typically + Get the mime type of the transport mode @trans. This mime type is typically used to generate #GstCaps events. This functions only deals with the GstRTSPTransMode and only returns the mime type for #GST_RTSP_PROFILE_AVP. Use gst_rtsp_transport_get_media_type() instead. + - #GST_RTSP_OK. + #GST_RTSP_OK. - a #GstRTSPTransMode + a #GstRTSPTransMode - location to hold the result + location to hold the result @@ -5195,15 +6816,22 @@ used to generate #GstCaps events. - Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free() + Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free() after usage. + - a #GstRTSPResult. + a #GstRTSPResult. - location to hold the new #GstRTSPTransport + location to hold the new #GstRTSPTransport @@ -5211,18 +6839,27 @@ after usage. - Parse the RTSP transport string @str into @transport. + Parse the RTSP transport string @str into @transport. + - a #GstRTSPResult. + a #GstRTSPResult. - a transport string + a transport string - a #GstRTSPTransport + a #GstRTSPTransport @@ -5230,22 +6867,31 @@ after usage. - Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage + Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage with gst_rtsp_url_free(). + - a #GstRTSPResult. + a #GstRTSPResult. - the url string to parse + the url string to parse - location to hold the result. + location to hold the result. @@ -5253,14 +6899,21 @@ with gst_rtsp_url_free(). - Convert @version to a string. + Convert @version to a string. + - a string representation of @version. + a string representation of @version. - a #GstRTSPVersion + a #GstRTSPVersion @@ -5269,36 +6922,49 @@ with gst_rtsp_url_free(). c:identifier="gst_rtsp_watch_new" moved-to="RTSPWatch.new" introspectable="0"> - Create a watch object for @conn. The functions provided in @funcs will be + Create a watch object for @conn. The functions provided in @funcs will be called with @user_data when activity happened on the watch. The new watch is usually created so that it can be attached to a maincontext with gst_rtsp_watch_attach(). @conn must exist for the entire lifetime of the watch. + - a #GstRTSPWatch that can be used for asynchronous RTSP + a #GstRTSPWatch that can be used for asynchronous RTSP communication. Free with gst_rtsp_watch_unref () after usage. - a #GstRTSPConnection + a #GstRTSPConnection - watch functions + watch functions - user data to pass to @funcs + user data to pass to @funcs - notify when @user_data is not referenced anymore + notify when @user_data is not referenced anymore diff --git a/gir-files/GstRtspServer-1.0.gir b/gir-files/GstRtspServer-1.0.gir index 28a2c69c6..53838eb29 100644 --- a/gir-files/GstRtspServer-1.0.gir +++ b/gir-files/GstRtspServer-1.0.gir @@ -16,87 +16,478 @@ and/or use gtk-doc annotations. --> shared-library="libgstrtspserver-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - An address + An address + - the #GstRTSPAddressPool owner of this address + the #GstRTSPAddressPool owner of this address - the address + the address - the port number + the port number - number of ports + number of ports - TTL or 0 for unicast addresses + TTL or 0 for unicast addresses - Make a copy of @addr. + Make a copy of @addr. + - a copy of @addr. + a copy of @addr. - a #GstRTSPAddress + a #GstRTSPAddress - Free @addr and releasing it back into the pool when owned by a + Free @addr and releasing it back into the pool when owned by a pool. + - a #GstRTSPAddress + a #GstRTSPAddress - Flags used to control allocation of addresses + Flags used to control allocation of addresses + - no flags + no flags - an IPv4 address + an IPv4 address - and IPv6 address + and IPv6 address - address with an even port + address with an even port - a multicast address + a multicast address - a unicast address + a unicast address glib:type-name="GstRTSPAddressPool" glib:get-type="gst_rtsp_address_pool_get_type" glib:type-struct="RTSPAddressPoolClass"> - An address pool, all member are private + An address pool, all member are private + - Make a new #GstRTSPAddressPool. + Make a new #GstRTSPAddressPool. + - a new #GstRTSPAddressPool + a new #GstRTSPAddressPool - Take an address and ports from @pool. @flags can be used to control the + Take an address and ports from @pool. @flags can be used to control the allocation. @n_ports consecutive ports will be allocated of which the first one can be found in @port. + - a #GstRTSPAddress that should be freed with + a #GstRTSPAddress that should be freed with gst_rtsp_address_free after use or %NULL when no address could be acquired. - a #GstRTSPAddressPool + a #GstRTSPAddressPool - flags + flags - the amount of ports + the amount of ports - Adds the addresses from @min_addess to @max_address (inclusive) + Adds the addresses from @min_addess to @max_address (inclusive) to @pool. The valid port range for the addresses will be from @min_port to @max_port inclusive. @@ -151,86 +563,123 @@ When @ttl is 0, @min_address and @max_address should be unicast addresses. to all available IPv4 or IPv6 addresses. When @ttl > 0, @min_address and @max_address should be multicast addresses. + - %TRUE if the addresses could be added. + %TRUE if the addresses could be added. - a #GstRTSPAddressPool + a #GstRTSPAddressPool - a minimum address to add + a minimum address to add - a maximum address to add + a maximum address to add - the minimum port + the minimum port - the maximum port + the maximum port - a TTL or 0 for unicast addresses + a TTL or 0 for unicast addresses - Clear all addresses in @pool. There should be no outstanding + Clear all addresses in @pool. There should be no outstanding allocations. + - a #GstRTSPAddressPool + a #GstRTSPAddressPool - Dump the free and allocated addresses to stdout. + Dump the free and allocated addresses to stdout. + - a #GstRTSPAddressPool + a #GstRTSPAddressPool - Used to know if the pool includes any unicast addresses. + Used to know if the pool includes any unicast addresses. + - %TRUE if the pool includes any unicast addresses, %FALSE otherwise + %TRUE if the pool includes any unicast addresses, %FALSE otherwise - a #GstRTSPAddressPool + a #GstRTSPAddressPool - Take a specific address and ports from @pool. @n_ports consecutive + Take a specific address and ports from @pool. @n_ports consecutive ports will be allocated of which the first one can be found in @port. If @ttl is 0, @address should be a unicast address. If @ttl > 0, @address should be a valid multicast address. + - #GST_RTSP_ADDRESS_POOL_OK if an address was reserved. The address + #GST_RTSP_ADDRESS_POOL_OK if an address was reserved. The address is returned in @address and should be freed with gst_rtsp_address_free after use. - a #GstRTSPAddressPool + a #GstRTSPAddressPool - The IP address to reserve + The IP address to reserve - The first port to reserve + The first port to reserve - The number of ports + The number of ports - The requested ttl + The requested ttl - storage for a #GstRTSPAddress + storage for a #GstRTSPAddress - the parent GObject + the parent GObject @@ -275,7 +738,7 @@ after use. c:type="GstRTSPAddressPoolPrivate*"/> - + @@ -283,12 +746,15 @@ after use. - Opaque Address pool class. + Opaque Address pool class. + - + @@ -296,32 +762,46 @@ after use. + - Result codes from RTSP address pool functions. + Result codes from RTSP address pool functions. + - no error + no error - invalid arguments were provided to a function + invalid arguments were provided to a function - the addres has already been reserved + the addres has already been reserved - the address is not in the pool + the address is not in the pool - last error + last error glib:type-name="GstRTSPAuth" glib:get-type="gst_rtsp_auth_get_type" glib:type-struct="RTSPAuthClass"> - The authentication structure. + The authentication structure. + - Create a new #GstRTSPAuth instance. + Create a new #GstRTSPAuth instance. + - a new #GstRTSPAuth + a new #GstRTSPAuth - Check if @check is allowed in the current context. + Check if @check is allowed in the current context. + - FALSE if check failed. + FALSE if check failed. - the item to check + the item to check - Construct a Basic authorisation token from @user and @pass. + Construct a Basic authorisation token from @user and @pass. + - the base64 encoding of the string @user:@pass. + the base64 encoding of the string @user:@pass. g_free() after usage. - a userid + a userid - a password + a password + @@ -391,6 +896,7 @@ g_free() after usage. + @@ -404,6 +910,7 @@ g_free() after usage. + @@ -420,6 +927,7 @@ g_free() after usage. + @@ -433,22 +941,31 @@ g_free() after usage. - Add a basic token for the default authentication algorithm that + Add a basic token for the default authentication algorithm that enables the client with privileges listed in @token. + - a #GstRTSPAuth + a #GstRTSPAuth - the basic token + the basic token - authorisation token + authorisation token @@ -456,42 +973,60 @@ enables the client with privileges listed in @token. - Add a digest @user and @pass for the default authentication algorithm that + Add a digest @user and @pass for the default authentication algorithm that enables the client with privileges listed in @token. + - a #GstRTSPAuth + a #GstRTSPAuth - the digest user name + the digest user name - the digest password + the digest password - authorisation token + authorisation token - Get the default token for @auth. This token will be used for unauthenticated + Get the default token for @auth. This token will be used for unauthenticated users. + - the #GstRTSPToken of @auth. gst_rtsp_token_unref() after + the #GstRTSPToken of @auth. gst_rtsp_token_unref() after usage. - a #GstRTSPAuth + a #GstRTSPAuth @@ -499,8 +1034,11 @@ usage. + - the @realm of @auth + the @realm of @auth @@ -512,44 +1050,65 @@ usage. - Gets the supported authentication methods of @auth. + Gets the supported authentication methods of @auth. + - The supported authentication methods + The supported authentication methods - a #GstRTSPAuth + a #GstRTSPAuth - Get the #GTlsAuthenticationMode. + Get the #GTlsAuthenticationMode. + - the #GTlsAuthenticationMode. + the #GTlsAuthenticationMode. - a #GstRTSPAuth + a #GstRTSPAuth - Get the #GTlsCertificate used for negotiating TLS @auth. + Get the #GTlsCertificate used for negotiating TLS @auth. + - the #GTlsCertificate of @auth. g_object_unref() after + the #GTlsCertificate of @auth. g_object_unref() after usage. - a #GstRTSPAuth + a #GstRTSPAuth @@ -557,15 +1116,22 @@ usage. - Get the #GTlsDatabase used for verifying client certificate. + Get the #GTlsDatabase used for verifying client certificate. + - the #GTlsDatabase of @auth. g_object_unref() after + the #GTlsDatabase of @auth. g_object_unref() after usage. - a #GstRTSPAuth + a #GstRTSPAuth @@ -573,14 +1139,19 @@ usage. - Parse the contents of the file at @path and enable the privileges + Parse the contents of the file at @path and enable the privileges listed in @token for the users it describes. The format of the file is expected to match the format described by <https://en.wikipedia.org/wiki/Digest_access_authentication#The_.htdigest_file>, as output by the `htdigest` command. + - %TRUE if the file was successfully parsed, %FALSE otherwise. + %TRUE if the file was successfully parsed, %FALSE otherwise. @@ -588,27 +1159,38 @@ as output by the `htdigest` command. - Path to the htdigest file + Path to the htdigest file - authorisation token + authorisation token - Removes @basic authentication token. + Removes @basic authentication token. + - a #GstRTSPAuth + a #GstRTSPAuth - the basic token + the basic token @@ -616,38 +1198,52 @@ as output by the `htdigest` command. - Removes a digest user. + Removes a digest user. + - a #GstRTSPAuth + a #GstRTSPAuth - the digest user name + the digest user name - Set the default #GstRTSPToken to @token in @auth. The default token will + Set the default #GstRTSPToken to @token in @auth. The default token will be used for unauthenticated users. + - a #GstRTSPAuth + a #GstRTSPAuth - a #GstRTSPToken + a #GstRTSPToken @@ -655,7 +1251,10 @@ be used for unauthenticated users. - Set the @realm of @auth + Set the @realm of @auth + @@ -671,17 +1270,24 @@ be used for unauthenticated users. - Sets the supported authentication @methods for @auth. + Sets the supported authentication @methods for @auth. + - a #GstRTSPAuth + a #GstRTSPAuth - supported methods + supported methods @@ -689,19 +1295,26 @@ be used for unauthenticated users. - The #GTlsAuthenticationMode to set on the underlying GTlsServerConnection. + The #GTlsAuthenticationMode to set on the underlying GTlsServerConnection. When set to another value than %G_TLS_AUTHENTICATION_NONE, #GstRTSPAuth::accept-certificate signal will be emitted and must be handled. + - a #GstRTSPAuth + a #GstRTSPAuth - a #GTlsAuthenticationMode + a #GTlsAuthenticationMode @@ -709,21 +1322,28 @@ When set to another value than %G_TLS_AUTHENTICATION_NONE, - Set the TLS certificate for the auth. Client connections will only + Set the TLS certificate for the auth. Client connections will only be accepted when TLS is negotiated. + - a #GstRTSPAuth + a #GstRTSPAuth - a #GTlsCertificate + a #GTlsCertificate @@ -731,22 +1351,29 @@ be accepted when TLS is negotiated. - Sets the certificate database that is used to verify peer certificates. + Sets the certificate database that is used to verify peer certificates. If set to %NULL (the default), then peer certificate validation will always set the %G_TLS_CERTIFICATE_UNKNOWN_CA error. + - a #GstRTSPAuth + a #GstRTSPAuth - a #GTlsDatabase + a #GTlsDatabase @@ -758,15 +1385,19 @@ set the %G_TLS_CERTIFICATE_UNKNOWN_CA error. - + - Emitted during the TLS handshake after the client certificate has + Emitted during the TLS handshake after the client certificate has been received. See also gst_rtsp_auth_set_tls_authentication_mode(). - %TRUE to accept @peer_cert (which will also + %TRUE to accept @peer_cert (which will also immediately end the signal emission). %FALSE to allow the signal emission to continue, which will cause the handshake to fail if no one else overrides it. @@ -774,15 +1405,21 @@ no one else overrides it. - a #GTlsConnection + a #GTlsConnection - the peer's #GTlsCertificate + the peer's #GTlsCertificate - the problems with @peer_cert. + the problems with @peer_cert. @@ -791,12 +1428,16 @@ no one else overrides it. - The authentication class. + The authentication class. + + @@ -812,6 +1453,7 @@ no one else overrides it. + @@ -830,6 +1472,7 @@ no one else overrides it. + @@ -845,6 +1488,7 @@ no one else overrides it. + @@ -866,12 +1510,13 @@ no one else overrides it. - + + glib:type-name="GstRTSPClient" glib:get-type="gst_rtsp_client_get_type" glib:type-struct="RTSPClientClass"> - The client object represents the connection and its state with a client. + The client object represents the connection and its state with a client. + - Create a new #GstRTSPClient instance. + Create a new #GstRTSPClient instance. + - a new #GstRTSPClient + a new #GstRTSPClient + @@ -902,6 +1556,7 @@ no one else overrides it. + @@ -918,6 +1573,7 @@ no one else overrides it. + @@ -928,6 +1584,7 @@ no one else overrides it. + @@ -947,6 +1604,7 @@ no one else overrides it. + @@ -963,6 +1621,7 @@ no one else overrides it. + @@ -976,6 +1635,7 @@ no one else overrides it. + @@ -989,6 +1649,7 @@ no one else overrides it. + @@ -1002,6 +1663,7 @@ no one else overrides it. + @@ -1015,6 +1677,7 @@ no one else overrides it. + @@ -1034,6 +1697,7 @@ no one else overrides it. + @@ -1047,6 +1711,7 @@ no one else overrides it. + @@ -1060,6 +1725,7 @@ no one else overrides it. + @@ -1073,6 +1739,7 @@ no one else overrides it. + @@ -1086,6 +1753,7 @@ no one else overrides it. + @@ -1099,6 +1767,7 @@ no one else overrides it. + @@ -1112,6 +1781,7 @@ no one else overrides it. + @@ -1125,6 +1795,7 @@ no one else overrides it. + @@ -1138,6 +1809,7 @@ no one else overrides it. + @@ -1151,6 +1823,7 @@ no one else overrides it. + @@ -1164,6 +1837,7 @@ no one else overrides it. + @@ -1177,6 +1851,7 @@ no one else overrides it. + @@ -1190,6 +1865,7 @@ no one else overrides it. + @@ -1203,6 +1879,7 @@ no one else overrides it. + @@ -1216,6 +1893,7 @@ no one else overrides it. + @@ -1229,6 +1907,7 @@ no one else overrides it. + @@ -1242,6 +1921,7 @@ no one else overrides it. + @@ -1255,6 +1935,7 @@ no one else overrides it. + @@ -1268,6 +1949,7 @@ no one else overrides it. + @@ -1284,6 +1966,7 @@ no one else overrides it. + @@ -1297,6 +1980,7 @@ no one else overrides it. + @@ -1310,6 +1994,7 @@ no one else overrides it. + @@ -1323,6 +2008,7 @@ no one else overrides it. + @@ -1339,160 +2025,229 @@ no one else overrides it. - Attaches @client to @context. When the mainloop for @context is run, the + Attaches @client to @context. When the mainloop for @context is run, the client will be dispatched. When @context is %NULL, the default context will be used). This function should be called when the client properties and urls are fully configured and the client is ready to start. + - the ID (greater than 0) for the source within the GMainContext. + the ID (greater than 0) for the source within the GMainContext. - a #GstRTSPClient + a #GstRTSPClient - a #GMainContext + a #GMainContext - Close the connection of @client and remove all media it was managing. + Close the connection of @client and remove all media it was managing. + - a #GstRTSPClient + a #GstRTSPClient - Get the #GstRTSPAuth used as the authentication manager of @client. + Get the #GstRTSPAuth used as the authentication manager of @client. + - the #GstRTSPAuth of @client. + the #GstRTSPAuth of @client. g_object_unref() after usage. - a #GstRTSPClient + a #GstRTSPClient - Get the #GstRTSPConnection of @client. + Get the #GstRTSPConnection of @client. + - the #GstRTSPConnection of @client. + the #GstRTSPConnection of @client. The connection object returned remains valid until the client is freed. - a #GstRTSPClient + a #GstRTSPClient - Get the #GstRTSPMountPoints object that @client uses to manage its sessions. + Get the #GstRTSPMountPoints object that @client uses to manage its sessions. + - a #GstRTSPMountPoints, unref after usage. + a #GstRTSPMountPoints, unref after usage. - a #GstRTSPClient + a #GstRTSPClient - Get the #GstRTSPSessionPool object that @client uses to manage its sessions. + Get the #GstRTSPSessionPool object that @client uses to manage its sessions. + - a #GstRTSPSessionPool, unref after usage. + a #GstRTSPSessionPool, unref after usage. - a #GstRTSPClient + a #GstRTSPClient - Get the #GstRTSPThreadPool used as the thread pool of @client. + Get the #GstRTSPThreadPool used as the thread pool of @client. + - the #GstRTSPThreadPool of @client. g_object_unref() after + the #GstRTSPThreadPool of @client. g_object_unref() after usage. - a #GstRTSPClient + a #GstRTSPClient - Let the client handle @message. + Let the client handle @message. + - a #GstRTSPResult. + a #GstRTSPResult. - a #GstRTSPClient + a #GstRTSPClient - an #GstRTSPMessage + an #GstRTSPMessage - Send a message message to the remote end. @message must be a + Send a message message to the remote end. @message must be a #GST_RTSP_MESSAGE_REQUEST or a #GST_RTSP_MESSAGE_RESPONSE. + - a #GstRTSPClient + a #GstRTSPClient - a #GstRTSPSession to send + a #GstRTSPSession to send the message to or %NULL - The #GstRTSPMessage to send + The #GstRTSPMessage to send - Call @func for each session managed by @client. The result value of @func + Call @func for each session managed by @client. The result value of @func determines what happens to the session. @func will be called with @client locked so no further actions on @client can be performed from @func. @@ -1506,8 +2261,11 @@ will also be added with an additional ref to the result #GList of this function.. When @func is %NULL, #GST_RTSP_FILTER_REF will be assumed for each session. + - a #GList with all + a #GList with all sessions for which @func returned #GST_RTSP_FILTER_REF. After usage, each element in the #GList should be unreffed before the list is freed. @@ -1516,7 +2274,9 @@ element in the #GList should be unreffed before the list is freed. - a #GstRTSPClient + a #GstRTSPClient allow-none="1" scope="call" closure="1"> - a callback + a callback @@ -1533,74 +2295,101 @@ element in the #GList should be unreffed before the list is freed. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to @func + user data passed to @func - configure @auth to be used as the authentication manager of @client. + configure @auth to be used as the authentication manager of @client. + - a #GstRTSPClient + a #GstRTSPClient - a #GstRTSPAuth + a #GstRTSPAuth - Set the #GstRTSPConnection of @client. This function takes ownership of + Set the #GstRTSPConnection of @client. This function takes ownership of @conn. + - %TRUE on success. + %TRUE on success. - a #GstRTSPClient + a #GstRTSPClient - a #GstRTSPConnection + a #GstRTSPConnection - Set @mounts as the mount points for @client which it will use to map urls + Set @mounts as the mount points for @client which it will use to map urls to media streams. These mount points are usually inherited from the server that created the client but can be overriden later. + - a #GstRTSPClient + a #GstRTSPClient - a #GstRTSPMountPoints + a #GstRTSPMountPoints - Set @func as the callback that will be called when a new message needs to be + Set @func as the callback that will be called when a new message needs to be sent to the client. @user_data is passed to @func and @notify is called when @user_data is no longer in use. @@ -1609,12 +2398,15 @@ was configured with gst_rtsp_client_attach() was called. It is only allowed to set either a `send_func` or a `send_messages_func` but not both at the same time. + - a #GstRTSPClient + a #GstRTSPClient scope="notified" closure="1" destroy="2"> - a #GstRTSPClientSendFunc + a #GstRTSPClientSendFunc - user data passed to @func + user data passed to @func nullable="1" allow-none="1" scope="async"> - called when @user_data is no longer in use + called when @user_data is no longer in use @@ -1645,7 +2443,9 @@ but not both at the same time. - Set @func as the callback that will be called when new messages needs to be + Set @func as the callback that will be called when new messages needs to be sent to the client. @user_data is passed to @func and @notify is called when @user_data is no longer in use. @@ -1654,12 +2454,15 @@ was configured with gst_rtsp_client_attach() was called. It is only allowed to set either a `send_func` or a `send_messages_func` but not both at the same time. + - a #GstRTSPClient + a #GstRTSPClient scope="notified" closure="1" destroy="2"> - a #GstRTSPClientSendMessagesFunc + a #GstRTSPClientSendMessagesFunc @@ -1675,7 +2480,9 @@ but not both at the same time. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to @func + user data passed to @func nullable="1" allow-none="1" scope="async"> - called when @user_data is no longer in use + called when @user_data is no longer in use - Set @pool as the sessionpool for @client which it will use to find + Set @pool as the sessionpool for @client which it will use to find or allocate sessions. the sessionpool is usually inherited from the server that created the client but can be overridden later. + - a #GstRTSPClient + a #GstRTSPClient - a #GstRTSPSessionPool + a #GstRTSPSessionPool - configure @pool to be used as the thread pool of @client. + configure @pool to be used as the thread pool of @client. + - a #GstRTSPClient + a #GstRTSPClient - a #GstRTSPThreadPool + a #GstRTSPThreadPool @@ -1746,7 +2569,7 @@ that created the client but can be overridden later. - + @@ -1756,25 +2579,33 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext - a newly allocated string with comma-separated list of + a newly allocated string with comma-separated list of unsupported options. An empty string must be returned if all options are supported. - a #GstRTSPContext + a #GstRTSPContext - a NULL-terminated array of strings + a NULL-terminated array of strings @@ -1792,7 +2623,9 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext @@ -1803,7 +2636,9 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext @@ -1814,7 +2649,9 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext @@ -1835,7 +2672,9 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext @@ -1846,7 +2685,9 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext @@ -1857,137 +2698,179 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext - a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, + a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, otherwise an appropriate return code - a #GstRTSPContext + a #GstRTSPContext - a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, + a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, otherwise an appropriate return code - a #GstRTSPContext + a #GstRTSPContext - a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, + a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, otherwise an appropriate return code - a #GstRTSPContext + a #GstRTSPContext - a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, + a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, otherwise an appropriate return code - a #GstRTSPContext + a #GstRTSPContext - a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, + a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, otherwise an appropriate return code - a #GstRTSPContext + a #GstRTSPContext - a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, + a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, otherwise an appropriate return code - a #GstRTSPContext + a #GstRTSPContext - a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, + a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, otherwise an appropriate return code - a #GstRTSPContext + a #GstRTSPContext - a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, + a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, otherwise an appropriate return code - a #GstRTSPContext + a #GstRTSPContext - a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, + a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, otherwise an appropriate return code - a #GstRTSPContext + a #GstRTSPContext - a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, + a #GstRTSPStatusCode, GST_RTSP_STS_OK in case of success, otherwise an appropriate return code - a #GstRTSPContext + a #GstRTSPContext @@ -1998,7 +2881,9 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext @@ -2009,11 +2894,15 @@ that created the client but can be overridden later. - The session + The session - The message + The message @@ -2024,7 +2913,9 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext @@ -2035,7 +2926,9 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext @@ -2046,7 +2939,9 @@ that created the client but can be overridden later. - a #GstRTSPContext + a #GstRTSPContext @@ -2055,12 +2950,16 @@ that created the client but can be overridden later. - The client class structure. + The client class structure. + + @@ -2076,6 +2975,7 @@ that created the client but can be overridden later. + @@ -2097,6 +2997,7 @@ that created the client but can be overridden later. + @@ -2115,6 +3016,7 @@ that created the client but can be overridden later. + @@ -2130,6 +3032,7 @@ that created the client but can be overridden later. + @@ -2145,6 +3048,7 @@ that created the client but can be overridden later. + @@ -2160,6 +3064,7 @@ that created the client but can be overridden later. + @@ -2172,6 +3077,7 @@ that created the client but can be overridden later. + @@ -2187,6 +3093,7 @@ that created the client but can be overridden later. + @@ -2202,6 +3109,7 @@ that created the client but can be overridden later. + @@ -2217,6 +3125,7 @@ that created the client but can be overridden later. + @@ -2232,6 +3141,7 @@ that created the client but can be overridden later. + @@ -2247,6 +3157,7 @@ that created the client but can be overridden later. + @@ -2262,6 +3173,7 @@ that created the client but can be overridden later. + @@ -2277,6 +3189,7 @@ that created the client but can be overridden later. + @@ -2292,6 +3205,7 @@ that created the client but can be overridden later. + @@ -2307,6 +3221,7 @@ that created the client but can be overridden later. + @@ -2322,6 +3237,7 @@ that created the client but can be overridden later. + @@ -2340,6 +3256,7 @@ that created the client but can be overridden later. + @@ -2358,6 +3275,7 @@ that created the client but can be overridden later. + @@ -2379,6 +3297,7 @@ that created the client but can be overridden later. + @@ -2394,6 +3313,7 @@ that created the client but can be overridden later. + @@ -2409,6 +3329,7 @@ that created the client but can be overridden later. + @@ -2427,6 +3348,7 @@ that created the client but can be overridden later. + @@ -2442,6 +3364,7 @@ that created the client but can be overridden later. + @@ -2457,6 +3380,7 @@ that created the client but can be overridden later. + @@ -2472,6 +3396,7 @@ that created the client but can be overridden later. + @@ -2487,6 +3412,7 @@ that created the client but can be overridden later. + @@ -2502,6 +3428,7 @@ that created the client but can be overridden later. + @@ -2517,6 +3444,7 @@ that created the client but can be overridden later. + @@ -2532,6 +3460,7 @@ that created the client but can be overridden later. + @@ -2547,6 +3476,7 @@ that created the client but can be overridden later. + @@ -2562,6 +3492,7 @@ that created the client but can be overridden later. + @@ -2576,7 +3507,7 @@ that created the client but can be overridden later. - + @@ -2584,25 +3515,37 @@ that created the client but can be overridden later. + - This callback is called when @client wants to send @message. When @close is + This callback is called when @client wants to send @message. When @close is %TRUE, the connection should be closed when the message has been sent. + - %TRUE on success. + %TRUE on success. - a #GstRTSPClient + a #GstRTSPClient - a #GstRTSPMessage + a #GstRTSPMessage - close the connection + close the connection nullable="1" allow-none="1" closure="3"> - user data when registering the callback + user data when registering the callback @@ -2618,27 +3563,40 @@ that created the client but can be overridden later. - This callback is called when @client wants to send @messages. When @close is + This callback is called when @client wants to send @messages. When @close is %TRUE, the connection should be closed when the message has been sent. + - %TRUE on success. + %TRUE on success. - a #GstRTSPClient + a #GstRTSPClient - #GstRTSPMessage + #GstRTSPMessage - number of messages + number of messages - close the connection + close the connection nullable="1" allow-none="1" closure="4"> - user data when registering the callback + user data when registering the callback - This function will be called by the gst_rtsp_client_session_filter(). An + This function will be called by the gst_rtsp_client_session_filter(). An implementation should return a value of #GstRTSPFilterResult. When this function returns #GST_RTSP_FILTER_REMOVE, @sess will be removed @@ -2664,17 +3626,24 @@ A return value of #GST_RTSP_FILTER_KEEP will leave @sess untouched in A value of #GST_RTSP_FILTER_REF will add @sess to the result #GList of gst_rtsp_client_session_filter(). + - a #GstRTSPFilterResult. + a #GstRTSPFilterResult. - a #GstRTSPClient object + a #GstRTSPClient object - a #GstRTSPSession in @client + a #GstRTSPSession in @client nullable="1" allow-none="1" closure="2"> - user data that has been given to gst_rtsp_client_session_filter() + user data that has been given to gst_rtsp_client_session_filter() - Information passed around containing the context of a request. + Information passed around containing the context of a request. + - the server + the server - the connection + the connection - the client + the client - the complete request + the complete request - the complete url parsed from @request + the complete url parsed from @request - the parsed method of @uri + the parsed method of @uri - the current auth object or %NULL + the current auth object or %NULL - authorisation token + authorisation token - the session, can be %NULL + the session, can be %NULL - the session media for the url can be %NULL + the session media for the url can be %NULL - the media factory for the url, can be %NULL + the media factory for the url, can be %NULL - the media for the url can be %NULL + the media for the url can be %NULL - the stream for the url can be %NULL + the stream for the url can be %NULL - the response + the response - the stream transport, can be %NULL + the stream transport, can be %NULL - + - Pops @ctx off the context stack (verifying that @ctx + Pops @ctx off the context stack (verifying that @ctx is on the top of the stack). + - a #GstRTSPContext + a #GstRTSPContext - Pushes @ctx onto the context stack. The current + Pushes @ctx onto the context stack. The current context can then be received using gst_rtsp_context_get_current(). + - a ##GstRTSPContext + a ##GstRTSPContext @@ -2783,29 +3797,46 @@ context can then be received using gst_rtsp_context_get_current(). - Get the current #GstRTSPContext. This object is retrieved from the + Get the current #GstRTSPContext. This object is retrieved from the current thread that is handling the request for a client. + - a #GstRTSPContext + a #GstRTSPContext - Possible return values for gst_rtsp_session_pool_filter(). + Possible return values for gst_rtsp_session_pool_filter(). + - Remove session + Remove session - Keep session in the pool + Keep session in the pool - Ref session in the result list + Ref session in the result list - Function registered with gst_rtsp_stream_transport_set_keepalive() and called + Function registered with gst_rtsp_stream_transport_set_keepalive() and called when the stream is active. + @@ -2815,7 +3846,9 @@ when the stream is active. nullable="1" allow-none="1" closure="0"> - user data + user data @@ -2827,29 +3860,40 @@ when the stream is active. glib:type-name="GstRTSPMedia" glib:get-type="gst_rtsp_media_get_type" glib:type-struct="RTSPMediaClass"> - A class that contains the GStreamer element along with a list of + A class that contains the GStreamer element along with a list of #GstRTSPStream objects that can produce data. This object is usually created from a #GstRTSPMediaFactory. + - Create a new #GstRTSPMedia instance. @element is the bin element that + Create a new #GstRTSPMedia instance. @element is the bin element that provides the different streams. The #GstRTSPMedia object contains the element to produce RTP data for one or more related (audio/video/..) streams. Ownership is taken of @element. + - a new #GstRTSPMedia object. + a new #GstRTSPMedia object. - a #GstElement + a #GstElement + @@ -2866,6 +3910,7 @@ Ownership is taken of @element. + @@ -2876,6 +3921,7 @@ Ownership is taken of @element. + @@ -2889,23 +3935,33 @@ Ownership is taken of @element. - Configure an SDP on @media for receiving streams + Configure an SDP on @media for receiving streams + - TRUE on success. + TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstSDPMessage + a #GstSDPMessage + @@ -2919,6 +3975,7 @@ Ownership is taken of @element. + @@ -2932,32 +3989,42 @@ Ownership is taken of @element. - Prepare @media for streaming. This function will create the objects + Prepare @media for streaming. This function will create the objects to manage the streaming. A pipeline must have been set on @media with gst_rtsp_media_take_pipeline(). It will preroll the pipeline and collect vital information about the streams such as the duration. + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstRTSPThread to run the + a #GstRTSPThread to run the bus handler or %NULL + @@ -2968,6 +4035,7 @@ such as the duration. + @@ -2981,6 +4049,7 @@ such as the duration. + @@ -2994,6 +4063,7 @@ such as the duration. + @@ -3007,6 +4077,7 @@ such as the duration. + @@ -3020,45 +4091,64 @@ such as the duration. - Add @media specific info to @sdp. @info is used to configure the connection + Add @media specific info to @sdp. @info is used to configure the connection information in the SDP. + - TRUE on success. + TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstSDPMessage + a #GstSDPMessage - a #GstSDPInfo + a #GstSDPInfo - Suspend @media. The state of the pipeline managed by @media is set to + Suspend @media. The state of the pipeline managed by @media is set to GST_STATE_NULL but all streams are kept. @media can be prepared again with gst_rtsp_media_unsuspend() @media must be prepared with gst_rtsp_media_prepare(); + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia + @@ -3072,21 +4162,29 @@ with gst_rtsp_media_unsuspend() - Unprepare @media. After this call, the media should be prepared again before + Unprepare @media. After this call, the media should be prepared again before it can be used again. If the media is set to be non-reusable, a new instance must be created. + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia + @@ -3097,22 +4195,31 @@ must be created. - Unsuspend @media if it was in a suspended state. This method does nothing + Unsuspend @media if it was in a suspended state. This method does nothing when the media was not in the suspended state. + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - Find all payloader elements, they should be named pay\%d in the + Find all payloader elements, they should be named pay\%d in the element of @media, and create #GstRTSPStreams for them. Collect all dynamic elements, named dynpay\%d, and add them to @@ -3120,12 +4227,15 @@ the list of dynamic elements. Find all depayloader elements, they should be named depay\%d in the element of @media, and create #GstRTSPStreams for them. + - a #GstRTSPMedia + a #GstRTSPMedia @@ -3133,19 +4243,28 @@ element of @media, and create #GstRTSPStreams for them. - Add a receiver and sender parts to the pipeline based on the transport from + Add a receiver and sender parts to the pipeline based on the transport from SETUP. + - %TRUE if the media pipeline has been sucessfully updated. + %TRUE if the media pipeline has been sucessfully updated. - a #GstRTSPMedia + a #GstRTSPMedia - a list of #GstRTSPTransport + a list of #GstRTSPTransport @@ -3153,102 +4272,150 @@ SETUP. - Create a new stream in @media that provides RTP data on @pad. + Create a new stream in @media that provides RTP data on @pad. @pad should be a pad of an element inside @media->element. + - a new #GstRTSPStream that remains valid for as long + a new #GstRTSPStream that remains valid for as long as @media exists. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstElement + a #GstElement - a #GstPad + a #GstPad - Find a stream in @media with @control as the control uri. + Find a stream in @media with @control as the control uri. + - the #GstRTSPStream with + the #GstRTSPStream with control uri @control or %NULL when a stream with that control did not exist. - a #GstRTSPMedia + a #GstRTSPMedia - the control of the stream + the control of the stream - Get the #GstRTSPAddressPool used as the address pool of @media. + Get the #GstRTSPAddressPool used as the address pool of @media. + - the #GstRTSPAddressPool of @media. + the #GstRTSPAddressPool of @media. g_object_unref() after usage. - a #GstRTSPMedia + a #GstRTSPMedia - Get the base_time that is used by the pipeline in @media. + Get the base_time that is used by the pipeline in @media. @media must be prepared before this method returns a valid base_time. + - the base_time used by @media. + the base_time used by @media. - a #GstRTSPMedia + a #GstRTSPMedia - Get the kernel UDP buffer size. + Get the kernel UDP buffer size. + - the kernel UDP buffer size. + the kernel UDP buffer size. - a #GstRTSPMedia + a #GstRTSPMedia - Get the clock that is used by the pipeline in @media. + Get the clock that is used by the pipeline in @media. @media must be prepared before this method returns a valid clock object. + - the #GstClock used by @media. unref after usage. + the #GstClock used by @media. unref after usage. - a #GstRTSPMedia + a #GstRTSPMedia @@ -3256,8 +4423,11 @@ g_object_unref() after usage. + - Whether retransmission requests will be sent + Whether retransmission requests will be sent @@ -3267,27 +4437,41 @@ g_object_unref() after usage. - Get the element that was used when constructing @media. + Get the element that was used when constructing @media. + - a #GstElement. Unref after usage. + a #GstElement. Unref after usage. - a #GstRTSPMedia + a #GstRTSPMedia - Get the latency that is used for receiving media. + Get the latency that is used for receiving media. + - latency in milliseconds + latency in milliseconds - a #GstRTSPMedia + a #GstRTSPMedia @@ -3295,69 +4479,104 @@ g_object_unref() after usage. - Get the the maximum time-to-live value of outgoing multicast packets. + Get the the maximum time-to-live value of outgoing multicast packets. + - the maximum time-to-live value of outgoing multicast packets. + the maximum time-to-live value of outgoing multicast packets. - a #GstRTSPMedia + a #GstRTSPMedia - Get the multicast interface used for @media. + Get the multicast interface used for @media. + - the multicast interface for @media. + the multicast interface for @media. g_free() after usage. - a #GstRTSPMedia + a #GstRTSPMedia - Get the permissions object from @media. + Get the permissions object from @media. + - a #GstRTSPPermissions object, unref after usage. + a #GstRTSPPermissions object, unref after usage. - a #GstRTSPMedia + a #GstRTSPMedia - Get the allowed profiles of @media. + Get the allowed profiles of @media. + - a #GstRTSPProfile + a #GstRTSPProfile - a #GstRTSPMedia + a #GstRTSPMedia - Get the allowed protocols of @media. + Get the allowed protocols of @media. + - a #GstRTSPLowerTrans + a #GstRTSPLowerTrans - a #GstRTSPMedia + a #GstRTSPMedia @@ -3365,154 +4584,229 @@ g_free() after usage. - Gets if and how the media clock should be published according to RFC7273. + Gets if and how the media clock should be published according to RFC7273. + - The GstRTSPPublishClockMode + The GstRTSPPublishClockMode - a #GstRTSPMedia + a #GstRTSPMedia - Get the current range as a string. @media must be prepared with + Get the current range as a string. @media must be prepared with gst_rtsp_media_prepare (). + - The range as a string, g_free() after usage. + The range as a string, g_free() after usage. - a #GstRTSPMedia + a #GstRTSPMedia - for the PLAY request + for the PLAY request - the unit to use for the string + the unit to use for the string - Get the amount of time to store retransmission data. + Get the amount of time to store retransmission data. + - the amount of time to store retransmission data. + the amount of time to store retransmission data. - a #GstRTSPMedia + a #GstRTSPMedia - Get the status of @media. When @media is busy preparing, this function waits + Get the status of @media. When @media is busy preparing, this function waits until @media is prepared or in error. + - the status of @media. + the status of @media. - a #GstRTSPMedia + a #GstRTSPMedia - Retrieve the stream with index @idx from @media. + Retrieve the stream with index @idx from @media. + - the #GstRTSPStream at index + the #GstRTSPStream at index @idx or %NULL when a stream with that index did not exist. - a #GstRTSPMedia + a #GstRTSPMedia - the stream index + the stream index - Get how @media will be suspended. + Get how @media will be suspended. + - #GstRTSPSuspendMode. + #GstRTSPSuspendMode. - a #GstRTSPMedia + a #GstRTSPMedia - Get the #GstNetTimeProvider for the clock used by @media. The time provider + Get the #GstNetTimeProvider for the clock used by @media. The time provider will listen on @address and @port for client time requests. + - the #GstNetTimeProvider of @media. + the #GstNetTimeProvider of @media. - a #GstRTSPMedia + a #GstRTSPMedia - an address or %NULL + an address or %NULL - a port or 0 + a port or 0 - Check if the pipeline for @media can be used for PLAY or RECORD methods. + Check if the pipeline for @media can be used for PLAY or RECORD methods. + - The transport mode. + The transport mode. - a #GstRTSPMedia + a #GstRTSPMedia - Configure an SDP on @media for receiving streams + Configure an SDP on @media for receiving streams + - TRUE on success. + TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstSDPMessage + a #GstSDPMessage @@ -3520,144 +4814,211 @@ will listen on @address and @port for client time requests. - Check if multicast sockets are configured to be bound to multicast addresses. + Check if multicast sockets are configured to be bound to multicast addresses. + - %TRUE if multicast sockets are configured to be bound to multicast addresses. + %TRUE if multicast sockets are configured to be bound to multicast addresses. - a #GstRTSPMedia + a #GstRTSPMedia - Check if the pipeline for @media will send an EOS down the pipeline before + Check if the pipeline for @media will send an EOS down the pipeline before unpreparing. + - %TRUE if the media will send EOS before unpreparing. + %TRUE if the media will send EOS before unpreparing. - a #GstRTSPMedia + a #GstRTSPMedia - Check if the pipeline for @media can be reused after an unprepare. + Check if the pipeline for @media can be reused after an unprepare. + - %TRUE if the media can be reused + %TRUE if the media can be reused - a #GstRTSPMedia + a #GstRTSPMedia - Check if the pipeline for @media can be shared between multiple clients. + Check if the pipeline for @media can be shared between multiple clients. + - %TRUE if the media can be shared between clients. + %TRUE if the media can be shared between clients. - a #GstRTSPMedia + a #GstRTSPMedia - Check if the pipeline for @media will be stopped when a client disconnects + Check if the pipeline for @media will be stopped when a client disconnects without sending TEARDOWN. + - %TRUE if the media will be stopped when a client disconnects + %TRUE if the media will be stopped when a client disconnects without sending TEARDOWN. - a #GstRTSPMedia + a #GstRTSPMedia - Check if @media can provide a #GstNetTimeProvider for its pipeline clock. + Check if @media can provide a #GstNetTimeProvider for its pipeline clock. Use gst_rtsp_media_get_time_provider() to get the network clock. + - %TRUE if @media can provide a #GstNetTimeProvider. + %TRUE if @media can provide a #GstNetTimeProvider. - a #GstRTSPMedia + a #GstRTSPMedia - Get the number of streams in this media. + Get the number of streams in this media. + - The number of streams. + The number of streams. - a #GstRTSPMedia + a #GstRTSPMedia - Prepare @media for streaming. This function will create the objects + Prepare @media for streaming. This function will create the objects to manage the streaming. A pipeline must have been set on @media with gst_rtsp_media_take_pipeline(). It will preroll the pipeline and collect vital information about the streams such as the duration. + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstRTSPThread to run the + a #GstRTSPThread to run the bus handler or %NULL - Seek the pipeline of @media to @range. @media must be prepared with + Seek the pipeline of @media to @range. @media must be prepared with gst_rtsp_media_prepare(). + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstRTSPTimeRange + a #GstRTSPTimeRange @@ -3665,24 +5026,35 @@ gst_rtsp_media_prepare(). - Seek the pipeline of @media to @range. @media must be prepared with + Seek the pipeline of @media to @range. @media must be prepared with gst_rtsp_media_prepare(). In order to perform the seek operation, the pipeline must contain all needed transport parts (transport sinks). + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstRTSPTimeRange + a #GstRTSPTimeRange - The minimal set of #GstSeekFlags to use + The minimal set of #GstSeekFlags to use @@ -3690,37 +5062,51 @@ the pipeline must contain all needed transport parts (transport sinks). - Check if the pipeline for @media seek and up to what point in time, + Check if the pipeline for @media seek and up to what point in time, it can seek. + - -1 if the stream is not seekable, 0 if seekable only to the beginning + -1 if the stream is not seekable, 0 if seekable only to the beginning and > 0 to indicate the longest duration between any two random access points. %G_MAXINT64 means any value is possible. - a #GstRTSPMedia + a #GstRTSPMedia - configure @pool to be used as the address pool of @media. + configure @pool to be used as the address pool of @media. + - a #GstRTSPMedia + a #GstRTSPMedia - a #GstRTSPAddressPool + a #GstRTSPAddressPool @@ -3728,54 +5114,75 @@ and > 0 to indicate the longest duration between any two random access points - Decide whether the multicast socket should be bound to a multicast address or + Decide whether the multicast socket should be bound to a multicast address or INADDR_ANY. + - a #GstRTSPMedia + a #GstRTSPMedia - the new value + the new value - Set the kernel UDP buffer size. + Set the kernel UDP buffer size. + - a #GstRTSPMedia + a #GstRTSPMedia - the new value + the new value - Configure the clock used for the media. + Configure the clock used for the media. + - a #GstRTSPMedia + a #GstRTSPMedia - #GstClock to be used + #GstClock to be used @@ -3783,7 +5190,10 @@ INADDR_ANY. - Set whether retransmission requests will be sent + Set whether retransmission requests will be sent + @@ -3798,34 +5208,48 @@ INADDR_ANY. - Set or unset if an EOS event will be sent to the pipeline for @media before + Set or unset if an EOS event will be sent to the pipeline for @media before it is unprepared. + - a #GstRTSPMedia + a #GstRTSPMedia - the new value + the new value - Configure the latency used for receiving media. + Configure the latency used for receiving media. + - a #GstRTSPMedia + a #GstRTSPMedia - latency in milliseconds + latency in milliseconds @@ -3833,107 +5257,151 @@ it is unprepared. - Set the maximum time-to-live value of outgoing multicast packets. + Set the maximum time-to-live value of outgoing multicast packets. + - %TRUE if the requested ttl has been set successfully. + %TRUE if the requested ttl has been set successfully. - a #GstRTSPMedia + a #GstRTSPMedia - the new multicast ttl value + the new multicast ttl value - configure @multicast_iface to be used for @media. + configure @multicast_iface to be used for @media. + - a #GstRTSPMedia + a #GstRTSPMedia - a multicast interface name + a multicast interface name - Set @permissions on @media. + Set @permissions on @media. + - a #GstRTSPMedia + a #GstRTSPMedia - a #GstRTSPPermissions + a #GstRTSPPermissions - Set the state of the pipeline managed by @media to @state + Set the state of the pipeline managed by @media to @state + - a #GstRTSPMedia + a #GstRTSPMedia - the target state of the pipeline + the target state of the pipeline - Configure the allowed lower transport for @media. + Configure the allowed lower transport for @media. + - a #GstRTSPMedia + a #GstRTSPMedia - the new flags + the new flags - Configure the allowed lower transport for @media. + Configure the allowed lower transport for @media. + - a #GstRTSPMedia + a #GstRTSPMedia - the new flags + the new flags @@ -3941,17 +5409,24 @@ it is unprepared. - Sets if and how the media clock should be published according to RFC7273. + Sets if and how the media clock should be published according to RFC7273. + - a #GstRTSPMedia + a #GstRTSPMedia - the clock publish mode + the clock publish mode @@ -3959,75 +5434,107 @@ it is unprepared. - Set the amount of time to store retransmission packets. + Set the amount of time to store retransmission packets. + - a #GstRTSPMedia + a #GstRTSPMedia - the new value + the new value - Set or unset if the pipeline for @media can be reused after the pipeline has + Set or unset if the pipeline for @media can be reused after the pipeline has been unprepared. + - a #GstRTSPMedia + a #GstRTSPMedia - the new value + the new value - Set or unset if the pipeline for @media can be shared will multiple clients. + Set or unset if the pipeline for @media can be shared will multiple clients. When @shared is %TRUE, client requests for this media will share the media pipeline. + - a #GstRTSPMedia + a #GstRTSPMedia - the new value + the new value - Set the state of @media to @state and for the transports in @transports. + Set the state of @media to @state and for the transports in @transports. @media must be prepared with gst_rtsp_media_prepare(); + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - the target state of the media + the target state of the media - + a #GPtrArray of #GstRTSPStreamTransport pointers @@ -4037,157 +5544,224 @@ a #GPtrArray of #GstRTSPStreamTransport pointers - Set or unset if the pipeline for @media should be stopped when a + Set or unset if the pipeline for @media should be stopped when a client disconnects without sending TEARDOWN. + - a #GstRTSPMedia + a #GstRTSPMedia - the new value + the new value - Control how @ media will be suspended after the SDP has been generated and + Control how @ media will be suspended after the SDP has been generated and after a PAUSE request has been performed. Media must be unprepared when setting the suspend mode. + - a #GstRTSPMedia + a #GstRTSPMedia - the new #GstRTSPSuspendMode + the new #GstRTSPSuspendMode - Sets if the media pipeline can work in PLAY or RECORD mode + Sets if the media pipeline can work in PLAY or RECORD mode + - a #GstRTSPMedia + a #GstRTSPMedia - the new value + the new value - Add @media specific info to @sdp. @info is used to configure the connection + Add @media specific info to @sdp. @info is used to configure the connection information in the SDP. + - TRUE on success. + TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstSDPMessage + a #GstSDPMessage - a #GstSDPInfo + a #GstSDPInfo - Suspend @media. The state of the pipeline managed by @media is set to + Suspend @media. The state of the pipeline managed by @media is set to GST_STATE_NULL but all streams are kept. @media can be prepared again with gst_rtsp_media_unsuspend() @media must be prepared with gst_rtsp_media_prepare(); + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - Set @pipeline as the #GstPipeline for @media. Ownership is + Set @pipeline as the #GstPipeline for @media. Ownership is taken of @pipeline. + - a #GstRTSPMedia + a #GstRTSPMedia - a #GstPipeline + a #GstPipeline - Unprepare @media. After this call, the media should be prepared again before + Unprepare @media. After this call, the media should be prepared again before it can be used again. If the media is set to be non-reusable, a new instance must be created. + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - Unsuspend @media if it was in a suspended state. This method does nothing + Unsuspend @media if it was in a suspended state. This method does nothing when the media was not in the suspended state. + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - Set @media to provide a #GstNetTimeProvider. + Set @media to provide a #GstNetTimeProvider. + - a #GstRTSPMedia + a #GstRTSPMedia - if a #GstNetTimeProvider should be used + if a #GstNetTimeProvider should be used @@ -4251,7 +5825,7 @@ when the media was not in the suspended state. - + @@ -4309,12 +5883,16 @@ when the media was not in the suspended state. - The RTSP media class + The RTSP media class + + @@ -4330,20 +5908,27 @@ when the media was not in the suspended state. + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstRTSPThread to run the + a #GstRTSPThread to run the bus handler or %NULL @@ -4352,13 +5937,18 @@ when the media was not in the suspended state. + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia @@ -4366,13 +5956,18 @@ when the media was not in the suspended state. + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia @@ -4380,13 +5975,18 @@ when the media was not in the suspended state. + - %TRUE on success. + %TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia @@ -4394,6 +5994,7 @@ when the media was not in the suspended state. + @@ -4412,6 +6013,7 @@ when the media was not in the suspended state. + @@ -4427,6 +6029,7 @@ when the media was not in the suspended state. + @@ -4442,6 +6045,7 @@ when the media was not in the suspended state. + @@ -4454,6 +6058,7 @@ when the media was not in the suspended state. + @@ -4469,21 +6074,30 @@ when the media was not in the suspended state. + - TRUE on success. + TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstSDPMessage + a #GstSDPMessage - a #GstSDPInfo + a #GstSDPInfo @@ -4491,6 +6105,7 @@ when the media was not in the suspended state. + @@ -4506,6 +6121,7 @@ when the media was not in the suspended state. + @@ -4521,6 +6137,7 @@ when the media was not in the suspended state. + @@ -4533,6 +6150,7 @@ when the media was not in the suspended state. + @@ -4545,6 +6163,7 @@ when the media was not in the suspended state. + @@ -4560,6 +6179,7 @@ when the media was not in the suspended state. + @@ -4575,24 +6195,31 @@ when the media was not in the suspended state. + - TRUE on success. + TRUE on success. - a #GstRTSPMedia + a #GstRTSPMedia - a #GstSDPMessage + a #GstSDPMessage - + @@ -4604,16 +6231,25 @@ when the media was not in the suspended state. glib:type-name="GstRTSPMediaFactory" glib:get-type="gst_rtsp_media_factory_get_type" glib:type-struct="RTSPMediaFactoryClass"> - The definition and logic for constructing the pipeline for a media. The media + The definition and logic for constructing the pipeline for a media. The media can contain multiple streams like audio and video. + - Create a new #GstRTSPMediaFactory instance. + Create a new #GstRTSPMediaFactory instance. + - a new #GstRTSPMediaFactory object. + a new #GstRTSPMediaFactory object. + @@ -4627,7 +6263,9 @@ can contain multiple streams like audio and video. - Construct the media object and create its streams. Implementations + Construct the media object and create its streams. Implementations should create the needed gstreamer elements and add them to the result object. No state changes should be performed on them yet. @@ -4636,44 +6274,61 @@ with gst_rtsp_media_create_stream (). After the media is constructed, it can be configured and then prepared with gst_rtsp_media_prepare (). + - a new #GstRTSPMedia if the media could be prepared. + a new #GstRTSPMedia if the media could be prepared. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the url used + the url used - Construct and return a #GstElement that is a #GstBin containing + Construct and return a #GstElement that is a #GstBin containing the elements to use for streaming the media. The bin should contain payloaders pay\%d for each stream. The default implementation of this function returns the bin created from the launch parameter. + - a new #GstElement. + a new #GstElement. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the url used + the url used + @@ -4687,6 +6342,7 @@ launch parameter. + @@ -4700,6 +6356,7 @@ launch parameter. + @@ -4713,6 +6370,7 @@ launch parameter. + @@ -4728,27 +6386,38 @@ launch parameter. - A convenience method to add @role with @fieldname and additional arguments to + A convenience method to add @role with @fieldname and additional arguments to the permissions of @factory. If @factory had no permissions, new permissions will be created and the role will be added to it. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - a role + a role - the first field name + the first field name - additional arguments + additional arguments @@ -4756,9 +6425,12 @@ will be created and the role will be added to it. - A convenience wrapper around gst_rtsp_permissions_add_role_from_structure(). + A convenience wrapper around gst_rtsp_permissions_add_role_from_structure(). If @factory had no permissions, new permissions will be created and the role will be added to it. + @@ -4772,7 +6444,9 @@ role will be added to it. - Construct the media object and create its streams. Implementations + Construct the media object and create its streams. Implementations should create the needed gstreamer elements and add them to the result object. No state changes should be performed on them yet. @@ -4781,69 +6455,99 @@ with gst_rtsp_media_create_stream (). After the media is constructed, it can be configured and then prepared with gst_rtsp_media_prepare (). + - a new #GstRTSPMedia if the media could be prepared. + a new #GstRTSPMedia if the media could be prepared. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the url used + the url used - Construct and return a #GstElement that is a #GstBin containing + Construct and return a #GstElement that is a #GstBin containing the elements to use for streaming the media. The bin should contain payloaders pay\%d for each stream. The default implementation of this function returns the bin created from the launch parameter. + - a new #GstElement. + a new #GstElement. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the url used + the url used - Get the #GstRTSPAddressPool used as the address pool of @factory. + Get the #GstRTSPAddressPool used as the address pool of @factory. + - the #GstRTSPAddressPool of @factory. g_object_unref() after + the #GstRTSPAddressPool of @factory. g_object_unref() after usage. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get the kernel UDP buffer size. + Get the kernel UDP buffer size. + - the kernel UDP buffer size. + the kernel UDP buffer size. - a #GstRTSPMedia + a #GstRTSPMedia @@ -4851,15 +6555,22 @@ usage. - Returns the clock that is going to be used by the pipelines + Returns the clock that is going to be used by the pipelines of all medias created from this factory. + - The GstClock + The GstClock - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory @@ -4867,8 +6578,11 @@ of all medias created from this factory. + - Whether retransmission requests will be sent for receiving media + Whether retransmission requests will be sent for receiving media @@ -4879,30 +6593,44 @@ of all medias created from this factory. - Get the latency that is used for receiving media + Get the latency that is used for receiving media + - latency in milliseconds + latency in milliseconds - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get the gst_parse_launch() pipeline description that will be used in the + Get the gst_parse_launch() pipeline description that will be used in the default prepare vmethod. + - the configured launch description. g_free() after + the configured launch description. g_free() after usage. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory @@ -4910,14 +6638,21 @@ usage. - Get the the maximum time-to-live value of outgoing multicast packets. + Get the the maximum time-to-live value of outgoing multicast packets. + - the maximum time-to-live value of outgoing multicast packets. + the maximum time-to-live value of outgoing multicast packets. - a #GstRTSPMedia + a #GstRTSPMedia @@ -4925,71 +6660,104 @@ usage. - Return the GType of the GstRTSPMedia subclass this + Return the GType of the GstRTSPMedia subclass this factory will create. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get the multicast interface used for @factory. + Get the multicast interface used for @factory. + - the multicast interface for @factory. g_free() after + the multicast interface for @factory. g_free() after usage. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get the permissions object from @factory. + Get the permissions object from @factory. + - a #GstRTSPPermissions object, unref after usage. + a #GstRTSPPermissions object, unref after usage. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get the allowed profiles of @factory. + Get the allowed profiles of @factory. + - a #GstRTSPProfile + a #GstRTSPProfile - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get the allowed protocols of @factory. + Get the allowed protocols of @factory. + - a #GstRTSPLowerTrans + a #GstRTSPLowerTrans - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory @@ -4997,57 +6765,85 @@ usage. - Gets if and how the media clock should be published according to RFC7273. + Gets if and how the media clock should be published according to RFC7273. + - The GstRTSPPublishClockMode + The GstRTSPPublishClockMode - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get the time that is stored for retransmission purposes + Get the time that is stored for retransmission purposes + - a #GstClockTime + a #GstClockTime - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get how media created from this factory will be suspended. + Get how media created from this factory will be suspended. + - a #GstRTSPSuspendMode. + a #GstRTSPSuspendMode. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get if media created from this factory can be used for PLAY or RECORD + Get if media created from this factory can be used for PLAY or RECORD methods. + - The transport mode. + The transport mode. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory @@ -5055,48 +6851,70 @@ methods. - Check if multicast sockets are configured to be bound to multicast addresses. + Check if multicast sockets are configured to be bound to multicast addresses. + - %TRUE if multicast sockets are configured to be bound to multicast addresses. + %TRUE if multicast sockets are configured to be bound to multicast addresses. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get if media created from this factory will have an EOS event sent to the + Get if media created from this factory will have an EOS event sent to the pipeline before shutdown. + - %TRUE if the media will receive EOS before shutdown. + %TRUE if the media will receive EOS before shutdown. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Get if media created from this factory can be shared between clients. + Get if media created from this factory can be shared between clients. + - %TRUE if the media will be shared between clients. + %TRUE if the media will be shared between clients. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory + @@ -5108,20 +6926,27 @@ pipeline before shutdown. - configure @pool to be used as the address pool of @factory. + configure @pool to be used as the address pool of @factory. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - a #GstRTSPAddressPool + a #GstRTSPAddressPool @@ -5129,35 +6954,49 @@ pipeline before shutdown. - Decide whether the multicast socket should be bound to a multicast address or + Decide whether the multicast socket should be bound to a multicast address or INADDR_ANY. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the new value + the new value - Set the kernel UDP buffer size. + Set the kernel UDP buffer size. + - a #GstRTSPMedia + a #GstRTSPMedia - the new value + the new value @@ -5165,21 +7004,28 @@ INADDR_ANY. - Configures a specific clock to be used by the pipelines + Configures a specific clock to be used by the pipelines of all medias created from this factory. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the clock to be used by the media factory + the clock to be used by the media factory @@ -5187,8 +7033,11 @@ of all medias created from this factory. - Set whether retransmission requests will be sent for + Set whether retransmission requests will be sent for receiving media + @@ -5203,42 +7052,58 @@ receiving media - Configure if media created from this factory will have an EOS sent to the + Configure if media created from this factory will have an EOS sent to the pipeline before shutdown. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the new value + the new value - Configure the latency used for receiving media + Configure the latency used for receiving media + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - latency in milliseconds + latency in milliseconds - The gst_parse_launch() line to use for constructing the pipeline in the + The gst_parse_launch() line to use for constructing the pipeline in the default prepare vmethod. The pipeline description should return a GstBin as the toplevel element @@ -5247,16 +7112,21 @@ which can be accomplished by enclosing the description with brackets '(' The description should return a pipeline with payloaders named pay0, pay1, etc.. Each of the payloaders will result in a stream. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the launch description + the launch description @@ -5264,18 +7134,27 @@ etc.. Each of the payloaders will result in a stream. - Set the maximum time-to-live value of outgoing multicast packets. + Set the maximum time-to-live value of outgoing multicast packets. + - %TRUE if the requested ttl has been set successfully. + %TRUE if the requested ttl has been set successfully. - a #GstRTSPMedia + a #GstRTSPMedia - the new multicast ttl value + the new multicast ttl value @@ -5283,93 +7162,128 @@ etc.. Each of the payloaders will result in a stream. - Configure the GType of the GstRTSPMedia subclass to + Configure the GType of the GstRTSPMedia subclass to create (by default, overridden construct vmethods may of course do something different) + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the GType of the class to create + the GType of the class to create - configure @multicast_iface to be used for @factory. + configure @multicast_iface to be used for @factory. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - a multicast interface name + a multicast interface name - Set @permissions on @factory. + Set @permissions on @factory. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - a #GstRTSPPermissions + a #GstRTSPPermissions - Configure the allowed profiles for @factory. + Configure the allowed profiles for @factory. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the new flags + the new flags - Configure the allowed lower transport for @factory. + Configure the allowed lower transport for @factory. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the new flags + the new flags @@ -5377,17 +7291,24 @@ may of course do something different) - Sets if and how the media clock should be published according to RFC7273. + Sets if and how the media clock should be published according to RFC7273. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the clock publish mode + the clock publish mode @@ -5395,86 +7316,121 @@ may of course do something different) - Configure the time to store for possible retransmission + Configure the time to store for possible retransmission + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - a #GstClockTime + a #GstClockTime - Configure if media created from this factory can be shared between clients. + Configure if media created from this factory can be shared between clients. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the new value + the new value - Configure if media created from this factory should be stopped + Configure if media created from this factory should be stopped when a client disconnects without sending TEARDOWN. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the new value + the new value - Configure how media created from this factory will be suspended. + Configure how media created from this factory will be suspended. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the new #GstRTSPSuspendMode + the new #GstRTSPSuspendMode - Configure if this factory creates media for PLAY or RECORD modes. + Configure if this factory creates media for PLAY or RECORD modes. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the new value + the new value @@ -5530,7 +7486,7 @@ when a client disconnects without sending TEARDOWN. c:type="GstRTSPMediaFactoryPrivate*"/> - + @@ -5558,12 +7514,16 @@ when a client disconnects without sending TEARDOWN. - The #GstRTSPMediaFactory class structure. + The #GstRTSPMediaFactory class structure. + + @@ -5579,17 +7539,24 @@ when a client disconnects without sending TEARDOWN. + - a new #GstElement. + a new #GstElement. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the url used + the url used @@ -5597,17 +7564,24 @@ when a client disconnects without sending TEARDOWN. + - a new #GstRTSPMedia if the media could be prepared. + a new #GstRTSPMedia if the media could be prepared. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the url used + the url used @@ -5615,6 +7589,7 @@ when a client disconnects without sending TEARDOWN. + @@ -5630,6 +7605,7 @@ when a client disconnects without sending TEARDOWN. + @@ -5645,6 +7621,7 @@ when a client disconnects without sending TEARDOWN. + @@ -5660,6 +7637,7 @@ when a client disconnects without sending TEARDOWN. + @@ -5674,7 +7652,7 @@ when a client disconnects without sending TEARDOWN. - + @@ -5682,6 +7660,7 @@ when a client disconnects without sending TEARDOWN. + glib:type-name="GstRTSPMediaFactoryURI" glib:get-type="gst_rtsp_media_factory_uri_get_type" glib:type-struct="RTSPMediaFactoryURIClass"> - A media factory that creates a pipeline to play and uri. + A media factory that creates a pipeline to play and uri. + - Create a new #GstRTSPMediaFactoryURI instance. + Create a new #GstRTSPMediaFactoryURI instance. + - a new #GstRTSPMediaFactoryURI object. + a new #GstRTSPMediaFactoryURI object. - Get the URI that will provide media for this factory. + Get the URI that will provide media for this factory. + - the configured URI. g_free() after usage. + the configured URI. g_free() after usage. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Set the URI of the resource that will be streamed by this factory. + Set the URI of the resource that will be streamed by this factory. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the uri the stream + the uri the stream @@ -5741,7 +7742,7 @@ when a client disconnects without sending TEARDOWN. c:type="GstRTSPMediaFactoryURIPrivate*"/> - + @@ -5749,12 +7750,15 @@ when a client disconnects without sending TEARDOWN. - The #GstRTSPMediaFactoryURI class structure. + The #GstRTSPMediaFactoryURI class structure. + - + @@ -5762,46 +7766,66 @@ when a client disconnects without sending TEARDOWN. + + - The state of the media pipeline. + The state of the media pipeline. + - media pipeline not prerolled + media pipeline not prerolled - media pipeline is busy doing a clean + media pipeline is busy doing a clean shutdown. - media pipeline is prerolling + media pipeline is prerolling - media pipeline is prerolled + media pipeline is prerolled - media is suspended + media is suspended - media pipeline is in error + media pipeline is in error - Function registered with gst_rtsp_stream_transport_set_message_sent() + Function registered with gst_rtsp_stream_transport_set_message_sent() and called when a message has been sent on the transport. + @@ -5811,7 +7835,9 @@ and called when a message has been sent on the transport. nullable="1" allow-none="1" closure="0"> - user data + user data @@ -5823,91 +7849,135 @@ and called when a message has been sent on the transport. glib:type-name="GstRTSPMountPoints" glib:get-type="gst_rtsp_mount_points_get_type" glib:type-struct="RTSPMountPointsClass"> - Creates a #GstRTSPMediaFactory object for a given url. + Creates a #GstRTSPMediaFactory object for a given url. + - Make a new mount points object. + Make a new mount points object. + - a new #GstRTSPMountPoints + a new #GstRTSPMountPoints - Make a path string from @url. + Make a path string from @url. + - a path string for @url, g_free() after usage. + a path string for @url, g_free() after usage. - a #GstRTSPMountPoints + a #GstRTSPMountPoints - a #GstRTSPUrl + a #GstRTSPUrl - Attach @factory to the mount point @path in @mounts. + Attach @factory to the mount point @path in @mounts. @path is of the form (/node)+. Any previous mount point will be freed. Ownership is taken of the reference on @factory so that @factory should not be used after calling this function. + - a #GstRTSPMountPoints + a #GstRTSPMountPoints - a mount point + a mount point - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - Make a path string from @url. + Make a path string from @url. + - a path string for @url, g_free() after usage. + a path string for @url, g_free() after usage. - a #GstRTSPMountPoints + a #GstRTSPMountPoints - a #GstRTSPUrl + a #GstRTSPUrl - Find the factory in @mounts that has the longest match with @path. + Find the factory in @mounts that has the longest match with @path. If @matched is %NULL, @path will match the factory exactly otherwise the amount of characters that matched is returned in @matched. + - the #GstRTSPMediaFactory for @path. + the #GstRTSPMediaFactory for @path. g_object_unref() after usage. - a #GstRTSPMountPoints + a #GstRTSPMountPoints - a mount point + a mount point transfer-ownership="full" optional="1" allow-none="1"> - the amount of @path matched + the amount of @path matched - Remove the #GstRTSPMediaFactory associated with @path in @mounts. + Remove the #GstRTSPMediaFactory associated with @path in @mounts. + - a #GstRTSPMountPoints + a #GstRTSPMountPoints - a mount point + a mount point @@ -5946,7 +8025,7 @@ g_object_unref() after usage. c:type="GstRTSPMountPointsPrivate*"/> - + @@ -5954,30 +8033,40 @@ g_object_unref() after usage. - The class for the media mounts object. + The class for the media mounts object. + + - a path string for @url, g_free() after usage. + a path string for @url, g_free() after usage. - a #GstRTSPMountPoints + a #GstRTSPMountPoints - a #GstRTSPUrl + a #GstRTSPUrl - + @@ -5985,6 +8074,7 @@ g_object_unref() after usage. + glib:type-name="GstRTSPOnvifClient" glib:get-type="gst_rtsp_onvif_client_get_type" glib:type-struct="RTSPOnvifClientClass"> + - + @@ -6006,11 +8097,12 @@ g_object_unref() after usage. + - + @@ -6023,22 +8115,30 @@ g_object_unref() after usage. glib:type-name="GstRTSPOnvifMedia" glib:get-type="gst_rtsp_onvif_media_get_type" glib:type-struct="RTSPOnvifMediaClass"> + - Find the ONVIF backchannel depayloader element. It should be named + Find the ONVIF backchannel depayloader element. It should be named 'depay_backchannel', be placed in a bin called 'onvif-backchannel' and return all supported RTP caps on a caps query. Complete RTP caps with at least the payload type, clock-rate and encoding-name are required. A new #GstRTSPStream is created for the backchannel if found. + - %TRUE if a backchannel stream could be found and created + %TRUE if a backchannel stream could be found and created - a #GstRTSPOnvifMedia + a #GstRTSPOnvifMedia @@ -6046,15 +8146,22 @@ A new #GstRTSPStream is created for the backchannel if found. - Get the configured/supported bandwidth of the ONVIF backchannel pipeline in + Get the configured/supported bandwidth of the ONVIF backchannel pipeline in bits per second. + - the configured/supported backchannel bandwidth. + the configured/supported backchannel bandwidth. - a #GstRTSPMedia + a #GstRTSPMedia @@ -6062,18 +8169,25 @@ bits per second. - Set the configured/supported bandwidth of the ONVIF backchannel pipeline in + Set the configured/supported bandwidth of the ONVIF backchannel pipeline in bits per second. + - a #GstRTSPMedia + a #GstRTSPMedia - the bandwidth in bits per second + the bandwidth in bits per second @@ -6085,7 +8199,7 @@ bits per second. - + @@ -6093,11 +8207,12 @@ bits per second. + - + @@ -6110,26 +8225,39 @@ bits per second. glib:type-name="GstRTSPOnvifMediaFactory" glib:get-type="gst_rtsp_onvif_media_factory_get_type" glib:type-struct="RTSPOnvifMediaFactoryClass"> + - Create a new #GstRTSPOnvifMediaFactory + Create a new #GstRTSPOnvifMediaFactory + - A new #GstRTSPOnvifMediaFactory + A new #GstRTSPOnvifMediaFactory - Checks whether the client request requires backchannel. + Checks whether the client request requires backchannel. + - %TRUE if the client request requires backchannel. + %TRUE if the client request requires backchannel. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory @@ -6140,14 +8268,21 @@ bits per second. - Returns %TRUE if an ONVIF backchannel is supported by the media factory. + Returns %TRUE if an ONVIF backchannel is supported by the media factory. + - %TRUE if an ONVIF backchannel is supported by the media factory. + %TRUE if an ONVIF backchannel is supported by the media factory. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory @@ -6156,15 +8291,22 @@ bits per second. - Get the configured/supported bandwidth of the ONVIF backchannel pipeline in + Get the configured/supported bandwidth of the ONVIF backchannel pipeline in bits per second. + - the configured/supported backchannel bandwidth. + the configured/supported backchannel bandwidth. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory @@ -6173,16 +8315,23 @@ bits per second. - Get the gst_parse_launch() pipeline description that will be used in the + Get the gst_parse_launch() pipeline description that will be used in the default prepare vmethod for generating the ONVIF backchannel pipeline. + - the configured backchannel launch description. g_free() after + the configured backchannel launch description. g_free() after usage. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory @@ -6191,14 +8340,21 @@ usage. - Returns %TRUE if an ONVIF backchannel is supported by the media factory. + Returns %TRUE if an ONVIF backchannel is supported by the media factory. + - %TRUE if an ONVIF backchannel is supported by the media factory. + %TRUE if an ONVIF backchannel is supported by the media factory. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory @@ -6207,19 +8363,26 @@ usage. - Set the configured/supported bandwidth of the ONVIF backchannel pipeline in + Set the configured/supported bandwidth of the ONVIF backchannel pipeline in bits per second. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the bandwidth in bits per second + the bandwidth in bits per second @@ -6227,7 +8390,9 @@ bits per second. - The gst_parse_launch() line to use for constructing the ONVIF backchannel + The gst_parse_launch() line to use for constructing the ONVIF backchannel pipeline in the default prepare vmethod if requested by the client. The pipeline description should return a GstBin as the toplevel element @@ -6243,17 +8408,22 @@ Note: The pipeline part passed here must end in sinks that are not waiting until pre-rolling before reaching the PAUSED state, i.e. setting async=false on #GstBaseSink. Otherwise the whole media will not be able to prepare. + - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory - the launch description + the launch description @@ -6266,7 +8436,7 @@ prepare. c:type="GstRTSPOnvifMediaFactoryPrivate*"/> - + @@ -6274,18 +8444,24 @@ prepare. + + - %TRUE if an ONVIF backchannel is supported by the media factory. + %TRUE if an ONVIF backchannel is supported by the media factory. - a #GstRTSPMediaFactory + a #GstRTSPMediaFactory @@ -6293,7 +8469,7 @@ prepare. - + @@ -6301,10 +8477,12 @@ prepare. + + glib:type-name="GstRTSPOnvifServer" glib:get-type="gst_rtsp_onvif_server_get_type" glib:type-struct="RTSPOnvifServerClass"> + - Create a new #GstRTSPOnvifServer instance. + Create a new #GstRTSPOnvifServer instance. + - a new #GstRTSPOnvifServer + a new #GstRTSPOnvifServer @@ -6325,7 +8509,7 @@ prepare. - + @@ -6333,11 +8517,12 @@ prepare. + - + @@ -6347,40 +8532,59 @@ prepare. glib:type-name="GstRTSPPermissions" glib:get-type="gst_rtsp_permissions_get_type" c:symbol-prefix="rtsp_permissions"> - The opaque permissions structure. It is used to define the permissions + The opaque permissions structure. It is used to define the permissions of objects in different roles. + - Create a new empty Authorization permissions. + Create a new empty Authorization permissions. + - a new empty authorization permissions. + a new empty authorization permissions. - Add a new @permission for @role to @permissions with the access in @allowed. + Add a new @permission for @role to @permissions with the access in @allowed. + - a #GstRTSPPermissions + a #GstRTSPPermissions - a role + a role - the permission + the permission - whether the role has this permission or not + whether the role has this permission or not @@ -6389,26 +8593,37 @@ of objects in different roles. c:identifier="gst_rtsp_permissions_add_role" shadowed-by="add_role_empty" introspectable="0"> - Add a new @role to @permissions with the given variables. The fields + Add a new @role to @permissions with the given variables. The fields are the same layout as gst_structure_new(). + - a #GstRTSPPermissions + a #GstRTSPPermissions - a role + a role - the first field name + the first field name - additional arguments + additional arguments @@ -6417,18 +8632,25 @@ are the same layout as gst_structure_new(). c:identifier="gst_rtsp_permissions_add_role_empty" shadows="add_role" version="1.14"> - Add a new @role to @permissions without any permissions. You can add + Add a new @role to @permissions without any permissions. You can add permissions for the role with gst_rtsp_permissions_add_permission_for_role(). + - a #GstRTSPPermissions + a #GstRTSPPermissions - a role + a role @@ -6436,13 +8658,16 @@ permissions for the role with gst_rtsp_permissions_add_permission_for_role(). - Add a new role to @permissions based on @structure, for example + Add a new role to @permissions based on @structure, for example given a role named `tester`, which should be granted a permission named `permission1`, the structure could be created with: ``` gst_structure_new ("tester", "permission1", G_TYPE_BOOLEAN, TRUE, NULL); ``` + @@ -6458,82 +8683,120 @@ gst_structure_new ("tester", "permission1", G_TYPE_BOOLEAN, TRUE, NULL); - Add a new @role to @permissions with the given variables. Structure fields + Add a new @role to @permissions with the given variables. Structure fields are set according to the varargs in a manner similar to gst_structure_new(). + - a #GstRTSPPermissions + a #GstRTSPPermissions - a role + a role - the first field name + the first field name - additional fields to add + additional fields to add - Get all permissions for @role in @permissions. + Get all permissions for @role in @permissions. + - the structure with permissions for @role. It + the structure with permissions for @role. It remains valid for as long as @permissions is valid. - a #GstRTSPPermissions + a #GstRTSPPermissions - a role + a role - Check if @role in @permissions is given permission for @permission. + Check if @role in @permissions is given permission for @permission. + - %TRUE if @role is allowed @permission. + %TRUE if @role is allowed @permission. - a #GstRTSPPermissions + a #GstRTSPPermissions - a role + a role - a permission + a permission - Remove all permissions for @role in @permissions. + Remove all permissions for @role in @permissions. + - a #GstRTSPPermissions + a #GstRTSPPermissions - a role + a role @@ -6543,40 +8806,57 @@ remains valid for as long as @permissions is valid. glib:type-name="GstRTSPPublishClockMode" glib:get-type="gst_rtsp_publish_clock_mode_get_type" c:type="GstRTSPPublishClockMode"> - Whether the clock and possibly RTP/clock offset should be published according to RFC7273. + Whether the clock and possibly RTP/clock offset should be published according to RFC7273. - Publish nothing + Publish nothing - Publish the clock but not the offset + Publish the clock but not the offset - Publish the clock and offset + Publish the clock and offset - Function registered with gst_rtsp_stream_transport_set_callbacks() and + Function registered with gst_rtsp_stream_transport_set_callbacks() and called when @buffer must be sent on @channel. + - %TRUE on success + %TRUE on success - a #GstBuffer + a #GstBuffer - a channel + a channel nullable="1" allow-none="1" closure="2"> - user data + user data @@ -6592,19 +8874,28 @@ called when @buffer must be sent on @channel. - Function registered with gst_rtsp_stream_transport_set_callbacks() and + Function registered with gst_rtsp_stream_transport_set_callbacks() and called when @buffer_list must be sent on @channel. + - %TRUE on success + %TRUE on success - a #GstBufferList + a #GstBufferList - a channel + a channel nullable="1" allow-none="1" closure="2"> - user data + user data @@ -6624,38 +8917,58 @@ called when @buffer_list must be sent on @channel. glib:type-name="GstRTSPServer" glib:get-type="gst_rtsp_server_get_type" glib:type-struct="RTSPServerClass"> - This object listens on a port, creates and manages the clients connected to + This object listens on a port, creates and manages the clients connected to it. + - Create a new #GstRTSPServer instance. + Create a new #GstRTSPServer instance. + - a new #GstRTSPServer + a new #GstRTSPServer - A default #GSocketSourceFunc that creates a new #GstRTSPClient to accept and handle a + A default #GSocketSourceFunc that creates a new #GstRTSPClient to accept and handle a new connection on @socket or @server. + - TRUE if the source could be connected, FALSE if an error occurred. + TRUE if the source could be connected, FALSE if an error occurred. - a #GSocket + a #GSocket - the condition on @source + the condition on @source - a #GstRTSPServer + a #GstRTSPServer + @@ -6669,6 +8982,7 @@ new connection on @socket or @server. + @@ -6679,7 +8993,9 @@ new connection on @socket or @server. - Attaches @server to @context. When the mainloop for @context is run, the + Attaches @server to @context. When the mainloop for @context is run, the server will be dispatched. When @context is %NULL, the default context will be used). @@ -6691,27 +9007,36 @@ if @context is not the default main context as returned by g_main_context_default() (or %NULL), g_source_remove() cannot be used to destroy the source. In that case it is recommended to use gst_rtsp_server_create_source() and attach it to @context manually. + - the ID (greater than 0) for the source within the GMainContext. + the ID (greater than 0) for the source within the GMainContext. - a #GstRTSPServer + a #GstRTSPServer - a #GMainContext + a #GMainContext - Call @func for each client managed by @server. The result value of @func + Call @func for each client managed by @server. The result value of @func determines what happens to the client. @func will be called with @server locked so no further actions on @server can be performed from @func. @@ -6725,8 +9050,11 @@ will also be added with an additional ref to the result #GList of this function.. When @func is %NULL, #GST_RTSP_FILTER_REF will be assumed for each client. + - a #GList with all + a #GList with all clients for which @func returned #GST_RTSP_FILTER_REF. After usage, each element in the #GList should be unreffed before the list is freed. @@ -6735,7 +9063,9 @@ element in the #GList should be unreffed before the list is freed. - a #GstRTSPServer + a #GstRTSPServer allow-none="1" scope="call" closure="1"> - a callback + a callback @@ -6752,7 +9084,9 @@ element in the #GList should be unreffed before the list is freed. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to @func + user data passed to @func @@ -6760,23 +9094,32 @@ element in the #GList should be unreffed before the list is freed. - Create a #GSocket for @server. The socket will listen on the + Create a #GSocket for @server. The socket will listen on the configured service. + - the #GSocket for @server or %NULL when an error + the #GSocket for @server or %NULL when an error occurred. - a #GstRTSPServer + a #GstRTSPServer - a #GCancellable + a #GCancellable @@ -6784,7 +9127,9 @@ occurred. - Create a #GSource for @server. The new source will have a default + Create a #GSource for @server. The new source will have a default #GSocketSourceFunc of gst_rtsp_server_io_func(). @cancellable if not %NULL can be used to cancel the source, which will cause @@ -6793,215 +9138,308 @@ unless cancellation happened at the same time as a condition change). You can check for this in the callback using g_cancellable_is_cancelled(). This takes a reference on @server until @source is destroyed. + - the #GSource for @server or %NULL when an error + the #GSource for @server or %NULL when an error occurred. Free with g_source_unref () - a #GstRTSPServer + a #GstRTSPServer - a #GCancellable or %NULL. + a #GCancellable or %NULL. - Get the address on which the server will accept connections. + Get the address on which the server will accept connections. + - the server address. g_free() after usage. + the server address. g_free() after usage. - a #GstRTSPServer + a #GstRTSPServer - Get the #GstRTSPAuth used as the authentication manager of @server. + Get the #GstRTSPAuth used as the authentication manager of @server. + - the #GstRTSPAuth of @server. g_object_unref() after + the #GstRTSPAuth of @server. g_object_unref() after usage. - a #GstRTSPServer + a #GstRTSPServer - The maximum amount of queued requests for the server. + The maximum amount of queued requests for the server. + - the server backlog. + the server backlog. - a #GstRTSPServer + a #GstRTSPServer - Get the port number where the server was bound to. + Get the port number where the server was bound to. + - the port number + the port number - a #GstRTSPServer + a #GstRTSPServer - Get the #GstRTSPMountPoints used as the mount points of @server. + Get the #GstRTSPMountPoints used as the mount points of @server. + - the #GstRTSPMountPoints of @server. g_object_unref() after + the #GstRTSPMountPoints of @server. g_object_unref() after usage. - a #GstRTSPServer + a #GstRTSPServer - Get the service on which the server will accept connections. + Get the service on which the server will accept connections. + - the service. use g_free() after usage. + the service. use g_free() after usage. - a #GstRTSPServer + a #GstRTSPServer - Get the #GstRTSPSessionPool used as the session pool of @server. + Get the #GstRTSPSessionPool used as the session pool of @server. + - the #GstRTSPSessionPool used for sessions. g_object_unref() after + the #GstRTSPSessionPool used for sessions. g_object_unref() after usage. - a #GstRTSPServer + a #GstRTSPServer - Get the #GstRTSPThreadPool used as the thread pool of @server. + Get the #GstRTSPThreadPool used as the thread pool of @server. + - the #GstRTSPThreadPool of @server. g_object_unref() after + the #GstRTSPThreadPool of @server. g_object_unref() after usage. - a #GstRTSPServer + a #GstRTSPServer - Configure @server to accept connections on the given address. + Configure @server to accept connections on the given address. This function must be called before the server is bound. + - a #GstRTSPServer + a #GstRTSPServer - the address + the address - configure @auth to be used as the authentication manager of @server. + configure @auth to be used as the authentication manager of @server. + - a #GstRTSPServer + a #GstRTSPServer - a #GstRTSPAuth + a #GstRTSPAuth - configure the maximum amount of requests that may be queued for the + configure the maximum amount of requests that may be queued for the server. This function must be called before the server is bound. + - a #GstRTSPServer + a #GstRTSPServer - the backlog + the backlog - configure @mounts to be used as the mount points of @server. + configure @mounts to be used as the mount points of @server. + - a #GstRTSPServer + a #GstRTSPServer - a #GstRTSPMountPoints + a #GstRTSPMountPoints - Configure @server to accept connections on the given service. + Configure @server to accept connections on the given service. @service should be a string containing the service name (see services(5)) or a string containing a port number between 1 and 65535. @@ -7010,92 +9448,126 @@ port. The actual used port can be retrieved with gst_rtsp_server_get_bound_port(). This function must be called before the server is bound. + - a #GstRTSPServer + a #GstRTSPServer - the service + the service - configure @pool to be used as the session pool of @server. + configure @pool to be used as the session pool of @server. + - a #GstRTSPServer + a #GstRTSPServer - a #GstRTSPSessionPool + a #GstRTSPSessionPool - configure @pool to be used as the thread pool of @server. + configure @pool to be used as the thread pool of @server. + - a #GstRTSPServer + a #GstRTSPServer - a #GstRTSPThreadPool + a #GstRTSPThreadPool - Take an existing network socket and use it for an RTSP connection. This + Take an existing network socket and use it for an RTSP connection. This is used when transferring a socket from an HTTP server which should be used as an RTSP over HTTP tunnel. The @initial_buffer contains any remaining data that the HTTP server read from the socket while parsing the HTTP header. + - TRUE if all was ok, FALSE if an error occurred. + TRUE if all was ok, FALSE if an error occurred. - a #GstRTSPServer + a #GstRTSPServer - a network socket + a network socket - the IP address of the remote client + the IP address of the remote client - the port used by the other end + the port used by the other end - any initial data that was already read from the socket + any initial data that was already read from the socket @@ -7125,7 +9597,7 @@ that the HTTP server read from the socket while parsing the HTTP header. - + @@ -7143,12 +9615,16 @@ that the HTTP server read from the socket while parsing the HTTP header. - The RTSP server class structure + The RTSP server class structure + + @@ -7161,6 +9637,7 @@ that the HTTP server read from the socket while parsing the HTTP header. + @@ -7175,14 +9652,16 @@ that the HTTP server read from the socket while parsing the HTTP header. - + - This function will be called by the gst_rtsp_server_client_filter(). An + This function will be called by the gst_rtsp_server_client_filter(). An implementation should return a value of #GstRTSPFilterResult. When this function returns #GST_RTSP_FILTER_REMOVE, @client will be removed @@ -7193,17 +9672,24 @@ A return value of #GST_RTSP_FILTER_KEEP will leave @client untouched in A value of #GST_RTSP_FILTER_REF will add @client to the result #GList of gst_rtsp_server_client_filter(). + - a #GstRTSPFilterResult. + a #GstRTSPFilterResult. - a #GstRTSPServer object + a #GstRTSPServer object - a #GstRTSPClient in @server + a #GstRTSPClient in @server nullable="1" allow-none="1" closure="2"> - user data that has been given to gst_rtsp_server_client_filter() + user data that has been given to gst_rtsp_server_client_filter() @@ -7219,6 +9707,7 @@ gst_rtsp_server_client_filter(). + glib:type-name="GstRTSPSession" glib:get-type="gst_rtsp_session_get_type" glib:type-struct="RTSPSessionClass"> - Session information kept by the server for a specific client. + Session information kept by the server for a specific client. One client session, identified with a session id, can handle multiple medias identified with the url of a media. + - Create a new #GstRTSPSession instance with @sessionid. + Create a new #GstRTSPSession instance with @sessionid. + - a new #GstRTSPSession + a new #GstRTSPSession - a session id + a session id - Allow @session to expire. This method must be called an equal + Allow @session to expire. This method must be called an equal amount of time as gst_rtsp_session_prevent_expire(). + - a #GstRTSPSession + a #GstRTSPSession - Call @func for each media in @sess. The result value of @func determines + Call @func for each media in @sess. The result value of @func determines what happens to the media. @func will be called with @sess locked so no further actions on @sess can be performed from @func. @@ -7271,8 +9777,11 @@ will also be added with an additional ref to the result #GList of this function.. When @func is %NULL, #GST_RTSP_FILTER_REF will be assumed for all media. + - a GList with all + a GList with all media for which @func returned #GST_RTSP_FILTER_REF. After usage, each element in the #GList should be unreffed before the list is freed. @@ -7281,7 +9790,9 @@ element in the #GList should be unreffed before the list is freed. - a #GstRTSPSession + a #GstRTSPSession allow-none="1" scope="call" closure="1"> - a callback + a callback @@ -7298,74 +9811,108 @@ element in the #GList should be unreffed before the list is freed. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to @func + user data passed to @func - Get the string that can be placed in the Session header field. + Get the string that can be placed in the Session header field. + - the Session header of @session. + the Session header of @session. g_free() after usage. - a #GstRTSPSession + a #GstRTSPSession - Get the session media for @path. @matched will contain the number of matched + Get the session media for @path. @matched will contain the number of matched characters of @path. + - the configuration for @path in @sess. + the configuration for @path in @sess. - a #GstRTSPSession + a #GstRTSPSession - the path for the media + the path for the media - the amount of matched characters + the amount of matched characters - Get the sessionid of @session. + Get the sessionid of @session. + - the sessionid of @session. + the sessionid of @session. The value remains valid as long as @session is alive. - a #GstRTSPSession + a #GstRTSPSession - Get the timeout value of @session. + Get the timeout value of @session. + - the timeout of @session in seconds. + the timeout of @session in seconds. - a #GstRTSPSession + a #GstRTSPSession @@ -7373,61 +9920,90 @@ The value remains valid as long as @session is alive. - Check if @session timeout out. + Check if @session timeout out. Use gst_rtsp_session_is_expired_usec() instead. + - %TRUE if @session timed out + %TRUE if @session timed out - a #GstRTSPSession + a #GstRTSPSession - the current system time + the current system time - Check if @session timeout out. + Check if @session timeout out. + - %TRUE if @session timed out + %TRUE if @session timed out - a #GstRTSPSession + a #GstRTSPSession - the current monotonic time + the current monotonic time - Manage the media object @obj in @sess. @path will be used to retrieve this + Manage the media object @obj in @sess. @path will be used to retrieve this media from the session with gst_rtsp_session_get_media(). Ownership is taken from @media. + - a new @GstRTSPSessionMedia object. + a new @GstRTSPSessionMedia object. - a #GstRTSPSession + a #GstRTSPSession - the path for the media + the path for the media - a #GstRTSPMedia + a #GstRTSPMedia @@ -7435,97 +10011,141 @@ Ownership is taken from @media. - Get the amount of milliseconds till the session will expire. + Get the amount of milliseconds till the session will expire. Use gst_rtsp_session_next_timeout_usec() instead. + - the amount of milliseconds since the session will time out. + the amount of milliseconds since the session will time out. - a #GstRTSPSession + a #GstRTSPSession - the current system time + the current system time - Get the amount of milliseconds till the session will expire. + Get the amount of milliseconds till the session will expire. + - the amount of milliseconds since the session will time out. + the amount of milliseconds since the session will time out. - a #GstRTSPSession + a #GstRTSPSession - the current monotonic time + the current monotonic time - Prevent @session from expiring. + Prevent @session from expiring. + - a #GstRTSPSession + a #GstRTSPSession - Release the managed @media in @sess, freeing the memory allocated by it. + Release the managed @media in @sess, freeing the memory allocated by it. + - %TRUE if there are more media session left in @sess. + %TRUE if there are more media session left in @sess. - a #GstRTSPSession + a #GstRTSPSession - a #GstRTSPMedia + a #GstRTSPMedia - Configure @session for a timeout of @timeout seconds. The session will be + Configure @session for a timeout of @timeout seconds. The session will be cleaned up when there is no activity for @timeout seconds. + - a #GstRTSPSession + a #GstRTSPSession - the new timeout + the new timeout - Update the last_access time of the session to the current time. + Update the last_access time of the session to the current time. + - a #GstRTSPSession + a #GstRTSPSession @@ -7551,7 +10171,7 @@ cleaned up when there is no activity for @timeout seconds. - + @@ -7559,17 +10179,20 @@ cleaned up when there is no activity for @timeout seconds. + - + - This function will be called by the gst_rtsp_session_filter(). An + This function will be called by the gst_rtsp_session_filter(). An implementation should return a value of #GstRTSPFilterResult. When this function returns #GST_RTSP_FILTER_REMOVE, @media will be removed @@ -7580,17 +10203,24 @@ A return value of #GST_RTSP_FILTER_KEEP will leave @media untouched in A value of GST_RTSP_FILTER_REF will add @media to the result #GList of gst_rtsp_session_filter(). + - a #GstRTSPFilterResult. + a #GstRTSPFilterResult. - a #GstRTSPSession object + a #GstRTSPSession object - a #GstRTSPSessionMedia in @sess + a #GstRTSPSessionMedia in @sess nullable="1" allow-none="1" closure="2"> - user data that has been given to gst_rtsp_session_filter() + user data that has been given to gst_rtsp_session_filter() @@ -7610,122 +10242,180 @@ gst_rtsp_session_filter(). glib:type-name="GstRTSPSessionMedia" glib:get-type="gst_rtsp_session_media_get_type" glib:type-struct="RTSPSessionMediaClass"> - State of a client session regarding a specific media identified by path. + State of a client session regarding a specific media identified by path. + - Create a new #GstRTSPSessionMedia that manages the streams + Create a new #GstRTSPSessionMedia that manages the streams in @media for @path. @media should be prepared. Ownership is taken of @media. + - a new #GstRTSPSessionMedia. + a new #GstRTSPSessionMedia. - the path + the path - the #GstRTSPMedia + the #GstRTSPMedia - Fill @range with the next available min and max channels for + Fill @range with the next available min and max channels for interleaved transport. + - %TRUE on success. + %TRUE on success. - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - a #GstRTSPRange + a #GstRTSPRange - Get the base_time of the #GstRTSPMedia in @media + Get the base_time of the #GstRTSPMedia in @media + - the base_time of the media. + the base_time of the media. - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - Get the #GstRTSPMedia that was used when constructing @media + Get the #GstRTSPMedia that was used when constructing @media + - the #GstRTSPMedia of @media. + the #GstRTSPMedia of @media. Remains valid as long as @media is valid. - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - Retrieve the RTP-Info header string for all streams in @media + Retrieve the RTP-Info header string for all streams in @media with configured transports. + - The RTP-Info as a string or + The RTP-Info as a string or %NULL when no RTP-Info could be generated, g_free() after usage. - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - Get the current RTSP state of @media. + Get the current RTSP state of @media. + - the current RTSP state of @media. + the current RTSP state of @media. - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - Get a previously created #GstRTSPStreamTransport for the stream at @idx. + Get a previously created #GstRTSPStreamTransport for the stream at @idx. + - a #GstRTSPStreamTransport that is + a #GstRTSPStreamTransport that is valid until the session of @media is unreffed. - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - the stream index + the stream index @@ -7733,9 +10423,14 @@ valid until the session of @media is unreffed. - Get a list of all available #GstRTSPStreamTransport in this session. + Get a list of all available #GstRTSPStreamTransport in this session. + - a + a list of #GstRTSPStreamTransport, g_ptr_array_unref () after usage. @@ -7743,88 +10438,128 @@ list of #GstRTSPStreamTransport, g_ptr_array_unref () after usage. - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - Check if the path of @media matches @path. It @path matches, the amount of + Check if the path of @media matches @path. It @path matches, the amount of matched characters is returned in @matched. + - %TRUE when @path matches the path of @media. + %TRUE when @path matches the path of @media. - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - a path + a path - the amount of matched characters of @path + the amount of matched characters of @path - Set the RTSP state of @media to @state. + Set the RTSP state of @media to @state. + - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - a #GstRTSPState + a #GstRTSPState - Tell the media object @media to change to @state. + Tell the media object @media to change to @state. + - %TRUE on success. + %TRUE on success. - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - the new state + the new state - Configure the transport for @stream to @tr in @media. + Configure the transport for @stream to @tr in @media. + - the new or updated #GstRTSPStreamTransport for @stream. + the new or updated #GstRTSPStreamTransport for @stream. - a #GstRTSPSessionMedia + a #GstRTSPSessionMedia - a #GstRTSPStream + a #GstRTSPStream - a #GstRTSPTransport + a #GstRTSPTransport @@ -7837,7 +10572,7 @@ matched characters is returned in @matched. c:type="GstRTSPSessionMediaPrivate*"/> - + @@ -7845,11 +10580,12 @@ matched characters is returned in @matched. + - + @@ -7857,6 +10593,7 @@ matched characters is returned in @matched. + glib:type-name="GstRTSPSessionPool" glib:get-type="gst_rtsp_session_pool_get_type" glib:type-struct="RTSPSessionPoolClass"> - An object that keeps track of the active sessions. This object is usually + An object that keeps track of the active sessions. This object is usually attached to a #GstRTSPServer object to manage the sessions in that server. + - Create a new #GstRTSPSessionPool instance. + Create a new #GstRTSPSessionPool instance. + - A new #GstRTSPSessionPool. g_object_unref() after + A new #GstRTSPSessionPool. g_object_unref() after usage. + @@ -7889,6 +10635,7 @@ usage. + @@ -7899,6 +10646,7 @@ usage. + @@ -7912,49 +10660,72 @@ usage. - Inspect all the sessions in @pool and remove the sessions that are inactive + Inspect all the sessions in @pool and remove the sessions that are inactive for more than their timeout. + - the amount of sessions that got removed. + the amount of sessions that got removed. - a #GstRTSPSessionPool + a #GstRTSPSessionPool - Create a new #GstRTSPSession object in @pool. + Create a new #GstRTSPSession object in @pool. + - a new #GstRTSPSession. + a new #GstRTSPSession. - a #GstRTSPSessionPool + a #GstRTSPSessionPool - Create a #GSource that will be dispatched when the session should be cleaned + Create a #GSource that will be dispatched when the session should be cleaned up. + - a #GSource + a #GSource - a #GstRTSPSessionPool + a #GstRTSPSessionPool - Call @func for each session in @pool. The result value of @func determines + Call @func for each session in @pool. The result value of @func determines what happens to the session. @func will be called with the session pool locked so no further actions on @pool can be performed from @func. @@ -7969,8 +10740,11 @@ will also be added with an additional ref to the result GList of this function.. When @func is %NULL, #GST_RTSP_FILTER_REF will be assumed for all sessions. + - a GList with all + a GList with all sessions for which @func returned #GST_RTSP_FILTER_REF. After usage, each element in the GList should be unreffed before the list is freed. @@ -7979,7 +10753,9 @@ element in the GList should be unreffed before the list is freed. - a #GstRTSPSessionPool + a #GstRTSPSessionPool allow-none="1" scope="call" closure="1"> - a callback + a callback @@ -7996,90 +10774,131 @@ element in the GList should be unreffed before the list is freed. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to @func + user data passed to @func - Find the session with @sessionid in @pool. The access time of the session + Find the session with @sessionid in @pool. The access time of the session will be updated with gst_rtsp_session_touch(). + - the #GstRTSPSession with @sessionid + the #GstRTSPSession with @sessionid or %NULL when the session did not exist. g_object_unref() after usage. - the pool to search + the pool to search - the session id + the session id - Get the maximum allowed number of sessions in @pool. 0 means an unlimited + Get the maximum allowed number of sessions in @pool. 0 means an unlimited amount of sessions. + - the maximum allowed number of sessions. + the maximum allowed number of sessions. - a #GstRTSPSessionPool + a #GstRTSPSessionPool - Get the amount of active sessions in @pool. + Get the amount of active sessions in @pool. + - the amount of active sessions in @pool. + the amount of active sessions in @pool. - a #GstRTSPSessionPool + a #GstRTSPSessionPool - Remove @sess from @pool, releasing the ref that the pool has on @sess. + Remove @sess from @pool, releasing the ref that the pool has on @sess. + - %TRUE if the session was found and removed. + %TRUE if the session was found and removed. - a #GstRTSPSessionPool + a #GstRTSPSessionPool - a #GstRTSPSession + a #GstRTSPSession - Configure the maximum allowed number of sessions in @pool to @max. + Configure the maximum allowed number of sessions in @pool to @max. A value of 0 means an unlimited amount of sessions. + - a #GstRTSPSessionPool + a #GstRTSPSessionPool - the maximum number of sessions + the maximum number of sessions @@ -8095,7 +10914,7 @@ A value of 0 means an unlimited amount of sessions. c:type="GstRTSPSessionPoolPrivate*"/> - + @@ -8113,11 +10932,13 @@ A value of 0 means an unlimited amount of sessions. + + @@ -8130,6 +10951,7 @@ A value of 0 means an unlimited amount of sessions. + @@ -8145,6 +10967,7 @@ A value of 0 means an unlimited amount of sessions. + @@ -8159,14 +10982,16 @@ A value of 0 means an unlimited amount of sessions. - + - This function will be called by the gst_rtsp_session_pool_filter(). An + This function will be called by the gst_rtsp_session_pool_filter(). An implementation should return a value of #GstRTSPFilterResult. When this function returns #GST_RTSP_FILTER_REMOVE, @session will be removed @@ -8177,17 +11002,24 @@ A return value of #GST_RTSP_FILTER_KEEP will leave @session untouched in A value of GST_RTSP_FILTER_REF will add @session to the result #GList of gst_rtsp_session_pool_filter(). + - a #GstRTSPFilterResult. + a #GstRTSPFilterResult. - a #GstRTSPSessionPool object + a #GstRTSPSessionPool object - a #GstRTSPSession in @pool + a #GstRTSPSession in @pool nullable="1" allow-none="1" closure="2"> - user data that has been given to gst_rtsp_session_pool_filter() + user data that has been given to gst_rtsp_session_pool_filter() - The function that will be called from the GSource watch on the session pool. + The function that will be called from the GSource watch on the session pool. The function will be called when the pool must be cleaned up because one or more sessions timed out. + - %FALSE if the source should be removed. + %FALSE if the source should be removed. - a #GstRTSPSessionPool object + a #GstRTSPSessionPool object nullable="1" allow-none="1" closure="1"> - user data that has been given when registering the handler + user data that has been given when registering the handler @@ -8227,10 +11070,12 @@ more sessions timed out. + + glib:type-name="GstRTSPStream" glib:get-type="gst_rtsp_stream_get_type" glib:type-struct="RTSPStreamClass"> - The definition of a media stream. + The definition of a media stream. + - Create a new media stream with index @idx that handles RTP data on + Create a new media stream with index @idx that handles RTP data on @pad and has a payloader element @payloader if @pad is a source pad or a depayloader element @payloader if @pad is a sink pad. + - a new #GstRTSPStream + a new #GstRTSPStream - an index + an index - a #GstElement + a #GstElement - a #GstPad + a #GstPad @@ -8266,81 +11125,118 @@ or a depayloader element @payloader if @pad is a sink pad. - Add multicast client address to stream. At this point, the sockets that + Add multicast client address to stream. At this point, the sockets that will stream RTP and RTCP data to @destination are supposed to be allocated. + - %TRUE if @destination can be addedd and handled by @stream. + %TRUE if @destination can be addedd and handled by @stream. - a #GstRTSPStream + a #GstRTSPStream - a multicast address to add + a multicast address to add - RTP port + RTP port - RTCP port + RTCP port - socket family + socket family - Add the transport in @trans to @stream. The media of @stream will + Add the transport in @trans to @stream. The media of @stream will then also be send to the values configured in @trans. @stream must be joined to a bin. @trans must contain a valid #GstRTSPTransport. + - %TRUE if @trans was added + %TRUE if @trans was added - a #GstRTSPStream + a #GstRTSPStream - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - Allocates RTP and RTCP ports. + Allocates RTP and RTCP ports. + - %TRUE if the RTP and RTCP sockets have been succeccully allocated. + %TRUE if the RTP and RTCP sockets have been succeccully allocated. - a #GstRTSPStream + a #GstRTSPStream - protocol family + protocol family - transport method + transport method - Whether to use client settings or not + Whether to use client settings or not @@ -8348,19 +11244,28 @@ then also be send to the values configured in @trans. - Add a receiver and sender part to the pipeline based on the transport from + Add a receiver and sender part to the pipeline based on the transport from SETUP. + - %TRUE if the stream has been sucessfully updated. + %TRUE if the stream has been sucessfully updated. - a #GstRTSPStream + a #GstRTSPStream - a #GstRTSPTransport + a #GstRTSPTransport @@ -8368,15 +11273,22 @@ SETUP. - Get the #GstRTSPAddressPool used as the address pool of @stream. + Get the #GstRTSPAddressPool used as the address pool of @stream. + - the #GstRTSPAddressPool of @stream. + the #GstRTSPAddressPool of @stream. g_object_unref() after usage. - a #GstRTSPStream + a #GstRTSPStream @@ -8384,47 +11296,69 @@ g_object_unref() after usage. - Get the size of the UDP transmission buffer (in bytes) + Get the size of the UDP transmission buffer (in bytes) + - the size of the UDP TX buffer + the size of the UDP TX buffer - a #GstRTSPStream + a #GstRTSPStream - Retrieve the current caps of @stream. + Retrieve the current caps of @stream. + - the #GstCaps of @stream. + the #GstCaps of @stream. use gst_caps_unref() after usage. - a #GstRTSPStream + a #GstRTSPStream - Get the control string to identify this stream. + Get the control string to identify this stream. + - the control string. g_free() after usage. + the control string. g_free() after usage. - a #GstRTSPStream + a #GstRTSPStream + @@ -8435,41 +11369,62 @@ use gst_caps_unref() after usage. - Get the configured DSCP QoS in of the outgoing sockets. + Get the configured DSCP QoS in of the outgoing sockets. + - the DSCP QoS value of the outgoing sockets, or -1 if disbled. + the DSCP QoS value of the outgoing sockets, or -1 if disbled. - a #GstRTSPStream + a #GstRTSPStream - Get the stream index. + Get the stream index. + - the stream index. + the stream index. - a #GstRTSPStream + a #GstRTSPStream - Get the previous joined bin with gst_rtsp_stream_join_bin() or NULL. + Get the previous joined bin with gst_rtsp_stream_join_bin() or NULL. + - the joined bin or NULL. + the joined bin or NULL. - a #GstRTSPStream + a #GstRTSPStream @@ -8477,49 +11432,72 @@ use gst_caps_unref() after usage. - Get the the maximum time-to-live value of outgoing multicast packets. + Get the the maximum time-to-live value of outgoing multicast packets. + - the maximum time-to-live value of outgoing multicast packets. + the maximum time-to-live value of outgoing multicast packets. - a #GstRTSPStream + a #GstRTSPStream - Get the configured MTU in the payloader of @stream. + Get the configured MTU in the payloader of @stream. + - the MTU of the payloader. + the MTU of the payloader. - a #GstRTSPStream + a #GstRTSPStream - Get the multicast address of @stream for @family. The original + Get the multicast address of @stream for @family. The original #GstRTSPAddress is cached and copy is returned, so freeing the return value won't release the address from the pool. + - the #GstRTSPAddress of @stream + the #GstRTSPAddress of @stream or %NULL when no address could be allocated. gst_rtsp_address_free() after usage. - a #GstRTSPStream + a #GstRTSPStream - the #GSocketFamily + the #GSocketFamily @@ -8527,69 +11505,104 @@ after usage. - Get all multicast client addresses that RTP data will be sent to + Get all multicast client addresses that RTP data will be sent to + - A comma separated list of host:port pairs with destinations + A comma separated list of host:port pairs with destinations - a #GstRTSPStream + a #GstRTSPStream - Get the multicast interface used for @stream. + Get the multicast interface used for @stream. + - the multicast interface for @stream. + the multicast interface for @stream. g_free() after usage. - a #GstRTSPStream + a #GstRTSPStream - Get the allowed profiles of @stream. + Get the allowed profiles of @stream. + - a #GstRTSPProfile + a #GstRTSPProfile - a #GstRTSPStream + a #GstRTSPStream - Get the allowed protocols of @stream. + Get the allowed protocols of @stream. + - a #GstRTSPLowerTrans + a #GstRTSPLowerTrans - a #GstRTSPStream + a #GstRTSPStream - Get the stream payload type. + Get the stream payload type. + - the stream payload type. + the stream payload type. - a #GstRTSPStream + a #GstRTSPStream @@ -8597,42 +11610,63 @@ g_free() after usage. - Gets if and how the stream clock should be published according to RFC7273. + Gets if and how the stream clock should be published according to RFC7273. + - The GstRTSPPublishClockMode + The GstRTSPPublishClockMode - a #GstRTSPStream + a #GstRTSPStream - Get the payload-type used for retransmission of this stream + Get the payload-type used for retransmission of this stream + - The retransmission PT. + The retransmission PT. - a #GstRTSPStream + a #GstRTSPStream - Get the amount of time to store retransmission data. + Get the amount of time to store retransmission data. + - the amount of time to store retransmission data. + the amount of time to store retransmission data. - a #GstRTSPStream + a #GstRTSPStream @@ -8640,95 +11674,138 @@ g_free() after usage. - Get the multicast RTCP socket from @stream for a @family. + Get the multicast RTCP socket from @stream for a @family. + - the multicast RTCP socket or %NULL if no + the multicast RTCP socket or %NULL if no socket could be allocated for @family. Unref after usage - a #GstRTSPStream + a #GstRTSPStream - the socket family + the socket family - Get the RTCP socket from @stream for a @family. + Get the RTCP socket from @stream for a @family. @stream must be joined to a bin. + - the RTCP socket or %NULL if no + the RTCP socket or %NULL if no socket could be allocated for @family. Unref after usage - a #GstRTSPStream + a #GstRTSPStream - the socket family + the socket family - Get the multicast RTP socket from @stream for a @family. + Get the multicast RTP socket from @stream for a @family. + - the multicast RTP socket or %NULL if no + the multicast RTP socket or %NULL if no socket could be allocated for @family. Unref after usage - a #GstRTSPStream + a #GstRTSPStream - the socket family + the socket family - Get the RTP socket from @stream for a @family. + Get the RTP socket from @stream for a @family. @stream must be joined to a bin. + - the RTP socket or %NULL if no + the RTP socket or %NULL if no socket could be allocated for @family. Unref after usage - a #GstRTSPStream + a #GstRTSPStream - the socket family + the socket family - Retrieve the current rtptime, seq and running-time. This is used to + Retrieve the current rtptime, seq and running-time. This is used to construct a RTPInfo reply header. + - %TRUE when rtptime, seq and running-time could be determined. + %TRUE when rtptime, seq and running-time could be determined. - a #GstRTSPStream + a #GstRTSPStream transfer-ownership="none" optional="1" allow-none="1"> - result RTP timestamp + result RTP timestamp transfer-ownership="none" optional="1" allow-none="1"> - result RTP seqnum + result RTP seqnum transfer-ownership="none" optional="1" allow-none="1"> - the clock rate + the clock rate - result running-time + result running-time - Get the RTP session of this stream. + Get the RTP session of this stream. + - The RTP session of this stream. Unref after usage. + The RTP session of this stream. Unref after usage. - a #GstRTSPStream + a #GstRTSPStream - Fill @server_port with the port pair used by the server. This function can + Fill @server_port with the port pair used by the server. This function can only be called when @stream has been joined. + - a #GstRTSPStream + a #GstRTSPStream - result server port + result server port - the port family to get + the port family to get - Get the sinkpad associated with @stream. + Get the sinkpad associated with @stream. + - the sinkpad. Unref after usage. + the sinkpad. Unref after usage. - a #GstRTSPStream + a #GstRTSPStream - Get the srcpad associated with @stream. + Get the srcpad associated with @stream. + - the srcpad. Unref after usage. + the srcpad. Unref after usage. - a #GstRTSPStream + a #GstRTSPStream - Get the SRTP encoder for this stream. + Get the SRTP encoder for this stream. + - The SRTP encoder for this stream. Unref after usage. + The SRTP encoder for this stream. Unref after usage. - a #GstRTSPStream + a #GstRTSPStream - Get the SSRC used by the RTP session of this stream. This function can only + Get the SSRC used by the RTP session of this stream. This function can only be called when @stream has been joined. + - a #GstRTSPStream + a #GstRTSPStream - result ssrc + result ssrc + @@ -8880,8 +12010,11 @@ be called when @stream has been joined. + - the amount of redundancy applied when creating ULPFEC + the amount of redundancy applied when creating ULPFEC protection packets. @@ -8894,8 +12027,11 @@ protection packets. + - the payload type used for ULPFEC protection packets + the payload type used for ULPFEC protection packets @@ -8907,37 +12043,53 @@ protection packets. - Parse and handle a KeyMgmt header. + Parse and handle a KeyMgmt header. + - a #GstRTSPStream + a #GstRTSPStream - a keymgmt header + a keymgmt header - Check if @stream has the control string @control. + Check if @stream has the control string @control. + - %TRUE is @stream has @control as the control string + %TRUE is @stream has @control as the control string - a #GstRTSPStream + a #GstRTSPStream - a control string + a control string @@ -8945,41 +12097,62 @@ protection packets. - Check if multicast sockets are configured to be bound to multicast addresses. + Check if multicast sockets are configured to be bound to multicast addresses. + - %TRUE if multicast sockets are configured to be bound to multicast addresses. + %TRUE if multicast sockets are configured to be bound to multicast addresses. - a #GstRTSPStream + a #GstRTSPStream - Check if @stream is blocking on a #GstBuffer. + Check if @stream is blocking on a #GstBuffer. + - %TRUE if @stream is blocking + %TRUE if @stream is blocking - a #GstRTSPStream + a #GstRTSPStream - See gst_rtsp_stream_set_client_side() + See gst_rtsp_stream_set_client_side() + - TRUE if this #GstRTSPStream is client-side. + TRUE if this #GstRTSPStream is client-side. - a #GstRTSPStream + a #GstRTSPStream @@ -8987,16 +12160,23 @@ protection packets. - Checks whether the stream is complete, contains the receiver and the sender + Checks whether the stream is complete, contains the receiver and the sender parts. As the stream contains sink(s) element(s), it's possible to perform seek operations on it. + - %TRUE if the stream contains at least one sink element. + %TRUE if the stream contains at least one sink element. - a #GstRTSPStream + a #GstRTSPStream @@ -9004,14 +12184,21 @@ seek operations on it. - Checks whether the stream is a receiver. + Checks whether the stream is a receiver. + - %TRUE if the stream is a receiver and %FALSE otherwise. + %TRUE if the stream is a receiver and %FALSE otherwise. - a #GstRTSPStream + a #GstRTSPStream @@ -9019,187 +12206,272 @@ seek operations on it. - Checks whether the stream is a sender. + Checks whether the stream is a sender. + - %TRUE if the stream is a sender and %FALSE otherwise. + %TRUE if the stream is a sender and %FALSE otherwise. - a #GstRTSPStream + a #GstRTSPStream - Check if @transport can be handled by stream + Check if @transport can be handled by stream + - %TRUE if @transport can be handled by @stream. + %TRUE if @transport can be handled by @stream. - a #GstRTSPStream + a #GstRTSPStream - a #GstRTSPTransport + a #GstRTSPTransport - Join the #GstBin @bin that contains the element @rtpbin. + Join the #GstBin @bin that contains the element @rtpbin. @stream will link to @rtpbin, which must be inside @bin. The elements added to @bin will be set to the state given in @state. + - %TRUE on success. + %TRUE on success. - a #GstRTSPStream + a #GstRTSPStream - a #GstBin to join + a #GstBin to join - a rtpbin element in @bin + a rtpbin element in @bin - the target state of the new elements + the target state of the new elements - Remove the elements of @stream from @bin. + Remove the elements of @stream from @bin. + - %TRUE on success. + %TRUE on success. - a #GstRTSPStream + a #GstRTSPStream - a #GstBin + a #GstBin - a rtpbin #GstElement + a rtpbin #GstElement - Query the position of the stream in %GST_FORMAT_TIME. This only considers + Query the position of the stream in %GST_FORMAT_TIME. This only considers the RTP parts of the pipeline and not the RTCP parts. + - %TRUE if the position could be queried + %TRUE if the position could be queried - a #GstRTSPStream + a #GstRTSPStream - current position of a #GstRTSPStream + current position of a #GstRTSPStream - Query the stop of the stream in %GST_FORMAT_TIME. This only considers + Query the stop of the stream in %GST_FORMAT_TIME. This only considers the RTP parts of the pipeline and not the RTCP parts. + - %TRUE if the stop could be queried + %TRUE if the stop could be queried - a #GstRTSPStream + a #GstRTSPStream - current stop of a #GstRTSPStream + current stop of a #GstRTSPStream - Handle an RTCP buffer for the stream. This method is usually called when a + Handle an RTCP buffer for the stream. This method is usually called when a message has been received from a client using the TCP transport. This function takes ownership of @buffer. + - a GstFlowReturn. + a GstFlowReturn. - a #GstRTSPStream + a #GstRTSPStream - a #GstBuffer + a #GstBuffer - Handle an RTP buffer for the stream. This method is usually called when a + Handle an RTP buffer for the stream. This method is usually called when a message has been received from a client using the TCP transport. This function takes ownership of @buffer. + - a GstFlowReturn. + a GstFlowReturn. - a #GstRTSPStream + a #GstRTSPStream - a #GstBuffer + a #GstBuffer - Remove the transport in @trans from @stream. The media of @stream will + Remove the transport in @trans from @stream. The media of @stream will not be sent to the values configured in @trans. @stream must be joined to a bin. @trans must contain a valid #GstRTSPTransport. + - %TRUE if @trans was removed + %TRUE if @trans was removed - a #GstRTSPStream + a #GstRTSPStream - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport @@ -9207,18 +12479,27 @@ not be sent to the values configured in @trans. - Creating a rtxreceive bin + Creating a rtxreceive bin + - a #GstElement. + a #GstElement. - a #GstRTSPStream + a #GstRTSPStream - the session id + the session id @@ -9226,18 +12507,27 @@ not be sent to the values configured in @trans. - Creating a rtxsend bin + Creating a rtxsend bin + - a #GstElement. + a #GstElement. - a #GstRTSPStream + a #GstRTSPStream - the session id + the session id @@ -9245,9 +12535,14 @@ not be sent to the values configured in @trans. - Creating a rtpulpfecdec element + Creating a rtpulpfecdec element + - a #GstElement. + a #GstElement. @@ -9265,9 +12560,14 @@ not be sent to the values configured in @trans. - Creating a rtpulpfecenc element + Creating a rtpulpfecenc element + - a #GstElement. + a #GstElement. @@ -9281,34 +12581,49 @@ not be sent to the values configured in @trans. - Reserve @address and @port as the address and port of @stream. The original + Reserve @address and @port as the address and port of @stream. The original #GstRTSPAddress is cached and copy is returned, so freeing the return value won't release the address from the pool. + - the #GstRTSPAddress of @stream or %NULL when + the #GstRTSPAddress of @stream or %NULL when the address could not be reserved. gst_rtsp_address_free() after usage. - a #GstRTSPStream + a #GstRTSPStream - an address + an address - a port + a port - n_ports + n_ports - a TTL + a TTL @@ -9316,34 +12631,48 @@ usage. - Checks whether the individual @stream is seekable. + Checks whether the individual @stream is seekable. + - %TRUE if @stream is seekable, else %FALSE. + %TRUE if @stream is seekable, else %FALSE. - a #GstRTSPStream + a #GstRTSPStream - configure @pool to be used as the address pool of @stream. + configure @pool to be used as the address pool of @stream. + - a #GstRTSPStream + a #GstRTSPStream - a #GstRTSPAddressPool + a #GstRTSPAddressPool @@ -9351,35 +12680,51 @@ usage. - Decide whether the multicast socket should be bound to a multicast address or + Decide whether the multicast socket should be bound to a multicast address or INADDR_ANY. + - a #GstRTSPStream, + a #GstRTSPStream, - the new value + the new value - Blocks or unblocks the dataflow on @stream. + Blocks or unblocks the dataflow on @stream. + - %TRUE on success + %TRUE on success - a #GstRTSPStream + a #GstRTSPStream - boolean indicating we should block or unblock + boolean indicating we should block or unblock @@ -9387,75 +12732,103 @@ INADDR_ANY. - Set the size of the UDP transmission buffer (in bytes) + Set the size of the UDP transmission buffer (in bytes) Needs to be set before the stream is joined to a bin. + - a #GstRTSPStream + a #GstRTSPStream - the buffer size + the buffer size - Sets the #GstRTSPStream as a 'client side' stream - used for sending + Sets the #GstRTSPStream as a 'client side' stream - used for sending streams to an RTSP server via RECORD. This has the practical effect of changing which UDP port numbers are used when setting up the local side of the stream sending to be either the 'server' or 'client' pair of a configured UDP transport. + - a #GstRTSPStream + a #GstRTSPStream - TRUE if this #GstRTSPStream is running on the 'client' side of + TRUE if this #GstRTSPStream is running on the 'client' side of an RTSP connection. - Set the control string in @stream. + Set the control string in @stream. + - a #GstRTSPStream + a #GstRTSPStream - a control string + a control string - Configure the dscp qos of the outgoing sockets to @dscp_qos. + Configure the dscp qos of the outgoing sockets to @dscp_qos. + - a #GstRTSPStream + a #GstRTSPStream - a new dscp qos value (0-63, or -1 to disable) + a new dscp qos value (0-63, or -1 to disable) @@ -9463,107 +12836,153 @@ an RTSP connection. - Set the maximum time-to-live value of outgoing multicast packets. + Set the maximum time-to-live value of outgoing multicast packets. + - %TRUE if the requested ttl has been set successfully. + %TRUE if the requested ttl has been set successfully. - a #GstRTSPStream + a #GstRTSPStream - the new multicast ttl value + the new multicast ttl value - Configure the mtu in the payloader of @stream to @mtu. + Configure the mtu in the payloader of @stream to @mtu. + - a #GstRTSPStream + a #GstRTSPStream - a new MTU + a new MTU - configure @multicast_iface to be used for @stream. + configure @multicast_iface to be used for @stream. + - a #GstRTSPStream + a #GstRTSPStream - a multicast interface name + a multicast interface name - Configure the allowed profiles for @stream. + Configure the allowed profiles for @stream. + - a #GstRTSPStream + a #GstRTSPStream - the new profiles + the new profiles - Configure the allowed lower transport for @stream. + Configure the allowed lower transport for @stream. + - a #GstRTSPStream + a #GstRTSPStream - the new flags + the new flags - Configure a pt map between @pt and @caps. + Configure a pt map between @pt and @caps. + - a #GstRTSPStream + a #GstRTSPStream - the pt + the pt - a #GstCaps + a #GstCaps @@ -9571,17 +12990,24 @@ an RTSP connection. - Sets if and how the stream clock should be published according to RFC7273. + Sets if and how the stream clock should be published according to RFC7273. + - a #GstRTSPStream + a #GstRTSPStream - the clock publish mode + the clock publish mode @@ -9589,40 +13015,55 @@ an RTSP connection. - Set the payload type (pt) for retransmission of this stream. + Set the payload type (pt) for retransmission of this stream. + - a #GstRTSPStream + a #GstRTSPStream - a #guint + a #guint - Set the amount of time to store retransmission packets. + Set the amount of time to store retransmission packets. + - a #GstRTSPStream + a #GstRTSPStream - a #GstClockTime + a #GstClockTime + @@ -9638,8 +13079,11 @@ an RTSP connection. - Sets the amount of redundancy to apply when creating ULPFEC + Sets the amount of redundancy to apply when creating ULPFEC protection packets. + @@ -9655,7 +13099,10 @@ protection packets. - Set the payload type to be used for ULPFEC protection packets + Set the payload type to be used for ULPFEC protection packets + @@ -9670,7 +13117,9 @@ protection packets. - Call @func for each transport managed by @stream. The result value of @func + Call @func for each transport managed by @stream. The result value of @func determines what happens to the transport. @func will be called with @stream locked so no further actions on @stream can be performed from @func. @@ -9684,8 +13133,11 @@ will also be added with an additional ref to the result #GList of this function.. When @func is %NULL, #GST_RTSP_FILTER_REF will be assumed for each transport. + - a #GList with all + a #GList with all transports for which @func returned #GST_RTSP_FILTER_REF. After usage, each element in the #GList should be unreffed before the list is freed. @@ -9694,7 +13146,9 @@ element in the #GList should be unreffed before the list is freed. - a #GstRTSPStream + a #GstRTSPStream allow-none="1" scope="call" closure="1"> - a callback + a callback @@ -9711,13 +13167,16 @@ element in the #GList should be unreffed before the list is freed. transfer-ownership="none" nullable="1" allow-none="1"> - user data passed to @func + user data passed to @func + @@ -9729,28 +13188,39 @@ element in the #GList should be unreffed before the list is freed. - Update the new crypto information for @ssrc in @stream. If information + Update the new crypto information for @ssrc in @stream. If information for @ssrc did not exist, it will be added. If information for @ssrc existed, it will be replaced. If @crypto is %NULL, it will be removed from @stream. + - %TRUE if @crypto could be updated + %TRUE if @crypto could be updated - a #GstRTSPStream + a #GstRTSPStream - the SSRC + the SSRC - a #GstCaps with crypto info + a #GstCaps with crypto info @@ -9758,18 +13228,27 @@ be removed from @stream. - Check if the requested multicast ttl value is allowed. + Check if the requested multicast ttl value is allowed. + - TRUE if the requested ttl value is allowed. + TRUE if the requested ttl value is allowed. - a #GstRTSPStream + a #GstRTSPStream - a requested multicast ttl + a requested multicast ttl @@ -9790,7 +13269,7 @@ be removed from @stream. - + @@ -9828,11 +13307,12 @@ be removed from @stream. + - + @@ -9840,6 +13320,7 @@ be removed from @stream. + glib:type-name="GstRTSPStreamTransport" glib:get-type="gst_rtsp_stream_transport_get_type" glib:type-struct="RTSPStreamTransportClass"> - A Transport description for a stream + A Transport description for a stream + - Create a new #GstRTSPStreamTransport that can be used to manage + Create a new #GstRTSPStreamTransport that can be used to manage @stream with transport @tr. + - a new #GstRTSPStreamTransport + a new #GstRTSPStreamTransport - a #GstRTSPStream + a #GstRTSPStream - a GstRTSPTransport + a GstRTSPTransport - Get the RTP-Info string for @trans and @start_time. + Get the RTP-Info string for @trans and @start_time. + - the RTPInfo string for @trans + the RTPInfo string for @trans and @start_time or %NULL when the RTP-Info could not be determined. g_free() after usage. - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - a star time + a star time - Get the #GstRTSPStream used when constructing @trans. + Get the #GstRTSPStream used when constructing @trans. + - the stream used when constructing @trans. + the stream used when constructing @trans. - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - Get the transport configured in @trans. + Get the transport configured in @trans. + - the transport configured in @trans. It remains + the transport configured in @trans. It remains valid for as long as @trans is valid. - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - Get the url configured in @trans. + Get the url configured in @trans. + - the url configured in @trans. + the url configured in @trans. It remains valid for as long as @trans is valid. - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - Check if @trans is timed out. + Check if @trans is timed out. + - %TRUE if @trans timed out. + %TRUE if @trans timed out. - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - Signal the installed keep_alive callback for @trans. + Signal the installed keep_alive callback for @trans. + - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport @@ -9960,54 +13495,79 @@ It remains valid for as long as @trans is valid. - Signal the installed message_sent callback for @trans. + Signal the installed message_sent callback for @trans. + - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - Receive @buffer on @channel @trans. + Receive @buffer on @channel @trans. + - a #GstFlowReturn. Returns GST_FLOW_NOT_LINKED when @channel is not + a #GstFlowReturn. Returns GST_FLOW_NOT_LINKED when @channel is not configured in the transport of @trans. - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - a channel + a channel - a #GstBuffer + a #GstBuffer - Send @buffer to the installed RTCP callback for @trans. + Send @buffer to the installed RTCP callback for @trans. + - %TRUE on success + %TRUE on success - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - a #GstBuffer + a #GstBuffer @@ -10015,36 +13575,54 @@ It remains valid for as long as @trans is valid. - Send @buffer_list to the installed RTCP callback for @trans. + Send @buffer_list to the installed RTCP callback for @trans. + - %TRUE on success + %TRUE on success - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - a #GstBuffer + a #GstBuffer - Send @buffer to the installed RTP callback for @trans. + Send @buffer to the installed RTP callback for @trans. + - %TRUE on success + %TRUE on success - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - a #GstBuffer + a #GstBuffer @@ -10052,56 +13630,81 @@ It remains valid for as long as @trans is valid. - Send @buffer_list to the installed RTP callback for @trans. + Send @buffer_list to the installed RTP callback for @trans. + - %TRUE on success + %TRUE on success - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - a #GstBufferList + a #GstBufferList - Activate or deactivate datatransfer configured in @trans. + Activate or deactivate datatransfer configured in @trans. + - %TRUE when the state was changed. + %TRUE when the state was changed. - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - new state of @trans + new state of @trans - Install callbacks that will be called when data for a stream should be sent + Install callbacks that will be called when data for a stream should be sent to a client. This is usually used when sending RTP/RTCP over TCP. + - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - a callback called when RTP should be sent + a callback called when RTP should be sent scope="notified" closure="2" destroy="3"> - a callback called when RTCP should be sent + a callback called when RTCP should be sent - user data passed to callbacks + user data passed to callbacks nullable="1" allow-none="1" scope="async"> - called with the user_data when no longer needed. + called with the user_data when no longer needed. - Install callbacks that will be called when RTCP packets are received from the + Install callbacks that will be called when RTCP packets are received from the receiver of @trans. + - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport scope="notified" closure="1" destroy="2"> - a callback called when the receiver is active + a callback called when the receiver is active - user data passed to callback + user data passed to callback nullable="1" allow-none="1" scope="async"> - called with the user_data when no longer needed. + called with the user_data when no longer needed. @@ -10169,20 +13789,27 @@ receiver of @trans. - Install callbacks that will be called when data for a stream should be sent + Install callbacks that will be called when data for a stream should be sent to a client. This is usually used when sending RTP/RTCP over TCP. + - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - a callback called when RTP should be sent + a callback called when RTP should be sent scope="notified" closure="2" destroy="3"> - a callback called when RTCP should be sent + a callback called when RTCP should be sent - user data passed to callbacks + user data passed to callbacks nullable="1" allow-none="1" scope="async"> - called with the user_data when no longer needed. + called with the user_data when no longer needed. - Install a callback that will be called when a message has been sent on @trans. + Install a callback that will be called when a message has been sent on @trans. + - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport scope="notified" closure="1" destroy="2"> - a callback called when a message has been sent + a callback called when a message has been sent - user data passed to callback + user data passed to callback nullable="1" allow-none="1" scope="async"> - called with the user_data when no longer needed + called with the user_data when no longer needed - Set the timed out state of @trans to @timedout + Set the timed out state of @trans to @timedout + - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - timed out value + timed out value - Set @tr as the client transport. This function takes ownership of the + Set @tr as the client transport. This function takes ownership of the passed @tr. + - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - a client #GstRTSPTransport + a client #GstRTSPTransport - Set @url as the client url. + Set @url as the client url. + - a #GstRTSPStreamTransport + a #GstRTSPStreamTransport - a client #GstRTSPUrl + a client #GstRTSPUrl - parent instance + parent instance @@ -10309,7 +13976,7 @@ passed @tr. c:type="GstRTSPStreamTransportPrivate*"/> - + @@ -10317,18 +13984,21 @@ passed @tr. + - + - This function will be called by the gst_rtsp_stream_transport_filter(). An + This function will be called by the gst_rtsp_stream_transport_filter(). An implementation should return a value of #GstRTSPFilterResult. When this function returns #GST_RTSP_FILTER_REMOVE, @trans will be removed @@ -10339,17 +14009,24 @@ A return value of #GST_RTSP_FILTER_KEEP will leave @trans untouched in A value of #GST_RTSP_FILTER_REF will add @trans to the result #GList of gst_rtsp_stream_transport_filter(). + - a #GstRTSPFilterResult. + a #GstRTSPFilterResult. - a #GstRTSPStream object + a #GstRTSPStream object - a #GstRTSPStreamTransport in @stream + a #GstRTSPStreamTransport in @stream nullable="1" allow-none="1" closure="2"> - user data that has been given to gst_rtsp_stream_transport_filter() + user data that has been given to gst_rtsp_stream_transport_filter() @@ -10365,30 +14044,39 @@ gst_rtsp_stream_transport_filter(). + - The suspend mode of the media pipeline. A media pipeline is suspended right + The suspend mode of the media pipeline. A media pipeline is suspended right after creating the SDP and when the client performs a PAUSED request. - Media is not suspended + Media is not suspended - Media is PAUSED in suspend + Media is PAUSED in suspend - The media is set to NULL when suspended + The media is set to NULL when suspended glib:type-name="GstRTSPThread" glib:get-type="gst_rtsp_thread_get_type" c:symbol-prefix="rtsp_thread"> - Structure holding info about a mainloop running in a thread + Structure holding info about a mainloop running in a thread + - parent #GstMiniObject + parent #GstMiniObject - the thread type + the thread type - a #GMainContext + a #GMainContext - a #GMainLoop + a #GMainLoop - Create a new thread object that can run a mainloop. + Create a new thread object that can run a mainloop. + - a #GstRTSPThread. + a #GstRTSPThread. - the thread type + the thread type - Reuse the mainloop of @thread + Reuse the mainloop of @thread + - %TRUE if the mainloop could be reused + %TRUE if the mainloop could be reused - a #GstRTSPThread + a #GstRTSPThread - Stop and unref @thread. When no threads are using the mainloop, the thread + Stop and unref @thread. When no threads are using the mainloop, the thread will be stopped and the final ref to @thread will be released. + - a #GstRTSPThread + a #GstRTSPThread @@ -10460,23 +14178,35 @@ will be stopped and the final ref to @thread will be released. glib:type-name="GstRTSPThreadPool" glib:get-type="gst_rtsp_thread_pool_get_type" glib:type-struct="RTSPThreadPoolClass"> - The thread pool structure. + The thread pool structure. + - Create a new #GstRTSPThreadPool instance. + Create a new #GstRTSPThreadPool instance. + - a new #GstRTSPThreadPool + a new #GstRTSPThreadPool - Wait for all tasks to be stopped and free all allocated resources. This is + Wait for all tasks to be stopped and free all allocated resources. This is mainly used in test suites to ensure proper cleanup of internal data structures. + + @@ -10493,28 +14223,40 @@ structures. - Get a new #GstRTSPThread for @type and @ctx. + Get a new #GstRTSPThread for @type and @ctx. + - a new #GstRTSPThread, + a new #GstRTSPThread, gst_rtsp_thread_stop() after usage - a #GstRTSPThreadPool + a #GstRTSPThreadPool - the #GstRTSPThreadType + the #GstRTSPThreadType - a #GstRTSPContext + a #GstRTSPContext + @@ -10528,6 +14270,7 @@ gst_rtsp_thread_stop() after usage + @@ -10542,56 +14285,81 @@ gst_rtsp_thread_stop() after usage - Get the maximum number of threads used for client connections. + Get the maximum number of threads used for client connections. See gst_rtsp_thread_pool_set_max_threads(). + - the maximum number of threads. + the maximum number of threads. - a #GstRTSPThreadPool + a #GstRTSPThreadPool - Get a new #GstRTSPThread for @type and @ctx. + Get a new #GstRTSPThread for @type and @ctx. + - a new #GstRTSPThread, + a new #GstRTSPThread, gst_rtsp_thread_stop() after usage - a #GstRTSPThreadPool + a #GstRTSPThreadPool - the #GstRTSPThreadType + the #GstRTSPThreadType - a #GstRTSPContext + a #GstRTSPContext - Set the maximum threads used by the pool to handle client requests. + Set the maximum threads used by the pool to handle client requests. A value of 0 will use the pool mainloop, a value of -1 will use an unlimited number of threads. + - a #GstRTSPThreadPool + a #GstRTSPThreadPool - maximum threads + maximum threads @@ -10606,7 +14374,7 @@ unlimited number of threads. - + @@ -10614,32 +14382,46 @@ unlimited number of threads. - Class for managing threads. + Class for managing threads. + - a #GThreadPool used internally + a #GThreadPool used internally + - a new #GstRTSPThread, + a new #GstRTSPThread, gst_rtsp_thread_stop() after usage - a #GstRTSPThreadPool + a #GstRTSPThreadPool - the #GstRTSPThreadType + the #GstRTSPThreadType - a #GstRTSPContext + a #GstRTSPContext @@ -10647,6 +14429,7 @@ gst_rtsp_thread_stop() after usage + @@ -10665,6 +14448,7 @@ gst_rtsp_thread_stop() after usage + @@ -10680,6 +14464,7 @@ gst_rtsp_thread_stop() after usage + @@ -10694,7 +14479,7 @@ gst_rtsp_thread_stop() after usage - + @@ -10702,16 +14487,24 @@ gst_rtsp_thread_stop() after usage + - Different thread types + Different thread types + - a thread to handle the client communication + a thread to handle the client communication - a thread to handle media + a thread to handle media glib:type-name="GstRTSPToken" glib:get-type="gst_rtsp_token_get_type" c:symbol-prefix="rtsp_token"> - An opaque object used for checking authorisations. + An opaque object used for checking authorisations. It is generated after successful authentication. + @@ -10728,19 +14524,28 @@ It is generated after successful authentication. c:identifier="gst_rtsp_token_new" shadowed-by="new_empty" introspectable="0"> - Create a new Authorization token with the given fieldnames and values. + Create a new Authorization token with the given fieldnames and values. Arguments are given similar to gst_structure_new(). + - a new authorization token. + a new authorization token. - the first fieldname + the first fieldname - additional arguments + additional arguments @@ -10748,55 +14553,83 @@ Arguments are given similar to gst_structure_new(). - Create a new empty Authorization token. + Create a new empty Authorization token. + - a new empty authorization token. + a new empty authorization token. - Create a new Authorization token with the given fieldnames and values. + Create a new Authorization token with the given fieldnames and values. Arguments are given similar to gst_structure_new_valist(). + - a new authorization token. + a new authorization token. - the first fieldname + the first fieldname - additional arguments + additional arguments - Get the string value of @field in @token. + Get the string value of @field in @token. + - the string value of @field in + the string value of @field in @token or %NULL when @field is not defined in @token. The string becomes invalid when you free @token. - a #GstRTSPToken + a #GstRTSPToken - a field name + a field name - Access the structure of the token. + Access the structure of the token. + - The structure of the token. The structure is still + The structure of the token. The structure is still owned by the token, which means that you should not free it and that the pointer becomes invalid when you free the token. @@ -10805,24 +14638,35 @@ MT safe. - The #GstRTSPToken. + The #GstRTSPToken. - Check if @token has a boolean @field and if it is set to %TRUE. + Check if @token has a boolean @field and if it is set to %TRUE. + - %TRUE if @token has a boolean field named @field set to %TRUE. + %TRUE if @token has a boolean field named @field set to %TRUE. - a #GstRTSPToken + a #GstRTSPToken - a field name + a field name @@ -10830,21 +14674,30 @@ MT safe. - Sets a boolean value on @token. + Sets a boolean value on @token. + - The #GstRTSPToken. + The #GstRTSPToken. - field to set + field to set - boolean value to set + boolean value to set @@ -10852,30 +14705,44 @@ MT safe. - Sets a string value on @token. + Sets a string value on @token. + - The #GstRTSPToken. + The #GstRTSPToken. - field to set + field to set - string value to set + string value to set - Get a writable version of the structure. + Get a writable version of the structure. + - The structure of the token. The structure is still + The structure of the token. The structure is still owned by the token, which means that you should not free it and that the pointer becomes invalid when you free the token. This function checks if @token is writable and will never return %NULL. @@ -10885,7 +14752,9 @@ MT safe. - The #GstRTSPToken. + The #GstRTSPToken. @@ -10895,105 +14764,1019 @@ MT safe. glib:type-name="GstRTSPTransportMode" glib:get-type="gst_rtsp_transport_mode_get_type" c:type="GstRTSPTransportMode"> - The supported modes of the media. + The supported modes of the media. - Transport supports PLAY mode + Transport supports PLAY mode - Transport supports RECORD mode + Transport supports RECORD mode + + + + + + + - Used with gst_rtsp_address_pool_add_range() to bind to all + Used with gst_rtsp_address_pool_add_range() to bind to all IPv4 addresses + - Used with gst_rtsp_address_pool_add_range() to bind to all + Used with gst_rtsp_address_pool_add_range() to bind to all IPv6 addresses + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Check a new connection + Check a new connection + - Check if access is allowed to a factory. + Check if access is allowed to a factory. When access is not allowed an 404 Not Found is sent in the response. + - Check if media can be constructed from a media factory + Check if media can be constructed from a media factory A response should be sent on error. + - Check if the client can specify TTL, destination and + Check if the client can specify TTL, destination and port pair in multicast. No response is sent when the check returns %FALSE. + - Check the URL and methods + Check the URL and methods + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - G_TYPE_BOOLEAN, %TRUE if the media can be accessed, %FALSE will + G_TYPE_BOOLEAN, %TRUE if the media can be accessed, %FALSE will return a 404 Not Found error when trying to access the media. + - G_TYPE_BOOLEAN, %TRUE if the media can be constructed, %FALSE will + G_TYPE_BOOLEAN, %TRUE if the media can be constructed, %FALSE will return a 404 Not Found error when trying to access the media. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - G_TYPE_STRING, the role to use when dealing with media factories + G_TYPE_STRING, the role to use when dealing with media factories The default #GstRTSPAuth object uses this string in the token to find the role of the media factory. It will then retrieve the #GstRTSPPermissions of the media factory and retrieve the role with the same name. + - G_TYPE_BOOLEAN, %TRUE if the client can specify TTL, destination and + G_TYPE_BOOLEAN, %TRUE if the client can specify TTL, destination and port pair in multicast. + + @@ -11005,94 +15788,140 @@ the media factory and retrieve the role with the same name. c:identifier="gst_rtsp_context_get_current" moved-to="RTSPContext.get_current" introspectable="0"> - Get the current #GstRTSPContext. This object is retrieved from the + Get the current #GstRTSPContext. This object is retrieved from the current thread that is handling the request for a client. + - a #GstRTSPContext + a #GstRTSPContext + - Get parameters (not implemented yet) + Get parameters (not implemented yet) + - a #GstRTSPResult + a #GstRTSPResult - a #GstRTSPClient + a #GstRTSPClient - a #GstRTSPContext + a #GstRTSPContext - Set parameters (not implemented yet) + Set parameters (not implemented yet) + - a #GstRTSPResult + a #GstRTSPResult - a #GstRTSPClient + a #GstRTSPClient - a #GstRTSPContext + a #GstRTSPContext - Add @media specific info to @sdp. @info is used to configure the connection + Add @media specific info to @sdp. @info is used to configure the connection information in the SDP. + - TRUE on success. + TRUE on success. - a #GstSDPMessage + a #GstSDPMessage - a #GstSDPInfo + a #GstSDPInfo - a #GstRTSPMedia + a #GstRTSPMedia - Add info from @stream to @sdp. + Add info from @stream to @sdp. + - TRUE on success. + TRUE on success. - a #GstSDPMessage + a #GstSDPMessage - a #GstSDPInfo + a #GstSDPInfo - a #GstRTSPStream + a #GstRTSPStream @@ -11100,30 +15929,45 @@ information in the SDP. - Creates a #GstSDPMedia from the parameters and stores it in @sdp. + Creates a #GstSDPMedia from the parameters and stores it in @sdp. + - %TRUE on success + %TRUE on success - a #GstRTSPMessage + a #GstRTSPMessage - a #GstSDPInfo + a #GstSDPInfo - a #GstRTSPStream + a #GstRTSPStream - a #GstCaps + a #GstCaps - a #GstRTSPProfile + a #GstRTSPProfile diff --git a/gir-files/GstSdp-1.0.gir b/gir-files/GstSdp-1.0.gir index 97cd55ce7..4d6d10e1e 100644 --- a/gir-files/GstSdp-1.0.gir +++ b/gir-files/GstSdp-1.0.gir @@ -15,97 +15,154 @@ and/or use gtk-doc annotations. --> c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> - The different cache types + The different cache types + - The envelope key MUST NOT be cached + The envelope key MUST NOT be cached - The envelope key MUST be cached + The envelope key MUST be cached - The envelope key MUST be cached, but only + The envelope key MUST be cached, but only to be used for the specific CSB. + - The encryption algorithm used to encrypt the Encr data field + The encryption algorithm used to encrypt the Encr data field + - no encryption + no encryption - AES-CM using a 128-bit key + AES-CM using a 128-bit key - AES Key Wrap using a 128-bit key + AES Key Wrap using a 128-bit key - AES-GCM using a 128-bit key (Since: 1.16) + AES-GCM using a 128-bit key (Since: 1.16) + - The key validity type + The key validity type + - No specific usage rule + No specific usage rule - The key is associated with the SPI/MKI + The key is associated with the SPI/MKI - The key has a start and expiration time + The key has a start and expiration time - The type of key. + The type of key. + - a TEK Generation Key + a TEK Generation Key - Traffic-Encrypting Key + Traffic-Encrypting Key - Specifies the authentication algorithm used + Specifies the authentication algorithm used + - no authentication + no authentication - HMAC-SHA-1-160 + HMAC-SHA-1-160 - The Security policy Map item for SRTP + The Security policy Map item for SRTP + - The security policy applied for the stream with @ssrc + The security policy applied for the stream with @ssrc - the SSRC that must be used for the stream + the SSRC that must be used for the stream - current rollover counter + current rollover counter - Specifies the method of uniquely mapping Crypto Sessions to the security + Specifies the method of uniquely mapping Crypto Sessions to the security protocol sessions. + - SRTP + SRTP glib:type-name="GstMIKEYMessage" glib:get-type="gst_mikey_message_get_type" c:symbol-prefix="mikey_message"> - Structure holding the information of the MIKEY message + Structure holding the information of the MIKEY message + - the version + the version - the #GstMIKEYType message type + the #GstMIKEYType message type - verify flag + verify flag - a #GstMIKEYPRFFunc + a #GstMIKEYPRFFunc - Identifies the Crypto Session Bundle + Identifies the Crypto Session Bundle - a #GstMIKEYMapType + a #GstMIKEYMapType - map info array of type depending on @map_type + map info array of type depending on @map_type - the payload array of #GstMIKEYPayload + the payload array of #GstMIKEYPayload @@ -156,9 +232,14 @@ protocol sessions. - Make a new MIKEY message. + Make a new MIKEY message. + - a new #GstMIKEYMessage on success + a new #GstMIKEYMessage on success @@ -166,18 +247,27 @@ protocol sessions. c:identifier="gst_mikey_message_new_from_bytes" version="1.4" throws="1"> - Make a new #GstMIKEYMessage from @bytes. + Make a new #GstMIKEYMessage from @bytes. + - a new #GstMIKEYMessage + a new #GstMIKEYMessage - a #GBytes + a #GBytes - a #GstMIKEYDecryptInfo + a #GstMIKEYDecryptInfo @@ -185,18 +275,25 @@ protocol sessions. - Makes mikey message including: + Makes mikey message including: - Security Policy Payload - Key Data Transport Payload - Key Data Sub-Payload + - a #GstMIKEYMessage, + a #GstMIKEYMessage, or %NULL if there is no srtp information in the caps. - a #GstCaps, including SRTP parameters (srtp/srtcp cipher, authorization, key data) + a #GstCaps, including SRTP parameters (srtp/srtcp cipher, authorization, key data) @@ -205,26 +302,37 @@ or %NULL if there is no srtp information in the caps. c:identifier="gst_mikey_message_new_from_data" version="1.4" throws="1"> - Parse @size bytes from @data into a #GstMIKEYMessage. @info contains the + Parse @size bytes from @data into a #GstMIKEYMessage. @info contains the parameters to decrypt and verify the data. + - a #GstMIKEYMessage on success or %NULL when parsing failed and + a #GstMIKEYMessage on success or %NULL when parsing failed and @error will be set. - bytes to read + bytes to read - length of @data + length of @data - #GstMIKEYDecryptInfo + #GstMIKEYDecryptInfo @@ -232,26 +340,39 @@ parameters to decrypt and verify the data. - Add a Crypto policy for SRTP to @msg. + Add a Crypto policy for SRTP to @msg. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - The security policy applied for the stream with @ssrc + The security policy applied for the stream with @ssrc - the SSRC that must be used for the stream + the SSRC that must be used for the stream - current rollover counter + current rollover counter @@ -259,18 +380,27 @@ parameters to decrypt and verify the data. - Add a new payload to @msg. + Add a new payload to @msg. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - a #GstMIKEYPayload + a #GstMIKEYPayload @@ -278,26 +408,39 @@ parameters to decrypt and verify the data. - Add a new PKE payload to @msg with the given parameters. + Add a new PKE payload to @msg with the given parameters. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - envelope key cache indicator + envelope key cache indicator - the length of @data + the length of @data - the encrypted envelope key + the encrypted envelope key @@ -307,22 +450,33 @@ parameters to decrypt and verify the data. - Add a new RAND payload to @msg with the given parameters. + Add a new RAND payload to @msg with the given parameters. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - the length of @rand + the length of @rand - random data + random data @@ -332,18 +486,27 @@ parameters to decrypt and verify the data. - Add a new RAND payload to @msg with @len random bytes. + Add a new RAND payload to @msg with @len random bytes. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - length + length @@ -351,22 +514,33 @@ parameters to decrypt and verify the data. - Add a new T payload to @msg with the given parameters. + Add a new T payload to @msg with the given parameters. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - specifies the timestamp type used + specifies the timestamp type used - The timestamp value of the specified @type + The timestamp value of the specified @type @@ -376,15 +550,22 @@ parameters to decrypt and verify the data. - Add a new T payload to @msg that contains the current time + Add a new T payload to @msg that contains the current time in NTP-UTC format. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage @@ -392,13 +573,18 @@ in NTP-UTC format. + - a #gchar, base64-encoded data + a #gchar, base64-encoded data - a #GstMIKEYMessage + a #GstMIKEYMessage @@ -406,22 +592,33 @@ in NTP-UTC format. - Find the @nth occurence of the payload with @type in @msg. + Find the @nth occurence of the payload with @type in @msg. + - the @nth #GstMIKEYPayload of @type. + the @nth #GstMIKEYPayload of @type. - a #GstMIKEYMessage + a #GstMIKEYMessage - a #GstMIKEYPayloadType + a #GstMIKEYPayloadType - payload to find + payload to find @@ -429,18 +626,27 @@ in NTP-UTC format. - Get the policy information of @msg at @idx. + Get the policy information of @msg at @idx. + - a #GstMIKEYMapSRTP + a #GstMIKEYMapSRTP - a #GstMIKEYMessage + a #GstMIKEYMessage - an index + an index @@ -448,14 +654,21 @@ in NTP-UTC format. - Get the number of crypto sessions in @msg. + Get the number of crypto sessions in @msg. + - the number of crypto sessions + the number of crypto sessions - a #GstMIKEYMessage + a #GstMIKEYMessage @@ -463,14 +676,21 @@ in NTP-UTC format. - Get the number of payloads in @msg. + Get the number of payloads in @msg. + - the number of payloads in @msg + the number of payloads in @msg - a #GstMIKEYMessage + a #GstMIKEYMessage @@ -478,19 +698,28 @@ in NTP-UTC format. - Get the #GstMIKEYPayload at @idx in @msg + Get the #GstMIKEYPayload at @idx in @msg + - the #GstMIKEYPayload at @idx. The payload + the #GstMIKEYPayload at @idx. The payload remains valid for as long as it is part of @msg. - a #GstMIKEYMessage + a #GstMIKEYMessage - an index + an index @@ -498,24 +727,35 @@ remains valid for as long as it is part of @msg. - Insert a Crypto Session map for SRTP in @msg at @idx + Insert a Crypto Session map for SRTP in @msg at @idx When @idx is -1, the policy will be appended. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - the index to insert at + the index to insert at - the map info + the map info @@ -523,23 +763,34 @@ When @idx is -1, the policy will be appended. - Insert the @payload at index @idx in @msg. If @idx is -1, the payload + Insert the @payload at index @idx in @msg. If @idx is -1, the payload will be appended to @msg. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - an index + an index - a #GstMIKEYPayload + a #GstMIKEYPayload @@ -547,18 +798,27 @@ will be appended to @msg. - Remove the SRTP policy at @idx. + Remove the SRTP policy at @idx. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - the index to remove + the index to remove @@ -566,18 +826,27 @@ will be appended to @msg. - Remove the payload in @msg at @idx + Remove the payload in @msg at @idx + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - an index + an index @@ -585,22 +854,33 @@ will be appended to @msg. - Replace a Crypto Session map for SRTP in @msg at @idx with @map. + Replace a Crypto Session map for SRTP in @msg at @idx with @map. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - the index to insert at + the index to insert at - the map info + the map info @@ -608,22 +888,33 @@ will be appended to @msg. - Replace the payload at @idx in @msg with @payload. + Replace the payload at @idx in @msg with @payload. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - an index + an index - a #GstMIKEYPayload + a #GstMIKEYPayload @@ -631,38 +922,57 @@ will be appended to @msg. - Set the information in @msg. + Set the information in @msg. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - a version + a version - a #GstMIKEYType + a #GstMIKEYType - verify flag + verify flag - the #GstMIKEYPRFFunc function to use + the #GstMIKEYPRFFunc function to use - the Crypto Session Bundle id + the Crypto Session Bundle id - the #GstMIKEYMapType + the #GstMIKEYMapType @@ -671,18 +981,27 @@ will be appended to @msg. c:identifier="gst_mikey_message_to_bytes" version="1.4" throws="1"> - Convert @msg to a #GBytes. + Convert @msg to a #GBytes. + - a new #GBytes for @msg. + a new #GBytes for @msg. - a #GstMIKEYMessage + a #GstMIKEYMessage - a #GstMIKEYEncryptInfo + a #GstMIKEYEncryptInfo @@ -690,28 +1009,40 @@ will be appended to @msg. + - %TRUE on success + %TRUE on success - a #GstMIKEYMessage + a #GstMIKEYMessage - a #GstCaps to be filled with SRTP parameters (srtp/srtcp cipher, authorization, key data) + a #GstCaps to be filled with SRTP parameters (srtp/srtcp cipher, authorization, key data) - The PRF function that has been/will be used for key derivation + The PRF function that has been/will be used for key derivation + - MIKEY-1 PRF function + MIKEY-1 PRF function glib:type-name="GstMIKEYPayload" glib:get-type="gst_mikey_payload_get_type" c:symbol-prefix="mikey_payload"> - Hold the common fields for all payloads + Hold the common fields for all payloads + - the payload type + the payload type - length of the payload + length of the payload - Make a new #GstMIKEYPayload with @type. + Make a new #GstMIKEYPayload with @type. + - a new #GstMIKEYPayload or %NULL on failure. + a new #GstMIKEYPayload or %NULL on failure. - a #GstMIKEYPayloadType + a #GstMIKEYPayloadType @@ -749,18 +1094,27 @@ will be appended to @msg. - Add a new sub payload to @payload. + Add a new sub payload to @payload. + - %TRUE on success. + %TRUE on success. - a #GstMIKEYPayload + a #GstMIKEYPayload - a #GstMIKEYPayload to add + a #GstMIKEYPayload to add @@ -768,15 +1122,22 @@ will be appended to @msg. - Get the number of sub payloads of @payload. @payload should be of type + Get the number of sub payloads of @payload. @payload should be of type %GST_MIKEY_PT_KEMAC. + - the number of sub payloads in @payload + the number of sub payloads in @payload - a #GstMIKEYPayload + a #GstMIKEYPayload @@ -784,19 +1145,28 @@ will be appended to @msg. - Get the sub payload of @payload at @idx. @payload should be of type + Get the sub payload of @payload at @idx. @payload should be of type %GST_MIKEY_PT_KEMAC. + - the #GstMIKEYPayload at @idx. + the #GstMIKEYPayload at @idx. - a #GstMIKEYPayload + a #GstMIKEYPayload - an index + an index @@ -804,18 +1174,27 @@ will be appended to @msg. - Remove the sub payload at @idx in @payload. + Remove the sub payload at @idx in @payload. + - %TRUE on success. + %TRUE on success. - a #GstMIKEYPayload + a #GstMIKEYPayload - the index to remove + the index to remove @@ -823,23 +1202,34 @@ will be appended to @msg. - Set the KEMAC parameters. @payload should point to a %GST_MIKEY_PT_KEMAC + Set the KEMAC parameters. @payload should point to a %GST_MIKEY_PT_KEMAC payload. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - the #GstMIKEYEncAlg + the #GstMIKEYEncAlg - a #GstMIKEYMacAlg + a #GstMIKEYMacAlg @@ -847,32 +1237,47 @@ payload. - Set the key validity period in the %GST_MIKEY_PT_KEY_DATA @payload. + Set the key validity period in the %GST_MIKEY_PT_KEY_DATA @payload. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - the length of @vf_data + the length of @vf_data - the Valid From data + the Valid From data - the length of @vt_data + the length of @vt_data - the Valid To data + the Valid To data @@ -882,27 +1287,40 @@ payload. - Set @key_len bytes of @key_data of type @key_type as the key for the + Set @key_len bytes of @key_data of type @key_type as the key for the %GST_MIKEY_PT_KEY_DATA @payload. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - a #GstMIKEYKeyDataType + a #GstMIKEYKeyDataType - the length of @key_data + the length of @key_data - the key of type @key_type + the key of type @key_type @@ -912,26 +1330,37 @@ payload. - Set the salt key data. If @salt_len is 0 and @salt_data is %NULL, the + Set the salt key data. If @salt_len is 0 and @salt_data is %NULL, the salt data will be removed. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - the length of @salt_data + the length of @salt_data - the salt + the salt @@ -941,22 +1370,33 @@ salt data will be removed. - Set the SPI/MKI validity in the %GST_MIKEY_PT_KEY_DATA @payload. + Set the SPI/MKI validity in the %GST_MIKEY_PT_KEY_DATA @payload. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - the length of @spi_data + the length of @spi_data - the SPI/MKI data + the SPI/MKI data @@ -966,27 +1406,40 @@ salt data will be removed. - Set the PKE values in @payload. @payload must be of type + Set the PKE values in @payload. @payload must be of type %GST_MIKEY_PT_PKE. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - envelope key cache indicator + envelope key cache indicator - the length of @data + the length of @data - the encrypted envelope key + the encrypted envelope key @@ -996,22 +1449,33 @@ salt data will be removed. - Set the random values in a %GST_MIKEY_PT_RAND @payload. + Set the random values in a %GST_MIKEY_PT_RAND @payload. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - the length of @rand + the length of @rand - random values + random values @@ -1021,27 +1485,40 @@ salt data will be removed. - Add a new parameter to the %GST_MIKEY_PT_SP @payload with @type, @len + Add a new parameter to the %GST_MIKEY_PT_SP @payload with @type, @len and @val. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - a type + a type - a length + a length - @len bytes of data + @len bytes of data @@ -1051,15 +1528,22 @@ and @val. - Get the number of security policy parameters in a %GST_MIKEY_PT_SP + Get the number of security policy parameters in a %GST_MIKEY_PT_SP @payload. + - the number of parameters in @payload + the number of parameters in @payload - a #GstMIKEYPayload + a #GstMIKEYPayload @@ -1067,20 +1551,29 @@ and @val. - Get the Security Policy parameter in a %GST_MIKEY_PT_SP @payload + Get the Security Policy parameter in a %GST_MIKEY_PT_SP @payload at @idx. + - the #GstMIKEYPayloadSPParam at @idx in @payload + the #GstMIKEYPayloadSPParam at @idx in @payload - a #GstMIKEYPayload + a #GstMIKEYPayload - an index + an index @@ -1088,19 +1581,28 @@ at @idx. - Remove the Security Policy parameters from a %GST_MIKEY_PT_SP + Remove the Security Policy parameters from a %GST_MIKEY_PT_SP @payload at @idx. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - an index + an index @@ -1108,22 +1610,33 @@ at @idx. - Set the Security Policy parameters for @payload. + Set the Security Policy parameters for @payload. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - the policy number + the policy number - a #GstMIKEYSecProto + a #GstMIKEYSecProto @@ -1131,22 +1644,33 @@ at @idx. - Set the timestamp in a %GST_MIKEY_PT_T @payload. + Set the timestamp in a %GST_MIKEY_PT_T @payload. + - %TRUE on success + %TRUE on success - a #GstMIKEYPayload + a #GstMIKEYPayload - the #GstMIKEYTSType + the #GstMIKEYTSType - the timestamp value + the timestamp value @@ -1155,690 +1679,1048 @@ at @idx. - A structure holding the KEMAC payload + A structure holding the KEMAC payload + - the common #GstMIKEYPayload + the common #GstMIKEYPayload - the #GstMIKEYEncAlg + the #GstMIKEYEncAlg - the #GstMIKEYMacAlg + the #GstMIKEYMacAlg - the subpayloads + the subpayloads - The Key data payload contains key material. It should be added as sub + The Key data payload contains key material. It should be added as sub payload to the KEMAC. + - the payload header + the payload header - the #GstMIKEYKeyDataType of @key_data + the #GstMIKEYKeyDataType of @key_data - length of @key_data + length of @key_data - the key data + the key data - the length of @salt_data, can be 0 + the length of @salt_data, can be 0 - salt data + salt data - the Key Validity type + the Key Validity type - length of @kv_data - + length of @kv_data + - key validity data + key validity data - The Envelope data payload contains the encrypted envelope key that is + The Envelope data payload contains the encrypted envelope key that is used in the public-key transport to protect the data in the Key data transport payload. The encryption algorithm used is implicit from the certificate/public key used. + - the common #GstMIKEYPayload + the common #GstMIKEYPayload - envelope key cache indicator + envelope key cache indicator - length of @data + length of @data - the encrypted envelope key + the encrypted envelope key - The RAND payload consists of a (pseudo-)random bit-string + The RAND payload consists of a (pseudo-)random bit-string + - the payload header + the payload header - the length of @rand + the length of @rand - random values + random values - The Security Policy payload defines a set of policies that apply to a + The Security Policy payload defines a set of policies that apply to a specific security protocol + - the payload header + the payload header - the policy number + the policy number - the security protocol + the security protocol - array of #GstMIKEYPayloadSPParam + array of #GstMIKEYPayloadSPParam - A Type/Length/Value field for security paramaters + A Type/Length/Value field for security paramaters + - specifies the type of the parameter + specifies the type of the parameter - specifies the length of @val + specifies the length of @val - specifies the value of the parameter + specifies the value of the parameter - The timestamp payload carries the timestamp information + The timestamp payload carries the timestamp information + - the payload header + the payload header - a #GstMIKEYTSType + a #GstMIKEYTSType - the timestamp value + the timestamp value - Different MIKEY Payload types. + Different MIKEY Payload types. + - Last payload + Last payload - Key data transport payload + Key data transport payload - Envelope data payload + Envelope data payload - DH data payload + DH data payload - Signature payload + Signature payload - Timestamp payload + Timestamp payload - ID payload + ID payload - Certificate Payload + Certificate Payload - Cert hash payload + Cert hash payload - Verfication message payload + Verfication message payload - Security Policy payload + Security Policy payload - RAND payload + RAND payload - Error payload + Error payload - Key data sub-payload + Key data sub-payload - General Extension Payload + General Extension Payload - Specifies the security protocol + Specifies the security protocol + - SRTP + SRTP - This policy specifies the parameters for SRTP and SRTCP + This policy specifies the parameters for SRTP and SRTCP + - Encryption algorithm + Encryption algorithm - Session Encr. key length + Session Encr. key length - Authentication algorithm + Authentication algorithm - Session Auth. key length + Session Auth. key length - Session Salt key length + Session Salt key length - SRTP Pseudo Random Function + SRTP Pseudo Random Function - Key derivation rate + Key derivation rate - SRTP encryption off/on, 0 if off, 1 if on + SRTP encryption off/on, 0 if off, 1 if on - SRTCP encryption off/on, 0 if off, 1 if on + SRTCP encryption off/on, 0 if off, 1 if on - sender's FEC order + sender's FEC order - SRTP authentication off/on, 0 if off, 1 if on + SRTP authentication off/on, 0 if off, 1 if on - Authentication tag length + Authentication tag length - SRTP prefix length + SRTP prefix length - AEAD authentication tag length (Since: 1.16) + AEAD authentication tag length (Since: 1.16) - Specifies the timestamp type. + Specifies the timestamp type. + - an NTP time in UTC timezone + an NTP time in UTC timezone - an NTP time + an NTP time - a counter + a counter - Different MIKEY data types. + Different MIKEY data types. + - Invalid type + Invalid type - Initiator's pre-shared key message + Initiator's pre-shared key message - Verification message of a Pre-shared key message + Verification message of a Pre-shared key message - Initiator's public-key transport message + Initiator's public-key transport message - Verification message of a public-key message + Verification message of a public-key message - Initiator's DH exchange message + Initiator's DH exchange message - Responder's DH exchange message + Responder's DH exchange message - Error message + Error message - The supported MIKEY version 1. + The supported MIKEY version 1. + - The contents of the SDP "a=" field which contains a key/value pair. + The contents of the SDP "a=" field which contains a key/value pair. + - the attribute key + the attribute key - the attribute value or NULL when it was a property attribute + the attribute value or NULL when it was a property attribute - Clear the attribute. + Clear the attribute. + - @GST_SDP_OK. + @GST_SDP_OK. - a #GstSDPAttribute + a #GstSDPAttribute - Set the attribute with @key and @value. + Set the attribute with @key and @value. + - @GST_SDP_OK. + @GST_SDP_OK. - a #GstSDPAttribute + a #GstSDPAttribute - the key + the key - the value + the value - The contents of the SDP "b=" field which specifies the proposed bandwidth to + The contents of the SDP "b=" field which specifies the proposed bandwidth to be used by the session or media. + - the bandwidth modifier type + the bandwidth modifier type - the bandwidth in kilobits per second + the bandwidth in kilobits per second - Reset the bandwidth information in @bw. + Reset the bandwidth information in @bw. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPBandwidth + a #GstSDPBandwidth - Set bandwidth information in @bw. + Set bandwidth information in @bw. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPBandwidth + a #GstSDPBandwidth - the bandwidth modifier type + the bandwidth modifier type - the bandwidth in kilobits per second + the bandwidth in kilobits per second - The contents of the SDP "c=" field which contains connection data. + The contents of the SDP "c=" field which contains connection data. + - the type of network. "IN" is defined to have the meaning + the type of network. "IN" is defined to have the meaning "Internet". - the type of @address. + the type of @address. - the address + the address - the time to live of the address + the time to live of the address - the number of layers + the number of layers - Clear the connection. + Clear the connection. + - @GST_SDP_OK. + @GST_SDP_OK. - a #GstSDPConnection + a #GstSDPConnection - Set the connection with the given parameters. + Set the connection with the given parameters. + - @GST_SDP_OK. + @GST_SDP_OK. - a #GstSDPConnection + a #GstSDPConnection - the type of network. "IN" is defined to have the meaning + the type of network. "IN" is defined to have the meaning "Internet". - the type of address. + the type of address. - the address + the address - the time to live of the address + the time to live of the address - the number of layers + the number of layers - The contents of the SDP "k=" field which is used to convey encryption + The contents of the SDP "k=" field which is used to convey encryption keys. + - the encryption type + the encryption type - the encryption data + the encryption data - The contents of the SDP "m=" field with all related fields. + The contents of the SDP "m=" field with all related fields. + - the media type + the media type - the transport port to which the media stream will be sent + the transport port to which the media stream will be sent - the number of ports or -1 if only one port was specified + the number of ports or -1 if only one port was specified - the transport protocol + the transport protocol - an array of #gchar formats + an array of #gchar formats - the media title + the media title - array of #GstSDPConnection with media connection information + array of #GstSDPConnection with media connection information - array of #GstSDPBandwidth with media bandwidth information + array of #GstSDPBandwidth with media bandwidth information - the encryption key + the encryption key - array of #GstSDPAttribute with the additional media attributes + array of #GstSDPAttribute with the additional media attributes - Add the attribute with @key and @value to @media. + Add the attribute with @key and @value to @media. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - a key + a key - a value + a value - Add the bandwidth information with @bwtype and @bandwidth to @media. + Add the bandwidth information with @bwtype and @bandwidth to @media. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - the bandwidth modifier type + the bandwidth modifier type - the bandwidth in kilobits per second + the bandwidth in kilobits per second - Add the given connection parameters to @media. + Add the given connection parameters to @media. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMedia + a #GstSDPMedia - the type of network. "IN" is defined to have the meaning + the type of network. "IN" is defined to have the meaning "Internet". - the type of address. + the type of address. - the address + the address - the time to live of the address + the time to live of the address - the number of layers + the number of layers - Add the format information to @media. + Add the format information to @media. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - the format + the format - Convert the contents of @media to a text string. + Convert the contents of @media to a text string. + - A dynamically allocated string representing the media. + A dynamically allocated string representing the media. - a #GstSDPMedia + a #GstSDPMedia - Get the number of attribute fields in @media. + Get the number of attribute fields in @media. + - the number of attributes in @media. + the number of attributes in @media. - a #GstSDPMedia + a #GstSDPMedia @@ -1846,169 +2728,253 @@ keys. - Mapping of attributes of #GstSDPMedia to #GstCaps + Mapping of attributes of #GstSDPMedia to #GstCaps + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMedia + a #GstSDPMedia - a #GstCaps + a #GstCaps - Get the number of bandwidth fields in @media. + Get the number of bandwidth fields in @media. + - the number of bandwidths in @media. + the number of bandwidths in @media. - a #GstSDPMedia + a #GstSDPMedia - Get the number of connection fields in @media. + Get the number of connection fields in @media. + - the number of connections in @media. + the number of connections in @media. - a #GstSDPMedia + a #GstSDPMedia - Allocate a new copy of @media and store the result in @copy. The value in + Allocate a new copy of @media and store the result in @copy. The value in @copy should be release with gst_sdp_media_free function. + - a #GstSDPResult + a #GstSDPResult - a #GstSDPMedia + a #GstSDPMedia - pointer to new #GstSDPMedia + pointer to new #GstSDPMedia - Get the number of formats in @media. + Get the number of formats in @media. + - the number of formats in @media. + the number of formats in @media. - a #GstSDPMedia + a #GstSDPMedia - Free all resources allocated by @media. @media should not be used anymore after + Free all resources allocated by @media. @media should not be used anymore after this function. This function should be used when @media was dynamically allocated with gst_sdp_media_new(). + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMedia + a #GstSDPMedia - Get the attribute at position @idx in @media. + Get the attribute at position @idx in @media. + - the #GstSDPAttribute at position @idx. + the #GstSDPAttribute at position @idx. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - Get the first attribute value for @key in @media. + Get the first attribute value for @key in @media. + - the first attribute value for @key. + the first attribute value for @key. - a #GstSDPMedia + a #GstSDPMedia - a key + a key - Get the @nth attribute value for @key in @media. + Get the @nth attribute value for @key in @media. + - the @nth attribute value. + the @nth attribute value. - a #GstSDPMedia + a #GstSDPMedia - a key + a key - an index + an index - Get the bandwidth at position @idx in @media. + Get the bandwidth at position @idx in @media. + - the #GstSDPBandwidth at position @idx. + the #GstSDPBandwidth at position @idx. - a #GstSDPMedia + a #GstSDPMedia - an index + an index @@ -2016,156 +2982,232 @@ allocated with gst_sdp_media_new(). - Mapping of caps from SDP fields: + Mapping of caps from SDP fields: a=rtpmap:(payload) (encoding_name)/(clock_rate)[/(encoding_params)] a=framesize:(payload) (width)-(height) a=fmtp:(payload) (param)[=(value)];... + - a #GstCaps, or %NULL if an error happened + a #GstCaps, or %NULL if an error happened - a #GstSDPMedia + a #GstSDPMedia - a payload type + a payload type - Get the connection at position @idx in @media. + Get the connection at position @idx in @media. + - the #GstSDPConnection at position @idx. + the #GstSDPConnection at position @idx. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - Get the format information at position @idx in @media. + Get the format information at position @idx in @media. + - the format at position @idx. + the format at position @idx. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - Get the information of @media + Get the information of @media + - the information of @media. + the information of @media. - a #GstSDPMedia + a #GstSDPMedia - Get the encryption information from @media. + Get the encryption information from @media. + - a #GstSDPKey. + a #GstSDPKey. - a #GstSDPMedia + a #GstSDPMedia - Get the media description of @media. + Get the media description of @media. + - the media description. + the media description. - a #GstSDPMedia + a #GstSDPMedia - Get the number of ports for @media. + Get the number of ports for @media. + - the number of ports for @media. + the number of ports for @media. - a #GstSDPMedia + a #GstSDPMedia - Get the port number for @media. + Get the port number for @media. + - the port number of @media. + the port number of @media. - a #GstSDPMedia + a #GstSDPMedia - Get the transport protocol of @media + Get the transport protocol of @media + - the transport protocol of @media. + the transport protocol of @media. - a #GstSDPMedia + a #GstSDPMedia - Initialize @media so that its contents are as if it was freshly allocated + Initialize @media so that its contents are as if it was freshly allocated with gst_sdp_media_new(). This function is mostly used to initialize a media allocated on the stack. gst_sdp_media_uninit() undoes this operation. When this function is invoked on newly allocated data (with malloc or on the stack), its contents should be set to 0 before calling this function. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMedia + a #GstSDPMedia @@ -2173,23 +3215,34 @@ stack), its contents should be set to 0 before calling this function. - Insert the attribute to @media at @idx. When @idx is -1, + Insert the attribute to @media at @idx. When @idx is -1, the attribute is appended. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - a #GstSDPAttribute + a #GstSDPAttribute @@ -2197,23 +3250,34 @@ the attribute is appended. - Insert the bandwidth information to @media at @idx. When @idx is -1, + Insert the bandwidth information to @media at @idx. When @idx is -1, the bandwidth is appended. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - a #GstSDPBandwidth + a #GstSDPBandwidth @@ -2221,23 +3285,34 @@ the bandwidth is appended. - Insert the connection information to @media at @idx. When @idx is -1, + Insert the connection information to @media at @idx. When @idx is -1, the connection is appended. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - a #GstSDPConnection + a #GstSDPConnection @@ -2245,23 +3320,34 @@ the connection is appended. - Insert the format information to @media at @idx. When @idx is -1, + Insert the format information to @media at @idx. When @idx is -1, the format is appended. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - the format + the format @@ -2269,22 +3355,31 @@ the format is appended. - Creates a new #GstMIKEYMessage after parsing the key-mgmt attribute + Creates a new #GstMIKEYMessage after parsing the key-mgmt attribute from a #GstSDPMedia. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMedia + a #GstSDPMedia - pointer to new #GstMIKEYMessage + pointer to new #GstMIKEYMessage @@ -2292,18 +3387,27 @@ from a #GstSDPMedia. - Remove the attribute in @media at @idx. + Remove the attribute in @media at @idx. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index @@ -2311,18 +3415,27 @@ from a #GstSDPMedia. - Remove the bandwidth information in @media at @idx. + Remove the bandwidth information in @media at @idx. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index @@ -2330,18 +3443,27 @@ from a #GstSDPMedia. - Remove the connection information in @media at @idx. + Remove the connection information in @media at @idx. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index @@ -2349,18 +3471,27 @@ from a #GstSDPMedia. - Remove the format information in @media at @idx. + Remove the format information in @media at @idx. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index @@ -2368,22 +3499,33 @@ from a #GstSDPMedia. - Replace the attribute in @media at @idx with @attr. + Replace the attribute in @media at @idx with @attr. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - a #GstSDPAttribute + a #GstSDPAttribute @@ -2391,22 +3533,33 @@ from a #GstSDPMedia. - Replace the bandwidth information in @media at @idx with @bw. + Replace the bandwidth information in @media at @idx with @bw. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - a #GstSDPBandwidth + a #GstSDPBandwidth @@ -2414,22 +3567,33 @@ from a #GstSDPMedia. - Replace the connection information in @media at @idx with @conn. + Replace the connection information in @media at @idx with @conn. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - a #GstSDPConnection + a #GstSDPConnection @@ -2437,139 +3601,211 @@ from a #GstSDPMedia. - Replace the format information in @media at @idx with @format. + Replace the format information in @media at @idx with @format. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - an index + an index - the format + the format - Set the media information of @media to @information. + Set the media information of @media to @information. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - the media information + the media information - Adds the encryption information to @media. + Adds the encryption information to @media. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMedia + a #GstSDPMedia - the encryption type + the encryption type - the encryption data + the encryption data - Set the media description of @media to @med. + Set the media description of @media to @med. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - the media description + the media description - Set the port information in @media. + Set the port information in @media. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - the port number + the port number - the number of ports + the number of ports - Set the media transport protocol of @media to @proto. + Set the media transport protocol of @media to @proto. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMedia + a #GstSDPMedia - the media transport protocol + the media transport protocol - Free all resources allocated in @media. @media should not be used anymore after + Free all resources allocated in @media. @media should not be used anymore after this function. This function should be used when @media was allocated on the stack and initialized with gst_sdp_media_init(). + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMedia + a #GstSDPMedia - Allocate a new GstSDPMedia and store the result in @media. + Allocate a new GstSDPMedia and store the result in @media. + - a #GstSDPResult. + a #GstSDPResult. @@ -2577,7 +3813,9 @@ stack and initialized with gst_sdp_media_init(). direction="out" caller-allocates="0" transfer-ownership="full"> - pointer to new #GstSDPMedia + pointer to new #GstSDPMedia @@ -2585,7 +3823,9 @@ stack and initialized with gst_sdp_media_init(). - Mapping of caps to SDP fields: + Mapping of caps to SDP fields: a=rtpmap:(payload) (encoding_name) or (clock_rate)[or (encoding_params)] @@ -2594,17 +3834,24 @@ a=framesize:(payload) (width)-(height) a=fmtp:(payload) (param)[=(value)];... a=rtcp-fb:(payload) (param1) [param2]... + - a #GstSDPResult. + a #GstSDPResult. - a #GstCaps + a #GstCaps - a #GstSDPMedia + a #GstSDPMedia @@ -2615,199 +3862,292 @@ a=rtcp-fb:(payload) (param1) [param2]... glib:type-name="GstSDPMessage" glib:get-type="gst_sdp_message_get_type" c:symbol-prefix="sdp_message"> - The GstSDPMessage helper functions makes it easy to parse and create SDP + The GstSDPMessage helper functions makes it easy to parse and create SDP messages. + - the protocol version + the protocol version - owner/creator and session identifier + owner/creator and session identifier - session name + session name - session information + session information - URI of description + URI of description - array of #gchar with email addresses + array of #gchar with email addresses - array of #gchar with phone numbers + array of #gchar with phone numbers - connection information for the session + connection information for the session - array of #GstSDPBandwidth with bandwidth information + array of #GstSDPBandwidth with bandwidth information - array of #GstSDPTime with time descriptions + array of #GstSDPTime with time descriptions - array of #GstSDPZone with time zone adjustments + array of #GstSDPZone with time zone adjustments - encryption key + encryption key - array of #GstSDPAttribute with session attributes + array of #GstSDPAttribute with session attributes - array of #GstSDPMedia with media descriptions + array of #GstSDPMedia with media descriptions - Add the attribute with @key and @value to @msg. + Add the attribute with @key and @value to @msg. + - @GST_SDP_OK. + @GST_SDP_OK. - a #GstSDPMessage + a #GstSDPMessage - the key + the key - the value + the value - Add the specified bandwidth information to @msg. + Add the specified bandwidth information to @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the bandwidth modifier type + the bandwidth modifier type - the bandwidth in kilobits per second + the bandwidth in kilobits per second - Add @email to the list of emails in @msg. + Add @email to the list of emails in @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - an email + an email - Adds @media to the array of medias in @msg. This function takes ownership of + Adds @media to the array of medias in @msg. This function takes ownership of the contents of @media so that @media will have to be reinitialized with gst_sdp_media_init() before it can be used again. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - a #GstSDPMedia to add + a #GstSDPMedia to add - Add @phone to the list of phones in @msg. + Add @phone to the list of phones in @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - a phone + a phone - Add time information @start and @stop to @msg. + Add time information @start and @stop to @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the start time + the start time - the stop time + the stop time - the repeat times + the repeat times @@ -2815,49 +4155,74 @@ gst_sdp_media_init() before it can be used again. - Add time zone information to @msg. + Add time zone information to @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the NTP time that a time zone adjustment happens + the NTP time that a time zone adjustment happens - the offset from the time when the session was first scheduled + the offset from the time when the session was first scheduled - Convert the contents of @msg to a text string. + Convert the contents of @msg to a text string. + - A dynamically allocated string representing the SDP description. + A dynamically allocated string representing the SDP description. - a #GstSDPMessage + a #GstSDPMessage - Get the number of attributes in @msg. + Get the number of attributes in @msg. + - the number of attributes in @msg. + the number of attributes in @msg. - a #GstSDPMessage + a #GstSDPMessage @@ -2865,367 +4230,552 @@ gst_sdp_media_init() before it can be used again. - Mapping of attributes of #GstSDPMessage to #GstCaps + Mapping of attributes of #GstSDPMessage to #GstCaps + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - a #GstCaps + a #GstCaps - Get the number of bandwidth information in @msg. + Get the number of bandwidth information in @msg. + - the number of bandwidth information in @msg. + the number of bandwidth information in @msg. - a #GstSDPMessage + a #GstSDPMessage - Allocate a new copy of @msg and store the result in @copy. The value in + Allocate a new copy of @msg and store the result in @copy. The value in @copy should be release with gst_sdp_message_free function. + - a #GstSDPResult + a #GstSDPResult - a #GstSDPMessage + a #GstSDPMessage - pointer to new #GstSDPMessage + pointer to new #GstSDPMessage - Dump the parsed contents of @msg to stdout. + Dump the parsed contents of @msg to stdout. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - Get the number of emails in @msg. + Get the number of emails in @msg. + - the number of emails in @msg. + the number of emails in @msg. - a #GstSDPMessage + a #GstSDPMessage - Free all resources allocated by @msg. @msg should not be used anymore after + Free all resources allocated by @msg. @msg should not be used anymore after this function. This function should be used when @msg was dynamically allocated with gst_sdp_message_new(). + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - Get the attribute at position @idx in @msg. + Get the attribute at position @idx in @msg. + - the #GstSDPAttribute at position @idx. + the #GstSDPAttribute at position @idx. - a #GstSDPMessage + a #GstSDPMessage - the index + the index - Get the first attribute with key @key in @msg. + Get the first attribute with key @key in @msg. + - the attribute value of the first attribute with @key. + the attribute value of the first attribute with @key. - a #GstSDPMessage + a #GstSDPMessage - the key + the key - Get the @nth attribute with key @key in @msg. + Get the @nth attribute with key @key in @msg. + - the attribute value of the @nth attribute with @key. + the attribute value of the @nth attribute with @key. - a #GstSDPMessage + a #GstSDPMessage - the key + the key - the index + the index - Get the bandwidth at index @idx from @msg. + Get the bandwidth at index @idx from @msg. + - a #GstSDPBandwidth. + a #GstSDPBandwidth. - a #GstSDPMessage + a #GstSDPMessage - the bandwidth index + the bandwidth index - Get the connection of @msg. + Get the connection of @msg. + - a #GstSDPConnection. The result remains valid as long as @msg is valid. + a #GstSDPConnection. The result remains valid as long as @msg is valid. - a #GstSDPMessage + a #GstSDPMessage - Get the email with number @idx from @msg. + Get the email with number @idx from @msg. + - the email at position @idx. + the email at position @idx. - a #GstSDPMessage + a #GstSDPMessage - an email index + an email index - Get the information in @msg. + Get the information in @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - Get the encryption information from @msg. + Get the encryption information from @msg. + - a #GstSDPKey. + a #GstSDPKey. - a #GstSDPMessage + a #GstSDPMessage - Get the media description at index @idx in @msg. + Get the media description at index @idx in @msg. + - a #GstSDPMedia. + a #GstSDPMedia. - a #GstSDPMessage + a #GstSDPMessage - the index + the index - Get the origin of @msg. + Get the origin of @msg. + - a #GstSDPOrigin. The result remains valid as long as @msg is valid. + a #GstSDPOrigin. The result remains valid as long as @msg is valid. - a #GstSDPMessage + a #GstSDPMessage - Get the phone with number @idx from @msg. + Get the phone with number @idx from @msg. + - the phone at position @idx. + the phone at position @idx. - a #GstSDPMessage + a #GstSDPMessage - a phone index + a phone index - Get the session name in @msg. + Get the session name in @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - Get time information with index @idx from @msg. + Get time information with index @idx from @msg. + - a #GstSDPTime. + a #GstSDPTime. - a #GstSDPMessage + a #GstSDPMessage - the time index + the time index - Get the URI in @msg. + Get the URI in @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - Get the version in @msg. + Get the version in @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - Get time zone information with index @idx from @msg. + Get time zone information with index @idx from @msg. + - a #GstSDPZone. + a #GstSDPZone. - a #GstSDPMessage + a #GstSDPMessage - the zone index + the zone index - Initialize @msg so that its contents are as if it was freshly allocated + Initialize @msg so that its contents are as if it was freshly allocated with gst_sdp_message_new(). This function is mostly used to initialize a message allocated on the stack. gst_sdp_message_uninit() undoes this operation. When this function is invoked on newly allocated data (with malloc or on the stack), its contents should be set to 0 before calling this function. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage @@ -3233,24 +4783,35 @@ stack), its contents should be set to 0 before calling this function. - Insert attribute into the array of attributes in @msg + Insert attribute into the array of attributes in @msg at index @idx. When -1 is given as @idx, the attribute is inserted at the end. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - an index + an index - a #GstSDPAttribute + a #GstSDPAttribute @@ -3258,24 +4819,35 @@ When -1 is given as @idx, the attribute is inserted at the end. - Insert bandwidth parameters into the array of bandwidths in @msg + Insert bandwidth parameters into the array of bandwidths in @msg at index @idx. When -1 is given as @idx, the bandwidth is inserted at the end. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - an index + an index - the bandwidth + the bandwidth @@ -3283,23 +4855,34 @@ When -1 is given as @idx, the bandwidth is inserted at the end. - Insert @email into the array of emails in @msg at index @idx. + Insert @email into the array of emails in @msg at index @idx. When -1 is given as @idx, the email is inserted at the end. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - an index + an index - an email + an email @@ -3307,23 +4890,34 @@ When -1 is given as @idx, the email is inserted at the end. - Insert @phone into the array of phone numbers in @msg at index @idx. + Insert @phone into the array of phone numbers in @msg at index @idx. When -1 is given as @idx, the phone is inserted at the end. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - a phone index + a phone index - a phone + a phone @@ -3331,24 +4925,35 @@ When -1 is given as @idx, the phone is inserted at the end. - Insert time parameters into the array of times in @msg + Insert time parameters into the array of times in @msg at index @idx. When -1 is given as @idx, the times are inserted at the end. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - an index + an index - a #GstSDPTime + a #GstSDPTime @@ -3356,37 +4961,55 @@ When -1 is given as @idx, the times are inserted at the end. - Insert zone parameters into the array of zones in @msg + Insert zone parameters into the array of zones in @msg at index @idx. When -1 is given as @idx, the zone is inserted at the end. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - an index + an index - a #GstSDPZone + a #GstSDPZone - Get the number of media descriptions in @msg. + Get the number of media descriptions in @msg. + - the number of media descriptions in @msg. + the number of media descriptions in @msg. - a #GstSDPMessage + a #GstSDPMessage @@ -3394,35 +5017,51 @@ When -1 is given as @idx, the zone is inserted at the end. - Creates a new #GstMIKEYMessage after parsing the key-mgmt attribute + Creates a new #GstMIKEYMessage after parsing the key-mgmt attribute from a #GstSDPMessage. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - pointer to new #GstMIKEYMessage + pointer to new #GstMIKEYMessage - Get the number of phones in @msg. + Get the number of phones in @msg. + - the number of phones in @msg. + the number of phones in @msg. - a #GstSDPMessage + a #GstSDPMessage @@ -3430,18 +5069,27 @@ from a #GstSDPMessage. - Remove the attribute in @msg at index @idx. + Remove the attribute in @msg at index @idx. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the index + the index @@ -3449,18 +5097,27 @@ from a #GstSDPMessage. - Remove the bandwidth information in @msg at index @idx. + Remove the bandwidth information in @msg at index @idx. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the bandwidth index + the bandwidth index @@ -3468,18 +5125,27 @@ from a #GstSDPMessage. - Remove the email in @msg at index @idx. + Remove the email in @msg at index @idx. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - an email index + an email index @@ -3487,18 +5153,27 @@ from a #GstSDPMessage. - Remove the phone number in @msg at index @idx. + Remove the phone number in @msg at index @idx. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - a phone index + a phone index @@ -3506,18 +5181,27 @@ from a #GstSDPMessage. - Remove the time information in @msg at index @idx. + Remove the time information in @msg at index @idx. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the index + the index @@ -3525,18 +5209,27 @@ from a #GstSDPMessage. - Remove the zone information in @msg at index @idx. + Remove the zone information in @msg at index @idx. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the index + the index @@ -3544,22 +5237,33 @@ from a #GstSDPMessage. - Replace the attribute in @msg at index @idx with @attr. + Replace the attribute in @msg at index @idx with @attr. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the index + the index - a #GstSDPAttribute + a #GstSDPAttribute @@ -3567,22 +5271,33 @@ from a #GstSDPMessage. - Replace the bandwidth information in @msg at index @idx with @bw. + Replace the bandwidth information in @msg at index @idx with @bw. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the bandwidth index + the bandwidth index - the bandwidth + the bandwidth @@ -3590,22 +5305,33 @@ from a #GstSDPMessage. - Replace the email in @msg at index @idx with @email. + Replace the email in @msg at index @idx with @email. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - an email index + an email index - an email + an email @@ -3613,22 +5339,33 @@ from a #GstSDPMessage. - Replace the phone number in @msg at index @idx with @phone. + Replace the phone number in @msg at index @idx with @phone. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - a phone index + a phone index - a phone + a phone @@ -3636,22 +5373,33 @@ from a #GstSDPMessage. - Replace the time information in @msg at index @idx with @t. + Replace the time information in @msg at index @idx with @t. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the index + the index - a #GstSDPTime + a #GstSDPTime @@ -3659,255 +5407,384 @@ from a #GstSDPMessage. - Replace the zone information in @msg at index @idx with @zone. + Replace the zone information in @msg at index @idx with @zone. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the index + the index - a #GstSDPZone + a #GstSDPZone - Configure the SDP connection in @msg with the given parameters. + Configure the SDP connection in @msg with the given parameters. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the type of network. "IN" is defined to have the meaning + the type of network. "IN" is defined to have the meaning "Internet". - the type of address. + the type of address. - the address + the address - the time to live of the address + the time to live of the address - the number of layers + the number of layers - Set the information in @msg. + Set the information in @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the information + the information - Adds the encryption information to @msg. + Adds the encryption information to @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the encryption type + the encryption type - the encryption data + the encryption data - Configure the SDP origin in @msg with the given parameters. + Configure the SDP origin in @msg with the given parameters. + - #GST_SDP_OK. + #GST_SDP_OK. - a #GstSDPMessage + a #GstSDPMessage - the user name + the user name - a session id + a session id - a session version + a session version - a network type + a network type - an address type + an address type - an address + an address - Set the session name in @msg. + Set the session name in @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the session name + the session name - Set the URI in @msg. + Set the URI in @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the URI + the URI - Set the version in @msg. + Set the version in @msg. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - the version + the version - Get the number of time information entries in @msg. + Get the number of time information entries in @msg. + - the number of time information entries in @msg. + the number of time information entries in @msg. - a #GstSDPMessage + a #GstSDPMessage - Free all resources allocated in @msg. @msg should not be used anymore after + Free all resources allocated in @msg. @msg should not be used anymore after this function. This function should be used when @msg was allocated on the stack and initialized with gst_sdp_message_init(). + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPMessage + a #GstSDPMessage - Get the number of time zone information entries in @msg. + Get the number of time zone information entries in @msg. + - the number of time zone information entries in @msg. + the number of time zone information entries in @msg. - a #GstSDPMessage + a #GstSDPMessage - Creates a uri from @msg with the given @scheme. The uri has the format: + Creates a uri from @msg with the given @scheme. The uri has the format: \@scheme:///[#type=value *[&type=value]] Where each value is url encoded. + - a uri for @msg. + a uri for @msg. - the uri scheme + the uri scheme - the #GstSDPMessage + the #GstSDPMessage - Allocate a new GstSDPMessage and store the result in @msg. + Allocate a new GstSDPMessage and store the result in @msg. + - a #GstSDPResult. + a #GstSDPResult. @@ -3915,7 +5792,9 @@ stack and initialized with gst_sdp_message_init(). direction="out" caller-allocates="0" transfer-ownership="full"> - pointer to new #GstSDPMessage + pointer to new #GstSDPMessage @@ -3923,52 +5802,74 @@ stack and initialized with gst_sdp_message_init(). - Parse @text and create a new SDPMessage from these. + Parse @text and create a new SDPMessage from these. + - a #GstSDPResult. + a #GstSDPResult. - A dynamically allocated string representing the SDP description + A dynamically allocated string representing the SDP description - pointer to new #GstSDPMessage + pointer to new #GstSDPMessage - Parse the contents of @size bytes pointed to by @data and store the result in + Parse the contents of @size bytes pointed to by @data and store the result in @msg. + - #GST_SDP_OK on success. + #GST_SDP_OK on success. - the start of the buffer + the start of the buffer - the size of the buffer + the size of the buffer - the result #GstSDPMessage + the result #GstSDPMessage - Parse the null-terminated @uri and store the result in @msg. + Parse the null-terminated @uri and store the result in @msg. The uri should be of the form: @@ -3977,118 +5878,176 @@ The uri should be of the form: where value is url encoded. This looslely resembles http://tools.ietf.org/html/draft-fujikawa-sdp-url-01 + - #GST_SDP_OK on success. + #GST_SDP_OK on success. - the start of the uri + the start of the uri - the result #GstSDPMessage + the result #GstSDPMessage - The contents of the SDP "o=" field which gives the originator of the session + The contents of the SDP "o=" field which gives the originator of the session (their username and the address of the user's host) plus a session id and session version number. + - the user's login on the originating host, or it is "-" + the user's login on the originating host, or it is "-" if the originating host does not support the concept of user ids. - is a numeric string such that the tuple of @username, @sess_id, + is a numeric string such that the tuple of @username, @sess_id, @nettype, @addrtype and @addr form a globally unique identifier for the session. - a version number for this announcement + a version number for this announcement - the type of network. "IN" is defined to have the meaning + the type of network. "IN" is defined to have the meaning "Internet". - the type of @addr. + the type of @addr. - the globally unique address of the machine from which the session was + the globally unique address of the machine from which the session was created. - Return values for the SDP functions. + Return values for the SDP functions. + - A successful return value + A successful return value - a function was given invalid parameters + a function was given invalid parameters - The contents of the SDP "t=" field which specify the start and stop times for + The contents of the SDP "t=" field which specify the start and stop times for a conference session. + - start time for the conference. The value is the decimal + start time for the conference. The value is the decimal representation of Network Time Protocol (NTP) time values in seconds - stop time for the conference. The value is the decimal + stop time for the conference. The value is the decimal representation of Network Time Protocol (NTP) time values in seconds - repeat times for a session + repeat times for a session - Reset the time information in @t. + Reset the time information in @t. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPTime + a #GstSDPTime - Set time information @start, @stop and @repeat in @t. + Set time information @start, @stop and @repeat in @t. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPTime + a #GstSDPTime - the start time + the start time - the stop time + the stop time - the repeat times + the repeat times @@ -4097,96 +6056,168 @@ a conference session. - The contents of the SDP "z=" field which allows the sender to + The contents of the SDP "z=" field which allows the sender to specify a list of time zone adjustments and offsets from the base time. + - the NTP time that a time zone adjustment happens + the NTP time that a time zone adjustment happens - the offset from the time when the session was first scheduled + the offset from the time when the session was first scheduled - Reset the zone information in @zone. + Reset the zone information in @zone. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPZone + a #GstSDPZone - Set zone information in @zone. + Set zone information in @zone. + - a #GstSDPResult. + a #GstSDPResult. - a #GstSDPZone + a #GstSDPZone - the NTP time that a time zone adjustment happens + the NTP time that a time zone adjustment happens - the offset from the time when the session was first scheduled + the offset from the time when the session was first scheduled - The Application-Specific Maximum bandwidth modifier. + The Application-Specific Maximum bandwidth modifier. + - The Conference Total bandwidth modifier. + The Conference Total bandwidth modifier. + - The extension prefix bandwidth modifier. + The extension prefix bandwidth modifier. + - RTCP bandwidth allocated to data receivers (RFC 3556). + RTCP bandwidth allocated to data receivers (RFC 3556). + - RTCP bandwidth allocated to active data senders (RFC 3556). + RTCP bandwidth allocated to active data senders (RFC 3556). + - Transport Independent Application Specific Maximum bandwidth (RFC 3890). + Transport Independent Application Specific Maximum bandwidth (RFC 3890). + + + + + + + + + + + + + + + - Check if the given @addr is a multicast address. + Check if the given @addr is a multicast address. + - TRUE when @addr is multicast. + TRUE when @addr is multicast. - a network type + a network type - an address type + an address type - an address + an address @@ -4194,18 +6225,27 @@ time. - Makes key management data + Makes key management data + - a #gchar key-mgmt data, + a #gchar key-mgmt data, - a #gchar URI + a #gchar URI - a #gchar base64-encoded key data + a #gchar base64-encoded key data @@ -4213,9 +6253,14 @@ time. - Allocate a new GstSDPMedia and store the result in @media. + Allocate a new GstSDPMedia and store the result in @media. + - a #GstSDPResult. + a #GstSDPResult. @@ -4223,7 +6268,9 @@ time. direction="out" caller-allocates="0" transfer-ownership="full"> - pointer to new #GstSDPMedia + pointer to new #GstSDPMedia @@ -4232,7 +6279,9 @@ time. c:identifier="gst_sdp_media_set_media_from_caps" moved-to="SDPMedia.set_media_from_caps" version="1.8"> - Mapping of caps to SDP fields: + Mapping of caps to SDP fields: a=rtpmap:(payload) (encoding_name) or (clock_rate)[or (encoding_params)] @@ -4241,17 +6290,24 @@ a=framesize:(payload) (width)-(height) a=fmtp:(payload) (param)[=(value)];... a=rtcp-fb:(payload) (param1) [param2]... + - a #GstSDPResult. + a #GstSDPResult. - a #GstCaps + a #GstCaps - a #GstSDPMedia + a #GstSDPMedia @@ -4259,22 +6315,31 @@ a=rtcp-fb:(payload) (param1) [param2]... - Creates a uri from @msg with the given @scheme. The uri has the format: + Creates a uri from @msg with the given @scheme. The uri has the format: \@scheme:///[#type=value *[&type=value]] Where each value is url encoded. + - a uri for @msg. + a uri for @msg. - the uri scheme + the uri scheme - the #GstSDPMessage + the #GstSDPMessage @@ -4282,9 +6347,14 @@ a=rtcp-fb:(payload) (param1) [param2]... - Allocate a new GstSDPMessage and store the result in @msg. + Allocate a new GstSDPMessage and store the result in @msg. + - a #GstSDPResult. + a #GstSDPResult. @@ -4292,7 +6362,9 @@ a=rtcp-fb:(payload) (param1) [param2]... direction="out" caller-allocates="0" transfer-ownership="full"> - pointer to new #GstSDPMessage + pointer to new #GstSDPMessage @@ -4301,21 +6373,30 @@ a=rtcp-fb:(payload) (param1) [param2]... c:identifier="gst_sdp_message_new_from_text" moved-to="SDPMessage.new_from_text" version="1.16"> - Parse @text and create a new SDPMessage from these. + Parse @text and create a new SDPMessage from these. + - a #GstSDPResult. + a #GstSDPResult. - A dynamically allocated string representing the SDP description + A dynamically allocated string representing the SDP description - pointer to new #GstSDPMessage + pointer to new #GstSDPMessage @@ -4323,25 +6404,36 @@ a=rtcp-fb:(payload) (param1) [param2]... - Parse the contents of @size bytes pointed to by @data and store the result in + Parse the contents of @size bytes pointed to by @data and store the result in @msg. + - #GST_SDP_OK on success. + #GST_SDP_OK on success. - the start of the buffer + the start of the buffer - the size of the buffer + the size of the buffer - the result #GstSDPMessage + the result #GstSDPMessage @@ -4349,7 +6441,9 @@ a=rtcp-fb:(payload) (param1) [param2]... - Parse the null-terminated @uri and store the result in @msg. + Parse the null-terminated @uri and store the result in @msg. The uri should be of the form: @@ -4358,17 +6452,24 @@ The uri should be of the form: where value is url encoded. This looslely resembles http://tools.ietf.org/html/draft-fujikawa-sdp-url-01 + - #GST_SDP_OK on success. + #GST_SDP_OK on success. - the start of the uri + the start of the uri - the result #GstSDPMessage + the result #GstSDPMessage diff --git a/gir-files/GstTag-1.0.gir b/gir-files/GstTag-1.0.gir index ebda563c5..519620995 100644 --- a/gir-files/GstTag-1.0.gir +++ b/gir-files/GstTag-1.0.gir @@ -15,44 +15,103 @@ and/or use gtk-doc annotations. --> shared-library="libgsttag-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Direction of contrast processing applied when capturing an image. (string) + Direction of contrast processing applied when capturing an image. (string) The allowed values are: "normal" "soft" "hard" + - Digital zoom ratio used when capturing an image. (double) + Digital zoom ratio used when capturing an image. (double) + - Exposure compensation using when capturing an image in EV. (double) + Exposure compensation using when capturing an image in EV. (double) + - Exposure mode used when capturing an image. (string) + Exposure mode used when capturing an image. (string) The allowed values are: "auto-exposure" "manual-exposure" "auto-bracket" + - Type of exposure control used when capturing an image. (string) + Type of exposure control used when capturing an image. (string) The allowed values are: "undefined" @@ -64,54 +123,72 @@ The allowed values are: "action" - biased towards fast shutter speed "portrait" - closeup, leaving background out of focus "landscape" - landscape photos, background in focus + - If flash was fired during the capture of an image. (boolean) + If flash was fired during the capture of an image. (boolean) Note that if this tag isn't present, it should not be assumed that the flash did not fire. It should be treated as unknown. + - The flash mode selected during the capture of an image. (string) + The flash mode selected during the capture of an image. (string) The allowed values are: "auto" "always" "never" + - Focal length used when capturing an image, in mm. (double) + Focal length used when capturing an image, in mm. (double) + - 35 mm equivalent focal length used when capturing an image, in mm. (double) + 35 mm equivalent focal length used when capturing an image, in mm. (double) + - Focal ratio (f-number) used when capturing an image. (double) + Focal ratio (f-number) used when capturing an image. (double) The value stored is the denominator of the focal ratio (f-number). For example, if this tag value is 2, the focal ratio is f/2. + - Gain adjustment applied to an image. (string) + Gain adjustment applied to an image. (string) The allowed values are: "none" @@ -119,18 +196,24 @@ The allowed values are: "high-gain-up" "low-gain-down" "high-gain-down" + - ISO speed used when capturing an image. (integer) + ISO speed used when capturing an image. (integer) + - Defines the way a camera determines the exposure. (string) + Defines the way a camera determines the exposure. (string) The allowed values are: "unknown" @@ -141,52 +224,67 @@ The allowed values are: "pattern" "partial" "other" + - Direction of saturation processing applied when capturing an image. (string) + Direction of saturation processing applied when capturing an image. (string) The allowed values are: "normal" "low-saturation" "high-saturation" + - Scene mode used when capturing an image. (string) + Scene mode used when capturing an image. (string) The allowed values are: "standard" "landscape" "portrait" "night-scene" + - Direction of sharpness processing applied when capturing an image. (string) + Direction of sharpness processing applied when capturing an image. (string) The allowed values are: "normal" "soft" "hard" + - Shutter speed used when capturing an image, in seconds. (fraction) + Shutter speed used when capturing an image, in seconds. (fraction) + - Indicates the source of capture. The device/medium used to do the + Indicates the source of capture. The device/medium used to do the capture. (string) Allowed values are: @@ -194,12 +292,15 @@ Allowed values are: "transparent-scanner" "reflex-scanner" "other" + - White balance mode used when capturing an image. (string) + White balance mode used when capturing an image. (string) The allowed values are: "auto" @@ -210,112 +311,215 @@ The allowed values are: "fluorescent" "fluorescent h" (newer daylight-calibrated fluorescents) "flash" + - CDDB disc id in its short form (e.g. 'aa063d0f') + CDDB disc id in its short form (e.g. 'aa063d0f') + - CDDB disc id including all details + CDDB disc id including all details + - Musicbrainz disc id (e.g. 'ahg7JUcfR3vCYBphSDIogOOWrr0-') + Musicbrainz disc id (e.g. 'ahg7JUcfR3vCYBphSDIogOOWrr0-') + - Musicbrainz disc id details + Musicbrainz disc id details + - Annodex CMML clip element tag + Annodex CMML clip element tag + - Annodex CMML head element tag + Annodex CMML head element tag + - Annodex CMML stream element tag + Annodex CMML stream element tag + + + + + + + + + + + + + + + - ID3V2 header size considered minimum input for some functions such as + ID3V2 header size considered minimum input for some functions such as gst_tag_list_from_id3v2_tag() and gst_tag_get_id3v2_tag_size() for example. + - Media (image/video) intended horizontal pixel density in ppi. (double) + Media (image/video) intended horizontal pixel density in ppi. (double) + - Media (image/video) intended vertical pixel density in ppi. (double) + Media (image/video) intended vertical pixel density in ppi. (double) + - Musical key in which the sound starts. It is represented as a string + Musical key in which the sound starts. It is represented as a string with a maximum length of three characters. The ground keys are represented with "A","B","C","D","E", "F" and "G" and halfkeys represented with "b" and "#". Minor is represented as "m" (e.g. "Dbm"). Off key is represented with an "o" only. This notation might be extended in the future to support non-minor/major keys. + - MusicBrainz album artist ID + MusicBrainz album artist ID + - MusicBrainz album ID + MusicBrainz album ID + - MusicBrainz artist ID + MusicBrainz artist ID + - MusicBrainz track ID + MusicBrainz track ID + - MusicBrainz track TRM ID + MusicBrainz track TRM ID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + glib:type-name="GstTagDemux" glib:get-type="gst_tag_demux_get_type" glib:type-struct="TagDemuxClass"> - Provides a base class for demuxing tags at the beginning or end of a + Provides a base class for demuxing tags at the beginning or end of a stream and handles things like typefinding, querying, seeking, and different modes of operation (chain-based, pull_range-based, and providing downstream elements with random access if upstream supports that). The tag @@ -353,7 +559,9 @@ Subclasses have to do four things: for the identify function to decide whether the stream has a supported tag or not. A class parsing ID3v1 tags, for example, would set min_end_size to 128 bytes. + + @@ -373,6 +581,7 @@ Subclasses have to do four things: + @@ -389,6 +598,7 @@ Subclasses have to do four things: + @@ -411,14 +621,16 @@ Subclasses have to do four things: - parent element + parent element - + @@ -426,26 +638,36 @@ Subclasses have to do four things: - The #GstTagDemuxClass structure. See documentation at beginning of section + The #GstTagDemuxClass structure. See documentation at beginning of section for details about what subclasses need to override and do. + - the parent class. + the parent class. - minimum size required to identify a tag at the start and + minimum size required to identify a tag at the start and determine its total size. Set to 0 if not interested in start tags. Subclasses should set this in their class_init function. - minimum size required to identify a tag at the end and + minimum size required to identify a tag at the end and determine its total size. Set to 0 if not interested in end tags. Subclasses should set this in their class_init function. + @@ -467,6 +689,7 @@ Subclasses should set this in their class_init function. + @@ -491,6 +714,7 @@ Subclasses should set this in their class_init function. + @@ -508,48 +732,61 @@ Subclasses should set this in their class_init function. - + + - Result values from the parse_tag virtual function. + Result values from the parse_tag virtual function. - cannot parse tag, just skip it + cannot parse tag, just skip it - call again with less or more data + call again with less or more data - parsed tag successfully + parsed tag successfully - Type of image contained in an image tag (specified as "image-type" field in + Type of image contained in an image tag (specified as "image-type" field in the info structure in the image's #GstSample) - No image type. Can be used to + No image type. Can be used to tell functions such as gst_tag_image_data_to_image_sample() that no image type should be set. @@ -557,176 +794,228 @@ the info structure in the image's #GstSample) value="0" c:identifier="GST_TAG_IMAGE_TYPE_UNDEFINED" glib:nick="undefined"> - Undefined/other image type + Undefined/other image type - Cover (front) + Cover (front) - Cover (back) + Cover (back) - Leaflet page + Leaflet page - Medium (e.g. label side of CD) + Medium (e.g. label side of CD) - Lead artist/lead performer/soloist + Lead artist/lead performer/soloist - Artist/performer + Artist/performer - Conductor + Conductor - Band/orchestra + Band/orchestra - Composer + Composer - Lyricist/text writer + Lyricist/text writer - Recording location + Recording location - During recording + During recording - During performance + During performance - Movie/video screen capture + Movie/video screen capture - A fish as funny as the ID3v2 spec + A fish as funny as the ID3v2 spec - Illustration + Illustration - Band/artist logotype + Band/artist logotype - Publisher/studio logotype + Publisher/studio logotype - See http://creativecommons.org/ns for more information. + See http://creativecommons.org/ns for more information. - making multiple copies + making multiple copies is allowed - distribution, public display + distribution, public display and public performance are allowed - distribution of derivative + distribution of derivative works is allowed - commercial derivatives are allowed, + commercial derivatives are allowed, but only non-commercial distribution is allowed - copyright and license notices + copyright and license notices must be kept intact - credit must be given to + credit must be given to copyright holder and/or author - derivative works must be + derivative works must be licensed under the same terms or compatible terms as the original work - source code (the preferred + source code (the preferred form for making modifications) must be provided when exercising some rights granted by the license @@ -734,7 +1023,9 @@ the info structure in the image's #GstSample) value="4096" c:identifier="GST_TAG_LICENSE_REQUIRES_COPYLEFT" glib:nick="requires-copyleft"> - derivative and combined works + derivative and combined works must be licensed under specified terms, similar to those of the original work @@ -742,7 +1033,9 @@ the info structure in the image's #GstSample) value="8192" c:identifier="GST_TAG_LICENSE_REQUIRES_LESSER_COPYLEFT" glib:nick="requires-lesser-copyleft"> - derivative works must be + derivative works must be licensed under specified terms, with at least the same conditions as the original work; combinations with the work may be licensed under different terms @@ -751,28 +1044,36 @@ the info structure in the image's #GstSample) value="65536" c:identifier="GST_TAG_LICENSE_PROHIBITS_COMMERCIAL_USE" glib:nick="prohibits-commercial-use"> - exercising rights for + exercising rights for commercial purposes is prohibited - use in a + use in a non-developing country is prohibited - this license was created + this license was created by the Creative Commons project - this license was + this license was created by the Free Software Foundation (FSF) @@ -784,7 +1085,9 @@ the info structure in the image's #GstSample) glib:type-name="GstTagMux" glib:get-type="gst_tag_mux_get_type" glib:type-struct="TagMuxClass"> - Provides a base class for adding tags at the beginning or end of a + Provides a base class for adding tags at the beginning or end of a stream. ## Deriving from GstTagMux @@ -798,8 +1101,10 @@ Subclasses have to do the following things: GST_TAG_MUX_CLASS(mux_klass)->render_start_tag and/or GST_TAG_MUX_CLASS(mux_klass)->render_end_tag vfuncs and set up a render function. + + @@ -813,6 +1118,7 @@ Subclasses have to do the following things: + @@ -826,14 +1132,16 @@ Subclasses have to do the following things: - parent element + parent element - + @@ -841,14 +1149,20 @@ Subclasses have to do the following things: - The #GstTagMuxClass structure. Subclasses need to override at least one + The #GstTagMuxClass structure. Subclasses need to override at least one of the two render vfuncs. + - the parent class. + the parent class. + @@ -864,6 +1178,7 @@ of the two render vfuncs. + @@ -878,12 +1193,13 @@ of the two render vfuncs. - + + glib:type-name="GstTagXmpWriter" glib:get-type="gst_tag_xmp_writer_get_type" glib:type-struct="TagXmpWriterInterface"> - This interface is implemented by elements that are able to do XMP serialization. Examples for + This interface is implemented by elements that are able to do XMP serialization. Examples for such elements are #jifmux and #qtmux. Applications can use this interface to configure which XMP schemas should be used when serializing tags into XMP. Schemas are represented by their names, a full list of the supported schemas can be obtained from gst_tag_xmp_list_schemas(). By default, all schemas are used. + - Adds all available XMP schemas to the configuration. Meaning that + Adds all available XMP schemas to the configuration. Meaning that all will be used. + - a #GstTagXmpWriter + a #GstTagXmpWriter - Adds @schema to the list schemas + Adds @schema to the list schemas + - a #GstTagXmpWriter + a #GstTagXmpWriter - the schema to be added + the schema to be added - Checks if @schema is going to be used + Checks if @schema is going to be used + - %TRUE if it is going to be used + %TRUE if it is going to be used - a #GstTagXmpWriter + a #GstTagXmpWriter - the schema to test + the schema to test - Removes all schemas from the list of schemas to use. Meaning that no + Removes all schemas from the list of schemas to use. Meaning that no XMP will be generated. + - a #GstTagXmpWriter + a #GstTagXmpWriter - Removes a schema from the list of schemas to use. Nothing is done if + Removes a schema from the list of schemas to use. Nothing is done if the schema wasn't in the list + - a #GstTagXmpWriter + a #GstTagXmpWriter - the schema to remove + the schema to remove + @@ -998,33 +1351,43 @@ the schema wasn't in the list + - Check if a given string contains a known ISO 639 language code. + Check if a given string contains a known ISO 639 language code. This is useful in situations where it's not clear whether a given string is a language code (which should be put into a #GST_TAG_LANGUAGE_CODE tag) or a free-form language name descriptor (which should be put into a #GST_TAG_LANGUAGE_NAME tag instead). + - TRUE if the two- or three-letter language code in @lang_code + TRUE if the two- or three-letter language code in @lang_code is a valid ISO-639 language code. - ISO-639 language code (e.g. "deu" or "ger" or "de") + ISO-639 language code (e.g. "deu" or "ger" or "de") - Convenience function to read a string with unknown character encoding. If + Convenience function to read a string with unknown character encoding. If the string is already in UTF-8 encoding, it will be returned right away. If not it tries to detect byte-order-mark for UTF-16/32 cases and use that. Otherwise, the environment will be searched for a number of environment @@ -1032,23 +1395,32 @@ variables (whose names are specified in the NULL-terminated string array @env_vars) containing a list of character encodings to try/use. If none are specified, the current locale will be tried. If that also doesn't work, WINDOWS-1252/ISO-8859-1 is assumed (which will almost always succeed). + - a newly-allocated string in UTF-8 encoding, or NULL + a newly-allocated string in UTF-8 encoding, or NULL - string data + string data - length of string data, or -1 if the string is NUL-terminated + length of string data, or -1 if the string is NUL-terminated - + a NULL-terminated string array of environment variable names, or NULL @@ -1057,89 +1429,143 @@ WINDOWS-1252/ISO-8859-1 is assumed (which will almost always succeed). - Looks up the GStreamer tag for a ID3v2 tag. + Looks up the GStreamer tag for a ID3v2 tag. + - The corresponding GStreamer tag or NULL if none exists. + The corresponding GStreamer tag or NULL if none exists. - ID3v2 tag to convert to GStreamer tag + ID3v2 tag to convert to GStreamer tag - Looks up the GStreamer tag for an ID3v2 user tag (e.g. description in + Looks up the GStreamer tag for an ID3v2 user tag (e.g. description in TXXX frame or owner in UFID frame). + - The corresponding GStreamer tag or NULL if none exists. + The corresponding GStreamer tag or NULL if none exists. - the type of ID3v2 user tag (e.g. "TXXX" or "UDIF") + the type of ID3v2 user tag (e.g. "TXXX" or "UDIF") - ID3v2 user tag to convert to GStreamer tag + ID3v2 user tag to convert to GStreamer tag - Looks up the GStreamer tag for a vorbiscomment tag. + Looks up the GStreamer tag for a vorbiscomment tag. + - The corresponding GStreamer tag or NULL if none exists. + The corresponding GStreamer tag or NULL if none exists. - vorbiscomment tag to convert to GStreamer tag + vorbiscomment tag to convert to GStreamer tag - Determines size of an ID3v2 tag on buffer containing at least ID3v2 header, + Determines size of an ID3v2 tag on buffer containing at least ID3v2 header, i.e. at least #GST_TAG_ID3V2_HEADER_SIZE (10) bytes; + - Size of tag, or 0 if header is invalid or too small. + Size of tag, or 0 if header is invalid or too small. - buffer holding ID3v2 tag (or at least the start of one) + buffer holding ID3v2 tag (or at least the start of one) + + Convenience macro wrapping gst_tag_get_language_code_iso_639_1(). + + + + ISO-639 language code (e.g. "deu" or "ger" or "de") + + + - Returns two-letter ISO-639-1 language code given a three-letter ISO-639-2 + Returns two-letter ISO-639-1 language code given a three-letter ISO-639-2 language code or two-letter ISO-639-1 language code (both are accepted for convenience). Language codes are case-sensitive and expected to be lower case. + - two-letter ISO-639-1 language code string that maps to @lang_code, + two-letter ISO-639-1 language code string that maps to @lang_code, or NULL if no mapping is known. The returned string must not be modified or freed. - ISO-639 language code (e.g. "deu" or "ger" or "de") + ISO-639 language code (e.g. "deu" or "ger" or "de") - Returns three-letter ISO-639-2 "bibliographic" language code given a + Returns three-letter ISO-639-2 "bibliographic" language code given a two-letter ISO-639-1 language code or a three-letter ISO-639-2 language code (both are accepted for convenience). @@ -1148,22 +1574,29 @@ The "bibliographic" code is derived from the English name of the language "terminological" codes are prefered. Language codes are case-sensitive and expected to be lower case. + - three-letter ISO-639-2 language code string that maps to @lang_code, + three-letter ISO-639-2 language code string that maps to @lang_code, or NULL if no mapping is known. The returned string must not be modified or freed. - ISO-639 language code (e.g. "deu" or "ger" or "de") + ISO-639 language code (e.g. "deu" or "ger" or "de") - Returns three-letter ISO-639-2 "terminological" language code given a + Returns three-letter ISO-639-2 "terminological" language code given a two-letter ISO-639-1 language code or a three-letter ISO-639-2 language code (both are accepted for convenience). @@ -1172,27 +1605,37 @@ The "terminological" code is derived from the local name of the language "terminological" codes are prefered over the "bibliographic" ones. Language codes are case-sensitive and expected to be lower case. + - three-letter ISO-639-2 language code string that maps to @lang_code, + three-letter ISO-639-2 language code string that maps to @lang_code, or NULL if no mapping is known. The returned string must not be modified or freed. - ISO-639 language code (e.g. "deu" or "ger" or "de") + ISO-639 language code (e.g. "deu" or "ger" or "de") - Returns a list of known language codes (in form of two-letter ISO-639-1 + Returns a list of known language codes (in form of two-letter ISO-639-1 codes). This is useful for UIs to build a list of available languages for tagging purposes (e.g. to tag an audio track appropriately in a video or audio editor). + - NULL-terminated string array with two-letter + NULL-terminated string array with two-letter language codes. Free with g_strfreev() when no longer needed. @@ -1201,14 +1644,19 @@ audio editor). - Returns the name of the language given an ISO-639 language code as + Returns the name of the language given an ISO-639 language code as found in a GST_TAG_LANGUAGE_CODE tag. The name will be translated according to the current locale (if the library was built against the iso-codes package, otherwise the English name will be returned). Language codes are case-sensitive and expected to be lower case. + - language name in UTF-8 format, or NULL if @language_code could + language name in UTF-8 format, or NULL if @language_code could not be mapped to a language name. The returned string must not be modified and does not need to freed; it will stay valid until the application is terminated. @@ -1216,23 +1664,32 @@ Language codes are case-sensitive and expected to be lower case. - two or three-letter ISO-639 language code + two or three-letter ISO-639 language code - Get the description of a license, which is a translated description + Get the description of a license, which is a translated description of the license's main features. + - the description of the license, or NULL if the license is unknown + the description of the license, or NULL if the license is unknown or a description is not available. - a license reference string in form of a URI, + a license reference string in form of a URI, e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/" @@ -1240,15 +1697,22 @@ of the license's main features. - Get the flags of a license, which describe most of the features of + Get the flags of a license, which describe most of the features of a license in their most general form. + - the flags of the license, or 0 if the license is unknown + the flags of the license, or 0 if the license is unknown - a license reference string in form of a URI, + a license reference string in form of a URI, e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/" @@ -1256,21 +1720,28 @@ a license in their most general form. - Get the jurisdiction code of a license. This is usually a two-letter + Get the jurisdiction code of a license. This is usually a two-letter ISO 3166-1 alpha-2 code, but there is also the special case of Scotland, for which no code exists and which is thus represented as "scotland". Known jurisdictions: ar, at, au, be, bg, br, ca, ch, cl, cn, co, de, dk, es, fi, fr, hr, hu, il, in, it, jp, kr, mk, mt, mx, my, nl, pe, pl, pt, scotland, se, si, tw, uk, us, za. + - the jurisdiction code of the license, or NULL if the license is + the jurisdiction code of the license, or NULL if the license is unknown or is not specific to a particular jurisdiction. - a license reference string in form of a URI, + a license reference string in form of a URI, e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/" @@ -1278,15 +1749,22 @@ pt, scotland, se, si, tw, uk, us, za. - Get the nick name of a license, which is a short (untranslated) string + Get the nick name of a license, which is a short (untranslated) string such as e.g. "CC BY-NC-ND 2.0 UK". + - the nick name of the license, or NULL if the license is unknown + the nick name of the license, or NULL if the license is unknown - a license reference string in form of a URI, + a license reference string in form of a URI, e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/" @@ -1294,16 +1772,23 @@ such as e.g. "CC BY-NC-ND 2.0 UK". - Get the title of a license, which is a short translated description + Get the title of a license, which is a short translated description of the license's features (generally not very pretty though). + - the title of the license, or NULL if the license is unknown or + the title of the license, or NULL if the license is unknown or no title is available. - a license reference string in form of a URI, + a license reference string in form of a URI, e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/" @@ -1311,27 +1796,39 @@ of the license's features (generally not very pretty though). - Get the version of a license. + Get the version of a license. + - the version of the license, or NULL if the license is not known or + the version of the license, or NULL if the license is not known or has no version - a license reference string in form of a URI, + a license reference string in form of a URI, e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/" - Returns a list of known license references (in form of URIs). This is + Returns a list of known license references (in form of URIs). This is useful for UIs to build a list of available licenses for tagging purposes (e.g. to tag an audio track appropriately in a video or audio editor, or an image in a camera application). + - NULL-terminated array of license strings. Free + NULL-terminated array of license strings. Free with g_strfreev() when no longer needed. @@ -1340,29 +1837,43 @@ an image in a camera application). - Gets the number of ID3v1 genres that can be identified. Winamp genres are + Gets the number of ID3v1 genres that can be identified. Winamp genres are included. + - the number of ID3v1 genres that can be identified + the number of ID3v1 genres that can be identified - Gets the ID3v1 genre name for a given ID. + Gets the ID3v1 genre name for a given ID. + - the genre or NULL if no genre is associated with that ID. + the genre or NULL if no genre is associated with that ID. - ID of genre to query + ID of genre to query - Helper function for tag-reading plugins to create a #GstSample suitable to + Helper function for tag-reading plugins to create a #GstSample suitable to add to a #GstTagList as an image tag (such as #GST_TAG_IMAGE or #GST_TAG_PREVIEW_IMAGE) from the encoded image data and an (optional) image type. @@ -1384,23 +1895,32 @@ the special tag name. This function will do various checks and typefind the encoded image data (we can't trust the declared mime type). + - a newly-allocated image sample for use in tag lists, or NULL + a newly-allocated image sample for use in tag lists, or NULL - the (encoded) image + the (encoded) image - the length of the encoded image data at @image_data + the length of the encoded image data at @image_data - type of the image, or #GST_TAG_IMAGE_TYPE_UNDEFINED. Pass + type of the image, or #GST_TAG_IMAGE_TYPE_UNDEFINED. Pass #GST_TAG_IMAGE_TYPE_NONE if no image type should be set at all (e.g. for preview images) @@ -1409,30 +1929,43 @@ data (we can't trust the declared mime type). - Adds an image from an ID3 APIC frame (or similar, such as used in FLAC) + Adds an image from an ID3 APIC frame (or similar, such as used in FLAC) to the given tag list. Also see gst_tag_image_data_to_image_sample() for more information on image tags in GStreamer. + - %TRUE if the image was processed, otherwise %FALSE + %TRUE if the image was processed, otherwise %FALSE - a tag list + a tag list - the (encoded) image + the (encoded) image - the length of the encoded image data at @image_data + the length of the encoded image data at @image_data - picture type as per the ID3 (v2.4.0) specification for + picture type as per the ID3 (v2.4.0) specification for the APIC frame (0 = unknown/other) @@ -1440,87 +1973,125 @@ more information on image tags in GStreamer. - Parses the IFD and IFD tags data contained in the buffer and puts it + Parses the IFD and IFD tags data contained in the buffer and puts it on a taglist. The base_offset is used to subtract from the offset in the tag entries and be able to get the offset relative to the buffer start + - The parsed taglist + The parsed taglist - The exif buffer + The exif buffer - byte order of the data + byte order of the data - Offset from the tiff header to this buffer + Offset from the tiff header to this buffer - Parses the exif tags starting with a tiff header structure. + Parses the exif tags starting with a tiff header structure. + - The taglist + The taglist - The exif buffer + The exif buffer - Creates a new tag list that contains the information parsed out of a + Creates a new tag list that contains the information parsed out of a ID3 tag. + - A new #GstTagList with all tags that could be extracted from the + A new #GstTagList with all tags that could be extracted from the given vorbiscomment buffer or NULL on error. - buffer to convert + buffer to convert - Creates a new tag list that contains the information parsed out of a + Creates a new tag list that contains the information parsed out of a vorbiscomment packet. + - A new #GstTagList with all tags that could be extracted from the + A new #GstTagList with all tags that could be extracted from the given vorbiscomment buffer or NULL on error. - data to convert + data to convert - size of @data + size of @data - identification data at start of stream + identification data at start of stream - length of identification data + length of identification data transfer-ownership="full" optional="1" allow-none="1"> - pointer to a string that should take the + pointer to a string that should take the vendor string of this vorbis comment or NULL if you don't need it. @@ -1537,26 +2110,37 @@ vorbiscomment packet. - Creates a new tag list that contains the information parsed out of a + Creates a new tag list that contains the information parsed out of a vorbiscomment packet. + - A new #GstTagList with all tags that could be extracted from the + A new #GstTagList with all tags that could be extracted from the given vorbiscomment buffer or NULL on error. - buffer to convert + buffer to convert - identification data at start of stream + identification data at start of stream - length of identification data + length of identification data transfer-ownership="full" optional="1" allow-none="1"> - pointer to a string that should take the + pointer to a string that should take the vendor string of this vorbis comment or NULL if you don't need it. @@ -1573,29 +2159,43 @@ vorbiscomment packet. - Parse a xmp packet into a taglist. + Parse a xmp packet into a taglist. + - new taglist or %NULL, free the list when done + new taglist or %NULL, free the list when done - buffer + buffer - Parses the data containing an ID3v1 tag and returns a #GstTagList from the + Parses the data containing an ID3v1 tag and returns a #GstTagList from the parsed data. + - A new tag list or NULL if the data was not an ID3v1 tag. + A new tag list or NULL if the data was not an ID3v1 tag. - 128 bytes of data containing the ID3v1 tag + 128 bytes of data containing the ID3v1 tag @@ -1604,94 +2204,136 @@ parsed data. - Formats the tags in taglist on exif format. The resulting buffer contains + Formats the tags in taglist on exif format. The resulting buffer contains the tags IFD and is followed by the data pointed by the tag entries. + - A GstBuffer containing the tag entries followed by the tag data + A GstBuffer containing the tag entries followed by the tag data - The taglist + The taglist - byte order used in writing (G_LITTLE_ENDIAN or G_BIG_ENDIAN) + byte order used in writing (G_LITTLE_ENDIAN or G_BIG_ENDIAN) - Offset from the tiff header first byte + Offset from the tiff header first byte - Formats the tags in taglist into exif structure, a tiff header + Formats the tags in taglist into exif structure, a tiff header is put in the beginning of the buffer. + - A GstBuffer containing the data + A GstBuffer containing the data - The taglist + The taglist - Creates a new vorbiscomment buffer from a tag list. + Creates a new vorbiscomment buffer from a tag list. + - A new #GstBuffer containing a vorbiscomment buffer with all tags + A new #GstBuffer containing a vorbiscomment buffer with all tags that could be converted from the given tag list. - tag list to convert + tag list to convert - identification data at start of stream + identification data at start of stream - length of identification data, may be 0 if @id_data is NULL + length of identification data, may be 0 if @id_data is NULL - string that describes the vendor string or NULL + string that describes the vendor string or NULL - Formats a taglist as a xmp packet using only the selected + Formats a taglist as a xmp packet using only the selected schemas. An empty list (%NULL) means that all schemas should be used + - new buffer or %NULL, unref the buffer when done + new buffer or %NULL, unref the buffer when done - tags + tags - does the container forbid inplace editing + does the container forbid inplace editing - + %NULL terminated array of schemas to be used on serialization @@ -1701,20 +2343,27 @@ be used - Convenience function to parse a GST_TAG_EXTENDED_COMMENT string and + Convenience function to parse a GST_TAG_EXTENDED_COMMENT string and separate it into its components. If successful, @key, @lang and/or @value will be set to newly allocated strings that you need to free with g_free() when done. @key and @lang may also be set to NULL by this function if there is no key or no language code in the extended comment string. + - TRUE if the string could be parsed, otherwise FALSE + TRUE if the string could be parsed, otherwise FALSE - an extended comment string, see #GST_TAG_EXTENDED_COMMENT + an extended comment string, see #GST_TAG_EXTENDED_COMMENT caller-allocates="0" transfer-ownership="full" nullable="1"> - + return location for the comment description key, or NULL @@ -1731,7 +2382,9 @@ code in the extended comment string. caller-allocates="0" transfer-ownership="full" nullable="1"> - + return location for the comment ISO-639 language code, or NULL @@ -1739,43 +2392,62 @@ code in the extended comment string. direction="out" caller-allocates="0" transfer-ownership="full"> - return location for the actual comment string, or NULL + return location for the actual comment string, or NULL - whether to fail if strings are not in key=value form + whether to fail if strings are not in key=value form - Registers additional musicbrainz-specific tags with the GStreamer tag + Registers additional musicbrainz-specific tags with the GStreamer tag system. Plugins and applications that use these tags should call this function before using them. Can be called multiple times. + - Looks up the ID3v2 tag for a GStreamer tag. + Looks up the ID3v2 tag for a GStreamer tag. + - The corresponding ID3v2 tag or NULL if none exists. + The corresponding ID3v2 tag or NULL if none exists. - GStreamer tag to convert to vorbiscomment tag + GStreamer tag to convert to vorbiscomment tag - Creates a new tag list that contains the information parsed out of a + Creates a new tag list that contains the information parsed out of a vorbiscomment packet. + - A #GList of newly-allocated + A #GList of newly-allocated key=value strings. Free with g_list_foreach (list, (GFunc) g_free, NULL) plus g_list_free (list) @@ -1784,33 +2456,49 @@ vorbiscomment packet. - a #GstTagList + a #GstTagList - a GStreamer tag identifier, such as #GST_TAG_ARTIST + a GStreamer tag identifier, such as #GST_TAG_ARTIST - Looks up the vorbiscomment tag for a GStreamer tag. + Looks up the vorbiscomment tag for a GStreamer tag. + - The corresponding vorbiscomment tag or NULL if none exists. + The corresponding vorbiscomment tag or NULL if none exists. - GStreamer tag to convert to vorbiscomment tag + GStreamer tag to convert to vorbiscomment tag - Gets the list of supported schemas in the xmp lib + Gets the list of supported schemas in the xmp lib + - a %NULL terminated array of strings with the + a %NULL terminated array of strings with the schema names @@ -1818,26 +2506,35 @@ vorbiscomment packet. - Convenience function using gst_tag_from_vorbis_tag(), parsing + Convenience function using gst_tag_from_vorbis_tag(), parsing a vorbis comment string into the right type and adding it to the given taglist @list. Unknown vorbiscomment tags will be added to the tag list in form of a #GST_TAG_EXTENDED_COMMENT. + - a #GstTagList + a #GstTagList - a vorbiscomment tag string (key in key=value), must be valid UTF-8 + a vorbiscomment tag string (key in key=value), must be valid UTF-8 - a vorbiscomment value string (value in key=value), must be valid UTF-8 + a vorbiscomment value string (value in key=value), must be valid UTF-8 diff --git a/gir-files/GstVideo-1.0.gir b/gir-files/GstVideo-1.0.gir index 69aa65ff5..c94a4757a 100644 --- a/gir-files/GstVideo-1.0.gir +++ b/gir-files/GstVideo-1.0.gir @@ -9,91 +9,132 @@ and/or use gtk-doc annotations. --> + - A bufferpool option to enable extra padding. When a bufferpool supports this + A bufferpool option to enable extra padding. When a bufferpool supports this option, gst_buffer_pool_config_set_video_alignment() can be called. When this option is enabled on the bufferpool, #GST_BUFFER_POOL_OPTION_VIDEO_META should also be enabled. + - An option that can be activated on a bufferpool to request gl texture upload + An option that can be activated on a bufferpool to request gl texture upload meta on buffers from the pool. When this option is enabled on the bufferpool, @GST_BUFFER_POOL_OPTION_VIDEO_META should also be enabled. + - An option that can be activated on bufferpool to request video metadata + An option that can be activated on bufferpool to request video metadata on buffers from the pool. + - Name of the caps feature indicating that the stream is interlaced. Currently + Name of the caps feature indicating that the stream is interlaced. Currently it is only used for video. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - This interface is implemented by elements which can perform some color + This interface is implemented by elements which can perform some color balance operation on video frames they process. For example, modifying the brightness, contrast, hue or saturation. Example elements are 'xvimagesink' and 'colorbalance' + - Get the #GstColorBalanceType of this implementation. + Get the #GstColorBalanceType of this implementation. + - A the #GstColorBalanceType. + A the #GstColorBalanceType. - The #GstColorBalance implementation + The #GstColorBalance implementation - Retrieve the current value of the indicated channel, between min_value + Retrieve the current value of the indicated channel, between min_value and max_value. See Also: The #GstColorBalanceChannel.min_value and #GstColorBalanceChannel.max_value members of the #GstColorBalanceChannel object. + - The current value of the channel. + The current value of the channel. - A #GstColorBalance instance + A #GstColorBalance instance - A #GstColorBalanceChannel instance + A #GstColorBalanceChannel instance - Retrieve a list of the available channels. + Retrieve a list of the available channels. + - A + A GList containing pointers to #GstColorBalanceChannel objects. The list is owned by the #GstColorBalance instance and must not be freed. @@ -103,98 +144,103 @@ See Also: The #GstColorBalanceChannel.min_value and - A #GstColorBalance instance + A #GstColorBalance instance - Sets the current value of the channel to the passed value, which must + Sets the current value of the channel to the passed value, which must be between min_value and max_value. See Also: The #GstColorBalanceChannel.min_value and #GstColorBalanceChannel.max_value members of the #GstColorBalanceChannel object. + - A #GstColorBalance instance + A #GstColorBalance instance - A #GstColorBalanceChannel instance + A #GstColorBalanceChannel instance - The new value for the channel. + The new value for the channel. - A helper function called by implementations of the GstColorBalance + A helper function called by implementations of the GstColorBalance interface. It fires the #GstColorBalance::value-changed signal on the instance, and the #GstColorBalanceChannel::value-changed signal on the channel object. + - A #GstColorBalance instance + A #GstColorBalance instance - A #GstColorBalanceChannel whose value has changed + A #GstColorBalanceChannel whose value has changed - The new value of the channel + The new value of the channel - Get the #GstColorBalanceType of this implementation. + Get the #GstColorBalanceType of this implementation. + - A the #GstColorBalanceType. + A the #GstColorBalanceType. - The #GstColorBalance implementation + The #GstColorBalance implementation - Retrieve the current value of the indicated channel, between min_value + Retrieve the current value of the indicated channel, between min_value and max_value. See Also: The #GstColorBalanceChannel.min_value and #GstColorBalanceChannel.max_value members of the #GstColorBalanceChannel object. + - The current value of the channel. + The current value of the channel. - A #GstColorBalance instance + A #GstColorBalance instance - A #GstColorBalanceChannel instance + A #GstColorBalanceChannel instance - Retrieve a list of the available channels. + Retrieve a list of the available channels. + - A + A GList containing pointers to #GstColorBalanceChannel objects. The list is owned by the #GstColorBalance instance and must not be freed. @@ -204,81 +250,85 @@ See Also: The #GstColorBalanceChannel.min_value and - A #GstColorBalance instance + A #GstColorBalance instance - Sets the current value of the channel to the passed value, which must + Sets the current value of the channel to the passed value, which must be between min_value and max_value. See Also: The #GstColorBalanceChannel.min_value and #GstColorBalanceChannel.max_value members of the #GstColorBalanceChannel object. + - A #GstColorBalance instance + A #GstColorBalance instance - A #GstColorBalanceChannel instance + A #GstColorBalanceChannel instance - The new value for the channel. + The new value for the channel. - A helper function called by implementations of the GstColorBalance + A helper function called by implementations of the GstColorBalance interface. It fires the #GstColorBalance::value-changed signal on the instance, and the #GstColorBalanceChannel::value-changed signal on the channel object. + - A #GstColorBalance instance + A #GstColorBalance instance - A #GstColorBalanceChannel whose value has changed + A #GstColorBalanceChannel whose value has changed - The new value of the channel + The new value of the channel - Fired when the value of the indicated channel has changed. + Fired when the value of the indicated channel has changed. - The #GstColorBalanceChannel + The #GstColorBalanceChannel - The new value + The new value - The #GstColorBalanceChannel object represents a parameter + The #GstColorBalanceChannel object represents a parameter for modifying the color balance implemented by an element providing the #GstColorBalance interface. For example, Hue or Saturation. + + @@ -295,43 +345,45 @@ for modifying the color balance implemented by an element providing the - A string containing a descriptive name for this channel + A string containing a descriptive name for this channel - The minimum valid value for this channel. + The minimum valid value for this channel. - The maximum valid value for this channel. + The maximum valid value for this channel. - + - Fired when the value of the indicated channel has changed. + Fired when the value of the indicated channel has changed. - The new value + The new value - Color-balance channel class. + Color-balance channel class. + - the parent class + the parent class + @@ -346,21 +398,23 @@ for modifying the color balance implemented by an element providing the - + - Color-balance interface. + Color-balance interface. + - the parent interface + the parent interface + - A + A GList containing pointers to #GstColorBalanceChannel objects. The list is owned by the #GstColorBalance instance and must not be freed. @@ -370,7 +424,7 @@ for modifying the color balance implemented by an element providing the - A #GstColorBalance instance + A #GstColorBalance instance @@ -378,20 +432,21 @@ for modifying the color balance implemented by an element providing the + - A #GstColorBalance instance + A #GstColorBalance instance - A #GstColorBalanceChannel instance + A #GstColorBalanceChannel instance - The new value for the channel. + The new value for the channel. @@ -399,17 +454,18 @@ for modifying the color balance implemented by an element providing the + - The current value of the channel. + The current value of the channel. - A #GstColorBalance instance + A #GstColorBalance instance - A #GstColorBalanceChannel instance + A #GstColorBalanceChannel instance @@ -417,13 +473,14 @@ for modifying the color balance implemented by an element providing the + - A the #GstColorBalanceType. + A the #GstColorBalanceType. - The #GstColorBalance implementation + The #GstColorBalance implementation @@ -431,63 +488,250 @@ for modifying the color balance implemented by an element providing the + - A #GstColorBalance instance + A #GstColorBalance instance - A #GstColorBalanceChannel whose value has changed + A #GstColorBalanceChannel whose value has changed - The new value of the channel + The new value of the channel - + - An enumeration indicating whether an element implements color balancing + An enumeration indicating whether an element implements color balancing operations in software or in dedicated hardware. In general, dedicated hardware implementations (such as those provided by xvimagesink) are preferred. - Color balance is implemented with dedicated + Color balance is implemented with dedicated hardware. - Color balance is implemented via software + Color balance is implemented via software processing. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - This metadata stays relevant as long as video colorspace is unchanged. + This metadata stays relevant as long as video colorspace is unchanged. + - This metadata stays relevant as long as video orientation is unchanged. + This metadata stays relevant as long as video orientation is unchanged. + - This metadata stays relevant as long as video size is unchanged. + This metadata stays relevant as long as video size is unchanged. + - This metadata is relevant for video streams. + This metadata is relevant for video streams. + + + + + + + + + + + + + + + - The Navigation interface is used for creating and injecting navigation related + The Navigation interface is used for creating and injecting navigation related events such as mouse button presses, cursor motion and key presses. The associated library also provides methods for parsing received events, and for sending and receiving navigation related bus events. One main usecase is DVD menu navigation. @@ -507,49 +751,53 @@ The main parts of the API are: The GstNavigation message functions provide functions for creating and parsing custom bus messages for signaling GstNavigation changes. + - Inspect a #GstEvent and return the #GstNavigationEventType of the event, or + Inspect a #GstEvent and return the #GstNavigationEventType of the event, or #GST_NAVIGATION_EVENT_INVALID if the event is not a #GstNavigation event. + - A #GstEvent to inspect. + A #GstEvent to inspect. - Inspect a #GstNavigation command event and retrieve the enum value of the + Inspect a #GstNavigation command event and retrieve the enum value of the associated command. + - TRUE if the navigation command could be extracted, otherwise FALSE. + TRUE if the navigation command could be extracted, otherwise FALSE. - A #GstEvent to inspect. + A #GstEvent to inspect. - Pointer to GstNavigationCommand to receive the + Pointer to GstNavigationCommand to receive the type of the navigation event. + - A #GstEvent to inspect. + A #GstEvent to inspect. - A pointer to a location to receive + A pointer to a location to receive the string identifying the key press. The returned string is owned by the event, and valid only until the event is unreffed. @@ -557,370 +805,389 @@ associated command. - Retrieve the details of either a #GstNavigation mouse button press event or + Retrieve the details of either a #GstNavigation mouse button press event or a mouse button release event. Determine which type the event is using gst_navigation_event_get_type() to retrieve the #GstNavigationEventType. + - TRUE if the button number and both coordinates could be extracted, + TRUE if the button number and both coordinates could be extracted, otherwise FALSE. - A #GstEvent to inspect. + A #GstEvent to inspect. - Pointer to a gint that will receive the button + Pointer to a gint that will receive the button number associated with the event. - Pointer to a gdouble to receive the x coordinate of the + Pointer to a gdouble to receive the x coordinate of the mouse button event. - Pointer to a gdouble to receive the y coordinate of the + Pointer to a gdouble to receive the y coordinate of the mouse button event. - Inspect a #GstNavigation mouse movement event and extract the coordinates + Inspect a #GstNavigation mouse movement event and extract the coordinates of the event. + - TRUE if both coordinates could be extracted, otherwise FALSE. + TRUE if both coordinates could be extracted, otherwise FALSE. - A #GstEvent to inspect. + A #GstEvent to inspect. - Pointer to a gdouble to receive the x coordinate of the + Pointer to a gdouble to receive the x coordinate of the mouse movement. - Pointer to a gdouble to receive the y coordinate of the + Pointer to a gdouble to receive the y coordinate of the mouse movement. - Check a bus message to see if it is a #GstNavigation event, and return + Check a bus message to see if it is a #GstNavigation event, and return the #GstNavigationMessageType identifying the type of the message if so. + - The type of the #GstMessage, or + The type of the #GstMessage, or #GST_NAVIGATION_MESSAGE_INVALID if the message is not a #GstNavigation notification. - A #GstMessage to inspect. + A #GstMessage to inspect. - Creates a new #GstNavigation message with type + Creates a new #GstNavigation message with type #GST_NAVIGATION_MESSAGE_ANGLES_CHANGED for notifying an application that the current angle, or current number of angles available in a multiangle video has changed. + - The new #GstMessage. + The new #GstMessage. - A #GstObject to set as source of the new message. + A #GstObject to set as source of the new message. - The currently selected angle. + The currently selected angle. - The number of viewing angles now available. + The number of viewing angles now available. - Creates a new #GstNavigation message with type + Creates a new #GstNavigation message with type #GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED + - The new #GstMessage. + The new #GstMessage. - A #GstObject to set as source of the new message. + A #GstObject to set as source of the new message. - Creates a new #GstNavigation message with type + Creates a new #GstNavigation message with type #GST_NAVIGATION_MESSAGE_EVENT. + - The new #GstMessage. + The new #GstMessage. - A #GstObject to set as source of the new message. + A #GstObject to set as source of the new message. - A navigation #GstEvent + A navigation #GstEvent - Creates a new #GstNavigation message with type + Creates a new #GstNavigation message with type #GST_NAVIGATION_MESSAGE_MOUSE_OVER. + - The new #GstMessage. + The new #GstMessage. - A #GstObject to set as source of the new message. + A #GstObject to set as source of the new message. - %TRUE if the mouse has entered a clickable area of the display. + %TRUE if the mouse has entered a clickable area of the display. %FALSE if it over a non-clickable area. - Parse a #GstNavigation message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED + Parse a #GstNavigation message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED and extract the @cur_angle and @n_angles parameters. + - %TRUE if the message could be successfully parsed. %FALSE if not. + %TRUE if the message could be successfully parsed. %FALSE if not. - A #GstMessage to inspect. + A #GstMessage to inspect. - A pointer to a #guint to receive the new + A pointer to a #guint to receive the new current angle number, or NULL - A pointer to a #guint to receive the new angle + A pointer to a #guint to receive the new angle count, or NULL. - Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_EVENT + Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_EVENT and extract contained #GstEvent. The caller must unref the @event when done with it. + - %TRUE if the message could be successfully parsed. %FALSE if not. + %TRUE if the message could be successfully parsed. %FALSE if not. - A #GstMessage to inspect. + A #GstMessage to inspect. - a pointer to a #GstEvent to receive + a pointer to a #GstEvent to receive the contained navigation event. - Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_MOUSE_OVER + Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_MOUSE_OVER and extract the active/inactive flag. If the mouse over event is marked active, it indicates that the mouse is over a clickable area. + - %TRUE if the message could be successfully parsed. %FALSE if not. + %TRUE if the message could be successfully parsed. %FALSE if not. - A #GstMessage to inspect. + A #GstMessage to inspect. - A pointer to a gboolean to receive the + A pointer to a gboolean to receive the active/inactive state, or NULL. - Inspect a #GstQuery and return the #GstNavigationQueryType associated with + Inspect a #GstQuery and return the #GstNavigationQueryType associated with it if it is a #GstNavigation query. + - The #GstNavigationQueryType of the query, or + The #GstNavigationQueryType of the query, or #GST_NAVIGATION_QUERY_INVALID - The query to inspect + The query to inspect - Create a new #GstNavigation angles query. When executed, it will + Create a new #GstNavigation angles query. When executed, it will query the pipeline for the set of currently available angles, which may be greater than one in a multiangle video. + - The new query. + The new query. - Create a new #GstNavigation commands query. When executed, it will + Create a new #GstNavigation commands query. When executed, it will query the pipeline for the set of currently available commands. + - The new query. + The new query. - Parse the current angle number in the #GstNavigation angles @query into the + Parse the current angle number in the #GstNavigation angles @query into the #guint pointed to by the @cur_angle variable, and the number of available angles into the #guint pointed to by the @n_angles variable. + - %TRUE if the query could be successfully parsed. %FALSE if not. + %TRUE if the query could be successfully parsed. %FALSE if not. - a #GstQuery + a #GstQuery - Pointer to a #guint into which to store the + Pointer to a #guint into which to store the currently selected angle value from the query, or NULL - Pointer to a #guint into which to store the + Pointer to a #guint into which to store the number of angles value from the query, or NULL - Parse the number of commands in the #GstNavigation commands @query. + Parse the number of commands in the #GstNavigation commands @query. + - %TRUE if the query could be successfully parsed. %FALSE if not. + %TRUE if the query could be successfully parsed. %FALSE if not. - a #GstQuery + a #GstQuery - the number of commands in this query. + the number of commands in this query. - Parse the #GstNavigation command query and retrieve the @nth command from + Parse the #GstNavigation command query and retrieve the @nth command from it into @cmd. If the list contains less elements than @nth, @cmd will be set to #GST_NAVIGATION_COMMAND_INVALID. + - %TRUE if the query could be successfully parsed. %FALSE if not. + %TRUE if the query could be successfully parsed. %FALSE if not. - a #GstQuery + a #GstQuery - the nth command to retrieve. + the nth command to retrieve. - a pointer to store the nth command into. + a pointer to store the nth command into. - Set the #GstNavigation angles query result field in @query. + Set the #GstNavigation angles query result field in @query. + - a #GstQuery + a #GstQuery - the current viewing angle to set. + the current viewing angle to set. - the number of viewing angles to set. + the number of viewing angles to set. - Set the #GstNavigation command query result fields in @query. The number + Set the #GstNavigation command query result fields in @query. The number of commands passed must be equal to @n_commands. + - a #GstQuery + a #GstQuery - the number of commands to set. + the number of commands to set. - A list of @GstNavigationCommand values, @n_cmds entries long. + A list of @GstNavigationCommand values, @n_cmds entries long. - Set the #GstNavigation command query result fields in @query. The number + Set the #GstNavigation command query result fields in @query. The number of commands passed must be equal to @n_commands. + - a #GstQuery + a #GstQuery - the number of commands to set. + the number of commands to set. - An array containing @n_cmds + An array containing @n_cmds @GstNavigationCommand values. @@ -929,6 +1196,7 @@ of commands passed must be equal to @n_commands. + @@ -942,22 +1210,24 @@ of commands passed must be equal to @n_commands. - Sends the indicated command to the navigation interface. + Sends the indicated command to the navigation interface. + - The navigation interface instance + The navigation interface instance - The command to issue + The command to issue + @@ -971,62 +1241,64 @@ of commands passed must be equal to @n_commands. + - The navigation interface instance + The navigation interface instance - The type of the key event. Recognised values are "key-press" and + The type of the key event. Recognised values are "key-press" and "key-release" - Character representation of the key. This is typically as produced + Character representation of the key. This is typically as produced by XKeysymToString. - Sends a mouse event to the navigation interface. Mouse event coordinates + Sends a mouse event to the navigation interface. Mouse event coordinates are sent relative to the display space of the related output area. This is usually the size in pixels of the window associated with the element implementing the #GstNavigation interface. + - The navigation interface instance + The navigation interface instance - The type of mouse event, as a text string. Recognised values are + The type of mouse event, as a text string. Recognised values are "mouse-button-press", "mouse-button-release" and "mouse-move". - The button number of the button being pressed or released. Pass 0 + The button number of the button being pressed or released. Pass 0 for mouse-move events. - The x coordinate of the mouse event. + The x coordinate of the mouse event. - The y coordinate of the mouse event. + The y coordinate of the mouse event. - A set of commands that may be issued to an element providing the + A set of commands that may be issued to an element providing the #GstNavigation interface. The available commands can be queried via the gst_navigation_query_new_commands() query. @@ -1039,108 +1311,110 @@ For convenience in handling DVD navigation, the MENU commands are aliased as: GST_NAVIGATION_COMMAND_DVD_ANGLE_MENU = @GST_NAVIGATION_COMMAND_MENU6 GST_NAVIGATION_COMMAND_DVD_CHAPTER_MENU = @GST_NAVIGATION_COMMAND_MENU7 - An invalid command entry + An invalid command entry - Execute navigation menu command 1. For DVD, + Execute navigation menu command 1. For DVD, this enters the DVD root menu, or exits back to the title from the menu. - Execute navigation menu command 2. For DVD, + Execute navigation menu command 2. For DVD, this jumps to the DVD title menu. - Execute navigation menu command 3. For DVD, + Execute navigation menu command 3. For DVD, this jumps into the DVD root menu. - Execute navigation menu command 4. For DVD, + Execute navigation menu command 4. For DVD, this jumps to the Subpicture menu. - Execute navigation menu command 5. For DVD, + Execute navigation menu command 5. For DVD, the jumps to the audio menu. - Execute navigation menu command 6. For DVD, + Execute navigation menu command 6. For DVD, this jumps to the angles menu. - Execute navigation menu command 7. For DVD, + Execute navigation menu command 7. For DVD, this jumps to the chapter menu. - Select the next button to the left in a menu, + Select the next button to the left in a menu, if such a button exists. - Select the next button to the right in a menu, + Select the next button to the right in a menu, if such a button exists. - Select the button above the current one in a + Select the button above the current one in a menu, if such a button exists. - Select the button below the current one in a + Select the button below the current one in a menu, if such a button exists. - Activate (click) the currently selected + Activate (click) the currently selected button in a menu, if such a button exists. - Switch to the previous angle in a + Switch to the previous angle in a multiangle feature. - Switch to the next angle in a multiangle + Switch to the next angle in a multiangle feature. - Enum values for the various events that an element implementing the + Enum values for the various events that an element implementing the GstNavigation interface might send up the pipeline. - Returned from + Returned from gst_navigation_event_get_type() when the passed event is not a navigation event. - A key press event. Use + A key press event. Use gst_navigation_event_parse_key_event() to extract the details from the event. - A key release event. Use + A key release event. Use gst_navigation_event_parse_key_event() to extract the details from the event. - A mouse button press event. Use + A mouse button press event. Use gst_navigation_event_parse_mouse_button_event() to extract the details from the event. - A mouse button release event. Use + A mouse button release event. Use gst_navigation_event_parse_mouse_button_event() to extract the details from the event. - A mouse movement event. Use + A mouse movement event. Use gst_navigation_event_parse_mouse_move_event() to extract the details from the event. - A navigation command event. Use + A navigation command event. Use gst_navigation_event_parse_command() to extract the details from the event. - Navigation interface. + Navigation interface. + - the parent interface + the parent interface + @@ -1156,234 +1430,1667 @@ gst_navigation_event_parse_command() to extract the details from the event. - A set of notifications that may be received on the bus when navigation + A set of notifications that may be received on the bus when navigation related status changes. - Returned from + Returned from gst_navigation_message_get_type() when the passed message is not a navigation message. - Sent when the mouse moves over or leaves a + Sent when the mouse moves over or leaves a clickable region of the output, such as a DVD menu button. - Sent when the set of available commands + Sent when the set of available commands changes and should re-queried by interested applications. - Sent when display angles in a multi-angle + Sent when display angles in a multi-angle feature (such as a multiangle DVD) change - either angles have appeared or disappeared. - Sent when a navigation event was not handled + Sent when a navigation event was not handled by any element in the pipeline (Since: 1.6) - Tyoes of navigation interface queries. + Tyoes of navigation interface queries. - invalid query + invalid query - command query + command query - viewing angle query + viewing angle query + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the #GstVideoAncillaryDID16 of the ancillary data. + + + + a #GstVideoAncillary + + + + + + + + + + + + + + + + + + + Generic caps string for video, for use in pad templates. + + + + string format that describes the pixel layout, as string + (e.g. "I420", "RGB", "YV12", "YUY2", "AYUV", etc.) + + + + + Generic caps string for video, for use in pad templates. + + + + Requires caps features as a string, e.g. + "memory:SystemMemory". + + + string format that describes the pixel layout, as string + (e.g. "I420", "RGB", "YV12", "YUY2", "AYUV", etc.) + + + + + The entire set of flags for the @frame + + + + a #GstVideoCodecFrame + + + + + Checks whether the given @flag is set + + + + a #GstVideoCodecFrame + + + a flag to check for + + + + + This macro sets the given bits + + + + a #GstVideoCodecFrame + + + Flag to set, can be any number of bits in guint32. + + + + + This macro usets the given bits. + + + + a #GstVideoCodecFrame + + + Flag to unset + + + + + Tests if the buffer should only be decoded but not sent downstream. + + + + a #GstVideoCodecFrame + + + + + Tests if the frame must be encoded as a keyframe. Applies only to +frames provided to encoders. Decoders can safely ignore this field. + + + + a #GstVideoCodecFrame + + + + + Tests if encoder should output stream headers before outputting the +resulting encoded buffer for the given frame. + +Applies only to frames provided to encoders. Decoders can safely +ignore this field. + + + + a #GstVideoCodecFrame + + + + + Tests if the frame is a synchronization point (like a keyframe). + +Decoder implementations can use this to detect keyframes. + + + + a #GstVideoCodecFrame + + + + + Sets the buffer to not be sent downstream. + +Decoder implementation can use this if they have frames that +are not meant to be displayed. + +Encoder implementation can safely ignore this field. + + + + a #GstVideoCodecFrame + + + + + + + + + + + + + + + + + + + Sets the frame to be a synchronization point (like a keyframe). + +Encoder implementations should set this accordingly. + +Decoder implementing parsing features should set this when they +detect such a synchronization point. + + + + a #GstVideoCodecFrame + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - #GST_TYPE_VIDEO_ALPHA_MODE, the alpha mode to use. + #GST_TYPE_VIDEO_ALPHA_MODE, the alpha mode to use. Default is #GST_VIDEO_ALPHA_MODE_COPY. + - #G_TYPE_DOUBLE, the alpha color value to use. + #G_TYPE_DOUBLE, the alpha color value to use. Default to 1.0 + - #G_TYPE_UINT, the border color to use if #GST_VIDEO_CONVERTER_OPT_FILL_BORDER + #G_TYPE_UINT, the border color to use if #GST_VIDEO_CONVERTER_OPT_FILL_BORDER is set to %TRUE. The color is in ARGB format. Default 0xff000000 + - #GST_TYPE_VIDEO_CHROMA_MODE, set the chroma resample mode subsampled + #GST_TYPE_VIDEO_CHROMA_MODE, set the chroma resample mode subsampled formats. Default is #GST_VIDEO_CHROMA_MODE_FULL. + - #GST_TYPE_VIDEO_RESAMPLER_METHOD, The resampler method to use for + #GST_TYPE_VIDEO_RESAMPLER_METHOD, The resampler method to use for chroma resampling. Other options for the resampler can be used, see the #GstVideoResampler. Default is #GST_VIDEO_RESAMPLER_METHOD_LINEAR + - #G_TYPE_INT, height in the destination frame, default destination height + #G_TYPE_INT, height in the destination frame, default destination height + - #G_TYPE_INT, width in the destination frame, default destination width + #G_TYPE_INT, width in the destination frame, default destination width + - #G_TYPE_INT, x position in the destination frame, default 0 + #G_TYPE_INT, x position in the destination frame, default 0 + - #G_TYPE_INT, y position in the destination frame, default 0 + #G_TYPE_INT, y position in the destination frame, default 0 + - #GST_TYPE_VIDEO_DITHER_METHOD, The dither method to use when + #GST_TYPE_VIDEO_DITHER_METHOD, The dither method to use when changing bit depth. Default is #GST_VIDEO_DITHER_BAYER. + - #G_TYPE_UINT, The quantization amount to dither to. Components will be + #G_TYPE_UINT, The quantization amount to dither to. Components will be quantized to multiples of this value. Default is 1 + - #G_TYPE_BOOLEAN, if the destination rectangle does not fill the complete + #G_TYPE_BOOLEAN, if the destination rectangle does not fill the complete destination image, render a border with #GST_VIDEO_CONVERTER_OPT_BORDER_ARGB. Otherwise the unusded pixels in the destination are untouched. Default %TRUE. + - #GST_TYPE_VIDEO_GAMMA_MODE, set the gamma mode. + #GST_TYPE_VIDEO_GAMMA_MODE, set the gamma mode. Default is #GST_VIDEO_GAMMA_MODE_NONE. + - #GST_TYPE_VIDEO_MATRIX_MODE, set the color matrix conversion mode for + #GST_TYPE_VIDEO_MATRIX_MODE, set the color matrix conversion mode for converting between Y'PbPr and non-linear RGB (R'G'B'). Default is #GST_VIDEO_MATRIX_MODE_FULL. + - #GST_TYPE_VIDEO_PRIMARIES_MODE, set the primaries conversion mode. + #GST_TYPE_VIDEO_PRIMARIES_MODE, set the primaries conversion mode. Default is #GST_VIDEO_PRIMARIES_MODE_NONE. + - #GST_TYPE_VIDEO_RESAMPLER_METHOD, The resampler method to use for + #GST_TYPE_VIDEO_RESAMPLER_METHOD, The resampler method to use for resampling. Other options for the resampler can be used, see the #GstVideoResampler. Default is #GST_VIDEO_RESAMPLER_METHOD_CUBIC + - #G_TYPE_UINT, The number of taps for the resampler. + #G_TYPE_UINT, The number of taps for the resampler. Default is 0: let the resampler choose a good value. + - #G_TYPE_INT, source height to convert, default source height + #G_TYPE_INT, source height to convert, default source height + - #G_TYPE_INT, source width to convert, default source width + #G_TYPE_INT, source width to convert, default source width + - #G_TYPE_INT, source x position to start conversion, default 0 + #G_TYPE_INT, source x position to start conversion, default 0 + - #G_TYPE_INT, source y position to start conversion, default 0 + #G_TYPE_INT, source y position to start conversion, default 0 + - #G_TYPE_UINT, maximum number of threads to use. Default 1, 0 for the number + #G_TYPE_UINT, maximum number of threads to use. Default 1, 0 for the number of cores. + + + + + + + + + + + + + + + + + + + + + + + + Utility function that video decoder elements can use in case they encountered +a data processing error that may be fatal for the current "data unit" but +need not prevent subsequent decoding. Such errors are counted and if there +are too many, as configured in the context's max_errors, the pipeline will +post an error message and the application will be requested to stop further +media processing. Otherwise, it is considered a "glitch" and only a warning +is logged. In either case, @ret is set to the proper value to +return to upstream/caller (indicating either GST_FLOW_ERROR or GST_FLOW_OK). + + + + the base video decoder element that generates the error + + + element defined weight of the error, added to error count + + + like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError) + + + error code defined for that domain (see #gstreamer-GstGError) + + + the message to display (format string and args enclosed in + parentheses) + + + debugging information for the message (format string and args + enclosed in parentheses) + + + variable to receive return value + + + + + + + + + + + + Gives the segment of the element. + + + + base decoder instance + + + - Default maximum number of errors tolerated before signaling error. + Default maximum number of errors tolerated before signaling error. + + + Gives the segment of the element. + + + + base decoder instance + + + - The name of the templates for the sink pad. + The name of the templates for the sink pad. + + + Gives the pointer to the sink #GstPad object of the element. + + + + a #GstVideoDecoder + + + - The name of the templates for the source pad. + The name of the templates for the source pad. + + + Gives the pointer to the source #GstPad object of the element. + + + + a #GstVideoDecoder + + + + + Obtain a lock to protect the decoder function from concurrent access. + + + + video decoder instance + + + + + Release the lock that protects the decoder function from concurrent access. + + + + video decoder instance + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gives the segment of the element. + + + + base parse instance + + + + + Gives the segment of the element. + + + + base parse instance + + + - The name of the templates for the sink pad. + The name of the templates for the sink pad. + + + Gives the pointer to the sink #GstPad object of the element. + + + + a #GstVideoEncoder + + + - The name of the templates for the source pad. + The name of the templates for the source pad. + + + Gives the pointer to the source #GstPad object of the element. + + + + a #GstVideoEncoder + + + + + Obtain a lock to protect the encoder function from concurrent access. + + + + video encoder instance + + + + + Release the lock that protects the encoder function from concurrent access. + + + + video encoder instance + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Number of planes. This is the number of planes the pixel layout is +organized in in memory. The number of planes can be less than the +number of components (e.g. Y,U,V,A or R, G, B, A) when multiple +components are packed into one plane. + +Examples: RGB/RGBx/RGBA: 1 plane, 3/3/4 components; +I420: 3 planes, 3 components; NV21/NV12: 2 planes, 3 components. + + + + a #GstVideoFormatInfo + + + + + + + + + + + + + + + + Plane number where the given component can be found. A plane may +contain data for multiple components. + + + + a #GstVideoFormatInfo + + + the component index + + + + + + + + + + + + + + pixel stride for the given component. This is the amount of bytes to the +pixel immediately to the right, so basically bytes from one pixel to the +next. When bits < 8, the stride is expressed in bits. + +Examples: for 24-bit RGB, the pixel stride would be 3 bytes, while it +would be 4 bytes for RGBx or ARGB, and 8 bytes for ARGB64 or AYUV64. +For planar formats such as I420 the pixel stride is usually 1. For +YUY2 it would be 2 bytes. + + + + a #GstVideoFormatInfo + + + the component index + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Row stride in bytes, that is number of bytes from the first pixel component +of a row to the first pixel component in the next row. This might include +some row padding (memory not actually used for anything, to make sure the +beginning of the next row is aligned in a particular way). + + + + a #GstVideoFormatInfo + + + an array of strides + + + the component index + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The height of a field. It's the height of the full frame unless split-field +(alternate) interlacing is in use. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Video formats supported by gst_video_overlay_composition_blend(), for + Video formats supported by gst_video_overlay_composition_blend(), for use in overlay elements' pad template caps. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - G_TYPE_DOUBLE, B parameter of the cubic filter. The B + G_TYPE_DOUBLE, B parameter of the cubic filter. The B parameter controls the bluriness. Values between 0.0 and 2.0 are accepted. 1/3 is the default. @@ -1398,60 +3105,195 @@ Robidoux Sharp 0.2620 0.3690 Robidoux Soft 0.6796 0.1602 + - G_TYPE_DOUBLE, C parameter of the cubic filter. The C + G_TYPE_DOUBLE, C parameter of the cubic filter. The C parameter controls the Keys alpha value. Values between 0.0 and 2.0 are accepted. 1/3 is the default. See #GST_VIDEO_RESAMPLER_OPT_CUBIC_B for some more common values + - G_TYPE_DOUBLE, specifies the size of filter envelope for + G_TYPE_DOUBLE, specifies the size of filter envelope for @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between 1.0 and 5.0. 2.0 is the default. + - G_TYPE_INT, limits the maximum number of taps to use. + G_TYPE_INT, limits the maximum number of taps to use. 16 is the default. + - G_TYPE_DOUBLE, specifies sharpening of the filter for + G_TYPE_DOUBLE, specifies sharpening of the filter for @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between 0.0 and 1.0. 0.0 is the default. + - G_TYPE_DOUBLE, specifies sharpness of the filter for + G_TYPE_DOUBLE, specifies sharpness of the filter for @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between 0.5 and 1.5. 1.0 is the default. + - #GST_TYPE_VIDEO_DITHER_METHOD, The dither method to use for propagating + #GST_TYPE_VIDEO_DITHER_METHOD, The dither method to use for propagating quatization errors. + + + + + + + + + + Cast @obj to a #GstVideoSink without runtime type check. + + + + a #GstVideoSink or derived object + + + + + + + + + + + + + + + + + + + + + + + + + + Get the sink #GstPad of @obj. + + + + a #GstVideoSink + + + + + + + + + + + + + + + + + + + + + + use this macro to create new tile modes. + + + + the mode number to create + + + the tile mode type + + + + + Encode the number of tile in X and Y into the stride. + + + + number of tiles in X + + + number of tiles in Y + + + + + Check if @mode is an indexed tile type + + + + a tile mode + + + + + Get the tile mode type of @mode + + + + the tile mode + + + + + + + Extract the number of tiles in X from the stride value. + + + + plane stride + + + + + + Extract the number of tiles in Y from the stride value. + + + + plane stride + + + + + @@ -1465,7 +3307,7 @@ quatization errors. - Extra buffer metadata for performing an affine transformation using a 4x4 + Extra buffer metadata for performing an affine transformation using a 4x4 matrix. The transformation matrix can be composed with gst_video_affine_transformation_meta_apply_matrix(). @@ -1475,29 +3317,31 @@ are assumed to have an origin at (0.5, 0.5, 0.5) in a left-handed coordinate system with the x-axis moving horizontally (positive values to the right), the y-axis moving vertically (positive values up the screen) and the z-axis perpendicular to the screen (positive values into the screen). + - parent #GstMeta + parent #GstMeta - the column-major 4x4 transformation matrix - + the column-major 4x4 transformation matrix + - Apply a transformation using the given 4x4 transformation matrix. + Apply a transformation using the given 4x4 transformation matrix. Performs the multiplication, meta->matrix X matrix. + - a #GstVideoAffineTransformationMeta + a #GstVideoAffineTransformationMeta - a 4x4 transformation matrix to be applied + a 4x4 transformation matrix to be applied @@ -1505,13 +3349,14 @@ Performs the multiplication, meta->matrix X matrix. + - VideoAggregator can accept AYUV, ARGB and BGRA video streams. For each of the requested + VideoAggregator can accept AYUV, ARGB and BGRA video streams. For each of the requested sink pads it will compare the incoming geometry and framerate to define the output parameters. Indeed output video frames will have the geometry of the biggest incoming video stream and the framerate of the fastest incoming one. @@ -1520,7 +3365,9 @@ VideoAggregator will do colorspace conversion. Zorder for each input stream can be configured on the #GstVideoAggregatorPad. + + @@ -1534,6 +3381,7 @@ Zorder for each input stream can be configured on the + @@ -1547,6 +3395,7 @@ Zorder for each input stream can be configured on the + @@ -1566,6 +3415,7 @@ Zorder for each input stream can be configured on the + @@ -1582,7 +3432,7 @@ Zorder for each input stream can be configured on the - The #GstVideoInfo representing the currently set + The #GstVideoInfo representing the currently set srcpad caps. @@ -1590,17 +3440,19 @@ srcpad caps. - + + + @@ -1616,6 +3468,7 @@ srcpad caps. + @@ -1631,6 +3484,7 @@ srcpad caps. + @@ -1646,6 +3500,7 @@ srcpad caps. + @@ -1666,16 +3521,18 @@ srcpad caps. - + - An implementation of GstPad that can be used with #GstVideoAggregator. + An implementation of GstPad that can be used with #GstVideoAggregator. See #GstVideoAggregator for more details. + + @@ -1692,14 +3549,15 @@ See #GstVideoAggregator for more details. - Requests the pad to check and update the converter before the next usage to + Requests the pad to check and update the converter before the next usage to update for any changes that have happened. + - a #GstVideoAggregatorPad + a #GstVideoAggregatorPad @@ -1714,17 +3572,19 @@ update for any changes that have happened. - + + + @@ -1742,15 +3602,18 @@ update for any changes that have happened. - + + + + @@ -1767,6 +3630,7 @@ update for any changes that have happened. + @@ -1786,6 +3650,7 @@ update for any changes that have happened. + @@ -1796,7 +3661,7 @@ update for any changes that have happened. - Returns the currently queued buffer that is going to be used + Returns the currently queued buffer that is going to be used for the current output frame. This must only be called from the aggregate_frames() virtual method, @@ -1804,19 +3669,20 @@ or from the prepare_frame() virtual method of the aggregator pads. The return value is only valid until aggregate_frames() or prepare_frames() returns. + - The currently queued buffer + The currently queued buffer - a #GstVideoAggregatorPad + a #GstVideoAggregatorPad - Returns the currently prepared video frame that has to be aggregated into + Returns the currently prepared video frame that has to be aggregated into the current output frame. This must only be called from the aggregate_frames() virtual method, @@ -1824,46 +3690,49 @@ or from the prepare_frame() virtual method of the aggregator pads. The return value is only valid until aggregate_frames() or prepare_frames() returns. + - The currently prepared video frame + The currently prepared video frame - a #GstVideoAggregatorPad + a #GstVideoAggregatorPad - Checks if the pad currently has a buffer queued that is going to be used + Checks if the pad currently has a buffer queued that is going to be used for the current output frame. This must only be called from the aggregate_frames() virtual method, or from the prepare_frame() virtual method of the aggregator pads. + - %TRUE if the pad has currently a buffer queued + %TRUE if the pad has currently a buffer queued - a #GstVideoAggregatorPad + a #GstVideoAggregatorPad - Allows selecting that this pad requires an output format with alpha + Allows selecting that this pad requires an output format with alpha + - a #GstVideoAggregatorPad + a #GstVideoAggregatorPad - %TRUE if this pad requires alpha output + %TRUE if this pad requires alpha output @@ -1878,24 +3747,26 @@ or from the prepare_frame() virtual method of the aggregator pads. - The #GstVideoInfo currently set on the pad + The #GstVideoInfo currently set on the pad - + + + @@ -1908,6 +3779,7 @@ or from the prepare_frame() virtual method of the aggregator pads. + @@ -1929,6 +3801,7 @@ or from the prepare_frame() virtual method of the aggregator pads. + @@ -1946,99 +3819,104 @@ or from the prepare_frame() virtual method of the aggregator pads. - + + + - Extra alignment parameters for the memory of video buffers. This + Extra alignment parameters for the memory of video buffers. This structure is usually used to configure the bufferpool if it supports the #GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT. + - extra pixels on the top + extra pixels on the top - extra pixels on the bottom + extra pixels on the bottom - extra pixels on the left side + extra pixels on the left side - extra pixels on the right side + extra pixels on the right side - array with extra alignment requirements for the strides - + array with extra alignment requirements for the strides + - Set @align to its default values with no padding and no alignment. + Set @align to its default values with no padding and no alignment. + - a #GstVideoAlignment + a #GstVideoAlignment - Different alpha modes. + Different alpha modes. - When input and output have alpha, it will be copied. + When input and output have alpha, it will be copied. When the input has no alpha, alpha will be set to #GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE - set all alpha to + set all alpha to #GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE - multiply all alpha with + multiply all alpha with #GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE. When the input format has no alpha but the output format has, the alpha value will be set to #GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE - Video Ancillary data, according to SMPTE-291M specification. + Video Ancillary data, according to SMPTE-291M specification. Note that the contents of the data are always stored as 8bit data (i.e. do not contain the parity check bits). + - The Data Identifier + The Data Identifier - The Secondary Data Identifier (if type 2) or the Data + The Secondary Data Identifier (if type 2) or the Data Block Number (if type 1) - The amount of data (in bytes) in @data (max 255 bytes) + The amount of data (in bytes) in @data (max 255 bytes) - The user data content of the Ancillary packet. + The user data content of the Ancillary packet. Does not contain the ADF, DID, SDID nor CS. - + - + @@ -2070,45 +3948,45 @@ the parity check bits). - Some know types of Ancillary Data identifiers. + Some know types of Ancillary Data identifiers. - CEA 708 Ancillary data according to SMPTE 334 + CEA 708 Ancillary data according to SMPTE 334 - CEA 608 Ancillary data according to SMPTE 334 + CEA 608 Ancillary data according to SMPTE 334 - AFD/Bar Ancillary data according to SMPTE 2016-3 (Since: 1.18) + AFD/Bar Ancillary data according to SMPTE 2016-3 (Since: 1.18) - Additional video buffer flags. These flags can potentially be used on any + Additional video buffer flags. These flags can potentially be used on any buffers carrying video data - even encoded data. Note that these are only valid for #GstCaps of type: video/... They can conflict with other extended buffer flags. - If the #GstBuffer is interlaced. In mixed + If the #GstBuffer is interlaced. In mixed interlace-mode, this flags specifies if the frame is interlaced or progressive. - If the #GstBuffer is interlaced, then the first field + If the #GstBuffer is interlaced, then the first field in the video frame is the top field. If unset, the bottom field is first. - If the #GstBuffer is interlaced, then the first field + If the #GstBuffer is interlaced, then the first field (as defined by the %GST_VIDEO_BUFFER_FLAG_TFF flag setting) is repeated. - If the #GstBuffer is interlaced, then only the + If the #GstBuffer is interlaced, then only the first field (as defined by the %GST_VIDEO_BUFFER_FLAG_TFF flag setting) is to be displayed (Since: 1.16). - The #GstBuffer contains one or more specific views, + The #GstBuffer contains one or more specific views, such as left or right eye view. This flags is set on any buffer that contains non-mono content - even for streams that contain only a single viewpoint. In mixed @@ -2116,30 +3994,32 @@ They can conflict with other extended buffer flags. mono buffers. - When conveying stereo/multiview content with + When conveying stereo/multiview content with frame-by-frame methods, this flag marks the first buffer in a bundle of frames that belong together. - The video frame has the top field only. This is the + The video frame has the top field only. This is the same as GST_VIDEO_BUFFER_FLAG_TFF | GST_VIDEO_BUFFER_FLAG_ONEFIELD (Since: 1.16). - The video frame has the bottom field only. This is + The video frame has the bottom field only. This is the same as GST_VIDEO_BUFFER_FLAG_ONEFIELD (GST_VIDEO_BUFFER_FLAG_TFF flag unset) (Since: 1.16). - Offset to define more flags + Offset to define more flags + - Create a new bufferpool that can allocate video frames. This bufferpool + Create a new bufferpool that can allocate video frames. This bufferpool supports all the video bufferpool options. + - a new #GstBufferPool to allocate video frames + a new #GstBufferPool to allocate video frames @@ -2151,45 +4031,49 @@ supports all the video bufferpool options. + + - Extra buffer metadata providing Closed Caption. + Extra buffer metadata providing Closed Caption. + - parent #GstMeta + parent #GstMeta - The type of Closed Caption contained in the meta. + The type of Closed Caption contained in the meta. - The Closed Caption data. + The Closed Caption data. - The size in bytes of @data + The size in bytes of @data + - The various known types of Closed Caption (CC). + The various known types of Closed Caption (CC). - Unknown type of CC + Unknown type of CC - CEA-608 as byte pairs. Note that + CEA-608 as byte pairs. Note that this format is not recommended since is does not specify to which field the caption comes from and therefore assumes it comes from the first field (and that there is no information @@ -2198,7 +4082,7 @@ supports all the video bufferpool options. with 0xFC for the first field and 0xFD for the second field. - CEA-608 as byte triplets as defined + CEA-608 as byte triplets as defined in SMPTE S334-1 Annex A. The second and third byte of the byte triplet is the raw CEA608 data, the first byte is a bitfield: The top/7th bit is 0 for the second field, 1 for the first field, bit 6 and 5 are 0 and @@ -2208,202 +4092,210 @@ supports all the video bufferpool options. 625-line field 1 and line 318 for 625-line field 2). - CEA-708 as cc_data byte triplets. They + CEA-708 as cc_data byte triplets. They can also contain 608-in-708 and the first byte of each triplet has to be inspected for detecting the type. - CEA-708 (and optionally CEA-608) in + CEA-708 (and optionally CEA-608) in a CDP (Caption Distribution Packet) defined by SMPTE S-334-2. Contains the whole CDP (starting with 0x9669). - Parses fixed Closed Caption #GstCaps and returns the corresponding caption + Parses fixed Closed Caption #GstCaps and returns the corresponding caption type, or %GST_VIDEO_CAPTION_TYPE_UNKNOWN. + - #GstVideoCaptionType. + #GstVideoCaptionType. - Fixed #GstCaps to parse + Fixed #GstCaps to parse - Creates new caps corresponding to @type. + Creates new caps corresponding to @type. + - new #GstCaps + new #GstCaps - #GstVideoCaptionType + #GstVideoCaptionType - Extra flags that influence the result from gst_video_chroma_resample_new(). + Extra flags that influence the result from gst_video_chroma_resample_new(). - no flags + no flags - the input is interlaced + the input is interlaced - Different subsampling and upsampling methods + Different subsampling and upsampling methods - Duplicates the chroma samples when + Duplicates the chroma samples when upsampling and drops when subsampling - Uses linear interpolation to reconstruct + Uses linear interpolation to reconstruct missing chroma and averaging to subsample - Different chroma downsampling and upsampling modes + Different chroma downsampling and upsampling modes - do full chroma up and down sampling + do full chroma up and down sampling - only perform chroma upsampling + only perform chroma upsampling - only perform chroma downsampling + only perform chroma downsampling - disable chroma resampling + disable chroma resampling + - Perform resampling of @width chroma pixels in @lines. + Perform resampling of @width chroma pixels in @lines. + - a #GstVideoChromaResample + a #GstVideoChromaResample - pixel lines + pixel lines - the number of pixels on one line + the number of pixels on one line - Free @resample + Free @resample + - a #GstVideoChromaResample + a #GstVideoChromaResample - The resampler must be fed @n_lines at a time. The first line should be + The resampler must be fed @n_lines at a time. The first line should be at @offset. + - a #GstVideoChromaResample + a #GstVideoChromaResample - the number of input lines + the number of input lines - the first line + the first line - Create a new resampler object for the given parameters. When @h_factor or + Create a new resampler object for the given parameters. When @h_factor or @v_factor is > 0, upsampling will be used, otherwise subsampling is performed. + - a new #GstVideoChromaResample that should be freed with + a new #GstVideoChromaResample that should be freed with gst_video_chroma_resample_free() after usage. - a #GstVideoChromaMethod + a #GstVideoChromaMethod - a #GstVideoChromaSite + a #GstVideoChromaSite - #GstVideoChromaFlags + #GstVideoChromaFlags - the #GstVideoFormat + the #GstVideoFormat - horizontal resampling factor + horizontal resampling factor - vertical resampling factor + vertical resampling factor - Various Chroma sitings. + Various Chroma sitings. - unknown cositing + unknown cositing - no cositing + no cositing - chroma is horizontally cosited + chroma is horizontally cosited - chroma is vertically cosited + chroma is vertically cosited - choma samples are sited on alternate lines + choma samples are sited on alternate lines - chroma samples cosited with luma samples + chroma samples cosited with luma samples - jpeg style cositing, also for mpeg1 and mjpeg + jpeg style cositing, also for mpeg1 and mjpeg - mpeg2 style cositing + mpeg2 style cositing - DV style cositing + DV style cositing - A #GstVideoCodecFrame represents a video frame both in raw and + A #GstVideoCodecFrame represents a video frame both in raw and encoded form. + @@ -2411,7 +4303,7 @@ encoded form. - Unique identifier for the frame. Use this if you need + Unique identifier for the frame. Use this if you need to get hold of the frame later (like when data is being decoded). Typical usage in decoders is to set this on the opaque value provided to the library and get back the frame using gst_video_decoder_get_frame() @@ -2424,29 +4316,29 @@ encoded form. - Decoding timestamp + Decoding timestamp - Presentation timestamp + Presentation timestamp - Duration of the frame + Duration of the frame - Distance in frames from the last synchronization point. + Distance in frames from the last synchronization point. - the input #GstBuffer that created this frame. The buffer is owned + the input #GstBuffer that created this frame. The buffer is owned by the frame and references to the frame instead of the buffer should be kept. - the output #GstBuffer. Implementations should set this either + the output #GstBuffer. Implementations should set this either directly, or by using the @gst_video_decoder_allocate_output_frame() or @gst_video_decoder_allocate_output_buffer() methods. The buffer is @@ -2455,7 +4347,7 @@ encoded form. - Running time when the frame will be used. + Running time when the frame will be used. @@ -2470,7 +4362,9 @@ encoded form. + + @@ -2479,93 +4373,98 @@ encoded form. - + - Gets private data set on the frame by the subclass via + Gets private data set on the frame by the subclass via gst_video_codec_frame_set_user_data() previously. + - The previously set user_data + The previously set user_data - a #GstVideoCodecFrame + a #GstVideoCodecFrame - Increases the refcount of the given frame by one. + Increases the refcount of the given frame by one. + - @buf + @buf - a #GstVideoCodecFrame + a #GstVideoCodecFrame - Sets @user_data on the frame and the #GDestroyNotify that will be called when + Sets @user_data on the frame and the #GDestroyNotify that will be called when the frame is freed. Allows to attach private data by the subclass to frames. If a @user_data was previously set, then the previous set @notify will be called before the @user_data is replaced. + - a #GstVideoCodecFrame + a #GstVideoCodecFrame - private data + private data - a #GDestroyNotify + a #GDestroyNotify - Decreases the refcount of the frame. If the refcount reaches 0, the frame + Decreases the refcount of the frame. If the refcount reaches 0, the frame will be freed. + - a #GstVideoCodecFrame + a #GstVideoCodecFrame - Flags for #GstVideoCodecFrame + Flags for #GstVideoCodecFrame + - is the frame only meant to be decoded + is the frame only meant to be decoded - is the frame a synchronization point (keyframe) + is the frame a synchronization point (keyframe) - should the output frame be made a keyframe + should the output frame be made a keyframe - should the encoder output stream headers + should the encoder output stream headers - Structure representing the state of an incoming or outgoing video + Structure representing the state of an incoming or outgoing video stream for encoders and decoders. Decoders and encoders will receive such a state through their @@ -2574,85 +4473,88 @@ respective @set_format vmethods. Decoders and encoders can set the downstream state, by using the @gst_video_decoder_set_output_state() or @gst_video_encoder_set_output_state() methods. + - The #GstVideoInfo describing the stream + The #GstVideoInfo describing the stream - The #GstCaps used in the caps negotiation of the pad. + The #GstCaps used in the caps negotiation of the pad. - a #GstBuffer corresponding to the + a #GstBuffer corresponding to the 'codec_data' field of a stream, or NULL. - The #GstCaps for allocation query and pool + The #GstCaps for allocation query and pool negotiation. Since: 1.10 - + - Increases the refcount of the given state by one. + Increases the refcount of the given state by one. + - @buf + @buf - a #GstVideoCodecState + a #GstVideoCodecState - Decreases the refcount of the state. If the refcount reaches 0, the state + Decreases the refcount of the state. If the refcount reaches 0, the state will be freed. + - a #GstVideoCodecState + a #GstVideoCodecState - The color matrix is used to convert between Y'PbPr and + The color matrix is used to convert between Y'PbPr and non-linear RGB (R'G'B') - unknown matrix + unknown matrix - identity matrix + identity matrix - FCC color matrix + FCC color matrix - ITU-R BT.709 color matrix + ITU-R BT.709 color matrix - ITU-R BT.601 color matrix + ITU-R BT.601 color matrix - SMPTE 240M color matrix + SMPTE 240M color matrix - ITU-R BT.2020 color matrix. Since: 1.6 + ITU-R BT.2020 color matrix. Since: 1.6 - Get the coefficients used to convert between Y'PbPr and R'G'B' using @matrix. + Get the coefficients used to convert between Y'PbPr and R'G'B' using @matrix. When: @@ -2676,165 +4578,169 @@ and the other way around: G' = Y' - Cb*2*(1-Kb)*Kb/(1-Kr-Kb) - Cr*2*(1-Kr)*Kr/(1-Kr-Kb) B' = Y' + Cb*2*(1-Kb) ]| + - TRUE if @matrix was a YUV color format and @Kr and @Kb contain valid + TRUE if @matrix was a YUV color format and @Kr and @Kb contain valid values. - a #GstVideoColorMatrix + a #GstVideoColorMatrix - result red channel coefficient + result red channel coefficient - result blue channel coefficient + result blue channel coefficient - The color primaries define the how to transform linear RGB values to and from + The color primaries define the how to transform linear RGB values to and from the CIE XYZ colorspace. - unknown color primaries + unknown color primaries - BT709 primaries + BT709 primaries - BT470M primaries + BT470M primaries - BT470BG primaries + BT470BG primaries - SMPTE170M primaries + SMPTE170M primaries - SMPTE240M primaries + SMPTE240M primaries - Generic film + Generic film - BT2020 primaries. Since: 1.6 + BT2020 primaries. Since: 1.6 - Adobe RGB primaries. Since: 1.8 + Adobe RGB primaries. Since: 1.8 - SMPTE ST 428 primaries. Since: 1.16 + SMPTE ST 428 primaries. Since: 1.16 - SMPTE RP 431 primaries. Since: 1.16 + SMPTE RP 431 primaries. Since: 1.16 - SMPTE EG 432 primaries. Since: 1.16 + SMPTE EG 432 primaries. Since: 1.16 - EBU 3213 primaries. Since: 1.16 + EBU 3213 primaries. Since: 1.16 - Get information about the chromaticity coordinates of @primaries. + Get information about the chromaticity coordinates of @primaries. + - a #GstVideoColorPrimariesInfo for @primaries. + a #GstVideoColorPrimariesInfo for @primaries. - a #GstVideoColorPrimaries + a #GstVideoColorPrimaries - Structure describing the chromaticity coordinates of an RGB system. These + Structure describing the chromaticity coordinates of an RGB system. These values can be used to construct a matrix to transform RGB to and from the XYZ colorspace. + - a #GstVideoColorPrimaries + a #GstVideoColorPrimaries - reference white x coordinate + reference white x coordinate - reference white y coordinate + reference white y coordinate - red x coordinate + red x coordinate - red y coordinate + red y coordinate - green x coordinate + green x coordinate - green y coordinate + green y coordinate - blue x coordinate + blue x coordinate - blue y coordinate + blue y coordinate - Possible color range values. These constants are defined for 8 bit color + Possible color range values. These constants are defined for 8 bit color values and can be scaled for other bit depths. - unknown range + unknown range - [0..255] for 8 bit components + [0..255] for 8 bit components - [16..235] for 8 bit components. Chroma has + [16..235] for 8 bit components. Chroma has [16..240] range. - Compute the offset and scale values for each component of @info. For each + Compute the offset and scale values for each component of @info. For each component, (c[i] - offset[i]) / scale[i] will scale the component c[i] to the range [0.0 .. 1.0]. The reverse operation (c[i] * scale[i]) + offset[i] can be used to convert the component values in range [0.0 .. 1.0] back to their representation in @info and @range. + - a #GstVideoColorRange + a #GstVideoColorRange - a #GstVideoFormatInfo + a #GstVideoFormatInfo - output offsets + output offsets - output scale + output scale @@ -2843,94 +4749,100 @@ the component values in range [0.0 .. 1.0] back to their representation in - Structure describing the color info. + Structure describing the color info. + - the color range. This is the valid range for the samples. + the color range. This is the valid range for the samples. It is used to convert the samples to Y'PbPr values. - the color matrix. Used to convert between Y'PbPr and + the color matrix. Used to convert between Y'PbPr and non-linear RGB (R'G'B') - the transfer function. used to convert between R'G'B' and RGB + the transfer function. used to convert between R'G'B' and RGB - color primaries. used to convert between R'G'B' and CIE XYZ + color primaries. used to convert between R'G'B' and CIE XYZ - Parse the colorimetry string and update @cinfo with the parsed + Parse the colorimetry string and update @cinfo with the parsed values. + - %TRUE if @color points to valid colorimetry info. + %TRUE if @color points to valid colorimetry info. - a #GstVideoColorimetry + a #GstVideoColorimetry - a colorimetry string + a colorimetry string - Compare the 2 colorimetry sets for equality + Compare the 2 colorimetry sets for equality + - %TRUE if @cinfo and @other are equal. + %TRUE if @cinfo and @other are equal. - a #GstVideoColorimetry + a #GstVideoColorimetry - another #GstVideoColorimetry + another #GstVideoColorimetry - Check if the colorimetry information in @info matches that of the + Check if the colorimetry information in @info matches that of the string @color. + - %TRUE if @color conveys the same colorimetry info as the color + %TRUE if @color conveys the same colorimetry info as the color information in @info. - a #GstVideoInfo + a #GstVideoInfo - a colorimetry string + a colorimetry string - Make a string representation of @cinfo. + Make a string representation of @cinfo. + - a string representation of @cinfo. + a string representation of @cinfo. - a #GstVideoColorimetry + a #GstVideoColorimetry + @@ -2947,54 +4859,58 @@ information in @info. + - Convert the pixels of @src into @dest using @convert. + Convert the pixels of @src into @dest using @convert. + - a #GstVideoConverter + a #GstVideoConverter - a #GstVideoFrame + a #GstVideoFrame - a #GstVideoFrame + a #GstVideoFrame - Free @convert + Free @convert + - a #GstVideoConverter + a #GstVideoConverter - Get the current configuration of @convert. + Get the current configuration of @convert. + - a #GstStructure that remains valid for as long as @convert is valid + a #GstStructure that remains valid for as long as @convert is valid or until gst_video_converter_set_config() is called. - a #GstVideoConverter + a #GstVideoConverter - Set @config as extra configuraion for @convert. + Set @config as extra configuraion for @convert. If the parameters in @config can not be set exactly, this function returns %FALSE and will try to update as much state as possible. The new state can @@ -3002,74 +4918,78 @@ then be retrieved and refined with gst_video_converter_get_config(). Look at the #GST_VIDEO_CONVERTER_OPT_* fields to check valid configuration option and values. + - %TRUE when @config could be set. + %TRUE when @config could be set. - a #GstVideoConverter + a #GstVideoConverter - a #GstStructure + a #GstStructure - Create a new converter object to convert between @in_info and @out_info + Create a new converter object to convert between @in_info and @out_info with @config. + - a #GstVideoConverter or %NULL if conversion is not possible. + a #GstVideoConverter or %NULL if conversion is not possible. - a #GstVideoInfo + a #GstVideoInfo - a #GstVideoInfo + a #GstVideoInfo - a #GstStructure with configuration options + a #GstStructure with configuration options - Extra buffer metadata describing image cropping. + Extra buffer metadata describing image cropping. + - parent #GstMeta + parent #GstMeta - the horizontal offset + the horizontal offset - the vertical offset + the vertical offset - the cropped width + the cropped width - the cropped height + the cropped height + - This base class is for video decoders turning encoded data into raw video + This base class is for video decoders turning encoded data into raw video frames. The GstVideoDecoder base class and derived subclasses should cooperate as @@ -3172,7 +5092,9 @@ The bare minimum that a functional subclass needs to implement is: * Accept data in @handle_frame and provide decoded results to @gst_video_decoder_finish_frame, or call @gst_video_decoder_drop_frame. + + @@ -3183,6 +5105,7 @@ The bare minimum that a functional subclass needs to implement is: + @@ -3196,6 +5119,7 @@ The bare minimum that a functional subclass needs to implement is: + @@ -3206,6 +5130,7 @@ The bare minimum that a functional subclass needs to implement is: + @@ -3216,6 +5141,7 @@ The bare minimum that a functional subclass needs to implement is: + @@ -3226,6 +5152,7 @@ The bare minimum that a functional subclass needs to implement is: + @@ -3239,6 +5166,7 @@ The bare minimum that a functional subclass needs to implement is: + @@ -3252,21 +5180,23 @@ The bare minimum that a functional subclass needs to implement is: - Negotiate with downstream elements to currently configured #GstVideoCodecState. + Negotiate with downstream elements to currently configured #GstVideoCodecState. Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if negotiate fails. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstVideoDecoder + a #GstVideoDecoder + @@ -3277,6 +5207,7 @@ negotiate fails. + @@ -3296,6 +5227,7 @@ negotiate fails. + @@ -3309,6 +5241,7 @@ negotiate fails. + @@ -3322,6 +5255,7 @@ negotiate fails. + @@ -3335,6 +5269,7 @@ negotiate fails. + @@ -3348,6 +5283,7 @@ negotiate fails. + @@ -3361,6 +5297,7 @@ negotiate fails. + @@ -3374,6 +5311,7 @@ negotiate fails. + @@ -3387,6 +5325,7 @@ negotiate fails. + @@ -3397,6 +5336,7 @@ negotiate fails. + @@ -3407,6 +5347,7 @@ negotiate fails. + @@ -3423,104 +5364,109 @@ negotiate fails. - Removes next @n_bytes of input data and adds it to currently parsed frame. + Removes next @n_bytes of input data and adds it to currently parsed frame. + - a #GstVideoDecoder + a #GstVideoDecoder - the number of bytes to add + the number of bytes to add - Helper function that allocates a buffer to hold a video frame for @decoder's + Helper function that allocates a buffer to hold a video frame for @decoder's current #GstVideoCodecState. You should use gst_video_decoder_allocate_output_frame() instead of this function, if possible at all. + - allocated buffer, or NULL if no buffer could be + allocated buffer, or NULL if no buffer could be allocated (e.g. when downstream is flushing or shutting down) - a #GstVideoDecoder + a #GstVideoDecoder - Helper function that allocates a buffer to hold a video frame for @decoder's + Helper function that allocates a buffer to hold a video frame for @decoder's current #GstVideoCodecState. Subclass should already have configured video state and set src pad caps. The buffer allocated here is owned by the frame and you should only keep references to the frame, not the buffer. + - %GST_FLOW_OK if an output buffer could be allocated + %GST_FLOW_OK if an output buffer could be allocated - a #GstVideoDecoder + a #GstVideoDecoder - a #GstVideoCodecFrame + a #GstVideoCodecFrame - Same as #gst_video_decoder_allocate_output_frame except it allows passing + Same as #gst_video_decoder_allocate_output_frame except it allows passing #GstBufferPoolAcquireParams to the sub call gst_buffer_pool_acquire_buffer. + - %GST_FLOW_OK if an output buffer could be allocated + %GST_FLOW_OK if an output buffer could be allocated - a #GstVideoDecoder + a #GstVideoDecoder - a #GstVideoCodecFrame + a #GstVideoCodecFrame - a #GstBufferPoolAcquireParams + a #GstBufferPoolAcquireParams - Similar to gst_video_decoder_finish_frame(), but drops @frame in any + Similar to gst_video_decoder_finish_frame(), but drops @frame in any case and posts a QoS message with the frame's details on the bus. In any case, the frame is considered finished and released. + - a #GstFlowReturn, usually GST_FLOW_OK. + a #GstFlowReturn, usually GST_FLOW_OK. - a #GstVideoDecoder + a #GstVideoDecoder - the #GstVideoCodecFrame to drop + the #GstVideoCodecFrame to drop - @frame should have a valid decoded data buffer, whose metadata fields + @frame should have a valid decoded data buffer, whose metadata fields are then appropriately set according to frame data and pushed downstream. If no output data is provided, @frame is considered skipped. In any case, the frame is considered finished and released. @@ -3528,254 +5474,270 @@ In any case, the frame is considered finished and released. After calling this function the output buffer of the frame is to be considered read-only. This function will also change the metadata of the buffer. + - a #GstFlowReturn resulting from sending data downstream + a #GstFlowReturn resulting from sending data downstream - a #GstVideoDecoder + a #GstVideoDecoder - a decoded #GstVideoCodecFrame + a decoded #GstVideoCodecFrame - Lets #GstVideoDecoder sub-classes to know the memory @allocator + Lets #GstVideoDecoder sub-classes to know the memory @allocator used by the base class and its @params. Unref the @allocator after use it. + - a #GstVideoDecoder + a #GstVideoDecoder - the #GstAllocator + the #GstAllocator used - the + the #GstAllocationParams of @allocator + - the instance of the #GstBufferPool used + the instance of the #GstBufferPool used by the decoder; free it after use it - a #GstVideoDecoder + a #GstVideoDecoder + - currently configured byte to time conversion setting + currently configured byte to time conversion setting - a #GstVideoDecoder + a #GstVideoDecoder - Get a pending unfinished #GstVideoCodecFrame + Get a pending unfinished #GstVideoCodecFrame + - pending unfinished #GstVideoCodecFrame identified by @frame_number. + pending unfinished #GstVideoCodecFrame identified by @frame_number. - a #GstVideoDecoder + a #GstVideoDecoder - system_frame_number of a frame + system_frame_number of a frame - Get all pending unfinished #GstVideoCodecFrame + Get all pending unfinished #GstVideoCodecFrame + - pending unfinished #GstVideoCodecFrame. + pending unfinished #GstVideoCodecFrame. - a #GstVideoDecoder + a #GstVideoDecoder - Query the configured decoder latency. Results will be returned via + Query the configured decoder latency. Results will be returned via @min_latency and @max_latency. + - a #GstVideoDecoder + a #GstVideoDecoder - address of variable in which to store the + address of variable in which to store the configured minimum latency, or %NULL - address of variable in which to store the + address of variable in which to store the configured mximum latency, or %NULL - Determines maximum possible decoding time for @frame that will + Determines maximum possible decoding time for @frame that will allow it to decode and arrive in time (as determined by QoS events). In particular, a negative result means decoding in time is no longer possible and should therefore occur as soon/skippy as possible. + - max decoding time. + max decoding time. - a #GstVideoDecoder + a #GstVideoDecoder - a #GstVideoCodecFrame + a #GstVideoCodecFrame + - currently configured decoder tolerated error count. + currently configured decoder tolerated error count. - a #GstVideoDecoder + a #GstVideoDecoder - Queries decoder required format handling. + Queries decoder required format handling. + - %TRUE if required format handling is enabled. + %TRUE if required format handling is enabled. - a #GstVideoDecoder + a #GstVideoDecoder - Get the oldest pending unfinished #GstVideoCodecFrame + Get the oldest pending unfinished #GstVideoCodecFrame + - oldest pending unfinished #GstVideoCodecFrame. + oldest pending unfinished #GstVideoCodecFrame. - a #GstVideoDecoder + a #GstVideoDecoder - Get the #GstVideoCodecState currently describing the output stream. + Get the #GstVideoCodecState currently describing the output stream. + - #GstVideoCodecState describing format of video data. + #GstVideoCodecState describing format of video data. - a #GstVideoDecoder + a #GstVideoDecoder - Queries whether input data is considered packetized or not by the + Queries whether input data is considered packetized or not by the base class. + - TRUE if input data is considered packetized. + TRUE if input data is considered packetized. - a #GstVideoDecoder + a #GstVideoDecoder - Returns the number of bytes previously added to the current frame + Returns the number of bytes previously added to the current frame by calling gst_video_decoder_add_to_frame(). + - The number of bytes pending for the current frame + The number of bytes pending for the current frame - a #GstVideoDecoder + a #GstVideoDecoder + - The current QoS proportion. + The current QoS proportion. - a #GstVideoDecoder + a #GstVideoDecoder current QoS proportion, or %NULL - Gathers all data collected for currently parsed frame, gathers corresponding + Gathers all data collected for currently parsed frame, gathers corresponding metadata and passes it along for further processing, i.e. @handle_frame. + - a #GstFlowReturn + a #GstFlowReturn - a #GstVideoDecoder + a #GstVideoDecoder - Sets the audio decoder tags and how they should be merged with any + Sets the audio decoder tags and how they should be merged with any upstream stream tags. This will override any tags previously-set with gst_audio_decoder_merge_tags(). @@ -3783,197 +5745,206 @@ Note that this is provided for convenience, and the subclass is not required to use this and can still do tag handling on its own. MT safe. + - a #GstVideoDecoder + a #GstVideoDecoder - a #GstTagList to merge, or NULL to unset + a #GstTagList to merge, or NULL to unset previously-set tags - the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE + the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE - Negotiate with downstream elements to currently configured #GstVideoCodecState. + Negotiate with downstream elements to currently configured #GstVideoCodecState. Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if negotiate fails. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstVideoDecoder + a #GstVideoDecoder - Returns caps that express @caps (or sink template caps if @caps == NULL) + Returns caps that express @caps (or sink template caps if @caps == NULL) restricted to resolution/format/... combinations supported by downstream elements. + - a #GstCaps owned by caller + a #GstCaps owned by caller - a #GstVideoDecoder + a #GstVideoDecoder - initial caps + initial caps - filter caps + filter caps - Similar to gst_video_decoder_drop_frame(), but simply releases @frame + Similar to gst_video_decoder_drop_frame(), but simply releases @frame without any processing other than removing it from list of pending frames, after which it is considered finished and released. + - a #GstVideoDecoder + a #GstVideoDecoder - the #GstVideoCodecFrame to release + the #GstVideoCodecFrame to release - Allows baseclass to perform byte to time estimated conversion. + Allows baseclass to perform byte to time estimated conversion. + - a #GstVideoDecoder + a #GstVideoDecoder - whether to enable byte to time conversion + whether to enable byte to time conversion - Same as #gst_video_decoder_set_output_state() but also allows you to also set + Same as #gst_video_decoder_set_output_state() but also allows you to also set the interlacing mode. + - the newly configured output state. + the newly configured output state. - a #GstVideoDecoder + a #GstVideoDecoder - a #GstVideoFormat + a #GstVideoFormat - A #GstVideoInterlaceMode + A #GstVideoInterlaceMode - The width in pixels + The width in pixels - The height in pixels + The height in pixels - An optional reference #GstVideoCodecState + An optional reference #GstVideoCodecState - Lets #GstVideoDecoder sub-classes tell the baseclass what the decoder + Lets #GstVideoDecoder sub-classes tell the baseclass what the decoder latency is. Will also post a LATENCY message on the bus so the pipeline can reconfigure its global latency. + - a #GstVideoDecoder + a #GstVideoDecoder - minimum latency + minimum latency - maximum latency + maximum latency - Sets numbers of tolerated decoder errors, where a tolerated one is then only + Sets numbers of tolerated decoder errors, where a tolerated one is then only warned about, but more than tolerated will lead to fatal error. You can set -1 for never returning fatal errors. Default is set to GST_VIDEO_DECODER_MAX_ERRORS. The '-1' option was added in 1.4 + - a #GstVideoDecoder + a #GstVideoDecoder - max tolerated errors + max tolerated errors - Configures decoder format needs. If enabled, subclass needs to be + Configures decoder format needs. If enabled, subclass needs to be negotiated with format caps before it can process any data. It will then never be handed any data before it has been configured. Otherwise, it might be handed data without having been configured and is then expected being able to do so either by default or based on the input data. + - a #GstVideoDecoder + a #GstVideoDecoder - new state + new state - Creates a new #GstVideoCodecState with the specified @fmt, @width and @height + Creates a new #GstVideoCodecState with the specified @fmt, @width and @height as the output state for the decoder. Any previously set output state on @decoder will be replaced by the newly created one. @@ -3987,67 +5958,70 @@ pixel-aspect-ratio or framerate) it can do so on the returned #GstVideoCodecStat The new output state will only take effect (set on pads and buffers) starting from the next call to #gst_video_decoder_finish_frame(). + - the newly configured output state. + the newly configured output state. - a #GstVideoDecoder + a #GstVideoDecoder - a #GstVideoFormat + a #GstVideoFormat - The width in pixels + The width in pixels - The height in pixels + The height in pixels - An optional reference #GstVideoCodecState + An optional reference #GstVideoCodecState - Allows baseclass to consider input data as packetized or not. If the + Allows baseclass to consider input data as packetized or not. If the input is packetized, then the @parse method will not be called. + - a #GstVideoDecoder + a #GstVideoDecoder - whether the input data should be considered as packetized. + whether the input data should be considered as packetized. - Lets #GstVideoDecoder sub-classes decide if they want the sink pad + Lets #GstVideoDecoder sub-classes decide if they want the sink pad to use the default pad query handler to reply to accept-caps queries. By setting this to true it is possible to further customize the default handler with %GST_PAD_SET_ACCEPT_INTERSECT and %GST_PAD_SET_ACCEPT_TEMPLATE + - a #GstVideoDecoder + a #GstVideoDecoder - if the default pad accept-caps query handling should be used + if the default pad accept-caps query handling should be used @@ -4074,21 +6048,23 @@ handler with %GST_PAD_SET_ACCEPT_INTERSECT and - + - Subclasses can override any of the available virtual methods or not, as + Subclasses can override any of the available virtual methods or not, as needed. At minimum @handle_frame needs to be overridden, and @set_format and likely as well. If non-packetized input is supported or expected, @parse needs to be overridden as well. + + @@ -4101,6 +6077,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4113,6 +6090,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4125,6 +6103,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4137,6 +6116,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4158,6 +6138,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4173,6 +6154,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4188,6 +6170,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4200,6 +6183,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4215,6 +6199,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4230,6 +6215,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4245,13 +6231,14 @@ and likely as well. If non-packetized input is supported or expected, + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstVideoDecoder + a #GstVideoDecoder @@ -4259,6 +6246,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4274,6 +6262,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4289,6 +6278,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4301,6 +6291,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4316,6 +6307,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4331,6 +6323,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4346,6 +6339,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4358,6 +6352,7 @@ and likely as well. If non-packetized input is supported or expected, + @@ -4375,140 +6370,147 @@ and likely as well. If non-packetized input is supported or expected, - + + - The interface allows unified access to control flipping and rotation + The interface allows unified access to control flipping and rotation operations of video-sources or operators. + - #GstVideoDirectionInterface interface. + #GstVideoDirectionInterface interface. + - parent interface type. + parent interface type. - GstVideoDither provides implementations of several dithering algorithms + GstVideoDither provides implementations of several dithering algorithms that can be applied to lines of video pixels to quantize and dither them. + - Free @dither + Free @dither + - a #GstVideoDither + a #GstVideoDither - Dither @width pixels starting from offset @x in @line using @dither. + Dither @width pixels starting from offset @x in @line using @dither. @y is the line number of @line in the output image. + - a #GstVideoDither + a #GstVideoDither - pointer to the pixels of the line + pointer to the pixels of the line - x coordinate + x coordinate - y coordinate + y coordinate - the width + the width - Make a new dither object for dithering lines of @format using the + Make a new dither object for dithering lines of @format using the algorithm described by @method. Each component will be quantized to a multiple of @quantizer. Better performance is achived when @quantizer is a power of 2. @width is the width of the lines that this ditherer will handle. + - a new #GstVideoDither + a new #GstVideoDither - a #GstVideoDitherMethod + a #GstVideoDitherMethod - a #GstVideoDitherFlags + a #GstVideoDitherFlags - a #GstVideoFormat + a #GstVideoFormat - quantizer + quantizer - the width of the lines + the width of the lines - Extra flags that influence the result from gst_video_chroma_resample_new(). + Extra flags that influence the result from gst_video_chroma_resample_new(). - no flags + no flags - the input is interlaced + the input is interlaced - quantize values in addition to adding dither. + quantize values in addition to adding dither. - Different dithering methods to use. + Different dithering methods to use. - no dithering + no dithering - propagate rounding errors downwards + propagate rounding errors downwards - Dither with floyd-steinberg error diffusion + Dither with floyd-steinberg error diffusion - Dither with Sierra Lite error diffusion + Dither with Sierra Lite error diffusion - ordered dither using a bayer pattern + ordered dither using a bayer pattern - This base class is for video encoders turning raw video into + This base class is for video encoders turning raw video into encoded video data. GstVideoEncoder and subclass should cooperate as follows. @@ -4566,8 +6568,10 @@ performance of the downstream elements. If enabled, subclasses can use gst_video_encoder_get_max_encode_time() to check if input frames are already late and drop them right away to give a chance to the pipeline to catch up. + + @@ -4578,6 +6582,7 @@ pipeline to catch up. + @@ -4591,6 +6596,7 @@ pipeline to catch up. + @@ -4601,6 +6607,7 @@ pipeline to catch up. + @@ -4611,6 +6618,7 @@ pipeline to catch up. + @@ -4624,6 +6632,7 @@ pipeline to catch up. + @@ -4637,21 +6646,23 @@ pipeline to catch up. - Negotiate with downstream elements to currently configured #GstVideoCodecState. + Negotiate with downstream elements to currently configured #GstVideoCodecState. Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if negotiate fails. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstVideoEncoder + a #GstVideoEncoder + @@ -4662,6 +6673,7 @@ negotiate fails. + @@ -4675,6 +6687,7 @@ negotiate fails. + @@ -4688,6 +6701,7 @@ negotiate fails. + @@ -4701,6 +6715,7 @@ negotiate fails. + @@ -4714,6 +6729,7 @@ negotiate fails. + @@ -4727,6 +6743,7 @@ negotiate fails. + @@ -4740,6 +6757,7 @@ negotiate fails. + @@ -4753,6 +6771,7 @@ negotiate fails. + @@ -4766,6 +6785,7 @@ negotiate fails. + @@ -4776,6 +6796,7 @@ negotiate fails. + @@ -4786,6 +6807,7 @@ negotiate fails. + @@ -4802,51 +6824,53 @@ negotiate fails. - Helper function that allocates a buffer to hold an encoded video frame + Helper function that allocates a buffer to hold an encoded video frame for @encoder's current #GstVideoCodecState. + - allocated buffer + allocated buffer - a #GstVideoEncoder + a #GstVideoEncoder - size of the buffer + size of the buffer - Helper function that allocates a buffer to hold an encoded video frame for @encoder's + Helper function that allocates a buffer to hold an encoded video frame for @encoder's current #GstVideoCodecState. Subclass should already have configured video state and set src pad caps. The buffer allocated here is owned by the frame and you should only keep references to the frame, not the buffer. + - %GST_FLOW_OK if an output buffer could be allocated + %GST_FLOW_OK if an output buffer could be allocated - a #GstVideoEncoder + a #GstVideoEncoder - a #GstVideoCodecFrame + a #GstVideoCodecFrame - size of the buffer + size of the buffer - @frame must have a valid encoded data buffer, whose metadata fields + @frame must have a valid encoded data buffer, whose metadata fields are then appropriately set according to frame data or no buffer at all if the frame should be dropped. It is subsequently pushed downstream or provided to @pre_push. @@ -4855,166 +6879,175 @@ In any case, the frame is considered finished and released. After calling this function the output buffer of the frame is to be considered read-only. This function will also change the metadata of the buffer. + - a #GstFlowReturn resulting from sending data downstream + a #GstFlowReturn resulting from sending data downstream - a #GstVideoEncoder + a #GstVideoEncoder - an encoded #GstVideoCodecFrame + an encoded #GstVideoCodecFrame - Lets #GstVideoEncoder sub-classes to know the memory @allocator + Lets #GstVideoEncoder sub-classes to know the memory @allocator used by the base class and its @params. Unref the @allocator after use it. + - a #GstVideoEncoder + a #GstVideoEncoder - the #GstAllocator + the #GstAllocator used - the + the #GstAllocationParams of @allocator - Get a pending unfinished #GstVideoCodecFrame + Get a pending unfinished #GstVideoCodecFrame + - pending unfinished #GstVideoCodecFrame identified by @frame_number. + pending unfinished #GstVideoCodecFrame identified by @frame_number. - a #GstVideoEncoder + a #GstVideoEncoder - system_frame_number of a frame + system_frame_number of a frame - Get all pending unfinished #GstVideoCodecFrame + Get all pending unfinished #GstVideoCodecFrame + - pending unfinished #GstVideoCodecFrame. + pending unfinished #GstVideoCodecFrame. - a #GstVideoEncoder + a #GstVideoEncoder - Query the configured encoding latency. Results will be returned via + Query the configured encoding latency. Results will be returned via @min_latency and @max_latency. + - a #GstVideoEncoder + a #GstVideoEncoder - address of variable in which to store the + address of variable in which to store the configured minimum latency, or %NULL - address of variable in which to store the + address of variable in which to store the configured maximum latency, or %NULL - Determines maximum possible encoding time for @frame that will + Determines maximum possible encoding time for @frame that will allow it to encode and arrive in time (as determined by QoS events). In particular, a negative result means encoding in time is no longer possible and should therefore occur as soon/skippy as possible. If no QoS events have been received from downstream, or if #GstVideoEncoder:qos is disabled this function returns #G_MAXINT64. + - max decoding time. + max decoding time. - a #GstVideoEncoder + a #GstVideoEncoder - a #GstVideoCodecFrame + a #GstVideoCodecFrame - Get the oldest unfinished pending #GstVideoCodecFrame + Get the oldest unfinished pending #GstVideoCodecFrame + - oldest unfinished pending #GstVideoCodecFrame + oldest unfinished pending #GstVideoCodecFrame - a #GstVideoEncoder + a #GstVideoEncoder - Get the current #GstVideoCodecState + Get the current #GstVideoCodecState + - #GstVideoCodecState describing format of video data. + #GstVideoCodecState describing format of video data. - a #GstVideoEncoder + a #GstVideoEncoder - Checks if @encoder is currently configured to handle Quality-of-Service + Checks if @encoder is currently configured to handle Quality-of-Service events from downstream. + - %TRUE if the encoder is configured to perform Quality-of-Service. + %TRUE if the encoder is configured to perform Quality-of-Service. - the encoder + the encoder - Sets the video encoder tags and how they should be merged with any + Sets the video encoder tags and how they should be merged with any upstream stream tags. This will override any tags previously-set with gst_video_encoder_merge_tags(). @@ -5022,75 +7055,79 @@ Note that this is provided for convenience, and the subclass is not required to use this and can still do tag handling on its own. MT safe. + - a #GstVideoEncoder + a #GstVideoEncoder - a #GstTagList to merge, or NULL to unset + a #GstTagList to merge, or NULL to unset previously-set tags - the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE + the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE - Negotiate with downstream elements to currently configured #GstVideoCodecState. + Negotiate with downstream elements to currently configured #GstVideoCodecState. Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if negotiate fails. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstVideoEncoder + a #GstVideoEncoder - Returns caps that express @caps (or sink template caps if @caps == NULL) + Returns caps that express @caps (or sink template caps if @caps == NULL) restricted to resolution/format/... combinations supported by downstream elements (e.g. muxers). + - a #GstCaps owned by caller + a #GstCaps owned by caller - a #GstVideoEncoder + a #GstVideoEncoder - initial caps + initial caps - filter caps + filter caps - Set the codec headers to be sent downstream whenever requested. + Set the codec headers to be sent downstream whenever requested. + - a #GstVideoEncoder + a #GstVideoEncoder - a list of #GstBuffer containing the codec header + a list of #GstBuffer containing the codec header @@ -5098,46 +7135,48 @@ elements (e.g. muxers). - Informs baseclass of encoding latency. + Informs baseclass of encoding latency. + - a #GstVideoEncoder + a #GstVideoEncoder - minimum latency + minimum latency - maximum latency + maximum latency - Request minimal value for PTS passed to handle_frame. + Request minimal value for PTS passed to handle_frame. For streams with reordered frames this can be used to ensure that there is enough time to accomodate first DTS, which may be less than first PTS + - a #GstVideoEncoder + a #GstVideoEncoder - minimal PTS that will be passed to handle_frame + minimal PTS that will be passed to handle_frame - Creates a new #GstVideoCodecState with the specified caps as the output state + Creates a new #GstVideoCodecState with the specified caps as the output state for the encoder. Any previously set output state on @encoder will be replaced by the newly created one. @@ -5155,37 +7194,39 @@ pixel-aspect-ratio or framerate) it can do so on the returned #GstVideoCodecStat The new output state will only take effect (set on pads and buffers) starting from the next call to #gst_video_encoder_finish_frame(). + - the newly configured output state. + the newly configured output state. - a #GstVideoEncoder + a #GstVideoEncoder - the #GstCaps to use for the output + the #GstCaps to use for the output - An optional reference @GstVideoCodecState + An optional reference @GstVideoCodecState - Configures @encoder to handle Quality-of-Service events from downstream. + Configures @encoder to handle Quality-of-Service events from downstream. + - the encoder + the encoder - the new qos value. + the new qos value. @@ -5215,20 +7256,22 @@ from the next call to #gst_video_encoder_finish_frame(). - + - Subclasses can override any of the available virtual methods or not, as + Subclasses can override any of the available virtual methods or not, as needed. At minimum @handle_frame needs to be overridden, and @set_format and @get_caps are likely needed as well. + + @@ -5241,6 +7284,7 @@ and @get_caps are likely needed as well. + @@ -5253,6 +7297,7 @@ and @get_caps are likely needed as well. + @@ -5265,6 +7310,7 @@ and @get_caps are likely needed as well. + @@ -5277,6 +7323,7 @@ and @get_caps are likely needed as well. + @@ -5292,6 +7339,7 @@ and @get_caps are likely needed as well. + @@ -5307,6 +7355,7 @@ and @get_caps are likely needed as well. + @@ -5322,6 +7371,7 @@ and @get_caps are likely needed as well. + @@ -5334,6 +7384,7 @@ and @get_caps are likely needed as well. + @@ -5349,6 +7400,7 @@ and @get_caps are likely needed as well. + @@ -5364,6 +7416,7 @@ and @get_caps are likely needed as well. + @@ -5379,6 +7432,7 @@ and @get_caps are likely needed as well. + @@ -5394,13 +7448,14 @@ and @get_caps are likely needed as well. + - %TRUE if the negotiation succeeded, else %FALSE. + %TRUE if the negotiation succeeded, else %FALSE. - a #GstVideoEncoder + a #GstVideoEncoder @@ -5408,6 +7463,7 @@ and @get_caps are likely needed as well. + @@ -5423,6 +7479,7 @@ and @get_caps are likely needed as well. + @@ -5438,6 +7495,7 @@ and @get_caps are likely needed as well. + @@ -5450,6 +7508,7 @@ and @get_caps are likely needed as well. + @@ -5465,6 +7524,7 @@ and @get_caps are likely needed as well. + @@ -5480,6 +7540,7 @@ and @get_caps are likely needed as well. + @@ -5497,63 +7558,68 @@ and @get_caps are likely needed as well. - + + - Field order of interlaced content. This is only valid for + Field order of interlaced content. This is only valid for interlace-mode=interleaved and not interlace-mode=mixed. In the case of mixed or GST_VIDEO_FIELD_ORDER_UNKOWN, the field order is signalled via buffer flags. - unknown field order for interlaced content. + unknown field order for interlaced content. The actual field order is signalled via buffer flags. - top field is first + top field is first - bottom field is first + bottom field is first - Convert @order to a #GstVideoFieldOrder + Convert @order to a #GstVideoFieldOrder + - the #GstVideoFieldOrder of @order or + the #GstVideoFieldOrder of @order or #GST_VIDEO_FIELD_ORDER_UNKNOWN when @order is not a valid string representation for a #GstVideoFieldOrder. - a field order + a field order - Convert @order to its string representation. + Convert @order to its string representation. + - @order as a string or NULL if @order in invalid. + @order as a string or NULL if @order in invalid. - a #GstVideoFieldOrder + a #GstVideoFieldOrder - Provides useful functions and a base class for video filters. + Provides useful functions and a base class for video filters. The videofilter will by default enable QoS on the parent GstBaseTransform to implement frame dropping. + + @@ -5576,6 +7642,7 @@ to implement frame dropping. + @@ -5592,6 +7659,7 @@ to implement frame dropping. + @@ -5617,19 +7685,21 @@ to implement frame dropping. - + - The video filter class structure. + The video filter class structure. + - the parent class structure + the parent class structure + @@ -5654,6 +7724,7 @@ to implement frame dropping. + @@ -5672,6 +7743,7 @@ to implement frame dropping. + @@ -5686,580 +7758,588 @@ to implement frame dropping. - + - Extra video flags + Extra video flags - no flags + no flags - a variable fps is selected, fps_n and fps_d + a variable fps is selected, fps_n and fps_d denote the maximum fps of the video - Each color has been scaled by the alpha + Each color has been scaled by the alpha value. - Enum value describing the most common video formats. + Enum value describing the most common video formats. See the [GStreamer raw video format design document](https://gstreamer.freedesktop.org/documentation/design/mediatype-video-raw.html#formats) for details about the layout and packing of these formats in memory. - Unknown or unset video format id + Unknown or unset video format id - Encoded video format. Only ever use that in caps for + Encoded video format. Only ever use that in caps for special video formats in combination with non-system memory GstCapsFeatures where it does not make sense to specify a real video format. - planar 4:2:0 YUV + planar 4:2:0 YUV - planar 4:2:0 YVU (like I420 but UV planes swapped) + planar 4:2:0 YVU (like I420 but UV planes swapped) - packed 4:2:2 YUV (Y0-U0-Y1-V0 Y2-U2-Y3-V2 Y4 ...) + packed 4:2:2 YUV (Y0-U0-Y1-V0 Y2-U2-Y3-V2 Y4 ...) - packed 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 ...) + packed 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 ...) - packed 4:4:4 YUV with alpha channel (A0-Y0-U0-V0 ...) + packed 4:4:4 YUV with alpha channel (A0-Y0-U0-V0 ...) - sparse rgb packed into 32 bit, space last + sparse rgb packed into 32 bit, space last - sparse reverse rgb packed into 32 bit, space last + sparse reverse rgb packed into 32 bit, space last - sparse rgb packed into 32 bit, space first + sparse rgb packed into 32 bit, space first - sparse reverse rgb packed into 32 bit, space first + sparse reverse rgb packed into 32 bit, space first - rgb with alpha channel last + rgb with alpha channel last - reverse rgb with alpha channel last + reverse rgb with alpha channel last - rgb with alpha channel first + rgb with alpha channel first - reverse rgb with alpha channel first + reverse rgb with alpha channel first - RGB packed into 24 bits without padding (`R-G-B-R-G-B`) + RGB packed into 24 bits without padding (`R-G-B-R-G-B`) - reverse RGB packed into 24 bits without padding (`B-G-R-B-G-R`) + reverse RGB packed into 24 bits without padding (`B-G-R-B-G-R`) - planar 4:1:1 YUV + planar 4:1:1 YUV - planar 4:2:2 YUV + planar 4:2:2 YUV - packed 4:2:2 YUV (Y0-V0-Y1-U0 Y2-V2-Y3-U2 Y4 ...) + packed 4:2:2 YUV (Y0-V0-Y1-U0 Y2-V2-Y3-U2 Y4 ...) - planar 4:4:4 YUV + planar 4:4:4 YUV - packed 4:2:2 10-bit YUV, complex format + packed 4:2:2 10-bit YUV, complex format - packed 4:2:2 16-bit YUV, Y0-U0-Y1-V1 order + packed 4:2:2 16-bit YUV, Y0-U0-Y1-V1 order - planar 4:2:0 YUV with interleaved UV plane + planar 4:2:0 YUV with interleaved UV plane - planar 4:2:0 YUV with interleaved VU plane + planar 4:2:0 YUV with interleaved VU plane - 8-bit grayscale + 8-bit grayscale - 16-bit grayscale, most significant byte first + 16-bit grayscale, most significant byte first - 16-bit grayscale, least significant byte first + 16-bit grayscale, least significant byte first - packed 4:4:4 YUV (Y-U-V ...) + packed 4:4:4 YUV (Y-U-V ...) - rgb 5-6-5 bits per component + rgb 5-6-5 bits per component - reverse rgb 5-6-5 bits per component + reverse rgb 5-6-5 bits per component - rgb 5-5-5 bits per component + rgb 5-5-5 bits per component - reverse rgb 5-5-5 bits per component + reverse rgb 5-5-5 bits per component - packed 10-bit 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 ...) + packed 10-bit 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 ...) - planar 4:4:2:0 AYUV + planar 4:4:2:0 AYUV - 8-bit paletted RGB + 8-bit paletted RGB - planar 4:1:0 YUV + planar 4:1:0 YUV - planar 4:1:0 YUV (like YUV9 but UV planes swapped) + planar 4:1:0 YUV (like YUV9 but UV planes swapped) - packed 4:1:1 YUV (Cb-Y0-Y1-Cr-Y2-Y3 ...) + packed 4:1:1 YUV (Cb-Y0-Y1-Cr-Y2-Y3 ...) - rgb with alpha channel first, 16 bits per channel + rgb with alpha channel first, 16 bits per channel - packed 4:4:4 YUV with alpha channel, 16 bits per channel (A0-Y0-U0-V0 ...) + packed 4:4:4 YUV with alpha channel, 16 bits per channel (A0-Y0-U0-V0 ...) - packed 4:4:4 RGB, 10 bits per channel + packed 4:4:4 RGB, 10 bits per channel - planar 4:2:0 YUV, 10 bits per channel + planar 4:2:0 YUV, 10 bits per channel - planar 4:2:0 YUV, 10 bits per channel + planar 4:2:0 YUV, 10 bits per channel - planar 4:2:2 YUV, 10 bits per channel + planar 4:2:2 YUV, 10 bits per channel - planar 4:2:2 YUV, 10 bits per channel + planar 4:2:2 YUV, 10 bits per channel - planar 4:4:4 YUV, 10 bits per channel (Since: 1.2) + planar 4:4:4 YUV, 10 bits per channel (Since: 1.2) - planar 4:4:4 YUV, 10 bits per channel (Since: 1.2) + planar 4:4:4 YUV, 10 bits per channel (Since: 1.2) - planar 4:4:4 RGB, 8 bits per channel (Since: 1.2) + planar 4:4:4 RGB, 8 bits per channel (Since: 1.2) - planar 4:4:4 RGB, 10 bits per channel (Since: 1.2) + planar 4:4:4 RGB, 10 bits per channel (Since: 1.2) - planar 4:4:4 RGB, 10 bits per channel (Since: 1.2) + planar 4:4:4 RGB, 10 bits per channel (Since: 1.2) - planar 4:2:2 YUV with interleaved UV plane (Since: 1.2) + planar 4:2:2 YUV with interleaved UV plane (Since: 1.2) - planar 4:4:4 YUV with interleaved UV plane (Since: 1.2) + planar 4:4:4 YUV with interleaved UV plane (Since: 1.2) - NV12 with 64x32 tiling in zigzag pattern (Since: 1.4) + NV12 with 64x32 tiling in zigzag pattern (Since: 1.4) - planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6) + planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6) - planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6) + planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6) - planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6) + planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6) - planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6) + planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6) - planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6) + planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6) - planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6) + planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6) - planar 4:2:2 YUV with interleaved VU plane (Since: 1.6) + planar 4:2:2 YUV with interleaved VU plane (Since: 1.6) - planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10) + planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10) - planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10) + planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10) - packed 4:4:4 YUV (U-Y-V ...) (Since: 1.10) + packed 4:4:4 YUV (U-Y-V ...) (Since: 1.10) - packed 4:2:2 YUV (V0-Y0-U0-Y1 V2-Y2-U2-Y3 V4 ...) + packed 4:2:2 YUV (V0-Y0-U0-Y1 V2-Y2-U2-Y3 V4 ...) - planar 4:4:4:4 ARGB, 8 bits per channel (Since: 1.12) + planar 4:4:4:4 ARGB, 8 bits per channel (Since: 1.12) - planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12) + planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12) - planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12) + planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12) - planar 4:4:4 RGB, 12 bits per channel (Since: 1.12) + planar 4:4:4 RGB, 12 bits per channel (Since: 1.12) - planar 4:4:4 RGB, 12 bits per channel (Since: 1.12) + planar 4:4:4 RGB, 12 bits per channel (Since: 1.12) - planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12) + planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12) - planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12) + planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12) - planar 4:2:0 YUV, 12 bits per channel (Since: 1.12) + planar 4:2:0 YUV, 12 bits per channel (Since: 1.12) - planar 4:2:0 YUV, 12 bits per channel (Since: 1.12) + planar 4:2:0 YUV, 12 bits per channel (Since: 1.12) - planar 4:2:2 YUV, 12 bits per channel (Since: 1.12) + planar 4:2:2 YUV, 12 bits per channel (Since: 1.12) - planar 4:2:2 YUV, 12 bits per channel (Since: 1.12) + planar 4:2:2 YUV, 12 bits per channel (Since: 1.12) - planar 4:4:4 YUV, 12 bits per channel (Since: 1.12) + planar 4:4:4 YUV, 12 bits per channel (Since: 1.12) - planar 4:4:4 YUV, 12 bits per channel (Since: 1.12) + planar 4:4:4 YUV, 12 bits per channel (Since: 1.12) - 10-bit grayscale, packed into 32bit words (2 bits padding) (Since: 1.14) + 10-bit grayscale, packed into 32bit words (2 bits padding) (Since: 1.14) - 10-bit variant of @GST_VIDEO_FORMAT_NV12, packed into 32bit words (MSB 2 bits padding) (Since: 1.14) + 10-bit variant of @GST_VIDEO_FORMAT_NV12, packed into 32bit words (MSB 2 bits padding) (Since: 1.14) - 10-bit variant of @GST_VIDEO_FORMAT_NV16, packed into 32bit words (MSB 2 bits padding) (Since: 1.14) + 10-bit variant of @GST_VIDEO_FORMAT_NV16, packed into 32bit words (MSB 2 bits padding) (Since: 1.14) - Fully packed variant of NV12_10LE32 (Since: 1.16) + Fully packed variant of NV12_10LE32 (Since: 1.16) - packed 4:2:2 YUV, 10 bits per channel (Since: 1.16) + packed 4:2:2 YUV, 10 bits per channel (Since: 1.16) - packed 4:4:4 YUV, 10 bits per channel(A-V-Y-U...) (Since: 1.16) + packed 4:4:4 YUV, 10 bits per channel(A-V-Y-U...) (Since: 1.16) - packed 4:4:4 YUV with alpha channel (V0-U0-Y0-A0...) (Since: 1.16) + packed 4:4:4 YUV with alpha channel (V0-U0-Y0-A0...) (Since: 1.16) - packed 4:4:4 RGB with alpha channel(B-G-R-A), 10 bits for R/G/B channel and MSB 2 bits for alpha channel (Since: 1.16) + packed 4:4:4 RGB with alpha channel(B-G-R-A), 10 bits for R/G/B channel and MSB 2 bits for alpha channel (Since: 1.16) - Converts a FOURCC value into the corresponding #GstVideoFormat. + Converts a FOURCC value into the corresponding #GstVideoFormat. If the FOURCC cannot be represented by #GstVideoFormat, #GST_VIDEO_FORMAT_UNKNOWN is returned. + - the #GstVideoFormat describing the FOURCC value + the #GstVideoFormat describing the FOURCC value - a FOURCC value representing raw YUV video + a FOURCC value representing raw YUV video - Find the #GstVideoFormat for the given parameters. + Find the #GstVideoFormat for the given parameters. + - a #GstVideoFormat or GST_VIDEO_FORMAT_UNKNOWN when the parameters to + a #GstVideoFormat or GST_VIDEO_FORMAT_UNKNOWN when the parameters to not specify a known format. - the amount of bits used for a pixel + the amount of bits used for a pixel - the amount of bits used to store a pixel. This value is bigger than + the amount of bits used to store a pixel. This value is bigger than @depth - the endianness of the masks, #G_LITTLE_ENDIAN or #G_BIG_ENDIAN + the endianness of the masks, #G_LITTLE_ENDIAN or #G_BIG_ENDIAN - the red mask + the red mask - the green mask + the green mask - the blue mask + the blue mask - the alpha mask, or 0 if no alpha mask + the alpha mask, or 0 if no alpha mask - Convert the @format string to its #GstVideoFormat. + Convert the @format string to its #GstVideoFormat. + - the #GstVideoFormat for @format or GST_VIDEO_FORMAT_UNKNOWN when the + the #GstVideoFormat for @format or GST_VIDEO_FORMAT_UNKNOWN when the string is not a known format. - a format string + a format string - Get the #GstVideoFormatInfo for @format + Get the #GstVideoFormatInfo for @format + - The #GstVideoFormatInfo for @format. + The #GstVideoFormatInfo for @format. - a #GstVideoFormat + a #GstVideoFormat - Get the default palette of @format. This the palette used in the pack + Get the default palette of @format. This the palette used in the pack function for paletted formats. + - the default palette of @format or %NULL when + the default palette of @format or %NULL when @format does not have a palette. - a #GstVideoFormat + a #GstVideoFormat - size of the palette in bytes + size of the palette in bytes - Converts a #GstVideoFormat value into the corresponding FOURCC. Only + Converts a #GstVideoFormat value into the corresponding FOURCC. Only a few YUV formats have corresponding FOURCC values. If @format has no corresponding FOURCC value, 0 is returned. + - the FOURCC corresponding to @format + the FOURCC corresponding to @format - a #GstVideoFormat video format + a #GstVideoFormat video format - Returns a string containing a descriptive name for + Returns a string containing a descriptive name for the #GstVideoFormat if there is one, or NULL otherwise. + - the name corresponding to @format + the name corresponding to @format - a #GstVideoFormat video format + a #GstVideoFormat video format - The different video flags that a format info can have. + The different video flags that a format info can have. - The video format is YUV, components are numbered + The video format is YUV, components are numbered 0=Y, 1=U, 2=V. - The video format is RGB, components are numbered + The video format is RGB, components are numbered 0=R, 1=G, 2=B. - The video is gray, there is one gray component + The video is gray, there is one gray component with index 0. - The video format has an alpha components with + The video format has an alpha components with the number 3. - The video format has data stored in little + The video format has data stored in little endianness. - The video format has a palette. The palette + The video format has a palette. The palette is stored in the second plane and indexes are stored in the first plane. - The video format has a complex layout that + The video format has a complex layout that can't be described with the usual information in the #GstVideoFormatInfo. - This format can be used in a + This format can be used in a #GstVideoFormatUnpack and #GstVideoFormatPack function. - The format is tiled, there is tiling information + The format is tiled, there is tiling information in the last plane. - Information for a video format. + Information for a video format. + - #GstVideoFormat + #GstVideoFormat - string representation of the format + string representation of the format - use readable description of the format + use readable description of the format - #GstVideoFormatFlags + #GstVideoFormatFlags - The number of bits used to pack data items. This can be less than 8 + The number of bits used to pack data items. This can be less than 8 when multiple pixels are stored in a byte. for values > 8 multiple bytes should be read according to the endianness flag before applying the shift and mask. - the number of components in the video format. + the number of components in the video format. - the number of bits to shift away to get the component data - + the number of bits to shift away to get the component data + - the depth in bits for each component - + the depth in bits for each component + - the pixel stride of each component. This is the amount of + the pixel stride of each component. This is the amount of bytes to the pixel immediately to the right. When bits < 8, the stride is expressed in bits. For 24-bit RGB, this would be 3 bytes, for example, while it would be 4 bytes for RGBx or ARGB. - + - the number of planes for this format. The number of planes can be + the number of planes for this format. The number of planes can be less than the amount of components when multiple components are packed into one plane. - the plane number where a component can be found - + the plane number where a component can be found + - the offset in the plane where the first pixel of the components + the offset in the plane where the first pixel of the components can be found. - + - subsampling factor of the width for the component. Use + subsampling factor of the width for the component. Use GST_VIDEO_SUB_SCALE to scale a width. - + - subsampling factor of the height for the component. Use + subsampling factor of the height for the component. Use GST_VIDEO_SUB_SCALE to scale a height. - + - the format of the unpacked pixels. This format must have the + the format of the unpacked pixels. This format must have the #GST_VIDEO_FORMAT_FLAG_UNPACK flag set. - an unpack function for this format + an unpack function for this format - the amount of lines that will be packed + the amount of lines that will be packed - an pack function for this format + an pack function for this format - The tiling mode + The tiling mode - The width of a tile, in bytes, represented as a shift + The width of a tile, in bytes, represented as a shift - The height of a tile, in bytes, represented as a shift + The height of a tile, in bytes, represented as a shift - + - Packs @width pixels from @src to the given planes and strides in the + Packs @width pixels from @src to the given planes and strides in the format @info. The pixels from source have each component interleaved and will be packed into the planes in @data. @@ -6275,50 +8355,51 @@ Because this function does not have a x coordinate, it is not possible to pack pixels starting from an unaligned position. For tiled images this means that packing should start from a tile coordinate. For subsampled formats this means that a complete pixel needs to be packed. + - a #GstVideoFormatInfo + a #GstVideoFormatInfo - flags to control the packing + flags to control the packing - a source array + a source array - the source array stride + the source array stride - pointers to the destination data planes + pointers to the destination data planes - strides of the destination planes + strides of the destination planes - the chroma siting of the target when subsampled (not used) + the chroma siting of the target when subsampled (not used) - the y position in the image to pack to + the y position in the image to pack to - the amount of pixels to pack. + the amount of pixels to pack. - Unpacks @width pixels from the given planes and strides containing data of + Unpacks @width pixels from the given planes and strides containing data of format @info. The pixels will be unpacked into @dest with each component interleaved as per @info's unpack_format, which will usually be one of #GST_VIDEO_FORMAT_ARGB, #GST_VIDEO_FORMAT_AYUV, #GST_VIDEO_FORMAT_ARGB64 or @@ -6331,124 +8412,128 @@ the same as the pixel stride for plane 0 for the above formats. For subsampled formats, the components will be duplicated in the destination array. Reconstruction of the missing components can be performed in a separate step after unpacking. + - a #GstVideoFormatInfo + a #GstVideoFormatInfo - flags to control the unpacking + flags to control the unpacking - a destination array + a destination array - pointers to the data planes + pointers to the data planes - strides of the planes + strides of the planes - the x position in the image to start from + the x position in the image to start from - the y position in the image to start from + the y position in the image to start from - the amount of pixels to unpack. + the amount of pixels to unpack. - A video frame obtained from gst_video_frame_map() + A video frame obtained from gst_video_frame_map() + - the #GstVideoInfo + the #GstVideoInfo - #GstVideoFrameFlags for the frame + #GstVideoFrameFlags for the frame - the mapped buffer + the mapped buffer - pointer to metadata if any + pointer to metadata if any - id of the mapped frame. the id can for example be used to + id of the mapped frame. the id can for example be used to indentify the frame in case of multiview video. - pointers to the plane data - + pointers to the plane data + - mappings of the planes - + mappings of the planes + - + - Copy the contents from @src to @dest. + Copy the contents from @src to @dest. + - TRUE if the contents could be copied. + TRUE if the contents could be copied. - a #GstVideoFrame + a #GstVideoFrame - a #GstVideoFrame + a #GstVideoFrame - Copy the plane with index @plane from @src to @dest. + Copy the plane with index @plane from @src to @dest. + - TRUE if the contents could be copied. + TRUE if the contents could be copied. - a #GstVideoFrame + a #GstVideoFrame - a #GstVideoFrame + a #GstVideoFrame - a plane + a plane - Use @info and @buffer to fill in the values of @frame. @frame is usually + Use @info and @buffer to fill in the values of @frame. @frame is usually allocated on the stack, and you will pass the address to the #GstVideoFrame structure allocated on the stack; gst_video_frame_map() will then fill in the structures with the various video-specific information you need to access @@ -6491,31 +8576,32 @@ each buffer). This function will just fill the #GstVideoFrame structure with the right values and if you use the accessor macros everything will just work and you can access the data easily. It also maps the underlying memory chunks for you. + - %TRUE on success. + %TRUE on success. - pointer to #GstVideoFrame + pointer to #GstVideoFrame - a #GstVideoInfo + a #GstVideoInfo - the buffer to map + the buffer to map - #GstMapFlags + #GstMapFlags - Use @info and @buffer to fill in the values of @frame with the video frame + Use @info and @buffer to fill in the values of @frame with the video frame information of frame @id. When @id is -1, the default frame is mapped. When @id != -1, this function @@ -6523,136 +8609,141 @@ will return %FALSE when there is no GstVideoMeta with that id. All video planes of @buffer will be mapped and the pointers will be set in @frame->data. + - %TRUE on success. + %TRUE on success. - pointer to #GstVideoFrame + pointer to #GstVideoFrame - a #GstVideoInfo + a #GstVideoInfo - the buffer to map + the buffer to map - the frame id to map + the frame id to map - #GstMapFlags + #GstMapFlags - Unmap the memory previously mapped with gst_video_frame_map. + Unmap the memory previously mapped with gst_video_frame_map. + - a #GstVideoFrame + a #GstVideoFrame - Extra video frame flags + Extra video frame flags - no flags + no flags - The video frame is interlaced. In mixed + The video frame is interlaced. In mixed interlace-mode, this flag specifies if the frame is interlaced or progressive. - The video frame has the top field first + The video frame has the top field first - The video frame has the repeat flag + The video frame has the repeat flag - The video frame has one field + The video frame has one field - The video contains one or + The video contains one or more non-mono views - The video frame is the first + The video frame is the first in a set of corresponding views provided as sequential frames. - The video frame has the top field only. This + The video frame has the top field only. This is the same as GST_VIDEO_FRAME_FLAG_TFF | GST_VIDEO_FRAME_FLAG_ONEFIELD (Since: 1.16). - The video frame has the bottom field + The video frame has the bottom field only. This is the same as GST_VIDEO_FRAME_FLAG_ONEFIELD (GST_VIDEO_FRAME_FLAG_TFF flag unset) (Since: 1.16). - Additional mapping flags for gst_video_frame_map(). + Additional mapping flags for gst_video_frame_map(). - Don't take another reference of the buffer and store it in + Don't take another reference of the buffer and store it in the GstVideoFrame. This makes sure that the buffer stays writable while the frame is mapped, but requires that the buffer reference stays valid until the frame is unmapped again. - Offset to define more flags + Offset to define more flags - The orientation of the GL texture. + The orientation of the GL texture. + - Top line first in memory, left row first + Top line first in memory, left row first - Bottom line first in memory, left row first + Bottom line first in memory, left row first - Top line first in memory, right row first + Top line first in memory, right row first - Bottom line first in memory, right row first + Bottom line first in memory, right row first - The GL texture type. + The GL texture type. + - Luminance texture, GL_LUMINANCE + Luminance texture, GL_LUMINANCE - Luminance-alpha texture, GL_LUMINANCE_ALPHA + Luminance-alpha texture, GL_LUMINANCE_ALPHA - RGB 565 texture, GL_RGB + RGB 565 texture, GL_RGB - RGB texture, GL_RGB + RGB texture, GL_RGB - RGBA texture, GL_RGBA + RGBA texture, GL_RGBA - R texture, GL_RED_EXT + R texture, GL_RED_EXT - RG texture, GL_RG_EXT + RG texture, GL_RG_EXT + @@ -6666,25 +8757,26 @@ All video planes of @buffer will be mapped and the pointers will be set in - Extra buffer metadata for uploading a buffer to an OpenGL texture + Extra buffer metadata for uploading a buffer to an OpenGL texture ID. The caller of gst_video_gl_texture_upload_meta_upload() must have OpenGL set up and call this from a thread where it is valid to upload something to an OpenGL texture. + - parent #GstMeta + parent #GstMeta - Orientation of the textures + Orientation of the textures - Number of textures that are generated + Number of textures that are generated - Type of each texture - + Type of each texture + @@ -6704,23 +8796,25 @@ to upload something to an OpenGL texture. - Uploads the buffer which owns the meta to a specific texture ID. + Uploads the buffer which owns the meta to a specific texture ID. + - %TRUE if uploading succeeded, %FALSE otherwise. + %TRUE if uploading succeeded, %FALSE otherwise. - a #GstVideoGLTextureUploadMeta + a #GstVideoGLTextureUploadMeta - the texture IDs to upload to + the texture IDs to upload to + @@ -6728,86 +8822,89 @@ to upload something to an OpenGL texture. - disable gamma handling + disable gamma handling - convert between input and output gamma + convert between input and output gamma Different gamma conversion modes - Information describing image properties. This information can be filled + Information describing image properties. This information can be filled in from GstCaps with gst_video_info_from_caps(). The information is also used to store the specific video info when mapping a video frame with gst_video_frame_map(). Use the provided macros to access the info in this structure. + - the format info of the video + the format info of the video - the interlace mode + the interlace mode - additional video flags + additional video flags - the width of the video + the width of the video - the height of the video + the height of the video - the default size of one frame + the default size of one frame - the number of views for multiview video + the number of views for multiview video - a #GstVideoChromaSite. + a #GstVideoChromaSite. - the colorimetry info + the colorimetry info - the pixel-aspect-ratio numerator + the pixel-aspect-ratio numerator - the pixel-aspect-ratio demnominator + the pixel-aspect-ratio demnominator - the framerate numerator + the framerate numerator - the framerate demnominator + the framerate demnominator - offsets of the planes - + offsets of the planes + - strides of the planes - + strides of the planes + + + @@ -6819,236 +8916,247 @@ Use the provided macros to access the info in this structure. - + - Allocate a new #GstVideoInfo that is also initialized with + Allocate a new #GstVideoInfo that is also initialized with gst_video_info_init(). + - a new #GstVideoInfo. free with gst_video_info_free(). + a new #GstVideoInfo. free with gst_video_info_free(). - Adjust the offset and stride fields in @info so that the padding and + Adjust the offset and stride fields in @info so that the padding and stride alignment in @align is respected. Extra padding will be added to the right side when stride alignment padding is required and @align will be updated with the new padding values. + - %FALSE if alignment could not be applied, e.g. because the + %FALSE if alignment could not be applied, e.g. because the size of a frame can't be represented as a 32 bit integer (Since: 1.12) - a #GstVideoInfo + a #GstVideoInfo - alignment parameters + alignment parameters - Converts among various #GstFormat types. This function handles + Converts among various #GstFormat types. This function handles GST_FORMAT_BYTES, GST_FORMAT_TIME, and GST_FORMAT_DEFAULT. For raw video, GST_FORMAT_DEFAULT corresponds to video frames. This function can be used to handle pad queries of the type GST_QUERY_CONVERT. + - TRUE if the conversion was successful. + TRUE if the conversion was successful. - a #GstVideoInfo + a #GstVideoInfo - #GstFormat of the @src_value + #GstFormat of the @src_value - value to convert + value to convert - #GstFormat of the @dest_value + #GstFormat of the @dest_value - pointer to destination value + pointer to destination value - Copy a GstVideoInfo structure. + Copy a GstVideoInfo structure. + - a new #GstVideoInfo. free with gst_video_info_free. + a new #GstVideoInfo. free with gst_video_info_free. - a #GstVideoInfo + a #GstVideoInfo - Free a GstVideoInfo structure previously allocated with gst_video_info_new() + Free a GstVideoInfo structure previously allocated with gst_video_info_new() or gst_video_info_copy(). + - a #GstVideoInfo + a #GstVideoInfo - Parse @caps and update @info. + Parse @caps and update @info. + - TRUE if @caps could be parsed + TRUE if @caps could be parsed - a #GstVideoInfo + a #GstVideoInfo - a #GstCaps + a #GstCaps - Initialize @info with default values. + Initialize @info with default values. + - a #GstVideoInfo + a #GstVideoInfo - Compares two #GstVideoInfo and returns whether they are equal or not + Compares two #GstVideoInfo and returns whether they are equal or not + - %TRUE if @info and @other are equal, else %FALSE. + %TRUE if @info and @other are equal, else %FALSE. - a #GstVideoInfo + a #GstVideoInfo - a #GstVideoInfo + a #GstVideoInfo - Set the default info for a video frame of @format and @width and @height. + Set the default info for a video frame of @format and @width and @height. Note: This initializes @info first, no values are preserved. This function does not set the offsets correctly for interlaced vertically subsampled formats. + - %FALSE if the returned video info is invalid, e.g. because the + %FALSE if the returned video info is invalid, e.g. because the size of a frame can't be represented as a 32 bit integer (Since: 1.12) - a #GstVideoInfo + a #GstVideoInfo - the format + the format - a width + a width - a height + a height - Same as #gst_video_info_set_format but also allowing to set the interlaced + Same as #gst_video_info_set_format but also allowing to set the interlaced mode. + - %FALSE if the returned video info is invalid, e.g. because the + %FALSE if the returned video info is invalid, e.g. because the size of a frame can't be represented as a 32 bit integer. - a #GstVideoInfo + a #GstVideoInfo - the format + the format - a #GstVideoInterlaceMode + a #GstVideoInterlaceMode - a width + a width - a height + a height - Convert the values of @info into a #GstCaps. + Convert the values of @info into a #GstCaps. + - a new #GstCaps containing the info of @info. + a new #GstCaps containing the info of @info. - a #GstVideoInfo + a #GstVideoInfo - The possible values of the #GstVideoInterlaceMode describing the interlace + The possible values of the #GstVideoInterlaceMode describing the interlace mode of the stream. - all frames are progressive + all frames are progressive - 2 fields are interleaved in one video + 2 fields are interleaved in one video frame. Extra buffer flags describe the field order. - frames contains both interlaced and + frames contains both interlaced and progressive video, the buffer flags describe the frame and fields. - 2 fields are stored in one buffer, use the + 2 fields are stored in one buffer, use the frame ID to get access to the required field. For multiview (the 'views' property > 1) the fields of view N can be found at frame ID (N * 2) and (N * 2) + 1. @@ -7057,108 +9165,112 @@ mode of the stream. to describe the fields. - 1 field is stored in one buffer, + 1 field is stored in one buffer, @GST_VIDEO_BUFFER_FLAG_TF or @GST_VIDEO_BUFFER_FLAG_BF indicates if the buffer is carrying the top or bottom field, respectively. The top and bottom buffers are expected to alternate in the pipeline, with this mode (Since: 1.16). - Convert @mode to a #GstVideoInterlaceMode + Convert @mode to a #GstVideoInterlaceMode + - the #GstVideoInterlaceMode of @mode or + the #GstVideoInterlaceMode of @mode or #GST_VIDEO_INTERLACE_MODE_PROGRESSIVE when @mode is not a valid string representation for a #GstVideoInterlaceMode. - a mode + a mode - Convert @mode to its string representation. + Convert @mode to its string representation. + - @mode as a string or NULL if @mode in invalid. + @mode as a string or NULL if @mode in invalid. - a #GstVideoInterlaceMode + a #GstVideoInterlaceMode - Different color matrix conversion modes + Different color matrix conversion modes - do conversion between color matrices + do conversion between color matrices - use the input color matrix to convert + use the input color matrix to convert to and from R'G'B - use the output color matrix to convert + use the output color matrix to convert to and from R'G'B - disable color matrix conversion. + disable color matrix conversion. - Extra buffer metadata describing image properties + Extra buffer metadata describing image properties + - parent #GstMeta + parent #GstMeta - the buffer this metadata belongs to + the buffer this metadata belongs to - additional video flags + additional video flags - the video format + the video format - identifier of the frame + identifier of the frame - the video width + the video width - the video height + the video height - the number of planes in the image + the number of planes in the image - array of offsets for the planes. This field might not always be + array of offsets for the planes. This field might not always be valid, it is used by the default implementation of @map. - + - array of strides for the planes. This field might not always be + array of strides for the planes. This field might not always be valid, it is used by the default implementation of @map. - + + @@ -7186,6 +9298,7 @@ mode of the stream. + @@ -7203,114 +9316,119 @@ mode of the stream. - Map the video plane with index @plane in @meta and return a pointer to the + Map the video plane with index @plane in @meta and return a pointer to the first byte of the plane and the stride of the plane. + - TRUE if the map operation was successful. + TRUE if the map operation was successful. - a #GstVideoMeta + a #GstVideoMeta - a plane + a plane - a #GstMapInfo + a #GstMapInfo - the data of @plane + the data of @plane - the stride of @plane + the stride of @plane - @GstMapFlags + @GstMapFlags - Unmap a previously mapped plane with gst_video_meta_map(). + Unmap a previously mapped plane with gst_video_meta_map(). + - TRUE if the memory was successfully unmapped. + TRUE if the memory was successfully unmapped. - a #GstVideoMeta + a #GstVideoMeta - a plane + a plane - a #GstMapInfo + a #GstMapInfo + - Extra data passed to a video transform #GstMetaTransformFunction such as: + Extra data passed to a video transform #GstMetaTransformFunction such as: "gst-video-scale". + - the input #GstVideoInfo + the input #GstVideoInfo - the output #GstVideoInfo + the output #GstVideoInfo - Get the #GQuark for the "gst-video-scale" metadata transform operation. + Get the #GQuark for the "gst-video-scale" metadata transform operation. + - a #GQuark + a #GQuark - GstVideoMultiviewFlags are used to indicate extra properties of a + GstVideoMultiviewFlags are used to indicate extra properties of a stereo/multiview stream beyond the frame layout and buffer mapping that is conveyed in the #GstVideoMultiviewMode. - No flags + No flags - For stereo streams, the + For stereo streams, the normal arrangement of left and right views is reversed. - The left view is vertically + The left view is vertically mirrored. - The left view is horizontally + The left view is horizontally mirrored. - The right view is + The right view is vertically mirrored. - The right view is + The right view is horizontally mirrored. - For frame-packed + For frame-packed multiview modes, indicates that the individual views have been encoded with half the true width or height and should be scaled back up for display. This flag @@ -7321,7 +9439,7 @@ that is conveyed in the #GstVideoMultiviewMode. encodings, pixel height will be doubled. - The video stream contains both + The video stream contains both mono and multiview portions, signalled on each buffer by the absence or presence of the @GST_VIDEO_BUFFER_FLAG_MULTIPLE_VIEW buffer flag. @@ -7330,7 +9448,7 @@ that is conveyed in the #GstVideoMultiviewMode. - #GstVideoMultiviewFramePacking represents the subset of #GstVideoMultiviewMode + #GstVideoMultiviewFramePacking represents the subset of #GstVideoMultiviewMode values that can be applied to any video frame without needing extra metadata. It can be used by elements that provide a property to override the multiview interpretation of a video stream when the video doesn't contain @@ -7340,112 +9458,113 @@ This enum is used (for example) on playbin, to re-interpret a played video stream as a stereoscopic video. The individual enum values are equivalent to and have the same value as the matching #GstVideoMultiviewMode. - A special value indicating + A special value indicating no frame packing info. - All frames are monoscopic. + All frames are monoscopic. - All frames represent a left-eye view. + All frames represent a left-eye view. - All frames represent a right-eye view. + All frames represent a right-eye view. - Left and right eye views are + Left and right eye views are provided in the left and right half of the frame respectively. - Left and right eye + Left and right eye views are provided in the left and right half of the frame, but have been sampled using quincunx method, with half-pixel offset between the 2 views. - Alternating vertical + Alternating vertical columns of pixels represent the left and right eye view respectively. - Alternating horizontal + Alternating horizontal rows of pixels represent the left and right eye view respectively. - The top half of the frame + The top half of the frame contains the left eye, and the bottom half the right eye. - Pixels are arranged with + Pixels are arranged with alternating pixels representing left and right eye views in a checkerboard fashion. - All possible stereoscopic 3D and multiview representations. + All possible stereoscopic 3D and multiview representations. In conjunction with #GstVideoMultiviewFlags, describes how multiview content is being transported in the stream. - A special value indicating + A special value indicating no multiview information. Used in GstVideoInfo and other places to indicate that no specific multiview handling has been requested or provided. This value is never carried on caps. - All frames are monoscopic. + All frames are monoscopic. - All frames represent a left-eye view. + All frames represent a left-eye view. - All frames represent a right-eye view. + All frames represent a right-eye view. - Left and right eye views are + Left and right eye views are provided in the left and right half of the frame respectively. - Left and right eye + Left and right eye views are provided in the left and right half of the frame, but have been sampled using quincunx method, with half-pixel offset between the 2 views. - Alternating vertical + Alternating vertical columns of pixels represent the left and right eye view respectively. - Alternating horizontal + Alternating horizontal rows of pixels represent the left and right eye view respectively. - The top half of the frame + The top half of the frame contains the left eye, and the bottom half the right eye. - Pixels are arranged with + Pixels are arranged with alternating pixels representing left and right eye views in a checkerboard fashion. - Left and right eye views + Left and right eye views are provided in separate frames alternately. - Multiple + Multiple independent views are provided in separate frames in sequence. This method only applies to raw video buffers at the moment. Specific view identification is via the #GstVideoMultiviewMeta and #GstVideoMeta(s) on raw video buffers. - Multiple views are + Multiple views are provided as separate #GstMemory framebuffers attached to each #GstBuffer, described by the #GstVideoMultiviewMeta and #GstVideoMeta(s) + - The #GstVideoMultiviewMode value + The #GstVideoMultiviewMode value Given a string from a caps multiview-mode field, output the corresponding #GstVideoMultiviewMode @@ -7454,14 +9573,15 @@ or #GST_VIDEO_MULTIVIEW_MODE_NONE - multiview-mode field string from caps + multiview-mode field string from caps + - The caps string representation of the mode, or NULL if invalid. + The caps string representation of the mode, or NULL if invalid. Given a #GstVideoMultiviewMode returns the multiview-mode caps string for insertion into a caps structure @@ -7469,307 +9589,326 @@ for insertion into a caps structure - A #GstVideoMultiviewMode value + A #GstVideoMultiviewMode value - The interface allows unified access to control flipping and autocenter + The interface allows unified access to control flipping and autocenter operation of video-sources or operators. + - Get the horizontal centering offset from the given object. + Get the horizontal centering offset from the given object. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result - Get the horizontal flipping state (%TRUE for flipped) from the given object. + Get the horizontal flipping state (%TRUE for flipped) from the given object. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result - Get the vertical centering offset from the given object. + Get the vertical centering offset from the given object. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result - Get the vertical flipping state (%TRUE for flipped) from the given object. + Get the vertical flipping state (%TRUE for flipped) from the given object. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result - Set the horizontal centering offset for the given object. + Set the horizontal centering offset for the given object. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - centering offset + centering offset - Set the horizontal flipping state (%TRUE for flipped) for the given object. + Set the horizontal flipping state (%TRUE for flipped) for the given object. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - use flipping + use flipping - Set the vertical centering offset for the given object. + Set the vertical centering offset for the given object. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - centering offset + centering offset - Set the vertical flipping state (%TRUE for flipped) for the given object. + Set the vertical flipping state (%TRUE for flipped) for the given object. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - use flipping + use flipping - Get the horizontal centering offset from the given object. + Get the horizontal centering offset from the given object. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result - Get the horizontal flipping state (%TRUE for flipped) from the given object. + Get the horizontal flipping state (%TRUE for flipped) from the given object. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result - Get the vertical centering offset from the given object. + Get the vertical centering offset from the given object. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result - Get the vertical flipping state (%TRUE for flipped) from the given object. + Get the vertical flipping state (%TRUE for flipped) from the given object. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result - Set the horizontal centering offset for the given object. + Set the horizontal centering offset for the given object. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - centering offset + centering offset - Set the horizontal flipping state (%TRUE for flipped) for the given object. + Set the horizontal flipping state (%TRUE for flipped) for the given object. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - use flipping + use flipping - Set the vertical centering offset for the given object. + Set the vertical centering offset for the given object. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - centering offset + centering offset - Set the vertical flipping state (%TRUE for flipped) for the given object. + Set the vertical flipping state (%TRUE for flipped) for the given object. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - use flipping + use flipping - #GstVideoOrientationInterface interface. + #GstVideoOrientationInterface interface. + - parent interface type. + parent interface type. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result @@ -7777,17 +9916,18 @@ operation of video-sources or operators. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result @@ -7795,17 +9935,18 @@ operation of video-sources or operators. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result @@ -7813,17 +9954,18 @@ operation of video-sources or operators. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - return location for the result + return location for the result @@ -7831,17 +9973,18 @@ operation of video-sources or operators. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - use flipping + use flipping @@ -7849,17 +9992,18 @@ operation of video-sources or operators. + - %TRUE in case the element supports flipping + %TRUE in case the element supports flipping - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - use flipping + use flipping @@ -7867,17 +10011,18 @@ operation of video-sources or operators. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - centering offset + centering offset @@ -7885,17 +10030,18 @@ operation of video-sources or operators. + - %TRUE in case the element supports centering + %TRUE in case the element supports centering - #GstVideoOrientation interface of a #GstElement + #GstVideoOrientation interface of a #GstElement - centering offset + centering offset @@ -7903,40 +10049,40 @@ operation of video-sources or operators. - The different video orientation methods. + The different video orientation methods. - Identity (no rotation) + Identity (no rotation) - Rotate clockwise 90 degrees + Rotate clockwise 90 degrees - Rotate 180 degrees + Rotate 180 degrees - Rotate counter-clockwise 90 degrees + Rotate counter-clockwise 90 degrees - Flip horizontally + Flip horizontally - Flip vertically + Flip vertically - Flip across upper left/lower right diagonal + Flip across upper left/lower right diagonal - Flip across upper right/lower left diagonal + Flip across upper right/lower left diagonal - Select flip method based on image-orientation tag + Select flip method based on image-orientation tag - Current status depends on plugin internal setup + Current status depends on plugin internal setup - The #GstVideoOverlay interface is used for 2 main purposes : + The #GstVideoOverlay interface is used for 2 main purposes : * To get a grab on the Window where the video sink element is going to render. This is achieved by either being informed about the Window identifier that @@ -8194,87 +10340,93 @@ int main(int argc, char *argv[]) return ret; } ]| + - This helper shall be used by classes implementing the #GstVideoOverlay + This helper shall be used by classes implementing the #GstVideoOverlay interface that want the render rectangle to be controllable using properties. This helper will install "render-rectangle" property into the class. + - The class on which the properties will be installed + The class on which the properties will be installed - The first free property ID to use + The first free property ID to use - This helper shall be used by classes implementing the #GstVideoOverlay + This helper shall be used by classes implementing the #GstVideoOverlay interface that want the render rectangle to be controllable using properties. This helper will parse and set the render rectangle calling gst_video_overlay_set_render_rectangle(). + - %TRUE if the @property_id matches the GstVideoOverlay property + %TRUE if the @property_id matches the GstVideoOverlay property - The instance on which the property is set + The instance on which the property is set - The highest property ID. + The highest property ID. - The property ID + The property ID - The #GValue to be set + The #GValue to be set - Tell an overlay that it has been exposed. This will redraw the current frame + Tell an overlay that it has been exposed. This will redraw the current frame in the drawable even if the pipeline is PAUSED. + - a #GstVideoOverlay to expose. + a #GstVideoOverlay to expose. - Tell an overlay that it should handle events from the window system. These + Tell an overlay that it should handle events from the window system. These events are forwarded upstream as navigation events. In some window system, events are not propagated in the window hierarchy if a client is listening for them. This method allows you to disable events handling completely from the #GstVideoOverlay. + - a #GstVideoOverlay to expose. + a #GstVideoOverlay to expose. - a #gboolean indicating if events should be handled or not. + a #gboolean indicating if events should be handled or not. + @@ -8297,94 +10449,99 @@ from the #GstVideoOverlay. - This will call the video overlay's set_window_handle method. You + This will call the video overlay's set_window_handle method. You should use this method to tell to an overlay to display video output to a 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. + - a #GstVideoOverlay to set the window on. + a #GstVideoOverlay to set the window on. - a handle referencing the window. + a handle referencing the window. - Tell an overlay that it has been exposed. This will redraw the current frame + Tell an overlay that it has been exposed. This will redraw the current frame in the drawable even if the pipeline is PAUSED. + - a #GstVideoOverlay to expose. + a #GstVideoOverlay to expose. - This will post a "have-window-handle" element message on the bus. + This will post a "have-window-handle" element message on the bus. This function should only be used by video overlay plugin developers. + - a #GstVideoOverlay which got a window + a #GstVideoOverlay which got a window - a platform-specific handle referencing the window + a platform-specific handle referencing the window - Tell an overlay that it should handle events from the window system. These + Tell an overlay that it should handle events from the window system. These events are forwarded upstream as navigation events. In some window system, events are not propagated in the window hierarchy if a client is listening for them. This method allows you to disable events handling completely from the #GstVideoOverlay. + - a #GstVideoOverlay to expose. + a #GstVideoOverlay to expose. - a #gboolean indicating if events should be handled or not. + a #gboolean indicating if events should be handled or not. - This will post a "prepare-window-handle" element message on the bus + This will post a "prepare-window-handle" element message on the bus to give applications an opportunity to call gst_video_overlay_set_window_handle() before a plugin creates its own window. This function should only be used by video overlay plugin developers. + - a #GstVideoOverlay which does not yet have an Window handle set + a #GstVideoOverlay which does not yet have an Window handle set - Configure a subregion as a video target within the window set by + Configure a subregion as a video target within the window set by gst_video_overlay_set_window_handle(). If this is not used or not supported the video will fill the area of the window set as the overlay to 100%. By specifying the rectangle, the video can be overlayed to a specific region @@ -8394,55 +10551,57 @@ the @width and @height parameters. This method is needed for non fullscreen video overlay in UI toolkits that do not support subwindows. + - %FALSE if not supported by the sink. + %FALSE if not supported by the sink. - a #GstVideoOverlay + a #GstVideoOverlay - the horizontal offset of the render area inside the window + the horizontal offset of the render area inside the window - the vertical offset of the render area inside the window + the vertical offset of the render area inside the window - the width of the render area inside the window + the width of the render area inside the window - the height of the render area inside the window + the height of the render area inside the window - This will call the video overlay's set_window_handle method. You + This will call the video overlay's set_window_handle method. You should use this method to tell to an overlay to display video output to a 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. + - a #GstVideoOverlay to set the window on. + a #GstVideoOverlay to set the window on. - a handle referencing the window. + a handle referencing the window. - Functions to create and handle overlay compositions on video buffers. + Functions to create and handle overlay compositions on video buffers. An overlay composition describes one or more overlay rectangles to be blended on top of a video buffer. @@ -8464,84 +10623,90 @@ have been put into a #GstVideoOverlayComposition object anyway) - for raw video the overlay can just use the blending function to blend the data on top of the video, and for surface buffers it can just attach them to the buffer and let the sink render the overlays. + - Creates a new video overlay composition object to hold one or more + Creates a new video overlay composition object to hold one or more overlay rectangles. + - a new #GstVideoOverlayComposition. Unref with + a new #GstVideoOverlayComposition. Unref with gst_video_overlay_composition_unref() when no longer needed. - a #GstVideoOverlayRectangle to add to the + a #GstVideoOverlayRectangle to add to the composition - Adds an overlay rectangle to an existing overlay composition object. This + Adds an overlay rectangle to an existing overlay composition object. This must be done right after creating the overlay composition. + - a #GstVideoOverlayComposition + a #GstVideoOverlayComposition - a #GstVideoOverlayRectangle to add to the + a #GstVideoOverlayRectangle to add to the composition - Blends the overlay rectangles in @comp on top of the raw video data + Blends the overlay rectangles in @comp on top of the raw video data contained in @video_buf. The data in @video_buf must be writable and mapped appropriately. Since @video_buf data is read and will be modified, it ought be mapped with flag GST_MAP_READWRITE. + - a #GstVideoOverlayComposition + a #GstVideoOverlayComposition - a #GstVideoFrame containing raw video data in a + a #GstVideoFrame containing raw video data in a supported format. It should be mapped using GST_MAP_READWRITE - Makes a copy of @comp and all contained rectangles, so that it is possible + Makes a copy of @comp and all contained rectangles, so that it is possible to modify the composition and contained rectangles (e.g. add additional rectangles or change the render co-ordinates or render dimension). The actual overlay pixel data buffers contained in the rectangles are not copied. + - a new #GstVideoOverlayComposition equivalent + a new #GstVideoOverlayComposition equivalent to @comp. - a #GstVideoOverlayComposition to copy + a #GstVideoOverlayComposition to copy - Returns the @n-th #GstVideoOverlayRectangle contained in @comp. + Returns the @n-th #GstVideoOverlayRectangle contained in @comp. + - the @n-th rectangle, or NULL if @n is out of + the @n-th rectangle, or NULL if @n is out of bounds. Will not return a new reference, the caller will need to obtain her own reference using gst_video_overlay_rectangle_ref() if needed. @@ -8549,105 +10714,112 @@ copied. - a #GstVideoOverlayComposition + a #GstVideoOverlayComposition - number of the rectangle to get + number of the rectangle to get - Returns the sequence number of this composition. Sequence numbers are + Returns the sequence number of this composition. Sequence numbers are monotonically increasing and unique for overlay compositions and rectangles (meaning there will never be a rectangle with the same sequence number as a composition). + - the sequence number of @comp + the sequence number of @comp - a #GstVideoOverlayComposition + a #GstVideoOverlayComposition - Takes ownership of @comp and returns a version of @comp that is writable + Takes ownership of @comp and returns a version of @comp that is writable (i.e. can be modified). Will either return @comp right away, or create a new writable copy of @comp and unref @comp itself. All the contained rectangles will also be copied, but the actual overlay pixel data buffers contained in the rectangles are not copied. + - a writable #GstVideoOverlayComposition + a writable #GstVideoOverlayComposition equivalent to @comp. - a #GstVideoOverlayComposition to copy + a #GstVideoOverlayComposition to copy - Returns the number of #GstVideoOverlayRectangle<!-- -->s contained in @comp. + Returns the number of #GstVideoOverlayRectangle<!-- -->s contained in @comp. + - the number of rectangles + the number of rectangles - a #GstVideoOverlayComposition + a #GstVideoOverlayComposition - Extra buffer metadata describing image overlay data. + Extra buffer metadata describing image overlay data. + - parent #GstMeta + parent #GstMeta - the attached #GstVideoOverlayComposition + the attached #GstVideoOverlayComposition + - Overlay format flags. + Overlay format flags. - no flags + no flags - RGB are premultiplied by A/255. + RGB are premultiplied by A/255. - a global-alpha value != 1 is set. + a global-alpha value != 1 is set. - #GstVideoOverlay interface + #GstVideoOverlay interface + - parent interface type. + parent interface type. + - a #GstVideoOverlay to expose. + a #GstVideoOverlay to expose. @@ -8655,16 +10827,17 @@ contained in the rectangles are not copied. + - a #GstVideoOverlay to expose. + a #GstVideoOverlay to expose. - a #gboolean indicating if events should be handled or not. + a #gboolean indicating if events should be handled or not. @@ -8672,6 +10845,7 @@ contained in the rectangles are not copied. + @@ -8696,16 +10870,17 @@ contained in the rectangles are not copied. + - a #GstVideoOverlay to set the window on. + a #GstVideoOverlay to set the window on. - a handle referencing the window. + a handle referencing the window. @@ -8713,10 +10888,11 @@ contained in the rectangles are not copied. - An opaque video overlay rectangle object. A rectangle contains a single + An opaque video overlay rectangle object. A rectangle contains a single overlay rectangle which can be added to a composition. + - Creates a new video overlay rectangle with ARGB or AYUV pixel data. + Creates a new video overlay rectangle with ARGB or AYUV pixel data. The layout in case of ARGB of the components in memory is B-G-R-A on little-endian platforms (corresponding to #GST_VIDEO_FORMAT_BGRA) and A-R-G-B on big-endian @@ -8727,90 +10903,95 @@ component value. Unless specified in the flags, the RGB values are non-premultiplied. This is the format that is used by most hardware, and also many rendering libraries such as Cairo, for example. The pixel data buffer must have #GstVideoMeta set. + - a new #GstVideoOverlayRectangle. Unref with + a new #GstVideoOverlayRectangle. Unref with gst_video_overlay_rectangle_unref() when no longer needed. - a #GstBuffer pointing to the pixel memory + a #GstBuffer pointing to the pixel memory - the X co-ordinate on the video where the top-left corner of this + the X co-ordinate on the video where the top-left corner of this overlay rectangle should be rendered to - the Y co-ordinate on the video where the top-left corner of this + the Y co-ordinate on the video where the top-left corner of this overlay rectangle should be rendered to - the render width of this rectangle on the video + the render width of this rectangle on the video - the render height of this rectangle on the video + the render height of this rectangle on the video - flags + flags - Makes a copy of @rectangle, so that it is possible to modify it + Makes a copy of @rectangle, so that it is possible to modify it (e.g. to change the render co-ordinates or render dimension). The actual overlay pixel data buffers contained in the rectangle are not copied. + - a new #GstVideoOverlayRectangle equivalent + a new #GstVideoOverlayRectangle equivalent to @rectangle. - a #GstVideoOverlayRectangle to copy + a #GstVideoOverlayRectangle to copy - Retrieves the flags associated with a #GstVideoOverlayRectangle. + Retrieves the flags associated with a #GstVideoOverlayRectangle. This is useful if the caller can handle both premultiplied alpha and non premultiplied alpha, for example. By knowing whether the rectangle uses premultiplied or not, it can request the pixel data in the format it is stored in, to avoid unnecessary conversion. + - the #GstVideoOverlayFormatFlags associated with the rectangle. + the #GstVideoOverlayFormatFlags associated with the rectangle. - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - Retrieves the global-alpha value associated with a #GstVideoOverlayRectangle. + Retrieves the global-alpha value associated with a #GstVideoOverlayRectangle. + - the global-alpha value associated with the rectangle. + the global-alpha value associated with the rectangle. - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle + - a #GstBuffer holding the ARGB pixel data with + a #GstBuffer holding the ARGB pixel data with width and height of the render dimensions as per gst_video_overlay_rectangle_get_render_rectangle(). This function does not return a reference, the caller should obtain a reference of her own @@ -8819,11 +11000,11 @@ it is stored in, to avoid unnecessary conversion. - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - flags + flags If a global_alpha value != 1 is set for the rectangle, the caller should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag if he wants to apply global-alpha himself. If the flag is not set @@ -8833,8 +11014,9 @@ it is stored in, to avoid unnecessary conversion. + - a #GstBuffer holding the AYUV pixel data with + a #GstBuffer holding the AYUV pixel data with width and height of the render dimensions as per gst_video_overlay_rectangle_get_render_rectangle(). This function does not return a reference, the caller should obtain a reference of her own @@ -8843,11 +11025,11 @@ it is stored in, to avoid unnecessary conversion. - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - flags + flags If a global_alpha value != 1 is set for the rectangle, the caller should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag if he wants to apply global-alpha himself. If the flag is not set @@ -8857,8 +11039,9 @@ it is stored in, to avoid unnecessary conversion. + - a #GstBuffer holding the pixel data with + a #GstBuffer holding the pixel data with format as originally provided and specified in video meta with width and height of the render dimensions as per gst_video_overlay_rectangle_get_render_rectangle(). This function does @@ -8868,11 +11051,11 @@ it is stored in, to avoid unnecessary conversion. - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - flags + flags If a global_alpha value != 1 is set for the rectangle, the caller should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag if he wants to apply global-alpha himself. If the flag is not set @@ -8882,23 +11065,24 @@ it is stored in, to avoid unnecessary conversion. - Retrieves the pixel data as it is. This is useful if the caller can + Retrieves the pixel data as it is. This is useful if the caller can do the scaling itself when handling the overlaying. The rectangle will need to be scaled to the render dimensions, which can be retrieved using gst_video_overlay_rectangle_get_render_rectangle(). + - a #GstBuffer holding the ARGB pixel data with + a #GstBuffer holding the ARGB pixel data with #GstVideoMeta set. This function does not return a reference, the caller should obtain a reference of her own with gst_buffer_ref() if needed. - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - flags. + flags. If a global_alpha value != 1 is set for the rectangle, the caller should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag if he wants to apply global-alpha himself. If the flag is not set @@ -8908,23 +11092,24 @@ gst_video_overlay_rectangle_get_render_rectangle(). - Retrieves the pixel data as it is. This is useful if the caller can + Retrieves the pixel data as it is. This is useful if the caller can do the scaling itself when handling the overlaying. The rectangle will need to be scaled to the render dimensions, which can be retrieved using gst_video_overlay_rectangle_get_render_rectangle(). + - a #GstBuffer holding the AYUV pixel data with + a #GstBuffer holding the AYUV pixel data with #GstVideoMeta set. This function does not return a reference, the caller should obtain a reference of her own with gst_buffer_ref() if needed. - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - flags. + flags. If a global_alpha value != 1 is set for the rectangle, the caller should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag if he wants to apply global-alpha himself. If the flag is not set @@ -8934,23 +11119,24 @@ gst_video_overlay_rectangle_get_render_rectangle(). - Retrieves the pixel data as it is. This is useful if the caller can + Retrieves the pixel data as it is. This is useful if the caller can do the scaling itself when handling the overlaying. The rectangle will need to be scaled to the render dimensions, which can be retrieved using gst_video_overlay_rectangle_get_render_rectangle(). + - a #GstBuffer holding the pixel data with + a #GstBuffer holding the pixel data with #GstVideoMeta set. This function does not return a reference, the caller should obtain a reference of her own with gst_buffer_ref() if needed. - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - flags. + flags. If a global_alpha value != 1 is set for the rectangle, the caller should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag if he wants to apply global-alpha himself. If the flag is not set @@ -8960,37 +11146,38 @@ gst_video_overlay_rectangle_get_render_rectangle(). - Retrieves the render position and render dimension of the overlay + Retrieves the render position and render dimension of the overlay rectangle on the video. + - TRUE if valid render dimensions were retrieved. + TRUE if valid render dimensions were retrieved. - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - address where to store the X render offset + address where to store the X render offset - address where to store the Y render offset + address where to store the Y render offset - address where to store the render width + address where to store the render width - address where to store the render height + address where to store the render height - Returns the sequence number of this rectangle. Sequence numbers are + Returns the sequence number of this rectangle. Sequence numbers are monotonically increasing and unique for overlay compositions and rectangles (meaning there will never be a rectangle with the same sequence number as a composition). @@ -9004,19 +11191,20 @@ pixel-data returned by gst_video_overlay_rectangle_get_pixels_*() wont be different for different global-alpha values. In this case a renderer could also use the GstBuffer pointers as a hint for changed pixel-data. + - the sequence number of @rectangle + the sequence number of @rectangle - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - Sets the global alpha value associated with a #GstVideoOverlayRectangle. Per- + Sets the global alpha value associated with a #GstVideoOverlayRectangle. Per- pixel alpha values are multiplied with this value. Valid values: 0 <= global_alpha <= 1; 1 to deactivate. @@ -9024,22 +11212,23 @@ values: 0 <= global_alpha <= 1; 1 to deactivate. make the rectangles inside a #GstVideoOverlayComposition writable using gst_video_overlay_composition_make_writable() or gst_video_overlay_composition_copy(). + - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - Global alpha value (0 to 1.0) + Global alpha value (0 to 1.0) - Sets the render position and dimensions of the rectangle on the video. + Sets the render position and dimensions of the rectangle on the video. This function is mainly for elements that modify the size of the video in some way (e.g. through scaling or cropping) and need to adjust the details of any overlays to match the operation that changed the size. @@ -9048,125 +11237,128 @@ details of any overlays to match the operation that changed the size. make the rectangles inside a #GstVideoOverlayComposition writable using gst_video_overlay_composition_make_writable() or gst_video_overlay_composition_copy(). + - a #GstVideoOverlayRectangle + a #GstVideoOverlayRectangle - render X position of rectangle on video + render X position of rectangle on video - render Y position of rectangle on video + render Y position of rectangle on video - render width of rectangle + render width of rectangle - render height of rectangle + render height of rectangle - The different flags that can be used when packing and unpacking. + The different flags that can be used when packing and unpacking. - No flag + No flag - When the source has a smaller depth + When the source has a smaller depth than the target format, set the least significant bits of the target to 0. This is likely sightly faster but less accurate. When this flag is not specified, the most significant bits of the source are duplicated in the least significant bits of the destination. - The source is interlaced. The unpacked + The source is interlaced. The unpacked format will be interlaced as well with each line containing information from alternating fields. (Since: 1.2) - Different primaries conversion modes + Different primaries conversion modes - disable conversion between primaries + disable conversion between primaries - do conversion between primaries only + do conversion between primaries only when it can be merged with color matrix conversion. - fast conversion between primaries + fast conversion between primaries - Helper structure representing a rectangular area. + Helper structure representing a rectangular area. + - X coordinate of rectangle's top-left point + X coordinate of rectangle's top-left point - Y coordinate of rectangle's top-left point + Y coordinate of rectangle's top-left point - width of the rectangle + width of the rectangle - height of the rectangle + height of the rectangle - Extra buffer metadata describing an image region of interest + Extra buffer metadata describing an image region of interest + - parent #GstMeta + parent #GstMeta - GQuark describing the semantic of the Roi (f.i. a face, a pedestrian) + GQuark describing the semantic of the Roi (f.i. a face, a pedestrian) - identifier of this particular ROI + identifier of this particular ROI - identifier of its parent ROI, used f.i. for ROI hierarchisation. + identifier of its parent ROI, used f.i. for ROI hierarchisation. - x component of upper-left corner + x component of upper-left corner - y component of upper-left corner + y component of upper-left corner - bounding box width + bounding box width - bounding box height + bounding box height - list of #GstStructure containing element-specific params for downstream, see gst_video_region_of_interest_meta_add_params(). (Since: 1.14) + list of #GstStructure containing element-specific params for downstream, see gst_video_region_of_interest_meta_add_params(). (Since: 1.14) - Attach element-specific parameters to @meta meant to be used by downstream + Attach element-specific parameters to @meta meant to be used by downstream elements which may handle this ROI. The name of @s is used to identify the element these parameters are meant for. @@ -9175,99 +11367,105 @@ For example, a structure named "roi/x264enc" could be used to give the QP offsets this encoder should use when encoding the region described in @meta. Multiple parameters can be defined for the same meta so different encoders can be supported by cross platform applications). + - a #GstVideoRegionOfInterestMeta + a #GstVideoRegionOfInterestMeta - a #GstStructure + a #GstStructure - Retrieve the parameter for @meta having @name as structure name, + Retrieve the parameter for @meta having @name as structure name, or %NULL if there is none. See also: gst_video_region_of_interest_meta_add_param() + - a #GstStructure + a #GstStructure - a #GstVideoRegionOfInterestMeta + a #GstVideoRegionOfInterestMeta - a name. + a name. + - #GstVideoResampler is a structure which holds the information + #GstVideoResampler is a structure which holds the information required to perform various kinds of resampling filtering. + - the input size + the input size - the output size + the output size - the maximum number of taps + the maximum number of taps - the number of phases + the number of phases - array with the source offset for each output element + array with the source offset for each output element - array with the phase to use for each output element + array with the phase to use for each output element - array with new number of taps for each phase + array with new number of taps for each phase - the taps for all phases + the taps for all phases - + - Clear a previously initialized #GstVideoResampler @resampler. + Clear a previously initialized #GstVideoResampler @resampler. + - a #GstVideoResampler + a #GstVideoResampler + @@ -9303,41 +11501,42 @@ required to perform various kinds of resampling filtering. - Different resampler flags. + Different resampler flags. - no flags + no flags - when no taps are given, half the + when no taps are given, half the number of calculated taps. This can be used when making scalers for the different fields of an interlaced picture. Since: 1.10 - Different subsampling and upsampling methods + Different subsampling and upsampling methods - Duplicates the samples when + Duplicates the samples when upsampling and drops when downsampling - Uses linear interpolation to reconstruct + Uses linear interpolation to reconstruct missing samples and averaging to downsample - Uses cubic interpolation + Uses cubic interpolation - Uses sinc interpolation + Uses sinc interpolation - Uses lanczos interpolation + Uses lanczos interpolation - #GstVideoScaler is a utility object for rescaling and resampling + #GstVideoScaler is a utility object for rescaling and resampling video frames using various interpolation / sampling methods. + - Scale a rectangle of pixels in @src with @src_stride to @dest with + Scale a rectangle of pixels in @src with @src_stride to @dest with @dest_stride using the horizontal scaler @hscaler and the vertical scaler @vscale. @@ -9345,284 +11544,295 @@ One or both of @hscale and @vscale can be NULL to only perform scaling in one dimension or do a copy without scaling. @x and @y are the coordinates in the destination image to process. + - a horzontal #GstVideoScaler + a horzontal #GstVideoScaler - a vertical #GstVideoScaler + a vertical #GstVideoScaler - a #GstVideoFormat for @srcs and @dest + a #GstVideoFormat for @srcs and @dest - source pixels + source pixels - source pixels stride + source pixels stride - destination pixels + destination pixels - destination pixels stride + destination pixels stride - the horizontal destination offset + the horizontal destination offset - the vertical destination offset + the vertical destination offset - the number of output pixels to scale + the number of output pixels to scale - the number of output lines to scale + the number of output lines to scale - Combine a scaler for Y and UV into one scaler for the packed @format. + Combine a scaler for Y and UV into one scaler for the packed @format. + - a new horizontal videoscaler for @format. + a new horizontal videoscaler for @format. - a scaler for the Y component + a scaler for the Y component - a scaler for the U and V components + a scaler for the U and V components - the input video format + the input video format - the output video format + the output video format - Free a previously allocated #GstVideoScaler @scale. + Free a previously allocated #GstVideoScaler @scale. + - a #GstVideoScaler + a #GstVideoScaler - For a given pixel at @out_offset, get the first required input pixel at + For a given pixel at @out_offset, get the first required input pixel at @in_offset and the @n_taps filter coefficients. Note that for interlaced content, @in_offset needs to be incremented with 2 to get the next input line. + - an array of @n_tap gdouble values with filter coefficients. + an array of @n_tap gdouble values with filter coefficients. - a #GstVideoScaler + a #GstVideoScaler - an output offset + an output offset - result input offset + result input offset - result n_taps + result n_taps - Get the maximum number of taps for @scale. + Get the maximum number of taps for @scale. + - the maximum number of taps + the maximum number of taps - a #GstVideoScaler + a #GstVideoScaler - Horizontally scale the pixels in @src to @dest, starting from @dest_offset + Horizontally scale the pixels in @src to @dest, starting from @dest_offset for @width samples. + - a #GstVideoScaler + a #GstVideoScaler - a #GstVideoFormat for @src and @dest + a #GstVideoFormat for @src and @dest - source pixels + source pixels - destination pixels + destination pixels - the horizontal destination offset + the horizontal destination offset - the number of pixels to scale + the number of pixels to scale - Vertically combine @width pixels in the lines in @src_lines to @dest. + Vertically combine @width pixels in the lines in @src_lines to @dest. @dest is the location of the target line at @dest_offset and @srcs are the input lines for @dest_offset, as obtained with gst_video_scaler_get_info(). + - a #GstVideoScaler + a #GstVideoScaler - a #GstVideoFormat for @srcs and @dest + a #GstVideoFormat for @srcs and @dest - source pixels lines + source pixels lines - destination pixels + destination pixels - the vertical destination offset + the vertical destination offset - the number of pixels to scale + the number of pixels to scale - Make a new @method video scaler. @in_size source lines/pixels will + Make a new @method video scaler. @in_size source lines/pixels will be scaled to @out_size destination lines/pixels. @n_taps specifies the amount of pixels to use from the source for one output pixel. If n_taps is 0, this function chooses a good value automatically based on the @method and @in_size/@out_size. + - a #GstVideoScaler + a #GstVideoScaler - a #GstVideoResamplerMethod + a #GstVideoResamplerMethod - #GstVideoScalerFlags + #GstVideoScalerFlags - number of taps to use + number of taps to use - number of source elements + number of source elements - number of destination elements + number of destination elements - extra options + extra options - Different scale flags. + Different scale flags. - no flags + no flags - Set up a scaler for interlaced content + Set up a scaler for interlaced content - Provides useful functions and a base class for video sinks. + Provides useful functions and a base class for video sinks. GstVideoSink will configure the default base sink to drop frames that arrive later than 20ms as this is considered the default threshold for observing out-of-sync frames. + - Takes @src rectangle and position it at the center of @dst rectangle with or + Takes @src rectangle and position it at the center of @dst rectangle with or without @scaling. It handles clipping if the @src rectangle is bigger than the @dst one and @scaling is set to FALSE. + - the #GstVideoRectangle describing the source area + the #GstVideoRectangle describing the source area - the #GstVideoRectangle describing the destination area + the #GstVideoRectangle describing the destination area - a pointer to a #GstVideoRectangle which will receive the result area + a pointer to a #GstVideoRectangle which will receive the result area - a #gboolean indicating if scaling should be applied or not + a #gboolean indicating if scaling should be applied or not + @@ -9636,7 +11846,7 @@ the @dst one and @scaling is set to FALSE. - Whether to show video frames during preroll. If set to %FALSE, video + Whether to show video frames during preroll. If set to %FALSE, video frames will only be rendered in PLAYING state. @@ -9644,31 +11854,33 @@ frames will only be rendered in PLAYING state. - video width (derived class needs to set this) + video width (derived class needs to set this) - video height (derived class needs to set this) + video height (derived class needs to set this) - + - The video sink class structure. Derived classes should override the + The video sink class structure. Derived classes should override the @show_frame virtual function. + - the parent class structure + the parent class structure + @@ -9683,35 +11895,36 @@ frames will only be rendered in PLAYING state. - + + - Enum value describing the available tiling modes. + Enum value describing the available tiling modes. - Unknown or unset tile mode + Unknown or unset tile mode - Every four adjacent blocks - two + Every four adjacent blocks - two horizontally and two vertically are grouped together and are located in memory in Z or flipped Z order. In case of odd rows, the last row of blocks is arranged in linear order. - Enum value describing the most common tiling types. + Enum value describing the most common tiling types. - Tiles are indexed. Use + Tiles are indexed. Use gst_video_tile_get_index () to retrieve the tile at the requested coordinates. - @field_count must be 0 for progressive video and 1 or 2 for interlaced. + @field_count must be 0 for progressive video and 1 or 2 for interlaced. A representation of a SMPTE time code. @@ -9719,200 +11932,208 @@ A representation of a SMPTE time code. @minutes and @seconds must be positive and less than 60. @frames must be less than or equal to @config.fps_n / @config.fps_d These values are *NOT* automatically normalized. + - the corresponding #GstVideoTimeCodeConfig + the corresponding #GstVideoTimeCodeConfig - the hours field of #GstVideoTimeCode + the hours field of #GstVideoTimeCode - the minutes field of #GstVideoTimeCode + the minutes field of #GstVideoTimeCode - the seconds field of #GstVideoTimeCode + the seconds field of #GstVideoTimeCode - the frames field of #GstVideoTimeCode + the frames field of #GstVideoTimeCode - Interlaced video field count + Interlaced video field count - @field_count is 0 for progressive, 1 or 2 for interlaced. + @field_count is 0 for progressive, 1 or 2 for interlaced. @latest_daiy_jam reference is stolen from caller. + - a new #GstVideoTimeCode with the given values. + a new #GstVideoTimeCode with the given values. The values are not checked for being in a valid range. To see if your timecode actually has valid content, use gst_video_time_code_is_valid(). - Numerator of the frame rate + Numerator of the frame rate - Denominator of the frame rate + Denominator of the frame rate - The latest daily jam of the #GstVideoTimeCode + The latest daily jam of the #GstVideoTimeCode - #GstVideoTimeCodeFlags + #GstVideoTimeCodeFlags - the hours field of #GstVideoTimeCode + the hours field of #GstVideoTimeCode - the minutes field of #GstVideoTimeCode + the minutes field of #GstVideoTimeCode - the seconds field of #GstVideoTimeCode + the seconds field of #GstVideoTimeCode - the frames field of #GstVideoTimeCode + the frames field of #GstVideoTimeCode - Interlaced video field count + Interlaced video field count + - a new empty, invalid #GstVideoTimeCode + a new empty, invalid #GstVideoTimeCode - The resulting config->latest_daily_jam is set to + The resulting config->latest_daily_jam is set to midnight, and timecode is set to the given time. This might return a completely invalid timecode, use gst_video_time_code_new_from_date_time_full() to ensure that you would get %NULL instead in that case. + - the #GstVideoTimeCode representation of @dt. + the #GstVideoTimeCode representation of @dt. - Numerator of the frame rate + Numerator of the frame rate - Denominator of the frame rate + Denominator of the frame rate - #GDateTime to convert + #GDateTime to convert - #GstVideoTimeCodeFlags + #GstVideoTimeCodeFlags - Interlaced video field count + Interlaced video field count - The resulting config->latest_daily_jam is set to + The resulting config->latest_daily_jam is set to midnight, and timecode is set to the given time. + - the #GstVideoTimeCode representation of @dt, or %NULL if + the #GstVideoTimeCode representation of @dt, or %NULL if no valid timecode could be created. - Numerator of the frame rate + Numerator of the frame rate - Denominator of the frame rate + Denominator of the frame rate - #GDateTime to convert + #GDateTime to convert - #GstVideoTimeCodeFlags + #GstVideoTimeCodeFlags - Interlaced video field count + Interlaced video field count + - a new #GstVideoTimeCode from the given string or %NULL + a new #GstVideoTimeCode from the given string or %NULL if the string could not be passed. - The string that represents the #GstVideoTimeCode + The string that represents the #GstVideoTimeCode - Adds or subtracts @frames amount of frames to @tc. tc needs to + Adds or subtracts @frames amount of frames to @tc. tc needs to contain valid data, as verified by gst_video_time_code_is_valid(). + - a valid #GstVideoTimeCode + a valid #GstVideoTimeCode - How many frames to add or subtract + How many frames to add or subtract - This makes a component-wise addition of @tc_inter to @tc. For example, + This makes a component-wise addition of @tc_inter to @tc. For example, adding ("01:02:03:04", "00:01:00:00") will return "01:03:03:04". When it comes to drop-frame timecodes, adding ("00:00:00;00", "00:01:00:00") will return "00:01:00;02" because of drop-frame oddities. However, adding ("00:09:00;02", "00:01:00:00") will return "00:10:00;00" because this time we can have an exact minute. + - A new #GstVideoTimeCode with @tc_inter added or %NULL + A new #GstVideoTimeCode with @tc_inter added or %NULL if the interval can't be added. - The #GstVideoTimeCode where the diff should be added. This + The #GstVideoTimeCode where the diff should be added. This must contain valid timecode values. - The #GstVideoTimeCodeInterval to add to @tc. + The #GstVideoTimeCodeInterval to add to @tc. The interval must contain valid values, except that for drop-frame timecode, it may also contain timecodes which would normally be dropped. These are then corrected to the next reasonable timecode. @@ -9921,250 +12142,263 @@ be dropped. These are then corrected to the next reasonable timecode. - Initializes @tc with empty/zero/NULL values and frees any memory + Initializes @tc with empty/zero/NULL values and frees any memory it might currently use. + - a #GstVideoTimeCode + a #GstVideoTimeCode - Compares @tc1 and @tc2. If both have latest daily jam information, it is + Compares @tc1 and @tc2. If both have latest daily jam information, it is taken into account. Otherwise, it is assumed that the daily jam of both @tc1 and @tc2 was at the same time. Both time codes must be valid. + - 1 if @tc1 is after @tc2, -1 if @tc1 is before @tc2, 0 otherwise. + 1 if @tc1 is after @tc2, -1 if @tc1 is before @tc2, 0 otherwise. - a valid #GstVideoTimeCode + a valid #GstVideoTimeCode - another valid #GstVideoTimeCode + another valid #GstVideoTimeCode + - a new #GstVideoTimeCode with the same values as @tc. + a new #GstVideoTimeCode with the same values as @tc. - a #GstVideoTimeCode + a #GstVideoTimeCode + - how many frames have passed since the daily jam of @tc. + how many frames have passed since the daily jam of @tc. - a valid #GstVideoTimeCode + a valid #GstVideoTimeCode - Frees @tc. + Frees @tc. + - a #GstVideoTimeCode + a #GstVideoTimeCode - Adds one frame to @tc. + Adds one frame to @tc. + - a valid #GstVideoTimeCode + a valid #GstVideoTimeCode - @field_count is 0 for progressive, 1 or 2 for interlaced. + @field_count is 0 for progressive, 1 or 2 for interlaced. @latest_daiy_jam reference is stolen from caller. Initializes @tc with the given values. The values are not checked for being in a valid range. To see if your timecode actually has valid content, use gst_video_time_code_is_valid(). + - a #GstVideoTimeCode + a #GstVideoTimeCode - Numerator of the frame rate + Numerator of the frame rate - Denominator of the frame rate + Denominator of the frame rate - The latest daily jam of the #GstVideoTimeCode + The latest daily jam of the #GstVideoTimeCode - #GstVideoTimeCodeFlags + #GstVideoTimeCodeFlags - the hours field of #GstVideoTimeCode + the hours field of #GstVideoTimeCode - the minutes field of #GstVideoTimeCode + the minutes field of #GstVideoTimeCode - the seconds field of #GstVideoTimeCode + the seconds field of #GstVideoTimeCode - the frames field of #GstVideoTimeCode + the frames field of #GstVideoTimeCode - Interlaced video field count + Interlaced video field count - The resulting config->latest_daily_jam is set to midnight, and timecode is + The resulting config->latest_daily_jam is set to midnight, and timecode is set to the given time. Will assert on invalid parameters, use gst_video_time_code_init_from_date_time_full() for being able to handle invalid parameters. + - an uninitialized #GstVideoTimeCode + an uninitialized #GstVideoTimeCode - Numerator of the frame rate + Numerator of the frame rate - Denominator of the frame rate + Denominator of the frame rate - #GDateTime to convert + #GDateTime to convert - #GstVideoTimeCodeFlags + #GstVideoTimeCodeFlags - Interlaced video field count + Interlaced video field count - The resulting config->latest_daily_jam is set to + The resulting config->latest_daily_jam is set to midnight, and timecode is set to the given time. + - %TRUE if @tc could be correctly initialized to a valid timecode + %TRUE if @tc could be correctly initialized to a valid timecode - a #GstVideoTimeCode + a #GstVideoTimeCode - Numerator of the frame rate + Numerator of the frame rate - Denominator of the frame rate + Denominator of the frame rate - #GDateTime to convert + #GDateTime to convert - #GstVideoTimeCodeFlags + #GstVideoTimeCodeFlags - Interlaced video field count + Interlaced video field count + - whether @tc is a valid timecode (supported frame rate, + whether @tc is a valid timecode (supported frame rate, hours/minutes/seconds/frames not overflowing) - #GstVideoTimeCode to check + #GstVideoTimeCode to check + - how many nsec have passed since the daily jam of @tc. + how many nsec have passed since the daily jam of @tc. - a valid #GstVideoTimeCode + a valid #GstVideoTimeCode - The @tc.config->latest_daily_jam is required to be non-NULL. + The @tc.config->latest_daily_jam is required to be non-NULL. + - the #GDateTime representation of @tc or %NULL if @tc + the #GDateTime representation of @tc or %NULL if @tc has no daily jam. - A valid #GstVideoTimeCode to convert + A valid #GstVideoTimeCode to convert + - the SMPTE ST 2059-1:2015 string representation of @tc. That will + the SMPTE ST 2059-1:2015 string representation of @tc. That will take the form hh:mm:ss:ff. The last separator (between seconds and frames) may vary: @@ -10178,301 +12412,316 @@ interlaced field 2 - A #GstVideoTimeCode to convert + A #GstVideoTimeCode to convert - Supported frame rates: 30000/1001, 60000/1001 (both with and without drop + Supported frame rates: 30000/1001, 60000/1001 (both with and without drop frame), and integer frame rates e.g. 25/1, 30/1, 50/1, 60/1. The configuration of the time code. + - Numerator of the frame rate + Numerator of the frame rate - Denominator of the frame rate + Denominator of the frame rate - the corresponding #GstVideoTimeCodeFlags + the corresponding #GstVideoTimeCodeFlags - The latest daily jam information, if present, or NULL + The latest daily jam information, if present, or NULL - Flags related to the time code information. + Flags related to the time code information. For drop frame, only 30000/1001 and 60000/1001 frame rates are supported. + - No flags + No flags - Whether we have drop frame rate + Whether we have drop frame rate - Whether we have interlaced video + Whether we have interlaced video - A representation of a difference between two #GstVideoTimeCode instances. + A representation of a difference between two #GstVideoTimeCode instances. Will not necessarily correspond to a real timecode (e.g. 00:00:10;00) + - the hours field of #GstVideoTimeCodeInterval + the hours field of #GstVideoTimeCodeInterval - the minutes field of #GstVideoTimeCodeInterval + the minutes field of #GstVideoTimeCodeInterval - the seconds field of #GstVideoTimeCodeInterval + the seconds field of #GstVideoTimeCodeInterval - the frames field of #GstVideoTimeCodeInterval + the frames field of #GstVideoTimeCodeInterval + - a new #GstVideoTimeCodeInterval with the given values. + a new #GstVideoTimeCodeInterval with the given values. - the hours field of #GstVideoTimeCodeInterval + the hours field of #GstVideoTimeCodeInterval - the minutes field of #GstVideoTimeCodeInterval + the minutes field of #GstVideoTimeCodeInterval - the seconds field of #GstVideoTimeCodeInterval + the seconds field of #GstVideoTimeCodeInterval - the frames field of #GstVideoTimeCodeInterval + the frames field of #GstVideoTimeCodeInterval - @tc_inter_str must only have ":" as separators. + @tc_inter_str must only have ":" as separators. + - a new #GstVideoTimeCodeInterval from the given string + a new #GstVideoTimeCodeInterval from the given string or %NULL if the string could not be passed. - The string that represents the #GstVideoTimeCodeInterval + The string that represents the #GstVideoTimeCodeInterval - Initializes @tc with empty/zero/NULL values. + Initializes @tc with empty/zero/NULL values. + - a #GstVideoTimeCodeInterval + a #GstVideoTimeCodeInterval + - a new #GstVideoTimeCodeInterval with the same values as @tc. + a new #GstVideoTimeCodeInterval with the same values as @tc. - a #GstVideoTimeCodeInterval + a #GstVideoTimeCodeInterval - Frees @tc. + Frees @tc. + - a #GstVideoTimeCodeInterval + a #GstVideoTimeCodeInterval - Initializes @tc with the given values. + Initializes @tc with the given values. + - a #GstVideoTimeCodeInterval + a #GstVideoTimeCodeInterval - the hours field of #GstVideoTimeCodeInterval + the hours field of #GstVideoTimeCodeInterval - the minutes field of #GstVideoTimeCodeInterval + the minutes field of #GstVideoTimeCodeInterval - the seconds field of #GstVideoTimeCodeInterval + the seconds field of #GstVideoTimeCodeInterval - the frames field of #GstVideoTimeCodeInterval + the frames field of #GstVideoTimeCodeInterval - Extra buffer metadata describing the GstVideoTimeCode of the frame. + Extra buffer metadata describing the GstVideoTimeCode of the frame. Each frame is assumed to have its own timecode, i.e. they are not automatically incremented/interpolated. + - parent #GstMeta + parent #GstMeta - the GstVideoTimeCode to attach + the GstVideoTimeCode to attach + - The video transfer function defines the formula for converting between + The video transfer function defines the formula for converting between non-linear RGB (R'G'B') and linear RGB - unknown transfer function + unknown transfer function - linear RGB, gamma 1.0 curve + linear RGB, gamma 1.0 curve - Gamma 1.8 curve + Gamma 1.8 curve - Gamma 2.0 curve + Gamma 2.0 curve - Gamma 2.2 curve + Gamma 2.2 curve - Gamma 2.2 curve with a linear segment in the lower + Gamma 2.2 curve with a linear segment in the lower range - Gamma 2.2 curve with a linear segment in the + Gamma 2.2 curve with a linear segment in the lower range - Gamma 2.4 curve with a linear segment in the lower + Gamma 2.4 curve with a linear segment in the lower range - Gamma 2.8 curve + Gamma 2.8 curve - Logarithmic transfer characteristic + Logarithmic transfer characteristic 100:1 range - Logarithmic transfer characteristic + Logarithmic transfer characteristic 316.22777:1 range - Gamma 2.2 curve with a linear segment in the lower + Gamma 2.2 curve with a linear segment in the lower range. Used for BT.2020 with 12 bits per component. Since: 1.6 - Gamma 2.19921875. Since: 1.8 + Gamma 2.19921875. Since: 1.8 - An encoder for writing ancillary data to the + An encoder for writing ancillary data to the Vertical Blanking Interval lines of component signals. + - Create a new #GstVideoVBIEncoder for the specified @format and @pixel_width. + Create a new #GstVideoVBIEncoder for the specified @format and @pixel_width. + - The new #GstVideoVBIEncoder or %NULL if the @format and/or @pixel_width + The new #GstVideoVBIEncoder or %NULL if the @format and/or @pixel_width is not supported. - a #GstVideoFormat + a #GstVideoFormat - The width in pixel to use + The width in pixel to use - Stores Video Ancillary data, according to SMPTE-291M specification. + Stores Video Ancillary data, according to SMPTE-291M specification. Note that the contents of the data are always read as 8bit data (i.e. do not contain the parity check bits). + - %TRUE if enough space was left in the current line, %FALSE + %TRUE if enough space was left in the current line, %FALSE otherwise. - a #GstVideoVBIEncoder + a #GstVideoVBIEncoder - %TRUE if composite ADF should be created, component otherwise + %TRUE if composite ADF should be created, component otherwise - The Data Identifier + The Data Identifier - The Secondary Data Identifier (if type 2) or the Data + The Secondary Data Identifier (if type 2) or the Data Block Number (if type 1) - The user data content of the Ancillary packet. + The user data content of the Ancillary packet. Does not contain the ADF, DID, SDID nor CS. - The amount of data (in bytes) in @data (max 255 bytes) + The amount of data (in bytes) in @data (max 255 bytes) + @@ -10483,18 +12732,20 @@ the parity check bits). - Frees the @encoder. + Frees the @encoder. + - a #GstVideoVBIEncoder + a #GstVideoVBIEncoder + @@ -10509,39 +12760,42 @@ the parity check bits). - A parser for detecting and extracting @GstVideoAncillary data from + A parser for detecting and extracting @GstVideoAncillary data from Vertical Blanking Interval lines of component signals. + - Create a new #GstVideoVBIParser for the specified @format and @pixel_width. + Create a new #GstVideoVBIParser for the specified @format and @pixel_width. + - The new #GstVideoVBIParser or %NULL if the @format and/or @pixel_width + The new #GstVideoVBIParser or %NULL if the @format and/or @pixel_width is not supported. - a #GstVideoFormat + a #GstVideoFormat - The width in pixel to use + The width in pixel to use - Provide a new line of data to the @parser. Call gst_video_vbi_parser_get_ancillary() + Provide a new line of data to the @parser. Call gst_video_vbi_parser_get_ancillary() to get the Ancillary data that might be present on that line. + - a #GstVideoVBIParser + a #GstVideoVBIParser - The line of data to parse + The line of data to parse @@ -10549,6 +12803,7 @@ to get the Ancillary data that might be present on that line. + @@ -10559,205 +12814,219 @@ to get the Ancillary data that might be present on that line. - Frees the @parser. + Frees the @parser. + - a #GstVideoVBIParser + a #GstVideoVBIParser - Parse the line provided previously by gst_video_vbi_parser_add_line(). + Parse the line provided previously by gst_video_vbi_parser_add_line(). + - %GST_VIDEO_VBI_PARSER_RESULT_OK if ancillary data was found and + %GST_VIDEO_VBI_PARSER_RESULT_OK if ancillary data was found and @anc was filled. %GST_VIDEO_VBI_PARSER_RESULT_DONE if there wasn't any data. - a #GstVideoVBIParser + a #GstVideoVBIParser - a #GstVideoAncillary to start the eventual ancillary data + a #GstVideoAncillary to start the eventual ancillary data - Return values for #GstVideoVBIParser + Return values for #GstVideoVBIParser - No line were provided, or no more Ancillary data was found. + No line were provided, or no more Ancillary data was found. - A #GstVideoAncillary was found. + A #GstVideoAncillary was found. - An error occured + An error occured - Attaches GstVideoAffineTransformationMeta metadata to @buffer with + Attaches GstVideoAffineTransformationMeta metadata to @buffer with the given parameters. + - the #GstVideoAffineTransformationMeta on @buffer. + the #GstVideoAffineTransformationMeta on @buffer. - a #GstBuffer + a #GstBuffer - Attaches #GstVideoCaptionMeta metadata to @buffer with the given + Attaches #GstVideoCaptionMeta metadata to @buffer with the given parameters. + - the #GstVideoCaptionMeta on @buffer. + the #GstVideoCaptionMeta on @buffer. - a #GstBuffer + a #GstBuffer - The type of Closed Caption to add + The type of Closed Caption to add - The Closed Caption data + The Closed Caption data - The size of @data in bytes + The size of @data in bytes + + + + + + + - Attaches GstVideoGLTextureUploadMeta metadata to @buffer with the given + Attaches GstVideoGLTextureUploadMeta metadata to @buffer with the given parameters. + - the #GstVideoGLTextureUploadMeta on @buffer. + the #GstVideoGLTextureUploadMeta on @buffer. - a #GstBuffer + a #GstBuffer - the #GstVideoGLTextureOrientation + the #GstVideoGLTextureOrientation - the number of textures + the number of textures - array of #GstVideoGLTextureType + array of #GstVideoGLTextureType - the function to upload the buffer to a specific texture ID + the function to upload the buffer to a specific texture ID - user data for the implementor of @upload + user data for the implementor of @upload - function to copy @user_data + function to copy @user_data - function to free @user_data + function to free @user_data - Attaches GstVideoMeta metadata to @buffer with the given parameters and the + Attaches GstVideoMeta metadata to @buffer with the given parameters and the default offsets and strides for @format and @width x @height. This function calculates the default offsets and strides and then calls gst_buffer_add_video_meta_full() with them. + - the #GstVideoMeta on @buffer. + the #GstVideoMeta on @buffer. - a #GstBuffer + a #GstBuffer - #GstVideoFrameFlags + #GstVideoFrameFlags - a #GstVideoFormat + a #GstVideoFormat - the width + the width - the height + the height - Attaches GstVideoMeta metadata to @buffer with the given parameters. + Attaches GstVideoMeta metadata to @buffer with the given parameters. + - the #GstVideoMeta on @buffer. + the #GstVideoMeta on @buffer. - a #GstBuffer + a #GstBuffer - #GstVideoFrameFlags + #GstVideoFrameFlags - a #GstVideoFormat + a #GstVideoFormat - the width + the width - the height + the height - number of planes + number of planes - offset of each plane + offset of each plane - stride of each plane + stride of each plane @@ -10765,313 +13034,394 @@ gst_buffer_add_video_meta_full() with them. - Sets an overlay composition on a buffer. The buffer will obtain its own + Sets an overlay composition on a buffer. The buffer will obtain its own reference to the composition, meaning this function does not take ownership of @comp. + - a #GstVideoOverlayCompositionMeta + a #GstVideoOverlayCompositionMeta - a #GstBuffer + a #GstBuffer - a #GstVideoOverlayComposition + a #GstVideoOverlayComposition - Attaches #GstVideoRegionOfInterestMeta metadata to @buffer with the given + Attaches #GstVideoRegionOfInterestMeta metadata to @buffer with the given parameters. + - the #GstVideoRegionOfInterestMeta on @buffer. + the #GstVideoRegionOfInterestMeta on @buffer. - a #GstBuffer + a #GstBuffer - Type of the region of interest (e.g. "face") + Type of the region of interest (e.g. "face") - X position + X position - Y position + Y position - width + width - height + height - Attaches #GstVideoRegionOfInterestMeta metadata to @buffer with the given + Attaches #GstVideoRegionOfInterestMeta metadata to @buffer with the given parameters. + - the #GstVideoRegionOfInterestMeta on @buffer. + the #GstVideoRegionOfInterestMeta on @buffer. - a #GstBuffer + a #GstBuffer - Type of the region of interest (e.g. "face") + Type of the region of interest (e.g. "face") - X position + X position - Y position + Y position - width + width - height + height - Attaches #GstVideoTimeCodeMeta metadata to @buffer with the given + Attaches #GstVideoTimeCodeMeta metadata to @buffer with the given parameters. + - the #GstVideoTimeCodeMeta on @buffer, or + the #GstVideoTimeCodeMeta on @buffer, or (since 1.16) %NULL if the timecode was invalid. - a #GstBuffer + a #GstBuffer - a #GstVideoTimeCode + a #GstVideoTimeCode - Attaches #GstVideoTimeCodeMeta metadata to @buffer with the given + Attaches #GstVideoTimeCodeMeta metadata to @buffer with the given parameters. + - the #GstVideoTimeCodeMeta on @buffer, or + the #GstVideoTimeCodeMeta on @buffer, or (since 1.16) %NULL if the timecode was invalid. - a #GstBuffer + a #GstBuffer - framerate numerator + framerate numerator - framerate denominator + framerate denominator - a #GDateTime for the latest daily jam + a #GDateTime for the latest daily jam - a #GstVideoTimeCodeFlags + a #GstVideoTimeCodeFlags - hours since the daily jam + hours since the daily jam - minutes since the daily jam + minutes since the daily jam - seconds since the daily jam + seconds since the daily jam - frames since the daily jam + frames since the daily jam - fields since the daily jam + fields since the daily jam + + + + + + + + + Gets the #GstVideoCaptionMeta that might be present on @b. + + + + A #GstBuffer + + + + + + + + + + + + + + + + + - Find the #GstVideoMeta on @buffer with the lowest @id. + Find the #GstVideoMeta on @buffer with the lowest @id. Buffers can contain multiple #GstVideoMeta metadata items when dealing with multiview buffers. + - the #GstVideoMeta with lowest id (usually 0) or %NULL when there + the #GstVideoMeta with lowest id (usually 0) or %NULL when there is no such metadata on @buffer. - a #GstBuffer + a #GstBuffer - Find the #GstVideoMeta on @buffer with the given @id. + Find the #GstVideoMeta on @buffer with the given @id. Buffers can contain multiple #GstVideoMeta metadata items when dealing with multiview buffers. + - the #GstVideoMeta with @id or %NULL when there is no such metadata + the #GstVideoMeta with @id or %NULL when there is no such metadata on @buffer. - a #GstBuffer + a #GstBuffer - a metadata id + a metadata id + + + + + + + + + + + + + + + + + + + + + - Find the #GstVideoRegionOfInterestMeta on @buffer with the given @id. + Find the #GstVideoRegionOfInterestMeta on @buffer with the given @id. Buffers can contain multiple #GstVideoRegionOfInterestMeta metadata items if multiple regions of interests are marked on a frame. + - the #GstVideoRegionOfInterestMeta with @id or %NULL when there is + the #GstVideoRegionOfInterestMeta with @id or %NULL when there is no such metadata on @buffer. - a #GstBuffer + a #GstBuffer - a metadata id + a metadata id + + + + + + + - Get the video alignment from the bufferpool configuration @config in + Get the video alignment from the bufferpool configuration @config in in @align + - %TRUE if @config could be parsed correctly. + %TRUE if @config could be parsed correctly. - a #GstStructure + a #GstStructure - a #GstVideoAlignment + a #GstVideoAlignment - Set the video alignment in @align to the bufferpool configuration + Set the video alignment in @align to the bufferpool configuration @config + - a #GstStructure + a #GstStructure - a #GstVideoAlignment + a #GstVideoAlignment + + + + + + + + + - Convenience function to check if the given message is a + Convenience function to check if the given message is a "prepare-window-handle" message from a #GstVideoOverlay. + - whether @msg is a "prepare-window-handle" message + whether @msg is a "prepare-window-handle" message - a #GstMessage + a #GstMessage - Inspect a #GstEvent and return the #GstNavigationEventType of the event, or + Inspect a #GstEvent and return the #GstNavigationEventType of the event, or #GST_NAVIGATION_EVENT_INVALID if the event is not a #GstNavigation event. + - A #GstEvent to inspect. + A #GstEvent to inspect. - Inspect a #GstNavigation command event and retrieve the enum value of the + Inspect a #GstNavigation command event and retrieve the enum value of the associated command. + - TRUE if the navigation command could be extracted, otherwise FALSE. + TRUE if the navigation command could be extracted, otherwise FALSE. - A #GstEvent to inspect. + A #GstEvent to inspect. - Pointer to GstNavigationCommand to receive the + Pointer to GstNavigationCommand to receive the type of the navigation event. + - A #GstEvent to inspect. + A #GstEvent to inspect. - A pointer to a location to receive + A pointer to a location to receive the string identifying the key press. The returned string is owned by the event, and valid only until the event is unreffed. @@ -11079,349 +13429,367 @@ associated command. - Retrieve the details of either a #GstNavigation mouse button press event or + Retrieve the details of either a #GstNavigation mouse button press event or a mouse button release event. Determine which type the event is using gst_navigation_event_get_type() to retrieve the #GstNavigationEventType. + - TRUE if the button number and both coordinates could be extracted, + TRUE if the button number and both coordinates could be extracted, otherwise FALSE. - A #GstEvent to inspect. + A #GstEvent to inspect. - Pointer to a gint that will receive the button + Pointer to a gint that will receive the button number associated with the event. - Pointer to a gdouble to receive the x coordinate of the + Pointer to a gdouble to receive the x coordinate of the mouse button event. - Pointer to a gdouble to receive the y coordinate of the + Pointer to a gdouble to receive the y coordinate of the mouse button event. - Inspect a #GstNavigation mouse movement event and extract the coordinates + Inspect a #GstNavigation mouse movement event and extract the coordinates of the event. + - TRUE if both coordinates could be extracted, otherwise FALSE. + TRUE if both coordinates could be extracted, otherwise FALSE. - A #GstEvent to inspect. + A #GstEvent to inspect. - Pointer to a gdouble to receive the x coordinate of the + Pointer to a gdouble to receive the x coordinate of the mouse movement. - Pointer to a gdouble to receive the y coordinate of the + Pointer to a gdouble to receive the y coordinate of the mouse movement. - Check a bus message to see if it is a #GstNavigation event, and return + Check a bus message to see if it is a #GstNavigation event, and return the #GstNavigationMessageType identifying the type of the message if so. + - The type of the #GstMessage, or + The type of the #GstMessage, or #GST_NAVIGATION_MESSAGE_INVALID if the message is not a #GstNavigation notification. - A #GstMessage to inspect. + A #GstMessage to inspect. - Creates a new #GstNavigation message with type + Creates a new #GstNavigation message with type #GST_NAVIGATION_MESSAGE_ANGLES_CHANGED for notifying an application that the current angle, or current number of angles available in a multiangle video has changed. + - The new #GstMessage. + The new #GstMessage. - A #GstObject to set as source of the new message. + A #GstObject to set as source of the new message. - The currently selected angle. + The currently selected angle. - The number of viewing angles now available. + The number of viewing angles now available. - Creates a new #GstNavigation message with type + Creates a new #GstNavigation message with type #GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED + - The new #GstMessage. + The new #GstMessage. - A #GstObject to set as source of the new message. + A #GstObject to set as source of the new message. - Creates a new #GstNavigation message with type + Creates a new #GstNavigation message with type #GST_NAVIGATION_MESSAGE_EVENT. + - The new #GstMessage. + The new #GstMessage. - A #GstObject to set as source of the new message. + A #GstObject to set as source of the new message. - A navigation #GstEvent + A navigation #GstEvent - Creates a new #GstNavigation message with type + Creates a new #GstNavigation message with type #GST_NAVIGATION_MESSAGE_MOUSE_OVER. + - The new #GstMessage. + The new #GstMessage. - A #GstObject to set as source of the new message. + A #GstObject to set as source of the new message. - %TRUE if the mouse has entered a clickable area of the display. + %TRUE if the mouse has entered a clickable area of the display. %FALSE if it over a non-clickable area. - Parse a #GstNavigation message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED + Parse a #GstNavigation message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED and extract the @cur_angle and @n_angles parameters. + - %TRUE if the message could be successfully parsed. %FALSE if not. + %TRUE if the message could be successfully parsed. %FALSE if not. - A #GstMessage to inspect. + A #GstMessage to inspect. - A pointer to a #guint to receive the new + A pointer to a #guint to receive the new current angle number, or NULL - A pointer to a #guint to receive the new angle + A pointer to a #guint to receive the new angle count, or NULL. - Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_EVENT + Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_EVENT and extract contained #GstEvent. The caller must unref the @event when done with it. + - %TRUE if the message could be successfully parsed. %FALSE if not. + %TRUE if the message could be successfully parsed. %FALSE if not. - A #GstMessage to inspect. + A #GstMessage to inspect. - a pointer to a #GstEvent to receive + a pointer to a #GstEvent to receive the contained navigation event. - Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_MOUSE_OVER + Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_MOUSE_OVER and extract the active/inactive flag. If the mouse over event is marked active, it indicates that the mouse is over a clickable area. + - %TRUE if the message could be successfully parsed. %FALSE if not. + %TRUE if the message could be successfully parsed. %FALSE if not. - A #GstMessage to inspect. + A #GstMessage to inspect. - A pointer to a gboolean to receive the + A pointer to a gboolean to receive the active/inactive state, or NULL. - Inspect a #GstQuery and return the #GstNavigationQueryType associated with + Inspect a #GstQuery and return the #GstNavigationQueryType associated with it if it is a #GstNavigation query. + - The #GstNavigationQueryType of the query, or + The #GstNavigationQueryType of the query, or #GST_NAVIGATION_QUERY_INVALID - The query to inspect + The query to inspect - Create a new #GstNavigation angles query. When executed, it will + Create a new #GstNavigation angles query. When executed, it will query the pipeline for the set of currently available angles, which may be greater than one in a multiangle video. + - The new query. + The new query. - Create a new #GstNavigation commands query. When executed, it will + Create a new #GstNavigation commands query. When executed, it will query the pipeline for the set of currently available commands. + - The new query. + The new query. - Parse the current angle number in the #GstNavigation angles @query into the + Parse the current angle number in the #GstNavigation angles @query into the #guint pointed to by the @cur_angle variable, and the number of available angles into the #guint pointed to by the @n_angles variable. + - %TRUE if the query could be successfully parsed. %FALSE if not. + %TRUE if the query could be successfully parsed. %FALSE if not. - a #GstQuery + a #GstQuery - Pointer to a #guint into which to store the + Pointer to a #guint into which to store the currently selected angle value from the query, or NULL - Pointer to a #guint into which to store the + Pointer to a #guint into which to store the number of angles value from the query, or NULL - Parse the number of commands in the #GstNavigation commands @query. + Parse the number of commands in the #GstNavigation commands @query. + - %TRUE if the query could be successfully parsed. %FALSE if not. + %TRUE if the query could be successfully parsed. %FALSE if not. - a #GstQuery + a #GstQuery - the number of commands in this query. + the number of commands in this query. - Parse the #GstNavigation command query and retrieve the @nth command from + Parse the #GstNavigation command query and retrieve the @nth command from it into @cmd. If the list contains less elements than @nth, @cmd will be set to #GST_NAVIGATION_COMMAND_INVALID. + - %TRUE if the query could be successfully parsed. %FALSE if not. + %TRUE if the query could be successfully parsed. %FALSE if not. - a #GstQuery + a #GstQuery - the nth command to retrieve. + the nth command to retrieve. - a pointer to store the nth command into. + a pointer to store the nth command into. - Set the #GstNavigation angles query result field in @query. + Set the #GstNavigation angles query result field in @query. + - a #GstQuery + a #GstQuery - the current viewing angle to set. + the current viewing angle to set. - the number of viewing angles to set. + the number of viewing angles to set. - Set the #GstNavigation command query result fields in @query. The number + Set the #GstNavigation command query result fields in @query. The number of commands passed must be equal to @n_commands. + - a #GstQuery + a #GstQuery - the number of commands to set. + the number of commands to set. - An array containing @n_cmds + An array containing @n_cmds @GstNavigationCommand values. @@ -11430,248 +13798,261 @@ of commands passed must be equal to @n_commands. + + - Lets you blend the @src image into the @dest image + Lets you blend the @src image into the @dest image + - The #GstVideoFrame where to blend @src in + The #GstVideoFrame where to blend @src in - the #GstVideoFrame that we want to blend into + the #GstVideoFrame that we want to blend into - The x offset in pixel where the @src image should be blended + The x offset in pixel where the @src image should be blended - the y offset in pixel where the @src image should be blended + the y offset in pixel where the @src image should be blended - the global_alpha each per-pixel alpha value is multiplied + the global_alpha each per-pixel alpha value is multiplied with - Scales a buffer containing RGBA (or AYUV) video. This is an internal + Scales a buffer containing RGBA (or AYUV) video. This is an internal helper function which is used to scale subtitle overlays, and may be deprecated in the near future. Use #GstVideoScaler to scale video buffers instead. + - the #GstVideoInfo describing the video data in @src_buffer + the #GstVideoInfo describing the video data in @src_buffer - the source buffer containing video pixels to scale + the source buffer containing video pixels to scale - the height in pixels to scale the video data in @src_buffer to + the height in pixels to scale the video data in @src_buffer to - the width in pixels to scale the video data in @src_buffer to + the width in pixels to scale the video data in @src_buffer to - pointer to a #GstVideoInfo structure that will be filled in + pointer to a #GstVideoInfo structure that will be filled in with the details for @dest_buffer - a pointer to a #GstBuffer variable, which will be + a pointer to a #GstBuffer variable, which will be set to a newly-allocated buffer containing the scaled pixels. - Given the Pixel Aspect Ratio and size of an input video frame, and the + 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. + - A boolean indicating success and a calculated Display Ratio in the + 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. - Numerator of the calculated display_ratio + Numerator of the calculated display_ratio - Denominator of the calculated display_ratio + Denominator of the calculated display_ratio - Width of the video frame in pixels + Width of the video frame in pixels - Height of the video frame in pixels + Height of the video frame in pixels - Numerator of the pixel aspect ratio of the input video. + Numerator of the pixel aspect ratio of the input video. - Denominator of the pixel aspect ratio of the input video. + Denominator of the pixel aspect ratio of the input video. - Numerator of the pixel aspect ratio of the display device + Numerator of the pixel aspect ratio of the display device - Denominator of the pixel aspect ratio of the display device + Denominator of the pixel aspect ratio of the display device + + - Parses fixed Closed Caption #GstCaps and returns the corresponding caption + Parses fixed Closed Caption #GstCaps and returns the corresponding caption type, or %GST_VIDEO_CAPTION_TYPE_UNKNOWN. + - #GstVideoCaptionType. + #GstVideoCaptionType. - Fixed #GstCaps to parse + Fixed #GstCaps to parse - Creates new caps corresponding to @type. + Creates new caps corresponding to @type. + - new #GstCaps + new #GstCaps - #GstVideoCaptionType + #GstVideoCaptionType - Convert @s to a #GstVideoChromaSite + Convert @s to a #GstVideoChromaSite + - a #GstVideoChromaSite or %GST_VIDEO_CHROMA_SITE_UNKNOWN when @s does + a #GstVideoChromaSite or %GST_VIDEO_CHROMA_SITE_UNKNOWN when @s does not contain a valid chroma description. - a chromasite string + a chromasite string - Perform resampling of @width chroma pixels in @lines. + Perform resampling of @width chroma pixels in @lines. + - a #GstVideoChromaResample + a #GstVideoChromaResample - pixel lines + pixel lines - the number of pixels on one line + the number of pixels on one line - Create a new resampler object for the given parameters. When @h_factor or + Create a new resampler object for the given parameters. When @h_factor or @v_factor is > 0, upsampling will be used, otherwise subsampling is performed. + - a new #GstVideoChromaResample that should be freed with + a new #GstVideoChromaResample that should be freed with gst_video_chroma_resample_free() after usage. - a #GstVideoChromaMethod + a #GstVideoChromaMethod - a #GstVideoChromaSite + a #GstVideoChromaSite - #GstVideoChromaFlags + #GstVideoChromaFlags - the #GstVideoFormat + the #GstVideoFormat - horizontal resampling factor + horizontal resampling factor - vertical resampling factor + vertical resampling factor - Converts @site to its string representation. + Converts @site to its string representation. + - a string describing @site. + a string describing @site. - a #GstVideoChromaSite + a #GstVideoChromaSite - Get the coefficients used to convert between Y'PbPr and R'G'B' using @matrix. + Get the coefficients used to convert between Y'PbPr and R'G'B' using @matrix. When: @@ -11695,67 +14076,70 @@ and the other way around: G' = Y' - Cb*2*(1-Kb)*Kb/(1-Kr-Kb) - Cr*2*(1-Kr)*Kr/(1-Kr-Kb) B' = Y' + Cb*2*(1-Kb) ]| + - TRUE if @matrix was a YUV color format and @Kr and @Kb contain valid + TRUE if @matrix was a YUV color format and @Kr and @Kb contain valid values. - a #GstVideoColorMatrix + a #GstVideoColorMatrix - result red channel coefficient + result red channel coefficient - result blue channel coefficient + result blue channel coefficient - Get information about the chromaticity coordinates of @primaries. + Get information about the chromaticity coordinates of @primaries. + - a #GstVideoColorPrimariesInfo for @primaries. + a #GstVideoColorPrimariesInfo for @primaries. - a #GstVideoColorPrimaries + a #GstVideoColorPrimaries - Compute the offset and scale values for each component of @info. For each + Compute the offset and scale values for each component of @info. For each component, (c[i] - offset[i]) / scale[i] will scale the component c[i] to the range [0.0 .. 1.0]. The reverse operation (c[i] * scale[i]) + offset[i] can be used to convert the component values in range [0.0 .. 1.0] back to their representation in @info and @range. + - a #GstVideoColorRange + a #GstVideoColorRange - a #GstVideoFormatInfo + a #GstVideoFormatInfo - output offsets + output offsets - output scale + output scale @@ -11763,7 +14147,7 @@ the component values in range [0.0 .. 1.0] back to their representation in - Convert @val to its gamma decoded value. This is the inverse operation of + Convert @val to its gamma decoded value. This is the inverse operation of @gst_video_color_transfer_encode(). For a non-linear value L' in the range [0..1], conversion to the linear @@ -11775,23 +14159,24 @@ L is in general performed with a power function like: Depending on @func, different formulas might be applied. Some formulas encode a linear segment in the lower range. + - the gamme decoded value of @val + the gamme decoded value of @val - a #GstVideoTransferFunction + a #GstVideoTransferFunction - a value + a value - Convert @val to its gamma encoded value. + Convert @val to its gamma encoded value. For a linear value L in the range [0..1], conversion to the non-linear (gamma encoded) L' is in general performed with a power function like: @@ -11802,49 +14187,51 @@ For a linear value L in the range [0..1], conversion to the non-linear Depending on @func, different formulas might be applied. Some formulas encode a linear segment in the lower range. + - the gamme encoded value of @val + the gamme encoded value of @val - a #GstVideoTransferFunction + a #GstVideoTransferFunction - a value + a value - Converts a raw video buffer into the specified output caps. + Converts a raw video buffer into the specified output caps. The output caps can be any raw video formats or any image formats (jpeg, png, ...). The width, height and pixel-aspect-ratio can also be specified in the output caps. + - The converted #GstSample, or %NULL if an error happened (in which case @err + The converted #GstSample, or %NULL if an error happened (in which case @err will point to the #GError). - a #GstSample + a #GstSample - the #GstCaps to convert to + the #GstCaps to convert to - the maximum amount of time allowed for the processing. + the maximum amount of time allowed for the processing. - Converts a raw video buffer into the specified output caps. + Converts a raw video buffer into the specified output caps. The output caps can be any raw video formats or any image formats (jpeg, png, ...). @@ -11857,119 +14244,125 @@ this will always be the global default main context. @destroy_notify will be called after the callback was called and @user_data is not needed anymore. + - a #GstSample + a #GstSample - the #GstCaps to convert to + the #GstCaps to convert to - the maximum amount of time allowed for the processing. + the maximum amount of time allowed for the processing. - %GstVideoConvertSampleCallback that will be called after conversion. + %GstVideoConvertSampleCallback that will be called after conversion. - extra data that will be passed to the @callback + extra data that will be passed to the @callback - %GDestroyNotify to be called after @user_data is not needed anymore + %GDestroyNotify to be called after @user_data is not needed anymore - Create a new converter object to convert between @in_info and @out_info + Create a new converter object to convert between @in_info and @out_info with @config. + - a #GstVideoConverter or %NULL if conversion is not possible. + a #GstVideoConverter or %NULL if conversion is not possible. - a #GstVideoInfo + a #GstVideoInfo - a #GstVideoInfo + a #GstVideoInfo - a #GstStructure with configuration options + a #GstStructure with configuration options + + - Make a new dither object for dithering lines of @format using the + Make a new dither object for dithering lines of @format using the algorithm described by @method. Each component will be quantized to a multiple of @quantizer. Better performance is achived when @quantizer is a power of 2. @width is the width of the lines that this ditherer will handle. + - a new #GstVideoDither + a new #GstVideoDither - a #GstVideoDitherMethod + a #GstVideoDitherMethod - a #GstVideoDitherFlags + a #GstVideoDitherFlags - a #GstVideoFormat + a #GstVideoFormat - quantizer + quantizer - the width of the lines + the width of the lines - Checks if an event is a force key unit event. Returns true for both upstream + Checks if an event is a force key unit event. Returns true for both upstream and downstream force key unit events. + - %TRUE if the event is a valid force key unit event + %TRUE if the event is a valid force key unit event - A #GstEvent to check + A #GstEvent to check - Creates a new downstream force key unit event. A downstream force key unit + Creates a new downstream force key unit event. A downstream force key unit event can be sent down the pipeline to request downstream elements to produce a key unit. A downstream force key unit event must also be sent when handling an upstream force key unit event to notify downstream that the latter has been @@ -11977,53 +14370,55 @@ handled. To parse an event created by gst_video_event_new_downstream_force_key_unit() use gst_video_event_parse_downstream_force_key_unit(). + - The new GstEvent + The new GstEvent - the timestamp of the buffer that starts a new key unit + the timestamp of the buffer that starts a new key unit - the stream_time of the buffer that starts a new key unit + the stream_time of the buffer that starts a new key unit - the running_time of the buffer that starts a new key unit + the running_time of the buffer that starts a new key unit - %TRUE to produce headers when starting a new key unit + %TRUE to produce headers when starting a new key unit - integer that can be used to number key units + integer that can be used to number key units - Creates a new Still Frame event. If @in_still is %TRUE, then the event + Creates a new Still Frame event. If @in_still is %TRUE, then the event represents the start of a still frame sequence. If it is %FALSE, then the event ends a still frame sequence. To parse an event created by gst_video_event_new_still_frame() use gst_video_event_parse_still_frame(). + - The new GstEvent + The new GstEvent - boolean value for the still-frame state of the event. + boolean value for the still-frame state of the event. - Creates a new upstream force key unit event. An upstream force key unit event + Creates a new upstream force key unit event. An upstream force key unit event can be sent to request upstream elements to produce a key unit. @running_time can be set to request a new key unit at a specific @@ -12032,64 +14427,66 @@ new key unit as soon as possible. To parse an event created by gst_video_event_new_downstream_force_key_unit() use gst_video_event_parse_downstream_force_key_unit(). + - The new GstEvent + The new GstEvent - the running_time at which a new key unit should be produced + the running_time at which a new key unit should be produced - %TRUE to produce headers when starting a new key unit + %TRUE to produce headers when starting a new key unit - integer that can be used to number key units + integer that can be used to number key units - Get timestamp, stream-time, running-time, all-headers and count in the force + Get timestamp, stream-time, running-time, all-headers and count in the force key unit event. See gst_video_event_new_downstream_force_key_unit() for a full description of the downstream force key unit event. @running_time will be adjusted for any pad offsets of pads it was passing through. + - %TRUE if the event is a valid downstream force key unit event. + %TRUE if the event is a valid downstream force key unit event. - A #GstEvent to parse + A #GstEvent to parse - A pointer to the timestamp in the event + A pointer to the timestamp in the event - A pointer to the stream-time in the event + A pointer to the stream-time in the event - A pointer to the running-time in the event + A pointer to the running-time in the event - A pointer to the all_headers flag in the event + A pointer to the all_headers flag in the event - A pointer to the count field of the event + A pointer to the count field of the event - Parse a #GstEvent, identify if it is a Still Frame event, and + Parse a #GstEvent, identify if it is a Still Frame event, and return the still-frame state from the event if it is. If the event represents the start of a still frame, the in_still variable will be set to TRUE, otherwise FALSE. It is OK to pass NULL for the @@ -12097,222 +14494,235 @@ in_still variable order to just check whether the event is a valid still-frame event. Create a still frame event using gst_video_event_new_still_frame() + - %TRUE if the event is a valid still-frame event. %FALSE if not + %TRUE if the event is a valid still-frame event. %FALSE if not - A #GstEvent to parse + A #GstEvent to parse - + A boolean to receive the still-frame status from the event, or NULL - Get running-time, all-headers and count in the force key unit event. See + Get running-time, all-headers and count in the force key unit event. See gst_video_event_new_upstream_force_key_unit() for a full description of the upstream force key unit event. Create an upstream force key unit event using gst_video_event_new_upstream_force_key_unit() @running_time will be adjusted for any pad offsets of pads it was passing through. + - %TRUE if the event is a valid upstream force-key-unit event. %FALSE if not + %TRUE if the event is a valid upstream force-key-unit event. %FALSE if not - A #GstEvent to parse + A #GstEvent to parse - A pointer to the running_time in the event + A pointer to the running_time in the event - A pointer to the all_headers flag in the event + A pointer to the all_headers flag in the event - A pointer to the count field in the event + A pointer to the count field in the event - Convert @order to a #GstVideoFieldOrder + Convert @order to a #GstVideoFieldOrder + - the #GstVideoFieldOrder of @order or + the #GstVideoFieldOrder of @order or #GST_VIDEO_FIELD_ORDER_UNKNOWN when @order is not a valid string representation for a #GstVideoFieldOrder. - a field order + a field order - Convert @order to its string representation. + Convert @order to its string representation. + - @order as a string or NULL if @order in invalid. + @order as a string or NULL if @order in invalid. - a #GstVideoFieldOrder + a #GstVideoFieldOrder - Converts a FOURCC value into the corresponding #GstVideoFormat. + Converts a FOURCC value into the corresponding #GstVideoFormat. If the FOURCC cannot be represented by #GstVideoFormat, #GST_VIDEO_FORMAT_UNKNOWN is returned. + - the #GstVideoFormat describing the FOURCC value + the #GstVideoFormat describing the FOURCC value - a FOURCC value representing raw YUV video + a FOURCC value representing raw YUV video - Find the #GstVideoFormat for the given parameters. + Find the #GstVideoFormat for the given parameters. + - a #GstVideoFormat or GST_VIDEO_FORMAT_UNKNOWN when the parameters to + a #GstVideoFormat or GST_VIDEO_FORMAT_UNKNOWN when the parameters to not specify a known format. - the amount of bits used for a pixel + the amount of bits used for a pixel - the amount of bits used to store a pixel. This value is bigger than + the amount of bits used to store a pixel. This value is bigger than @depth - the endianness of the masks, #G_LITTLE_ENDIAN or #G_BIG_ENDIAN + the endianness of the masks, #G_LITTLE_ENDIAN or #G_BIG_ENDIAN - the red mask + the red mask - the green mask + the green mask - the blue mask + the blue mask - the alpha mask, or 0 if no alpha mask + the alpha mask, or 0 if no alpha mask - Convert the @format string to its #GstVideoFormat. + Convert the @format string to its #GstVideoFormat. + - the #GstVideoFormat for @format or GST_VIDEO_FORMAT_UNKNOWN when the + the #GstVideoFormat for @format or GST_VIDEO_FORMAT_UNKNOWN when the string is not a known format. - a format string + a format string - Get the #GstVideoFormatInfo for @format + Get the #GstVideoFormatInfo for @format + - The #GstVideoFormatInfo for @format. + The #GstVideoFormatInfo for @format. - a #GstVideoFormat + a #GstVideoFormat - Get the default palette of @format. This the palette used in the pack + Get the default palette of @format. This the palette used in the pack function for paletted formats. + - the default palette of @format or %NULL when + the default palette of @format or %NULL when @format does not have a palette. - a #GstVideoFormat + a #GstVideoFormat - size of the palette in bytes + size of the palette in bytes - Converts a #GstVideoFormat value into the corresponding FOURCC. Only + Converts a #GstVideoFormat value into the corresponding FOURCC. Only a few YUV formats have corresponding FOURCC values. If @format has no corresponding FOURCC value, 0 is returned. + - the FOURCC corresponding to @format + the FOURCC corresponding to @format - a #GstVideoFormat video format + a #GstVideoFormat video format - Returns a string containing a descriptive name for + Returns a string containing a descriptive name for the #GstVideoFormat if there is one, or NULL otherwise. + - the name corresponding to @format + the name corresponding to @format - a #GstVideoFormat video format + a #GstVideoFormat video format + + - Given the nominal duration of one video frame, + Given the nominal duration of one video frame, this function will check some standard framerates for a close match (within 0.1%) and return one if possible, @@ -12320,74 +14730,81 @@ It will calculate an arbitrary framerate if no close match was found, and return %FALSE. It returns %FALSE if a duration of 0 is passed. + - %TRUE if a close "standard" framerate was + %TRUE if a close "standard" framerate was recognised, and %FALSE otherwise. - Nominal duration of one frame + Nominal duration of one frame - Numerator of the calculated framerate + Numerator of the calculated framerate - Denominator of the calculated framerate + Denominator of the calculated framerate - Convert @mode to a #GstVideoInterlaceMode + Convert @mode to a #GstVideoInterlaceMode + - the #GstVideoInterlaceMode of @mode or + the #GstVideoInterlaceMode of @mode or #GST_VIDEO_INTERLACE_MODE_PROGRESSIVE when @mode is not a valid string representation for a #GstVideoInterlaceMode. - a mode + a mode - Convert @mode to its string representation. + Convert @mode to its string representation. + - @mode as a string or NULL if @mode in invalid. + @mode as a string or NULL if @mode in invalid. - a #GstVideoInterlaceMode + a #GstVideoInterlaceMode + + - Get the #GQuark for the "gst-video-scale" metadata transform operation. + Get the #GQuark for the "gst-video-scale" metadata transform operation. + - a #GQuark + a #GQuark + - A const #GValue containing a list of stereo video modes + A const #GValue containing a list of stereo video modes Utility function that returns a #GValue with a GstList of packed stereo video modes with double the height of a single view for use in @@ -12396,8 +14813,9 @@ caps negotiations. Currently this is top-bottom and row-interleaved. + - A const #GValue containing a list of stereo video modes + A const #GValue containing a list of stereo video modes Utility function that returns a #GValue with a GstList of packed stereo video modes that have double the width/height of a single @@ -12407,8 +14825,9 @@ view for use in caps negotiation. Currently this is just + - A const #GValue containing a list of stereo video modes + A const #GValue containing a list of stereo video modes Utility function that returns a #GValue with a GstList of packed stereo video modes with double the width of a single view for use in @@ -12418,8 +14837,9 @@ and column-interleaved. + - A const #GValue containing a list of mono video modes + A const #GValue containing a list of mono video modes Utility function that returns a #GValue with a GstList of mono video modes (mono/left/right) for use in caps negotiations. @@ -12427,8 +14847,9 @@ modes (mono/left/right) for use in caps negotiations. + - A const #GValue containing a list of 'unpacked' stereo video modes + A const #GValue containing a list of 'unpacked' stereo video modes Utility function that returns a #GValue with a GstList of unpacked stereo video modes (separated/frame-by-frame/frame-by-frame-multiview) @@ -12437,8 +14858,9 @@ for use in caps negotiations. + - A boolean indicating whether the + A boolean indicating whether the #GST_VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT flag should be set. Utility function that heuristically guess whether a @@ -12449,30 +14871,31 @@ overall display aspect ratio. - A #GstVideoMultiviewMode + A #GstVideoMultiviewMode - Video frame width in pixels + Video frame width in pixels - Video frame height in pixels + Video frame height in pixels - Numerator of the video pixel-aspect-ratio + Numerator of the video pixel-aspect-ratio - Denominator of the video pixel-aspect-ratio + Denominator of the video pixel-aspect-ratio + - The #GstVideoMultiviewMode value + The #GstVideoMultiviewMode value Given a string from a caps multiview-mode field, output the corresponding #GstVideoMultiviewMode @@ -12481,14 +14904,15 @@ or #GST_VIDEO_MULTIVIEW_MODE_NONE - multiview-mode field string from caps + multiview-mode field string from caps + - The caps string representation of the mode, or NULL if invalid. + The caps string representation of the mode, or NULL if invalid. Given a #GstVideoMultiviewMode returns the multiview-mode caps string for insertion into a caps structure @@ -12496,177 +14920,188 @@ for insertion into a caps structure - A #GstVideoMultiviewMode value + A #GstVideoMultiviewMode value - Utility function that transforms the width/height/PAR + Utility function that transforms the width/height/PAR and multiview mode and flags of a #GstVideoInfo into the requested mode. + - A #GstVideoInfo structure to operate on + A #GstVideoInfo structure to operate on - A #GstVideoMultiviewMode value + A #GstVideoMultiviewMode value - A set of #GstVideoMultiviewFlags + A set of #GstVideoMultiviewFlags + + - This helper shall be used by classes implementing the #GstVideoOverlay + This helper shall be used by classes implementing the #GstVideoOverlay interface that want the render rectangle to be controllable using properties. This helper will install "render-rectangle" property into the class. + - The class on which the properties will be installed + The class on which the properties will be installed - The first free property ID to use + The first free property ID to use - This helper shall be used by classes implementing the #GstVideoOverlay + This helper shall be used by classes implementing the #GstVideoOverlay interface that want the render rectangle to be controllable using properties. This helper will parse and set the render rectangle calling gst_video_overlay_set_render_rectangle(). + - %TRUE if the @property_id matches the GstVideoOverlay property + %TRUE if the @property_id matches the GstVideoOverlay property - The instance on which the property is set + The instance on which the property is set - The highest property ID. + The highest property ID. - The property ID + The property ID - The #GValue to be set + The #GValue to be set + + - Make a new @method video scaler. @in_size source lines/pixels will + Make a new @method video scaler. @in_size source lines/pixels will be scaled to @out_size destination lines/pixels. @n_taps specifies the amount of pixels to use from the source for one output pixel. If n_taps is 0, this function chooses a good value automatically based on the @method and @in_size/@out_size. + - a #GstVideoScaler + a #GstVideoScaler - a #GstVideoResamplerMethod + a #GstVideoResamplerMethod - #GstVideoScalerFlags + #GstVideoScalerFlags - number of taps to use + number of taps to use - number of source elements + number of source elements - number of destination elements + number of destination elements - extra options + extra options - Get the tile index of the tile at coordinates @x and @y in the tiled + Get the tile index of the tile at coordinates @x and @y in the tiled image of @x_tiles by @y_tiles. Use this method when @mode is of type %GST_VIDEO_TILE_TYPE_INDEXED. + - the index of the tile at @x and @y in the tiled image of + the index of the tile at @x and @y in the tiled image of @x_tiles by @y_tiles. - a #GstVideoTileMode + a #GstVideoTileMode - x coordinate + x coordinate - y coordinate + y coordinate - number of horizintal tiles + number of horizintal tiles - number of vertical tiles + number of vertical tiles + + diff --git a/gir-files/GstWebRTC-1.0.gir b/gir-files/GstWebRTC-1.0.gir index 74f1119ca..5a1450ea6 100644 --- a/gir-files/GstWebRTC-1.0.gir +++ b/gir-files/GstWebRTC-1.0.gir @@ -15,12 +15,239 @@ and/or use gtk-doc annotations. --> shared-library="libgstwebrtc-1.0.so.0" c:identifier-prefixes="Gst" c:symbol-prefixes="gst"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - GST_WEBRTC_BUNDLE_POLICY_NONE: none + GST_WEBRTC_BUNDLE_POLICY_NONE: none GST_WEBRTC_BUNDLE_POLICY_BALANCED: balanced GST_WEBRTC_BUNDLE_POLICY_MAX_COMPAT: max-compat GST_WEBRTC_BUNDLE_POLICY_MAX_BUNDLE: max-bundle @@ -51,7 +278,9 @@ for more information. glib:type-name="GstWebRTCDTLSSetup" glib:get-type="gst_webrtc_dtls_setup_get_type" c:type="GstWebRTCDTLSSetup"> - GST_WEBRTC_DTLS_SETUP_NONE: none + GST_WEBRTC_DTLS_SETUP_NONE: none GST_WEBRTC_DTLS_SETUP_ACTPASS: actpass GST_WEBRTC_DTLS_SETUP_ACTIVE: sendonly GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly @@ -83,7 +312,9 @@ GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly glib:type-name="GstWebRTCDTLSTransport" glib:get-type="gst_webrtc_dtls_transport_get_type" glib:type-struct="WebRTCDTLSTransportClass"> + + @@ -98,6 +329,7 @@ GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly + @@ -163,7 +395,7 @@ GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly - + @@ -171,11 +403,12 @@ GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly + - + @@ -184,7 +417,9 @@ GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly glib:type-name="GstWebRTCDTLSTransportState" glib:get-type="gst_webrtc_dtls_transport_state_get_type" c:type="GstWebRTCDTLSTransportState"> - GST_WEBRTC_DTLS_TRANSPORT_STATE_NEW: new + GST_WEBRTC_DTLS_TRANSPORT_STATE_NEW: new GST_WEBRTC_DTLS_TRANSPORT_STATE_CLOSED: closed GST_WEBRTC_DTLS_TRANSPORT_STATE_FAILED: failed GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTING: connecting @@ -220,7 +455,9 @@ GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTED: connected glib:type-name="GstWebRTCDataChannelState" glib:get-type="gst_webrtc_data_channel_state_get_type" c:type="GstWebRTCDataChannelState"> - GST_WEBRTC_DATA_CHANNEL_STATE_NEW: new + GST_WEBRTC_DATA_CHANNEL_STATE_NEW: new GST_WEBRTC_DATA_CHANNEL_STATE_CONNECTING: connection GST_WEBRTC_DATA_CHANNEL_STATE_OPEN: open GST_WEBRTC_DATA_CHANNEL_STATE_CLOSING: closing @@ -261,20 +498,24 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcdatachannelstate">h value="0" c:identifier="GST_WEBRTC_FEC_TYPE_NONE" glib:nick="none"> - none + none - ulpfec + red + ulpfec + red - GST_WEBRTC_ICE_COMPONENT_RTP, + GST_WEBRTC_ICE_COMPONENT_RTP, GST_WEBRTC_ICE_COMPONENT_RTCP, glib:type-name="GstWebRTCICEConnectionState" glib:get-type="gst_webrtc_ice_connection_state_get_type" c:type="GstWebRTCICEConnectionState"> - GST_WEBRTC_ICE_CONNECTION_STATE_NEW: new + GST_WEBRTC_ICE_CONNECTION_STATE_NEW: new GST_WEBRTC_ICE_CONNECTION_STATE_CHECKING: checking GST_WEBRTC_ICE_CONNECTION_STATE_CONNECTED: connected GST_WEBRTC_ICE_CONNECTION_STATE_COMPLETED: completed @@ -339,7 +582,9 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtciceconnectionstate"> glib:type-name="GstWebRTCICEGatheringState" glib:get-type="gst_webrtc_ice_gathering_state_get_type" c:type="GstWebRTCICEGatheringState"> - GST_WEBRTC_ICE_GATHERING_STATE_NEW: new + GST_WEBRTC_ICE_GATHERING_STATE_NEW: new GST_WEBRTC_ICE_GATHERING_STATE_GATHERING: gathering GST_WEBRTC_ICE_GATHERING_STATE_COMPLETE: complete See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcicegatheringstate">http://w3c.github.io/webrtc-pc/#dom-rtcicegatheringstate</ulink> @@ -363,7 +608,9 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcicegatheringstate"> glib:type-name="GstWebRTCICERole" glib:get-type="gst_webrtc_ice_role_get_type" c:type="GstWebRTCICERole"> - GST_WEBRTC_ICE_ROLE_CONTROLLED: controlled + GST_WEBRTC_ICE_ROLE_CONTROLLED: controlled GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling glib:type-name="GstWebRTCICETransport" glib:get-type="gst_webrtc_ice_transport_get_type" glib:type-struct="WebRTCICETransportClass"> + + @@ -396,6 +645,7 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling + @@ -411,6 +661,7 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling + @@ -426,6 +677,7 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling + @@ -446,6 +698,7 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling + @@ -491,7 +744,7 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling - + @@ -514,11 +767,13 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling + + @@ -530,7 +785,7 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling - + @@ -540,7 +795,9 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling glib:type-name="GstWebRTCICETransportPolicy" glib:get-type="gst_webrtc_ice_transport_policy_get_type" c:type="GstWebRTCICETransportPolicy"> - GST_WEBRTC_ICE_TRANSPORT_POLICY_ALL: all + GST_WEBRTC_ICE_TRANSPORT_POLICY_ALL: all GST_WEBRTC_ICE_TRANSPORT_POLICY_RELAY: relay See https://tools.ietf.org/html/draft-ietf-rtcweb-jsep-24#section-4.1.1 for more information. @@ -559,7 +816,9 @@ for more information. glib:type-name="GstWebRTCPeerConnectionState" glib:get-type="gst_webrtc_peer_connection_state_get_type" c:type="GstWebRTCPeerConnectionState"> - GST_WEBRTC_PEER_CONNECTION_STATE_NEW: new + GST_WEBRTC_PEER_CONNECTION_STATE_NEW: new GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTING: connecting GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTED: connected GST_WEBRTC_PEER_CONNECTION_STATE_DISCONNECTED: disconnected @@ -602,7 +861,9 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcpeerconnectionstate"&g glib:type-name="GstWebRTCPriorityType" glib:get-type="gst_webrtc_priority_type_get_type" c:type="GstWebRTCPriorityType"> - GST_WEBRTC_PRIORITY_TYPE_VERY_LOW: very-low + GST_WEBRTC_PRIORITY_TYPE_VERY_LOW: very-low GST_WEBRTC_PRIORITY_TYPE_LOW: low GST_WEBRTC_PRIORITY_TYPE_MEDIUM: medium GST_WEBRTC_PRIORITY_TYPE_HIGH: high @@ -635,13 +896,16 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: glib:type-name="GstWebRTCRTPReceiver" glib:get-type="gst_webrtc_rtp_receiver_get_type" glib:type-struct="WebRTCRTPReceiverClass"> + + + @@ -656,6 +920,7 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: + @@ -678,7 +943,7 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: - + @@ -686,11 +951,12 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: + - + @@ -702,13 +968,16 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: glib:type-name="GstWebRTCRTPSender" glib:get-type="gst_webrtc_rtp_sender_get_type" glib:type-struct="WebRTCRTPSenderClass"> + + + @@ -723,6 +992,7 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: + @@ -750,7 +1020,7 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: - + @@ -758,11 +1028,12 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: + - + @@ -775,6 +1046,7 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: glib:type-name="GstWebRTCRTPTransceiver" glib:get-type="gst_webrtc_rtp_transceiver_get_type" glib:type-struct="WebRTCRTPTransceiverClass"> + - + @@ -831,11 +1103,12 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: + - + @@ -875,7 +1148,9 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype">http: glib:type-name="GstWebRTCSCTPTransportState" glib:get-type="gst_webrtc_sctp_transport_state_get_type" c:type="GstWebRTCSCTPTransportState"> - GST_WEBRTC_SCTP_TRANSPORT_STATE_NEW: new + GST_WEBRTC_SCTP_TRANSPORT_STATE_NEW: new GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTING: connecting GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTED: connected GST_WEBRTC_SCTP_TRANSPORT_STATE_CLOSED: closed @@ -905,7 +1180,9 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcsctptransportstate"> glib:type-name="GstWebRTCSDPType" glib:get-type="gst_webrtc_sdp_type_get_type" c:type="GstWebRTCSDPType"> - GST_WEBRTC_SDP_TYPE_OFFER: offer + GST_WEBRTC_SDP_TYPE_OFFER: offer GST_WEBRTC_SDP_TYPE_PRANSWER: pranswer GST_WEBRTC_SDP_TYPE_ANSWER: answer GST_WEBRTC_SDP_TYPE_ROLLBACK: rollback @@ -931,14 +1208,19 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#rtcsdptype">http://w3c.git glib:nick="rollback"> + - the string representation of @type or "unknown" when @type is not + the string representation of @type or "unknown" when @type is not recognized. - a #GstWebRTCSDPType + a #GstWebRTCSDPType @@ -949,56 +1231,80 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#rtcsdptype">http://w3c.git glib:type-name="GstWebRTCSessionDescription" glib:get-type="gst_webrtc_session_description_get_type" c:symbol-prefix="webrtc_session_description"> - See <ulink url="https://www.w3.org/TR/webrtc/#rtcsessiondescription-class">https://www.w3.org/TR/webrtc/#rtcsessiondescription-class</ulink> + See <ulink url="https://www.w3.org/TR/webrtc/#rtcsessiondescription-class">https://www.w3.org/TR/webrtc/#rtcsessiondescription-class</ulink> + - the #GstWebRTCSDPType of the description + the #GstWebRTCSDPType of the description - the #GstSDPMessage of the description + the #GstSDPMessage of the description + - a new #GstWebRTCSessionDescription from @type + a new #GstWebRTCSessionDescription from @type and @sdp - a #GstWebRTCSDPType + a #GstWebRTCSDPType - a #GstSDPMessage + a #GstSDPMessage + - a new copy of @src + a new copy of @src - a #GstWebRTCSessionDescription + a #GstWebRTCSessionDescription - Free @desc and all associated resources + Free @desc and all associated resources + - a #GstWebRTCSessionDescription + a #GstWebRTCSessionDescription @@ -1009,7 +1315,9 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#rtcsdptype">http://w3c.git glib:type-name="GstWebRTCSignalingState" glib:get-type="gst_webrtc_signaling_state_get_type" c:type="GstWebRTCSignalingState"> - GST_WEBRTC_SIGNALING_STATE_STABLE: stable + GST_WEBRTC_SIGNALING_STATE_STABLE: stable GST_WEBRTC_SIGNALING_STATE_CLOSED: closed GST_WEBRTC_SIGNALING_STATE_HAVE_LOCAL_OFFER: have-local-offer GST_WEBRTC_SIGNALING_STATE_HAVE_REMOTE_OFFER: have-remote-offer @@ -1051,7 +1359,9 @@ See <ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcsignalingstate">htt glib:type-name="GstWebRTCStatsType" glib:get-type="gst_webrtc_stats_type_get_type" c:type="GstWebRTCStatsType"> - GST_WEBRTC_STATS_CODEC: codec + GST_WEBRTC_STATS_CODEC: codec GST_WEBRTC_STATS_INBOUND_RTP: inbound-rtp GST_WEBRTC_STATS_OUTBOUND_RTP: outbound-rtp GST_WEBRTC_STATS_REMOTE_INBOUND_RTP: remote-inbound-rtp @@ -1139,14 +1449,19 @@ GST_WEBRTC_STATS_CERTIFICATE: certificate + - the string representation of @type or "unknown" when @type is not + the string representation of @type or "unknown" when @type is not recognized. - a #GstWebRTCSDPType + a #GstWebRTCSDPType