GstIndex

GstIndex — Generate indexes on objects

Synopsis


#include <gst/gst.h>


            GstIndex;
            GstIndexEntry;
            GstIndexGroup;
enum        GstIndexCertainty;
enum        GstIndexEntryType;
enum        GstIndexLookupMethod;
#define     GST_INDEX_NASSOCS               (entry)
#define     GST_INDEX_ASSOC_FLAGS           (entry)
#define     GST_INDEX_ASSOC_FORMAT          (entry,i)
#define     GST_INDEX_ASSOC_VALUE           (entry,i)
            GstIndexAssociation;
enum        GstAssocFlags;
#define     GST_INDEX_FORMAT_FORMAT         (entry)
#define     GST_INDEX_FORMAT_KEY            (entry)
#define     GST_INDEX_ID_INVALID
#define     GST_INDEX_ID_DESCRIPTION        (entry)
gboolean    (*GstIndexFilter)               (GstIndex *index,
                                             GstIndexEntry *entry,
                                             gpointer user_data);
enum        GstIndexResolverMethod;
gboolean    (*GstIndexResolver)             (GstIndex *index,
                                             GstObject *writer,
                                             gchar **writer_string,
                                             gpointer user_data);
enum        GstIndexFlags;
#define     GST_INDEX_IS_READABLE           (obj)
#define     GST_INDEX_IS_WRITABLE           (obj)
GstIndex*   gst_index_new                   (void);
void        gst_index_commit                (GstIndex *index,
                                             gint id);
gint        gst_index_get_group             (GstIndex *index);
gint        gst_index_new_group             (GstIndex *index);
gboolean    gst_index_set_group             (GstIndex *index,
                                             gint groupnum);
void        gst_index_set_certainty         (GstIndex *index,
                                             GstIndexCertainty certainty);
GstIndexCertainty gst_index_get_certainty   (GstIndex *index);
void        gst_index_set_filter            (GstIndex *index,
                                             GstIndexFilter filter,
                                             gpointer user_data);
void        gst_index_set_filter_full       (GstIndex *index,
                                             GstIndexFilter filter,
                                             gpointer user_data,
                                             GDestroyNotify user_data_destroy);
void        gst_index_set_resolver          (GstIndex *index,
                                             GstIndexResolver resolver,
                                             gpointer user_data);
gboolean    gst_index_get_writer_id         (GstIndex *index,
                                             GstObject *writer,
                                             gint *id);
GstIndexEntry* gst_index_add_format         (GstIndex *index,
                                             gint id,
                                             GstFormat format);
GstIndexEntry* gst_index_add_association    (GstIndex *index,
                                             gint id,
                                             GstAssocFlags flags,
                                             GstFormat format,
                                             gint64 value,
                                             ...);
GstIndexEntry* gst_index_add_associationv   (GstIndex *index,
                                             gint id,
                                             GstAssocFlags flags,
                                             gint n,
                                             const GstIndexAssociation *list);
GstIndexEntry* gst_index_add_object         (GstIndex *index,
                                             gint id,
                                             gchar *key,
                                             GType type,
                                             gpointer object);
GstIndexEntry* gst_index_add_id             (GstIndex *index,
                                             gint id,
                                             gchar *description);
GstIndexEntry* gst_index_get_assoc_entry    (GstIndex *index,
                                             gint id,
                                             GstIndexLookupMethod method,
                                             GstAssocFlags flags,
                                             GstFormat format,
                                             gint64 value);
GstIndexEntry* gst_index_get_assoc_entry_full
                                            (GstIndex *index,
                                             gint id,
                                             GstIndexLookupMethod method,
                                             GstAssocFlags flags,
                                             GstFormat format,
                                             gint64 value,
                                             GCompareDataFunc func,
                                             gpointer user_data);
GstIndexEntry* gst_index_entry_copy         (GstIndexEntry *entry);
void        gst_index_entry_free            (GstIndexEntry *entry);
gboolean    gst_index_entry_assoc_map       (GstIndexEntry *entry,
                                             GstFormat format,
                                             gint64 *value);


