mediastreamer2 2.7.3
|
Ticker API to manage mediastreamer2 graphs. More...
Typedefs | |
typedef uint64_t(* | MSTickerTimeFunc )(void *) |
typedef struct _MSTicker | MSTicker |
Enumerations | |
enum | _MSTickerPrio { MS_TICKER_PRIO_NORMAL, MS_TICKER_PRIO_HIGH, MS_TICKER_PRIO_REALTIME } |
Functions | |
MSTicker * | ms_ticker_new (void) |
void | ms_ticker_set_name (MSTicker *ticker, const char *name) |
void | ms_ticker_set_priority (MSTicker *ticker, MSTickerPrio prio) |
int | ms_ticker_attach (MSTicker *ticker, MSFilter *f) |
int | ms_ticker_detach (MSTicker *ticker, MSFilter *f) |
void | ms_ticker_destroy (MSTicker *ticker) |
void | ms_ticker_set_time_func (MSTicker *ticker, MSTickerTimeFunc func, void *user_data) |
void | ms_ticker_print_graphs (MSTicker *ticker) |
float | ms_ticker_get_average_load (MSTicker *ticker) |
Ticker API to manage mediastreamer2 graphs.
Describes the ticker API. The ticker is the thread responsible for scheduling audio & video processing for one or several filter graphs.
Structure for method getting time in miliseconds from an external source.
Structure for ticker object.
enum _MSTickerPrio |
MSTicker* ms_ticker_new | ( | void | ) |
Create a ticker that will be used to start and stop a graph.
Returns: MSTicker * if successfull, NULL otherwise.
void ms_ticker_set_name | ( | MSTicker * | ticker, |
const char * | name | ||
) |
Set a name to the ticker (used for logging)
void ms_ticker_set_priority | ( | MSTicker * | ticker, |
MSTickerPrio | prio | ||
) |
Set priority to the ticker
void ms_ticker_set_time_func | ( | MSTicker * | ticker, |
MSTickerTimeFunc | func, | ||
void * | user_data | ||
) |
Override MSTicker's time function. This can be used to control the ticker from an external time provider, for example the clock of a sound card.
ticker | A MSTicker object. |
func | A replacement method for calculating "current time" |
user_data | Any pointer to user private data. |
void ms_ticker_print_graphs | ( | MSTicker * | ticker | ) |
Print on stdout all filters of a ticker. (INTERNAL: DO NOT USE)
ticker | A MSTicker object. |
float ms_ticker_get_average_load | ( | MSTicker * | ticker | ) |
Get the average load of the ticker. It is expressed as the ratio between real time spent in processing all graphs for a tick divided by the tick interval (default is 10 ms). This value is averaged over several ticks to get consistent and useful value. A load greater than 100% clearly means that the ticker is over loaded and runs late.