GESUriClipAsset

GESUriClipAsset — A GESAsset subclass specialized in GESUriClip extraction

Functions

Types and Values

Object Hierarchy

    GObject
    ╰── GESAsset
        ╰── GESClipAsset
            ╰── GESUriClipAsset

Implemented Interfaces

GESUriClipAsset implements GAsyncInitable, GInitable and GESMetaContainer.

Includes

#include <ges/ges.h>

Description

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 Metadatas of the Asser.

Functions

ges_uri_clip_asset_get_type ()

GType
ges_uri_clip_asset_get_type (void);

ges_uri_clip_asset_get_duration ()

GstClockTime
ges_uri_clip_asset_get_duration (GESUriClipAsset *self);

Gets duration of the file represented by self

Parameters

self

a GESUriClipAsset

 

Returns

The duration of self


ges_uri_clip_asset_is_image ()

gboolean
ges_uri_clip_asset_is_image (GESUriClipAsset *self);

Gets Whether the file represented by self is an image or not

Parameters

self

a indent: Standard input:311: Error:Unexpected end of file GESUriClipAsset

 

Returns

Whether the file represented by self is an image or not


ges_uri_clip_asset_get_info ()

GstDiscovererInfo *
ges_uri_clip_asset_get_info (const GESUriClipAsset *self);

Gets GstDiscovererInfo about the file

Parameters

self

Target asset

 

Returns

GstDiscovererInfo of specified asset.

[transfer none]


ges_uri_clip_asset_new ()

void
ges_uri_clip_asset_new (const gchar *uri,
                        GCancellable *cancellable,
                        GAsyncReadyCallback callback,
                        gpointer user_data);

Creates a GESUriClipAsset for uri

Example of request of a GESUriClipAsset:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// The request callback
static void
filesource_asset_loaded_cb (GESAsset * source, GAsyncResult * res, gpointer user_data)
{
  GError *error = NULL;
  GESUriClipAsset *filesource_asset;

  filesource_asset = GES_URI_CLIP_ASSET (ges_asset_request_finish (res, &error));
  if (filesource_asset) {
   g_print ("The file: %s is usable as a FileSource, it is%s an image and lasts %" GST_TIME_FORMAT,
       ges_asset_get_id (GES_ASSET (filesource_asset))
       ges_uri_clip_asset_is_image (filesource_asset) ? "" : " not",
       GST_TIME_ARGS (ges_uri_clip_asset_get_duration (filesource_asset));
  } else {
   g_print ("The file: %s is *not* usable as a FileSource because: %s",
       ges_asset_get_id (source), error->message);
  }

  gst_object_unref (mfs);
}

// The request:
ges_uri_clip_asset_new (uri, (GAsyncReadyCallback) filesource_asset_loaded_cb, user_data);

Parameters

uri

The URI of the file for which to create a GESUriClipAsset

 

cancellable

optional GCancellable object, NULL to ignore.

 

callback

a GAsyncReadyCallback to call when the initialization is finished.

[scope async]

user_data

The user data to pass when callback is called

 

ges_uri_clip_asset_request_sync ()

GESUriClipAsset *
ges_uri_clip_asset_request_sync (const gchar *uri,
                                 GError **error);

Creates a GESUriClipAsset for uri syncronously. You should avoid to use it in application, and rather create GESUriClipAsset asynchronously

Parameters

uri

The URI of the file for which to create a GESUriClipAsset. You can also use multi file uris for GESMultiFileSource.

 

error

An error to be set in case something wrong happens or NULL.

[allow-none]

Returns

A reference to the requested asset or NULL if an error happend.

[transfer none]


ges_uri_clip_asset_get_stream_assets ()

const GList *
ges_uri_clip_asset_get_stream_assets (GESUriClipAsset *self);

Get the GESUriSourceAsset self containes

Parameters

self

A GESUriClipAsset

 

Returns

a GList of GESUriSourceAsset.

[transfer none][element-type GESUriSourceAsset]


ges_uri_clip_asset_class_set_timeout ()

void
ges_uri_clip_asset_class_set_timeout (GESUriClipAssetClass *klass,
                                      GstClockTime timeout);

Sets the timeout of GESUriClipAsset loading

Parameters

klass

The GESUriClipAssetClass on which to set the discoverer timeout

 

timeout

The timeout to set

 

Types and Values

GESUriClipAsset

typedef struct _GESUriClipAsset GESUriClipAsset;