#include <annodex/anx_types.h>
#include <annodex/anx_core.h>
Go to the source code of this file.
Data Structures | |
struct | _AnxImporter |
struct | _AnxSourceTrack |
struct | _AnxSource |
Typedefs | |
typedef struct _AnxImporter | AnxImporter |
An AnxImporter implements generic functions for retrieving data from sources of a particular content type. | |
typedef struct _AnxSourceTrack | AnxSourceTrack |
An AnxSourceTrack contains one track of data. | |
typedef struct _AnxSource | AnxSource |
An AnxSource contains an instance of an active source object, which may in turn contain several tracks. | |
typedef AnxSource *(* | AnxImporterOpenFunc )(const char *path, const char *id, int ignore_raw, double start_time, double end_time, AnxImportCallbacks *import_callbacks) |
Signature of a function for opening a source object by filename. | |
typedef AnxSource *(* | AnxImporterOpenFDFunc )(int fd, const char *id, int ignore_raw, double start_time, double end_time, AnxImportCallbacks *import_callbacks) |
Signature of a function for opening a source object attached to an open file descriptor. | |
typedef long(* | AnxImporterReadFunc )(AnxSource *source, unsigned char *buf, long n, long bound) |
Signature of a function for reading bytes from a source object. | |
typedef long(* | AnxImporterSizeofNextReadFunc )(AnxSource *source, long bound) |
Signature of a function to return the preferred next read size. | |
typedef int(* | AnxImporterCloseFunc )(AnxSource *source) |
Signature of a function to close a source object. | |
Functions | |
int | anx_importer_register (AnxImporter *importer) |
Register an AnxImporter object with libannodex. | |
int | anx_importer_unregister (AnxImporter *importer) |
Unregister an AnxImporter previously registered with libannodex. | |
AnxImporter * | anx_importer_find (char *content_type) |
Find the AnxImporter registered with the given content type. |
Backends must implement the following function:
Importers are accessed by index i using values from 0 upwards. For out of range indexes, this function must return NULL.
No other symbols in a backend should be visible (ie. declare all other globals and functions as static).
typedef int(* AnxImporterCloseFunc)(AnxSource *source) |
Signature of a function to close a source object.
source | an AnxSource* handle |
typedef AnxSource*(* AnxImporterOpenFDFunc)(int fd, const char *id, int ignore_raw, double start_time, double end_time, AnxImportCallbacks *import_callbacks) |
Signature of a function for opening a source object attached to an open file descriptor.
fd | an open file descriptor | |
id | the id of this | |
ignore_raw | a flag to indicate that the importer should ignore any raw source read requests, ie. just deliver clips | |
start_time | the start time to initially seek to | |
end_time | a time bound to end on | |
import_callbacks | callbacks to call when further importing or anchor inserting is required. |
typedef AnxSource*(* AnxImporterOpenFunc)(const char *path, const char *id, int ignore_raw, double start_time, double end_time, AnxImportCallbacks *import_callbacks) |
Signature of a function for opening a source object by filename.
path | the path to the source file | |
id | the id of this | |
ignore_raw | a flag to indicate that the importer should ignore any raw source read requests, ie. just deliver clips | |
start_time | the start time to initially seek to | |
end_time | a time bound to end on | |
import_callbacks | callbacks to call when further importing or anchor inserting is required. |
typedef long(* AnxImporterReadFunc)(AnxSource *source, unsigned char *buf, long n, long bound) |
Signature of a function for reading bytes from a source object.
source | an AnxSource * handle | |
buf | a buffer to read data into | |
n | a maximum number of bytes to read | |
bound | a maximum granulecount to read |
typedef long(* AnxImporterSizeofNextReadFunc)(AnxSource *source, long bound) |
Signature of a function to return the preferred next read size.
source | an AnxSource * handle | |
bound | a maximum granulecount to read |
AnxImporter* anx_importer_find | ( | char * | content_type | ) |
Find the AnxImporter registered with the given content type.
content_type | the content type |
int anx_importer_register | ( | AnxImporter * | importer | ) |
Register an AnxImporter object with libannodex.
importer | the importer |
int anx_importer_unregister | ( | AnxImporter * | importer | ) |
Unregister an AnxImporter previously registered with libannodex.
importer | the importer |