
Data Structures | |
| struct | fbosd_render_t |
| struct | intf_sys_t |
| Per-interface private state. More... | |
Defines | |
| #define | DEVICE_TEXT N_("Framebuffer device") |
| #define | DEVICE_LONGTEXT |
| #define | ASPECT_RATIO_TEXT N_("Video aspect ratio") |
| #define | ASPECT_RATIO_LONGTEXT |
| #define | FBOSD_IMAGE_TEXT N_("Image file") |
| #define | FBOSD_IMAGE_LONGTEXT |
| #define | ALPHA_TEXT N_("Transparency of the image") |
| #define | ALPHA_LONGTEXT |
| #define | FBOSD_TEXT N_("Text") |
| #define | FBOSD_LONGTEXT N_( "Text to display on the overlay framebuffer." ) |
| #define | POSX_TEXT N_("X coordinate") |
| #define | POSX_LONGTEXT N_("X coordinate of the rendered image") |
| #define | POSY_TEXT N_("Y coordinate") |
| #define | POSY_LONGTEXT N_("Y coordinate of the rendered image") |
| #define | POS_TEXT N_("Position") |
| #define | POS_LONGTEXT |
| #define | OPACITY_TEXT N_("Opacity") |
| #define | OPACITY_LONGTEXT |
| #define | SIZE_TEXT N_("Font size, pixels") |
| #define | SIZE_LONGTEXT |
| #define | COLOR_TEXT N_("Color") |
| #define | COLOR_LONGTEXT |
| #define | CLEAR_TEXT N_( "Clear overlay framebuffer" ) |
| #define | CLEAR_LONGTEXT |
| #define | RENDER_TEXT N_( "Render text or image" ) |
| #define | RENDER_LONGTEXT |
| #define | DISPLAY_TEXT N_( "Display on overlay framebuffer" ) |
| #define | DISPLAY_LONGTEXT |
| #define | FBOSD_RENDER_IMAGE 0 |
| #define | FBOSD_RENDER_TEXT 1 |
| #define | FBOSD_STATE_FREE 0 |
| #define | FBOSD_STATE_RESERVED 1 |
| #define | FBOSD_STATE_RENDER 2 |
| #define | FBOSD_RENDER_MAX 10 |
Functions | |
| static int | Create (vlc_object_t *) |
| static void | Destroy (vlc_object_t *) |
| static void | Run (intf_thread_t *) |
| static int | Init (intf_thread_t *) |
| static void | End (intf_thread_t *) |
| static int | OpenDisplay (intf_thread_t *) |
| static void | CloseDisplay (intf_thread_t *) |
| static int | OpenTextRenderer (intf_thread_t *) |
| static void | CloseTextRenderer (intf_thread_t *) |
| static int | OverlayCallback (vlc_object_t *, char const *, vlc_value_t, vlc_value_t, void *) |
| static picture_t * | AllocatePicture (video_format_t *) |
| static void | DeAllocatePicture (picture_t *, video_format_t *) |
| static void | SetOverlayTransparency (intf_thread_t *, bool) |
| static picture_t * | LoadImage (intf_thread_t *, video_format_t *, char *) |
| static picture_t * | ConvertImage (intf_thread_t *, picture_t *, video_format_t *, video_format_t *) |
| static int | RenderPicture (intf_thread_t *, int, int, picture_t *, picture_t *) |
| static picture_t * | RenderText (intf_thread_t *, const char *, text_style_t *, video_format_t *) |
| int | vlc_entry__main (module_t *p_module) |
| const char * | vlc_entry_license__main (void) |
| static void | Render (intf_thread_t *p_intf, struct fbosd_render_t *render) |
| static void | RenderClear (intf_thread_t *p_intf, struct fbosd_render_t *render) |
| static bool | isRendererReady (intf_thread_t *p_intf) |
Variables | |
| static const int | pi_pos_values [] = { 0, 1, 2, 4, 8, 5, 6, 9, 10 } |
| static const char *const | ppsz_pos_descriptions [] |
| static const int | pi_color_values [] |
| static const char *const | ppsz_color_descriptions [] |
| #define ALPHA_LONGTEXT |
Value:
N_( "Transparency value of the new image " \ "used in blending. By default it set to fully opaque (255). " \ "(from 0 for full transparency to 255 for full opacity)" )
| #define ALPHA_TEXT N_("Transparency of the image") |
| #define ASPECT_RATIO_LONGTEXT |
Value:
N_( \ "Aspect ratio of the video image (4:3, 16:9). Default is square pixels." )
| #define ASPECT_RATIO_TEXT N_("Video aspect ratio") |
| #define CLEAR_LONGTEXT |
Value:
N_( "The displayed overlay images is cleared by " \ "making the overlay completely transparent. All previously rendered " \ "images and text will be cleared from the cache." )
| #define CLEAR_TEXT N_( "Clear overlay framebuffer" ) |
| #define COLOR_LONGTEXT |
Value:
N_("Color of the text that will be rendered on "\ "the video. This must be an hexadecimal (like HTML colors). The first two "\ "chars are for red, then green, then blue. #000000 = black, #FF0000 = red,"\ " #00FF00 = green, #FFFF00 = yellow (red + green), #FFFFFF = white" )
| #define COLOR_TEXT N_("Color") |
| #define DEVICE_LONGTEXT |
Value:
N_( \ "Framebuffer device to use for rendering (usually /dev/fb0).")
| #define DEVICE_TEXT N_("Framebuffer device") |
| #define DISPLAY_LONGTEXT |
Value:
N_( "All rendered images and text will be " \ "displayed on the overlay framebuffer." )
| #define DISPLAY_TEXT N_( "Display on overlay framebuffer" ) |
| #define FBOSD_IMAGE_LONGTEXT |
Value:
N_( \ "Filename of image file to use on the overlay framebuffer." )
| #define FBOSD_IMAGE_TEXT N_("Image file") |
| #define FBOSD_LONGTEXT N_( "Text to display on the overlay framebuffer." ) |
| #define FBOSD_RENDER_IMAGE 0 |
Referenced by Create(), OverlayCallback(), and Render().
| #define FBOSD_RENDER_MAX 10 |
Referenced by Create(), Destroy(), isRendererReady(), OverlayCallback(), and Run().
| #define FBOSD_RENDER_TEXT 1 |
Referenced by Create(), OverlayCallback(), and Render().
| #define FBOSD_STATE_FREE 0 |
Referenced by Destroy(), OverlayCallback(), and RenderClear().
| #define FBOSD_STATE_RENDER 2 |
Referenced by Create(), OverlayCallback(), Render(), and Run().
| #define FBOSD_STATE_RESERVED 1 |
Referenced by isRendererReady(), and OverlayCallback().
| #define FBOSD_TEXT N_("Text") |
| #define OPACITY_LONGTEXT |
Value:
N_("Opacity (inverse of transparency) of " \ "overlayed text. 0 = transparent, 255 = totally opaque. " )
| #define OPACITY_TEXT N_("Opacity") |
| #define POS_LONGTEXT |
Value:
N_( \ "You can enforce the picture position on the overlay " \ "(0=center, 1=left, 2=right, 4=top, 8=bottom, you can " \ "also use combinations of these values, e.g. 6=top-right).")
| #define POS_TEXT N_("Position") |
| #define POSX_LONGTEXT N_("X coordinate of the rendered image") |
| #define POSX_TEXT N_("X coordinate") |
| #define POSY_LONGTEXT N_("Y coordinate of the rendered image") |
| #define POSY_TEXT N_("Y coordinate") |
| #define RENDER_LONGTEXT |
Value:
N_( "Render the image or text in current overlay " \ "buffer." )
| #define RENDER_TEXT N_( "Render text or image" ) |
| #define SIZE_LONGTEXT |
Value:
N_("Font size, in pixels. Default is -1 (use default " \ "font size)." )
| #define SIZE_TEXT N_("Font size, pixels") |
| static picture_t * AllocatePicture | ( | video_format_t * | p_fmt | ) | [static] |
References video_format_t::i_chroma, video_format_t::p_palette, picture_NewFromFormat(), picture_Release(), and VLC_CODEC_YUVP.
Referenced by Init(), and RenderText().
| static void CloseDisplay | ( | intf_thread_t * | p_intf | ) | [static] |
References intf_sys_t::fb_cmap, intf_sys_t::i_fd, intf_sys_t::p_palette, intf_thread_t::p_sys, and intf_sys_t::var_info.
Referenced by Destroy().
| static void CloseTextRenderer | ( | intf_thread_t * | p_intf | ) | [static] |
References module_unneed, filter_t::p_module, intf_thread_t::p_sys, intf_sys_t::p_text, and vlc_object_release.
Referenced by Destroy().
| static picture_t * ConvertImage | ( | intf_thread_t * | p_intf, | |
| picture_t * | p_pic, | |||
| video_format_t * | p_fmt_in, | |||
| video_format_t * | p_fmt_out | |||
| ) | [static] |
References video_format_t::i_chroma, video_format_t::i_height, video_format_t::i_width, image_Convert, msg_Dbg, intf_sys_t::p_image, and intf_thread_t::p_sys.
Referenced by RenderText().
| static int Create | ( | vlc_object_t * | p_this | ) | [static] |
References intf_sys_t::b_absolute, intf_sys_t::b_clear, intf_sys_t::b_need_update, intf_sys_t::b_render, Destroy(), FBOSD_RENDER_IMAGE, FBOSD_RENDER_MAX, FBOSD_RENDER_TEXT, FBOSD_STATE_RENDER, intf_sys_t::fmt_out, i, fbosd_render_t::i_alpha, intf_sys_t::i_alpha, intf_sys_t::i_aspect, text_style_t::i_font_alpha, text_style_t::i_font_color, text_style_t::i_font_size, video_format_t::i_height, intf_sys_t::i_height, fbosd_render_t::i_pos, intf_sys_t::i_pos, video_format_t::i_sar_den, video_format_t::i_sar_num, fbosd_render_t::i_state, fbosd_render_t::i_type, video_format_t::i_width, intf_sys_t::i_width, fbosd_render_t::i_x, intf_sys_t::i_x, fbosd_render_t::i_y, intf_sys_t::i_y, image_HandlerCreate, Init(), msg_Dbg, msg_Err, OpenDisplay(), OpenTextRenderer(), OverlayCallback(), intf_sys_t::p_image, intf_sys_t::p_style, intf_thread_t::p_sys, p_sys, fbosd_render_t::p_text_style, intf_thread_t::pf_run, fbosd_render_t::psz_string, intf_sys_t::render, Run(), strdup(), text_style_Delete(), text_style_New(), var_AddCallback, var_CreateGetBoolCommand, var_CreateGetIntegerCommand, var_CreateGetNonEmptyString, var_CreateGetNonEmptyStringCommand, VLC_EGENERIC, VLC_ENOMEM, VLC_OBJECT, VLC_SUCCESS, and VOUT_ASPECT_FACTOR.
| static void DeAllocatePicture | ( | picture_t * | p_pic, | |
| video_format_t * | p_fmt | |||
| ) | [static] |
| static void Destroy | ( | vlc_object_t * | p_this | ) | [static] |
References intf_sys_t::b_clear, intf_sys_t::b_need_update, intf_sys_t::b_render, CloseDisplay(), CloseTextRenderer(), FBOSD_RENDER_MAX, FBOSD_STATE_FREE, i, fbosd_render_t::i_state, image_HandlerDelete(), OverlayCallback(), intf_sys_t::p_image, intf_sys_t::p_overlay, intf_sys_t::p_style, intf_thread_t::p_sys, p_sys, intf_sys_t::p_text, fbosd_render_t::p_text_style, picture_Release(), fbosd_render_t::psz_string, intf_sys_t::render, text_style_Delete(), var_DelCallback, and var_Destroy.
| static void End | ( | intf_thread_t * | p_intf | ) | [static] |
| static int Init | ( | intf_thread_t * | p_intf | ) | [static] |
References AllocatePicture(), intf_sys_t::fmt_out, intf_sys_t::i_aspect, video_format_t::i_bits_per_pixel, intf_sys_t::i_bytes_per_pixel, video_format_t::i_chroma, intf_sys_t::i_height, video_format_t::i_height, plane_t::i_lines, plane_t::i_pitch, plane_t::i_pixel_pitch, picture_t::i_planes, video_format_t::i_sar_den, video_format_t::i_sar_num, plane_t::i_visible_lines, plane_t::i_visible_pitch, intf_sys_t::i_width, video_format_t::i_width, msg_Err, picture_t::p, intf_sys_t::p_overlay, intf_thread_t::p_sys, SetOverlayTransparency(), intf_sys_t::var_info, VLC_CODEC_RGB15, VLC_CODEC_RGB16, VLC_CODEC_RGB24, VLC_CODEC_RGB32, VLC_CODEC_RGB8, VLC_EGENERIC, VLC_SUCCESS, and VOUT_ASPECT_FACTOR.
| static bool isRendererReady | ( | intf_thread_t * | p_intf | ) | [static] |
References FBOSD_RENDER_MAX, FBOSD_STATE_RESERVED, i, fbosd_render_t::i_state, intf_thread_t::p_sys, and intf_sys_t::render.
Referenced by Run().
| static picture_t * LoadImage | ( | intf_thread_t * | p_intf, | |
| video_format_t * | p_fmt, | |||
| char * | psz_file | |||
| ) | [static] |
References video_format_t::i_chroma, video_format_t::i_height, video_format_t::i_width, image_ReadUrl, msg_Dbg, intf_sys_t::p_image, and intf_thread_t::p_sys.
Referenced by FetchRSS(), LoadBarGraph(), LogoListLoad(), and Render().
| static int OpenDisplay | ( | intf_thread_t * | p_intf | ) | [static] |
References intf_sys_t::b_pan, intf_sys_t::fb_cmap, intf_sys_t::fmt_out, intf_sys_t::i_bytes_per_pixel, intf_sys_t::i_fd, video_format_t::i_height, intf_sys_t::i_height, intf_sys_t::i_page_size, video_format_t::i_width, intf_sys_t::i_width, msg_Dbg, msg_Err, intf_sys_t::p_palette, intf_thread_t::p_sys, intf_sys_t::var_info, var_InheritString, VLC_EGENERIC, VLC_ENOMEM, vlc_open(), and VLC_SUCCESS.
Referenced by Create().
| static int OpenTextRenderer | ( | intf_thread_t * | p_intf | ) | [static] |
References filter_t::fmt_out, intf_sys_t::i_height, video_format_t::i_height, video_format_t::i_visible_height, video_format_t::i_visible_width, intf_sys_t::i_width, video_format_t::i_width, module_need, filter_t::p_module, intf_thread_t::p_sys, intf_sys_t::p_text, var_CreateGetString, es_format_t::video, VLC_EGENERIC, vlc_object_attach, vlc_object_create, and VLC_SUCCESS.
Referenced by Create().
| static int OverlayCallback | ( | vlc_object_t * | p_this, | |
| char const * | psz_cmd, | |||
| vlc_value_t | oldval, | |||
| vlc_value_t | newval, | |||
| void * | p_data | |||
| ) | [static] |
References fbosd_render_t::b_absolute, intf_sys_t::b_clear, intf_sys_t::b_need_update, FBOSD_RENDER_IMAGE, FBOSD_RENDER_MAX, FBOSD_RENDER_TEXT, FBOSD_STATE_FREE, FBOSD_STATE_RENDER, FBOSD_STATE_RESERVED, i, fbosd_render_t::i_alpha, text_style_t::i_font_alpha, text_style_t::i_font_color, text_style_t::i_font_size, intf_sys_t::i_height, vlc_value_t::i_int, fbosd_render_t::i_pos, fbosd_render_t::i_state, fbosd_render_t::i_type, intf_sys_t::i_width, fbosd_render_t::i_x, fbosd_render_t::i_y, msg_Warn, intf_thread_t::p_sys, fbosd_render_t::p_text_style, vlc_value_t::psz_string, fbosd_render_t::psz_string, intf_sys_t::render, RenderClear(), strdup(), VLC_SUCCESS, and VLC_UNUSED.
| static void Render | ( | intf_thread_t * | p_intf, | |
| struct fbosd_render_t * | render | |||
| ) | [static] |
References DeAllocatePicture(), FBOSD_RENDER_IMAGE, FBOSD_RENDER_TEXT, FBOSD_STATE_RENDER, intf_sys_t::fmt_out, fbosd_render_t::i_state, fbosd_render_t::i_type, fbosd_render_t::i_x, fbosd_render_t::i_y, LoadImage(), msg_Dbg, intf_sys_t::p_overlay, intf_thread_t::p_sys, fbosd_render_t::p_text_style, picture_Release(), fbosd_render_t::psz_string, RenderPicture(), and RenderText().
| static void RenderClear | ( | intf_thread_t * | p_intf, | |
| struct fbosd_render_t * | render | |||
| ) | [static] |
References intf_sys_t::b_absolute, fbosd_render_t::b_absolute, FBOSD_STATE_FREE, intf_sys_t::i_alpha, fbosd_render_t::i_alpha, intf_sys_t::i_pos, fbosd_render_t::i_pos, fbosd_render_t::i_state, intf_sys_t::i_x, fbosd_render_t::i_x, intf_sys_t::i_y, fbosd_render_t::i_y, intf_thread_t::p_sys, fbosd_render_t::p_text_style, fbosd_render_t::psz_string, text_style_Delete(), and text_style_New().
Referenced by OverlayCallback(), and Run().
| static int RenderPicture | ( | intf_thread_t * | p_intf, | |
| int | i_x_offset, | |||
| int | i_y_offset, | |||
| picture_t * | p_src, | |||
| picture_t * | p_dest | |||
| ) | [static] |
References i, plane_t::i_pitch, plane_t::i_pixel_pitch, picture_t::i_planes, plane_t::i_visible_lines, plane_t::i_visible_pitch, fbosd_render_t::i_x, msg_Dbg, picture_t::p, plane_t::p_pixels, VLC_EGENERIC, vlc_memcpy(), VLC_SUCCESS, and VLC_UNUSED.
Referenced by Render().
| static picture_t * RenderText | ( | intf_thread_t * | p_intf, | |
| const char * | psz_string, | |||
| text_style_t * | p_style, | |||
| video_format_t * | p_fmt | |||
| ) | [static] |
References AllocatePicture(), ConvertImage(), subpicture_region_t::fmt, subpicture_region_t::i_align, video_format_t::i_bits_per_pixel, video_format_t::i_chroma, video_format_t::i_height, video_format_t::i_visible_height, video_format_t::i_visible_width, video_format_t::i_width, video_format_t::i_x_offset, video_format_t::i_y_offset, filter_t::p_module, subpicture_region_t::p_picture, subpicture_region_t::p_style, intf_thread_t::p_sys, intf_sys_t::p_text, picture_Copy(), subpicture_region_t::psz_text, strdup(), SUBPICTURE_ALIGN_LEFT, SUBPICTURE_ALIGN_TOP, subpicture_region_Delete(), subpicture_region_New(), text_style_Duplicate(), VLC_CODEC_TEXT, vlc_memcpy(), and VLC_OBJECT.
Referenced by Create(), OpenRenderer(), and Render().
| static void Run | ( | intf_thread_t * | p_intf | ) | [static] |
References intf_sys_t::b_clear, intf_sys_t::b_need_update, End(), FBOSD_RENDER_MAX, FBOSD_STATE_RENDER, intf_sys_t::fmt_out, i, intf_sys_t::i_fd, intf_sys_t::i_page_size, fbosd_render_t::i_state, INTF_IDLE_SLEEP, isRendererReady(), msg_Err, msleep, picture_t::p, intf_sys_t::p_overlay, plane_t::p_pixels, intf_thread_t::p_sys, Render(), intf_sys_t::render, RenderClear(), SetOverlayTransparency(), var_SetString, vlc_object_alive, vlc_restorecancel(), and vlc_savecancel().
| static void SetOverlayTransparency | ( | intf_thread_t * | p_intf, | |
| bool | b_transparent | |||
| ) | [static] |
| int vlc_entry__main | ( | module_t * | p_module | ) |
| const char* vlc_entry_license__main | ( | void | ) |
const int pi_color_values[] [static] |
Initial value:
{
0xf0000000, 0x00000000, 0x00808080, 0x00C0C0C0,
0x00FFFFFF, 0x00800000, 0x00FF0000, 0x00FF00FF, 0x00FFFF00,
0x00808000, 0x00008000, 0x00008080, 0x0000FF00, 0x00800080,
0x00000080, 0x000000FF, 0x0000FFFF}
const int pi_pos_values[] = { 0, 1, 2, 4, 8, 5, 6, 9, 10 } [static] |
const char* const ppsz_color_descriptions[] [static] |
const char* const ppsz_pos_descriptions[] [static] |
1.5.6