#include <plugin.h>
Data Fields | |
| bg_plugin_common_t | common |
| Infos and functions common to all plugin types. | |
| void(* | set_window )(void *priv, const char *window_id) |
| Set window. | |
| const char *(* | get_window )(void *priv) |
| Get window. | |
| void(* | set_window_title )(void *priv, const char *title) |
| Set window title. | |
| void(* | set_callbacks )(void *priv, bg_ov_callbacks_t *callbacks) |
| Set callbacks. | |
| int(* | open )(void *priv, gavl_video_format_t *format, int keep_aspect) |
| Open plugin. | |
| gavl_video_frame_t *(* | create_frame )(void *priv) |
| Allocate a video frame. | |
| int(* | add_overlay_stream )(void *priv, gavl_video_format_t *format) |
| Add a stream for transparent overlays. | |
| gavl_overlay_t *(* | create_overlay )(void *priv, int id) |
| Allocate an overlay. | |
| void(* | set_overlay )(void *priv, int stream, gavl_overlay_t *ovl) |
| Set an overlay for a specific stream. | |
| void(* | put_video )(void *priv, gavl_video_frame_t *frame) |
| Display a frame of a video stream. | |
| void(* | put_still )(void *priv, gavl_video_frame_t *frame) |
| Display a still image. | |
| void(* | handle_events )(void *priv) |
| Get all events from the queue and handle them. | |
| void(* | update_aspect )(void *priv, int pixel_width, int pixel_height) |
| Update aspect ratio. | |
| void(* | destroy_frame )(void *priv, gavl_video_frame_t *frame) |
| Free a frame created with the create_frame() method. | |
| void(* | destroy_overlay )(void *priv, int id, gavl_overlay_t *ovl) |
| Free an overlay created with the create_overlay() method. | |
| void(* | close )(void *priv) |
| Close the plugin. | |
| void(* | show_window )(void *priv, int show) |
| Show or hide the window. | |
This handles video output and still-image display. In a window based system, it will typically open a new window, which is owned by the plugin.
Infos and functions common to all plugin types.
| void(* bg_ov_plugin_s::set_window)(void *priv, const char *window_id) |
Set window.
| priv | The handle returned by the create() method | |
| window | Window identifier |
| const char*(* bg_ov_plugin_s::get_window)(void *priv) |
Get window.
| priv | The handle returned by the create() method |
| void(* bg_ov_plugin_s::set_window_title)(void *priv, const char *title) |
Set window title.
| priv | The handle returned by the create() method | |
| title | The title for the window |
| void(* bg_ov_plugin_s::set_callbacks)(void *priv, bg_ov_callbacks_t *callbacks) |
Set callbacks.
| priv | The handle returned by the create() method | |
| callbacks | Callback structure initialized by the caller before |
| int(* bg_ov_plugin_s::open)(void *priv, gavl_video_format_t *format, int keep_aspect) |
Open plugin.
| priv | The handle returned by the create() method | |
| format | Video format | |
| window_title | Window title |
| gavl_video_frame_t*(* bg_ov_plugin_s::create_frame)(void *priv) |
Allocate a video frame.
| priv | The handle returned by the create() method |
| int(* bg_ov_plugin_s::add_overlay_stream)(void *priv, gavl_video_format_t *format) |
Add a stream for transparent overlays.
| priv | The handle returned by the create() method | |
| format | Format of the overlays |
An application can have more than one overlay stream. Typical is one for subtitles and one for OSD.
| gavl_overlay_t*(* bg_ov_plugin_s::create_overlay)(void *priv, int id) |
Allocate an overlay.
| priv | The handle returned by the create() method | |
| id | The id returned by the add_overlay_stream() method |
| void(* bg_ov_plugin_s::set_overlay)(void *priv, int stream, gavl_overlay_t *ovl) |
Set an overlay for a specific stream.
| priv | The handle returned by the create() method | |
| stream | Stream index returned by add_overlay_stream() | |
| ovl | New overlay or NULL |
| void(* bg_ov_plugin_s::put_video)(void *priv, gavl_video_frame_t *frame) |
Display a frame of a video stream.
| priv | The handle returned by the create() method | |
| frame | Frame to display |
| void(* bg_ov_plugin_s::put_still)(void *priv, gavl_video_frame_t *frame) |
Display a still image.
| priv | The handle returned by the create() method | |
| frame | Frame to display |
| void(* bg_ov_plugin_s::handle_events)(void *priv) |
Get all events from the queue and handle them.
| priv | The handle returned by the create() method |
| void(* bg_ov_plugin_s::update_aspect)(void *priv, int pixel_width, int pixel_height) |
Update aspect ratio.
| priv | The handle returned by the create() method | |
| pixel_width | New pixel width | |
| pixel_height | New pixel height |
| void(* bg_ov_plugin_s::destroy_frame)(void *priv, gavl_video_frame_t *frame) |
Free a frame created with the create_frame() method.
| priv | The handle returned by the create() method | |
| frame | The frame to be freed |
| void(* bg_ov_plugin_s::destroy_overlay)(void *priv, int id, gavl_overlay_t *ovl) |
Free an overlay created with the create_overlay() method.
| priv | The handle returned by the create() method | |
| id | The id returned by the add_overlay_stream() method | |
| ovl | The overlay to be freed |
| void(* bg_ov_plugin_s::close)(void *priv) |
Close the plugin.
| priv | The handle returned by the create() method |
| void(* bg_ov_plugin_s::show_window)(void *priv, int show) |
Show or hide the window.
| priv | The handle returned by the create() method | |
| show | 1 for showing, 0 for hiding |
1.5.6