Object Hierarchy


  GObject
   +----GstObject
         +----GstIndex

Properties


  "resolver"             GstIndexResolver      : Read / Write

Signals


"entry-added"
            void        user_function      (GstIndex      *gstindex,
                                            GstIndexEntry *arg1,
                                            gpointer       user_data)      : Run last

Description

GstIndex is used to generate a stream index of one or more elements in a pipeline.

Details

GstIndex

typedef struct _GstIndex GstIndex;

Opaque GstIndex structure.


GstIndexEntry

typedef struct {
} GstIndexEntry;

The basic element of an index.


GstIndexGroup

typedef struct {
} GstIndexGroup;

A group of related entries in an index.


enum GstIndexCertainty

typedef enum {
  GST_INDEX_UNKNOWN,
  GST_INDEX_CERTAIN,
  GST_INDEX_FUZZY
} GstIndexCertainty;

The certainty of a group in the index.

GST_INDEX_UNKNOWNGST_INDEX_UNKNOWN accuracy is not known accuracy is not known GST_INDEX_CERTAINGST_INDEX_CERTAIN accuracy is perfect accuracy is perfect GST_INDEX_FUZZYGST_INDEX_FUZZY accuracy is fuzzy accuracy is fuzzy
GST_INDEX_UNKNOWN accuracy is not known
GST_INDEX_CERTAIN accuracy is perfect
GST_INDEX_FUZZY accuracy is fuzzy

enum GstIndexEntryType

typedef enum {
  GST_INDEX_ENTRY_ID,
  GST_INDEX_ENTRY_ASSOCIATION,
  GST_INDEX_ENTRY_OBJECT,
  GST_INDEX_ENTRY_FORMAT
} GstIndexEntryType;

The different types of entries in the index.

GST_INDEX_ENTRY_IDGST_INDEX_ENTRY_ID This entry is an id that maps an index id to its owner object This entry is an id that maps an index id to its owner object GST_INDEX_ENTRY_ASSOCIATIONGST_INDEX_ENTRY_ASSOCIATION This entry is an association between formats This entry is an association between formats GST_INDEX_ENTRY_OBJECTGST_INDEX_ENTRY_OBJECT An object An object GST_INDEX_ENTRY_FORMATGST_INDEX_ENTRY_FORMAT A format definition A format definition
GST_INDEX_ENTRY_ID This entry is an id that maps an index id to its owner object
GST_INDEX_ENTRY_ASSOCIATION This entry is an association between formats
GST_INDEX_ENTRY_OBJECT An object
GST_INDEX_ENTRY_FORMAT A format definition

enum GstIndexLookupMethod

typedef enum {
  GST_INDEX_LOOKUP_EXACT,
  GST_INDEX_LOOKUP_BEFORE,
  GST_INDEX_LOOKUP_AFTER
} GstIndexLookupMethod;

Specify the method to find an index entry in the index.

GST_INDEX_LOOKUP_EXACTGST_INDEX_LOOKUP_EXACT There has to be an exact indexentry with the given format/value There has to be an exact indexentry with the given format/value GST_INDEX_LOOKUP_BEFOREGST_INDEX_LOOKUP_BEFORE The exact entry or the one before it The exact entry or the one before it GST_INDEX_LOOKUP_AFTERGST_INDEX_LOOKUP_AFTER The exact entry or the one after it The exact entry or the one after it
GST_INDEX_LOOKUP_EXACT There has to be an exact indexentry with the given format/value
GST_INDEX_LOOKUP_BEFORE The exact entry or the one before it
GST_INDEX_LOOKUP_AFTER The exact entry or the one after it

GST_INDEX_NASSOCS()

#define GST_INDEX_NASSOCS(entry)		((entry)->data.assoc.nassocs)

Get the number of associations in the entry.

entry :entry The entry to query The entry to query
entry : The entry to query

