gmerlin
Typedefs | Functions
Visualizer

Visualization module. More...

Typedefs

typedef struct bg_visualizer_s bg_visualizer_t
 Opaque visualizer structure. More...
 

Functions

bg_visualizer_tbg_visualizer_create (bg_plugin_registry_t *plugin_reg)
 Create a visualizer. More...
 
void bg_visualizer_destroy (bg_visualizer_t *v)
 Destroy a visualizer. More...
 
const bg_parameter_info_tbg_visualizer_get_parameters (bg_visualizer_t *v)
 Get the parameters of a visualizer. More...
 
void bg_visualizer_set_callbacks (bg_visualizer_t *v, bg_ov_callbacks_t *cb)
 Set ov callbacks. More...
 
void bg_visualizer_set_parameter (void *priv, const char *name, const bg_parameter_value_t *val)
 Set a parameter of a visualizer. More...
 
void bg_visualizer_set_vis_plugin (bg_visualizer_t *v, const bg_plugin_info_t *info)
 Set the visualization plugin. More...
 
void bg_visualizer_set_vis_parameter (void *priv, const char *name, const bg_parameter_value_t *val)
 Set a parameter of the visualization plugin. More...
 
void bg_visualizer_open_plugin (bg_visualizer_t *v, const gavl_audio_format_t *format, bg_plugin_handle_t *ov_handle)
 Open visualization with a video output plugin. More...
 
void bg_visualizer_open_id (bg_visualizer_t *v, const gavl_audio_format_t *format, const bg_plugin_info_t *ov_info, const char *display_id)
 Open visualization with a plugin info and a window ID. More...
 
void bg_visualizer_set_audio_format (bg_visualizer_t *v, const gavl_audio_format_t *format)
 Set the audio format of a visualizer. More...
 
void bg_visualizer_update (bg_visualizer_t *v, const gavl_audio_frame_t *frame)
 Send audio data to a visualizer. More...
 
void bg_visualizer_close (bg_visualizer_t *v)
 Close a visualizer. More...
 
int bg_visualizer_need_restart (bg_visualizer_t *v)
 Check, whether a visualizer needs to be restarted. More...
 
double bg_visualizer_get_fps (bg_visualizer_t *v)
 Get the frames per second. More...
 

Detailed Description

Visualization module.

This is the recommended frontend for visualization plugins. You pass it audio frames in your format, and it will handle all format conversions, rendering and fps control. Visualizations are run in a separate process, so plugins can never make the calling application crash.

Typedef Documentation

typedef struct bg_visualizer_s bg_visualizer_t

Opaque visualizer structure.

You don't want to know what's inside

Function Documentation

bg_visualizer_t* bg_visualizer_create ( bg_plugin_registry_t plugin_reg)

Create a visualizer.

Parameters
plugin_regA plugin registry
Returns
A newly create visualizer
void bg_visualizer_destroy ( bg_visualizer_t v)

Destroy a visualizer.

Parameters
vA Visualizer
const bg_parameter_info_t* bg_visualizer_get_parameters ( bg_visualizer_t v)

Get the parameters of a visualizer.

Parameters
vA Visualizer
Returns
NULL terminated array of parameter descriptions
void bg_visualizer_set_callbacks ( bg_visualizer_t v,
bg_ov_callbacks_t cb 
)

Set ov callbacks.

Parameters
vA visualizer
cbCallbacks
void bg_visualizer_set_parameter ( void *  priv,
const char *  name,
const bg_parameter_value_t val 
)

Set a parameter of a visualizer.

Parameters
privA visualizer casted to void
nameName
valValue
void bg_visualizer_set_vis_plugin ( bg_visualizer_t v,
const bg_plugin_info_t info 
)

Set the visualization plugin.

Parameters
vA Visualizer
infoA plugin info
void bg_visualizer_set_vis_parameter ( void *  priv,
const char *  name,
const bg_parameter_value_t val 
)

Set a parameter of the visualization plugin.

Parameters
privA visualizer casted to void
nameName
valValue
void bg_visualizer_open_plugin ( bg_visualizer_t v,
const gavl_audio_format_t format,
bg_plugin_handle_t ov_handle 
)

Open visualization with a video output plugin.

Parameters
vA Visualizer
formatAn audio format
ov_handleHandle for the video output plugin
void bg_visualizer_open_id ( bg_visualizer_t v,
const gavl_audio_format_t format,
const bg_plugin_info_t ov_info,
const char *  display_id 
)

Open visualization with a plugin info and a window ID.

Parameters
vA Visualizer
formatAn audio format
ov_infoWhich video output plugin to use
display_idWindow ID
void bg_visualizer_set_audio_format ( bg_visualizer_t v,
const gavl_audio_format_t format 
)

Set the audio format of a visualizer.

Parameters
vA Visualizer
formatAn audio format

This function can be called on a visualizer, which is already open, to change the audio format on the fly

void bg_visualizer_update ( bg_visualizer_t v,
const gavl_audio_frame_t frame 
)

Send audio data to a visualizer.

Parameters
vA Visualizer
frameAn audio frame
void bg_visualizer_close ( bg_visualizer_t v)

Close a visualizer.

Parameters
vA Visualizer

This stops all the internal visualization thread as well as the child process, in which the visualization is run

int bg_visualizer_need_restart ( bg_visualizer_t v)

Check, whether a visualizer needs to be restarted.

Parameters
vA Visualizer
Returns
1 if the visualizer needs a restart

Call this function after bg_visualizer_set_parameter to check, if you must close and reopen the visualizer.

double bg_visualizer_get_fps ( bg_visualizer_t v)

Get the frames per second.

Parameters
vA Visualizer
Returns
The frames per second