GST_INDEX_ASSOC_FLAGS()

#define GST_INDEX_ASSOC_FLAGS(entry)		((entry)->data.assoc.flags)

Get the flags for this entry.

entry :entry The entry to query The entry to query
entry : The entry to query

GST_INDEX_ASSOC_FORMAT()

#define GST_INDEX_ASSOC_FORMAT(entry,i)		((entry)->data.assoc.assocs[(i)].format)

Get the i-th format of the entry.

entry :entry The entry to query The entry to query i :i The format index The format index
entry : The entry to query
i : The format index

GST_INDEX_ASSOC_VALUE()

#define GST_INDEX_ASSOC_VALUE(entry,i)		((entry)->data.assoc.assocs[(i)].value)

Get the i-th value of the entry.

entry :entry The entry to query The entry to query i :i The value index The value index
entry : The entry to query
i : The value index

GstIndexAssociation

typedef struct {
  GstFormat 	format;
  gint64 	value;
} GstIndexAssociation;

An association in an entry.

GstFormat format;GstFormatformat the format of the association the format of the association gint64 value;gint64value the value of the association the value of the association
GstFormat format; the format of the association
gint64 value; the value of the association

enum GstAssocFlags

typedef enum {
  GST_ASSOCIATION_FLAG_NONE 	  = 0,
  GST_ASSOCIATION_FLAG_KEY_UNIT   = (1 << 0),
  GST_ASSOCIATION_FLAG_DELTA_UNIT = (1 << 1),

  /* new flags should start here */
  GST_ASSOCIATION_FLAG_LAST	= (1 << 8)
} GstAssocFlags;

Flags for an association entry.

GST_ASSOCIATION_FLAG_NONEGST_ASSOCIATION_FLAG_NONE no extra flags no extra flags GST_ASSOCIATION_FLAG_KEY_UNITGST_ASSOCIATION_FLAG_KEY_UNIT the entry marks a key unit, a key unit is one that marks a place where one can randomly seek to. the entry marks a key unit, a key unit is one that marks a place where one can randomly seek to. GST_ASSOCIATION_FLAG_DELTA_UNITGST_ASSOCIATION_FLAG_DELTA_UNIT the entry marks a delta unit, a delta unit is one that marks a place where one can relatively seek to. the entry marks a delta unit, a delta unit is one that marks a place where one can relatively seek to. GST_ASSOCIATION_FLAG_LASTGST_ASSOCIATION_FLAG_LAST extra user defined flags should start here. extra user defined flags should start here.
GST_ASSOCIATION_FLAG_NONE no extra flags
GST_ASSOCIATION_FLAG_KEY_UNIT the entry marks a key unit, a key unit is one that marks a place where one can randomly seek to.
GST_ASSOCIATION_FLAG_DELTA_UNIT the entry marks a delta unit, a delta unit is one that marks a place where one can relatively seek to.
GST_ASSOCIATION_FLAG_LAST extra user defined flags should start here.

GST_INDEX_FORMAT_FORMAT()

#define GST_INDEX_FORMAT_FORMAT(entry)		((entry)->data.format.format)

Get the format of the format entry

entry :entry The entry to query The entry to query
entry : The entry to query

GST_INDEX_FORMAT_KEY()

#define GST_INDEX_FORMAT_KEY(entry)		((entry)->data.format.key)

Get the key of the format entry

entry :entry The entry to query The entry to query
entry : The entry to query

GST_INDEX_ID_INVALID

#define GST_INDEX_ID_INVALID			(-1)

Constant for an invalid index id


GST_INDEX_ID_DESCRIPTION()

#define GST_INDEX_ID_DESCRIPTION(entry)		((entry)->data.id.description)

Get the description of the id entry

entry :entry The entry to query The entry to query
entry : The entry to query

GstIndexFilter ()

gboolean    (*GstIndexFilter)               (GstIndex *index,
                                             GstIndexEntry *entry,
                                             gpointer user_data);

Function to filter out entries in the index.

index :index The index being queried The index being queried entry :entry The entry to be added. The entry to be added. user_data :user_data User data passed to the function. User data passed to the function. Returns :Returns This function should return TRUE if the entry is to be added to the index, FALSE otherwise. This function should return TRUE if the entry is to be added to the index, FALSE otherwise. TRUETRUEFALSEFALSE
index : The index being queried
entry : The entry to be added.
user_data : User data passed to the function.
Returns : This function should return TRUE if the entry is to be added to the index, FALSE otherwise.

enum GstIndexResolverMethod

typedef enum {
  GST_INDEX_RESOLVER_CUSTOM,
  GST_INDEX_RESOLVER_GTYPE,
  GST_INDEX_RESOLVER_PATH
} GstIndexResolverMethod;

The method used to resolve index writers

GST_INDEX_RESOLVER_CUSTOMGST_INDEX_RESOLVER_CUSTOM Use a custom resolver Use a custom resolver GST_INDEX_RESOLVER_GTYPEGST_INDEX_RESOLVER_GTYPE Resolve based on the GType of the object Resolve based on the GType of the object GST_INDEX_RESOLVER_PATHGST_INDEX_RESOLVER_PATH Resolve on the path in graph Resolve on the path in graph
GST_INDEX_RESOLVER_CUSTOM Use a custom resolver
GST_INDEX_RESOLVER_GTYPE Resolve based on the GType of the object
GST_INDEX_RESOLVER_PATH Resolve on the path in graph

GstIndexResolver ()

gboolean    (*GstIndexResolver)             (GstIndex *index,
                                             GstObject *writer,
                                             gchar **writer_string,
                                             gpointer user_data);

Function to resolve ids to writer descriptions.

index :index the index being queried. the index being queried. writer :writer The object that wants to write The object that wants to write writer_string :writer_string A description of the writer. A description of the writer. user_data :user_data user_data as registered user_data as registered Returns :Returns TRUE if an id could be assigned to the writer. TRUE if an id could be assigned to the writer. TRUETRUE
index : the index being queried.
writer : The object that wants to write
writer_string : A description of the writer.
user_data : user_data as registered
Returns : TRUE if an id could be assigned to the writer.

enum GstIndexFlags

typedef enum {
  GST_INDEX_WRITABLE    = (GST_OBJECT_FLAG_LAST << 0),
  GST_INDEX_READABLE    = (GST_OBJECT_FLAG_LAST << 1),

  GST_INDEX_FLAG_LAST   = (GST_OBJECT_FLAG_LAST << 8)
} GstIndexFlags;

Flags for this index

GST_INDEX_WRITABLEGST_INDEX_WRITABLE The index is writable The index is writable GST_INDEX_READABLEGST_INDEX_READABLE The index is readable The index is readable GST_INDEX_FLAG_LASTGST_INDEX_FLAG_LAST First flag that can be used by subclasses First flag that can be used by subclasses
GST_INDEX_WRITABLE The index is writable
GST_INDEX_READABLE The index is readable
GST_INDEX_FLAG_LAST First flag that can be used by subclasses

GST_INDEX_IS_READABLE()

#define GST_INDEX_IS_READABLE(obj)    (GST_OBJECT_FLAG_IS_SET (obj, GST_INDEX_READABLE))

Check if the index can be read from

obj :obj The index to check The index to check
obj : The index to check

GST_INDEX_IS_WRITABLE()

#define GST_INDEX_IS_WRITABLE(obj)    (GST_OBJECT_FLAG_IS_SET (obj, GST_INDEX_WRITABLE))

Check if the index can be written to

obj :obj The index to check The index to check
obj : The index to check

gst_index_new ()

GstIndex*   gst_index_new                   (void);

Create a new tileindex object

Returns :Returns a new index object a new index object
Returns : a new index object

gst_index_commit ()

void        gst_index_commit                (GstIndex *index,
                                             gint id);

Tell the index that the writer with the given id is done with this index and is not going to write any more entries to it.

index :index the index to commit the index to commit id :id the writer that commited the index the writer that commited the index
index : the index to commit
id : the writer that commited the index

gst_index_get_group ()

gint        gst_index_get_group             (GstIndex *index);

Get the id of the current group.

index :index the index to get the current group from the index to get the current group from Returns :Returns the id of the current group. the id of the current group.
index : the index to get the current group from
Returns : the id of the current group.

gst_index_new_group ()

gint        gst_index_new_group             (GstIndex *index);

Create a new group for the given index. It will be set as the current group.

index :index the index to create the new group in the index to create the new group in Returns :Returns the id of the newly created group. the id of the newly created group.
index : the index to create the new group in
Returns : the id of the newly created group.

gst_index_set_group ()

gboolean    gst_index_set_group             (GstIndex *index,
                                             gint groupnum);

Set the current groupnumber to the given argument.

index :index the index to set the new group in the index to set the new group in groupnum :groupnum the groupnumber to set the groupnumber to set Returns :Returns TRUE if the operation succeeded, FALSE if the group did not exist. TRUE if the operation succeeded, FALSE if the group did not exist.
index : the index to set the new group in
groupnum : the groupnumber to set
Returns : TRUE if the operation succeeded, FALSE if the group did not exist.

gst_index_set_certainty ()

void        gst_index_set_certainty         (GstIndex *index,
                                             GstIndexCertainty certainty);

Set the certainty of the given index.

index :index the index to set the certainty on the index to set the certainty on certainty :certainty the certainty to set the certainty to set
index : the index to set the certainty on
certainty : the certainty to set

gst_index_get_certainty ()

GstIndexCertainty gst_index_get_certainty   (GstIndex *index);

Get the certainty of the given index.

index :index the index to get the certainty of the index to get the certainty of Returns :Returns the certainty of the index. the certainty of the index.
index : the index to get the certainty of
Returns : the certainty of the index.

gst_index_set_filter ()

void        gst_index_set_filter            (GstIndex *index,
                                             GstIndexFilter filter,
                                             gpointer user_data);

Lets the app register a custom filter function so that it can select what entries should be stored in the index.

index :index the index to register the filter on the index to register the filter on filter :filter the filter to register the filter to register user_data :user_data data passed to the filter function data passed to the filter function
index : the index to register the filter on
filter : the filter to register
user_data : data passed to the filter function

gst_index_set_filter_full ()

void        gst_index_set_filter_full       (GstIndex *index,
                                             GstIndexFilter filter,
                                             gpointer user_data,
                                             GDestroyNotify user_data_destroy);

Lets the app register a custom filter function so that it can select what entries should be stored in the index.

index :index the index to register the filter on the index to register the filter on filter :filter the filter to register the filter to register user_data :user_data data passed to the filter function data passed to the filter function user_data_destroy :user_data_destroy function to call when user_data is unset function to call when user_data is unset user_data
index : the index to register the filter on
filter : the filter to register
user_data : data passed to the filter function
user_data_destroy : function to call when user_data is unset

gst_index_set_resolver ()

void        gst_index_set_resolver          (GstIndex *index,
                                             GstIndexResolver resolver,
                                             gpointer user_data);

Lets the app register a custom function to map index ids to writer descriptions.

index :index the index to register the resolver on the index to register the resolver on resolver :resolver the resolver to register the resolver to register user_data :user_data data passed to the resolver function data passed to the resolver function
index : the index to register the resolver on
resolver : the resolver to register
user_data : data passed to the resolver function

gst_index_get_writer_id ()

gboolean    gst_index_get_writer_id         (GstIndex *index,
                                             GstObject *writer,
                                             gint *id);

Before entries can be added to the index, a writer should obtain a unique id. The methods to add new entries to the index require this id as an argument.

The application can implement a custom function to map the writer object to a string. That string will be used to register or look up an id in the index.

index :index the index to get a unique write id for the index to get a unique write id for writer :writer the GstObject to allocate an id for the GstObject to allocate an id for id :id a pointer to a gint to hold the id a pointer to a gint to hold the id Returns :Returns TRUE if the writer would be mapped to an id. TRUE if the writer would be mapped to an id.
index : the index to get a unique write id for
writer : the GstObject to allocate an id for
id : a pointer to a gint to hold the id
Returns : TRUE if the writer would be mapped to an id.

gst_index_add_format ()

GstIndexEntry* gst_index_add_format         (GstIndex *index,
                                             gint id,
                                             GstFormat format);

Adds a format entry into the index. This function is used to map dynamic GstFormat ids to their original format key.

index :index the index to add the entry to the index to add the entry to id :id the id of the index writer the id of the index writer format :format the format to add to the index the format to add to the index Returns :Returns a pointer to the newly added entry in the index. a pointer to the newly added entry in the index.
index : the index to add the entry to
id : the id of the index writer
format : the format to add to the index
Returns : a pointer to the newly added entry in the index.

gst_index_add_association ()

GstIndexEntry* gst_index_add_association    (GstIndex *index,
                                             gint id,
                                             GstAssocFlags flags,
                                             GstFormat format,
                                             gint64 value,
                                             ...);

Associate given format/value pairs with each other. Be sure to pass gint64 values to this functions varargs, you might want to use a gint64 cast to be sure.

index :index the index to add the entry to the index to add the entry to id :id the id of the index writer the id of the index writer flags :flags optinal flags for this entry optinal flags for this entry format :format the format of the value the format of the value value :value the value the value ... :... other format/value pairs or 0 to end the list other format/value pairs or 0 to end the list Returns :Returns a pointer to the newly added entry in the index. a pointer to the newly added entry in the index.
index : the index to add the entry to
id : the id of the index writer
flags : optinal flags for this entry
format : the format of the value
value : the value
... : other format/value pairs or 0 to end the list
Returns : a pointer to the newly added entry in the index.

gst_index_add_associationv ()

GstIndexEntry* gst_index_add_associationv   (GstIndex *index,
                                             gint id,
                                             GstAssocFlags flags,
                                             gint n,
                                             const GstIndexAssociation *list);

Associate given format/value pairs with each other.

index :index the index to add the entry to the index to add the entry to id :id the id of the index writer the id of the index writer flags :flags optinal flags for this entry optinal flags for this entry n :n number of associations number of associations list :list list of associations list of associations Returns :Returns a pointer to the newly added entry in the index. a pointer to the newly added entry in the index.
index : the index to add the entry to
id : the id of the index writer
flags : optinal flags for this entry
n : number of associations
list : list of associations
Returns : a pointer to the newly added entry in the index.

gst_index_add_object ()

GstIndexEntry* gst_index_add_object         (GstIndex *index,
                                             gint id,
                                             gchar *key,
                                             GType type,
                                             gpointer object);

Add the given object to the index with the given key.

This function is not yet implemented.

index :index the index to add the object to the index to add the object to id :id the id of the index writer the id of the index writer key :key a key for the object a key for the object type :type the GType of the object the GType of the object object :object a pointer to the object to add a pointer to the object to add Returns :Returns a pointer to the newly added entry in the index. a pointer to the newly added entry in the index.
index : the index to add the object to
id : the id of the index writer
key : a key for the object
type : the GType of the object
object : a pointer to the object to add
Returns : a pointer to the newly added entry in the index.

gst_index_add_id ()

GstIndexEntry* gst_index_add_id             (GstIndex *index,
                                             gint id,
                                             gchar *description);

Add an id entry into the index.

index :index the index to add the entry to the index to add the entry to id :id the id of the index writer the id of the index writer description :description the description of the index writer the description of the index writer Returns :Returns a pointer to the newly added entry in the index. a pointer to the newly added entry in the index.
index : the index to add the entry to
id : the id of the index writer
description : the description of the index writer
Returns : a pointer to the newly added entry in the index.

gst_index_get_assoc_entry ()

GstIndexEntry* gst_index_get_assoc_entry    (GstIndex *index,
                                             gint id,
                                             GstIndexLookupMethod method,
                                             GstAssocFlags flags,
                                             GstFormat format,
                                             gint64 value);

Finds the given format/value in the index

index :index the index to search the index to search id :id the id of the index writer the id of the index writer method :method The lookup method to use The lookup method to use flags :flags Flags for the entry Flags for the entry format :format the format of the value the format of the value value :value the value to find the value to find Returns :Returns the entry associated with the value or NULL if the value was not found. the entry associated with the value or NULL if the value was not found.
index : the index to search
id : the id of the index writer
method : The lookup method to use
flags : Flags for the entry
format : the format of the value
value : the value to find
Returns : the entry associated with the value or NULL if the value was not found.

gst_index_get_assoc_entry_full ()

GstIndexEntry* gst_index_get_assoc_entry_full
                                            (GstIndex *index,
                                             gint id,
                                             GstIndexLookupMethod method,
                                             GstAssocFlags flags,
                                             GstFormat format,
                                             gint64 value,
                                             GCompareDataFunc func,
                                             gpointer user_data);

Finds the given format/value in the index with the given compare function and user_data.

index :index the index to search the index to search id :id the id of the index writer the id of the index writer method :method The lookup method to use The lookup method to use flags :flags Flags for the entry Flags for the entry format :format the format of the value the format of the value value :value the value to find the value to find func :func the function used to compare entries the function used to compare entries user_data :user_data user data passed to the compare function user data passed to the compare function Returns :Returns the entry associated with the value or NULL if the value was not found. the entry associated with the value or NULL if the value was not found.
index : the index to search
id : the id of the index writer
method : The lookup method to use
flags : Flags for the entry
format : the format of the value
value : the value to find
func : the function used to compare entries
user_data : user data passed to the compare function
Returns : the entry associated with the value or NULL if the value was not found.

gst_index_entry_copy ()

GstIndexEntry* gst_index_entry_copy         (GstIndexEntry *entry);

Copies an entry and returns the result.

entry :entry the entry to copy the entry to copy Returns :Returns a newly allocated GstIndexEntry. a newly allocated GstIndexEntry. GstIndexEntryGstIndexEntry
entry : the entry to copy
Returns : a newly allocated GstIndexEntry.

gst_index_entry_free ()

void        gst_index_entry_free            (GstIndexEntry *entry);

Free the memory used by the given entry.

entry :entry the entry to free the entry to free
entry : the entry to free

gst_index_entry_assoc_map ()

gboolean    gst_index_entry_assoc_map       (GstIndexEntry *entry,
                                             GstFormat format,
                                             gint64 *value);

Gets alternative formats associated with the indexentry.

entry :entry the index to search the index to search format :format the format of the value the find the format of the value the find value :value a pointer to store the value a pointer to store the value Returns :Returns TRUE if there was a value associated with the given format. TRUE if there was a value associated with the given format.
entry : the index to search
format : the format of the value the find
value : a pointer to store the value
Returns : TRUE if there was a value associated with the given format.

Property Details

The "resolver" property

  "resolver"             GstIndexResolver      : Read / Write

Select a predefined object to string mapper.

Default value: GST_INDEX_RESOLVER_PATH

Signal Details

The "entry-added" signal

void        user_function                  (GstIndex      *gstindex,
                                            GstIndexEntry *arg1,
                                            gpointer       user_data)      : Run last

Is emitted when a new entry is added to the index.

gstindex :gstindex the object which received the signal. the object which received the signal. arg1 :arg1 The entry added to the index. The entry added to the index. user_data :user_datauser data set when the signal handler was connected.user data set when the signal handler was connected.
gstindex : the object which received the signal.
arg1 : The entry added to the index.
user_data : user data set when the signal handler was connected.

See Also

GstIndexFactory