logo.c File Reference

Include dependency graph for logo.c:


Data Structures

struct  logo_t
 Structure to hold the set of individual logo image names, times, transparencies. More...
struct  logo_list_t
 Logo list structure. More...
struct  filter_sys_t
 filter_sys_t: chroma method descriptor More...

Defines

#define FILE_TEXT   N_("Logo filenames")
#define FILE_LONGTEXT
#define REPEAT_TEXT   N_("Logo animation # of loops")
#define REPEAT_LONGTEXT
#define DELAY_TEXT   N_("Logo individual image time in ms")
#define DELAY_LONGTEXT   N_("Individual image display time of 0 - 60000 ms.")
#define POSX_TEXT   N_("X coordinate")
#define POSX_LONGTEXT
#define POSY_TEXT   N_("Y coordinate")
#define POSY_LONGTEXT
#define OPACITY_TEXT   N_("Opacity of the logo")
#define OPACITY_LONGTEXT
#define POS_TEXT   N_("Logo position")
#define POS_LONGTEXT
#define LOGO_HELP   N_("Use a local picture as logo on the video")
#define CFG_PREFIX   "logo-"

Functions

static int OpenSub (vlc_object_t *p_this)
 Open the sub filter.
static int OpenVideo (vlc_object_t *p_this)
 Open the video filter.
static void Close (vlc_object_t *p_this)
 Common close function.
int vlc_entry__main (module_t *p_module)
const char * vlc_entry_license__main (void)
static int OpenCommon (vlc_object_t *p_this, bool b_sub)
 Common open function.
static subpicture_tFilterSub (filter_t *p_filter, mtime_t date)
 Sub filter.
static picture_tFilterVideo (filter_t *p_filter, picture_t *p_src)
 Video filter.
static int Mouse (filter_t *, vlc_mouse_t *, const vlc_mouse_t *, const vlc_mouse_t *)
static int LogoCallback (vlc_object_t *, char const *, vlc_value_t, vlc_value_t, void *)
static void LogoListLoad (vlc_object_t *p_this, logo_list_t *p_logo_list, const char *psz_filename)
 It loads the logo images into memory.
static void LogoListUnload (logo_list_t *p_list)
 Unload a list of logo and release associated ressources.
static logo_tLogoListNext (logo_list_t *p_list, mtime_t i_date)
 Go to the next logo and return its pointer.
static logo_tLogoListCurrent (logo_list_t *p_list)
 Return the current logo pointer.
static picture_tLoadImage (vlc_object_t *p_this, const char *psz_filename)
 It loads the logo image into memory.

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 char *const ppsz_filter_options []
static const char *const ppsz_filter_callbacks []

Define Documentation

#define CFG_PREFIX   "logo-"

#define DELAY_LONGTEXT   N_("Individual image display time of 0 - 60000 ms.")

#define DELAY_TEXT   N_("Logo individual image time in ms")

#define FILE_LONGTEXT

Value:

N_("Full path of the image files to use. Format is " \
"<image>[,<delay in ms>[,<alpha>]][;<image>[,<delay>[,<alpha>]]][;...]. " \
"If you only have one file, simply enter its filename.")

#define FILE_TEXT   N_("Logo filenames")

#define LOGO_HELP   N_("Use a local picture as logo on the video")

#define OPACITY_LONGTEXT

Value:

N_("Logo opacity value " \
  "(from 0 for full transparency to 255 for full opacity)." )

#define OPACITY_TEXT   N_("Opacity of the logo")

#define POS_LONGTEXT

Value:

N_( \
  "Enforce the logo position on the video " \
  "(0=center, 1=left, 2=right, 4=top, 8=bottom, you can " \
  "also use combinations of these values, eg 6 = top-right).")

#define POS_TEXT   N_("Logo position")

#define POSX_LONGTEXT

Value:

N_("X coordinate of the logo. You can move the logo " \
                "by left-clicking it." )

#define POSX_TEXT   N_("X coordinate")

#define POSY_LONGTEXT

Value:

N_("Y coordinate of the logo. You can move the logo " \
                "by left-clicking it." )

#define POSY_TEXT   N_("Y coordinate")

#define REPEAT_LONGTEXT

Value:

N_("Number of loops for the logo animation." \
        "-1 = continuous, 0 = disabled")

#define REPEAT_TEXT   N_("Logo animation # of loops")


Function Documentation

static void Close ( vlc_object_t p_this  )  [static]

Common close function.

Close the module.

Destroys the X11 window.

Disconnect from the X server.

Close a SDL video output.

It destroys an OpenGL vout display.

Terminate a vout display created by Open.

It destroyes a Direct3D vout display.

Terminate an output method created by Open.

Release the drawable.

Close a libcaca video output.

Close a aa video output method.

Close the filter.

Terminate a splitter module.

This function closes a clone video splitter module.

Common close function.

Releases allocate resources.

Close: Destructor.

Parameters:
p_this pointer to this filter object
p_this,: the filter object

static subpicture_t * FilterSub ( filter_t p_filter,
mtime_t  date 
) [static]

static picture_t * FilterVideo ( filter_t p_filter,
picture_t p_src 
) [static]

static picture_t* LoadImage ( vlc_object_t p_this,
const char *  psz_filename 
) [static]

It loads the logo image into memory.

References image_HandlerCreate, image_HandlerDelete(), image_ReadUrl, video_format_Init(), and VLC_CODEC_YUVA.

static int LogoCallback ( vlc_object_t p_this,
char const *  psz_var,
vlc_value_t  oldval,
vlc_value_t  newval,
void *  p_data 
) [static]

static logo_t * LogoListCurrent ( logo_list_t p_list  )  [static]

Return the current logo pointer.

References logo_list_t::i_counter, and logo_list_t::p_logo.

Referenced by FilterVideo(), LogoListNext(), and Mouse().

static void LogoListLoad ( vlc_object_t p_this,
logo_list_t p_logo_list,
const char *  psz_filename 
) [static]

It loads the logo images into memory.

Read the logo-file input switch, obtaining a list of images and associated durations and transparencies. Store the image(s), and times. An image without a stated time or opacity will use the logo-delay and logo-opacity values.

References logo_t::i_alpha, logo_list_t::i_count, logo_list_t::i_counter, logo_t::i_delay, logo_list_t::i_next_pic, LoadImage(), msg_Dbg, msg_Warn, logo_list_t::p_logo, logo_t::p_pic, and strdup().

Referenced by LogoCallback(), and OpenCommon().

static logo_t * LogoListNext ( logo_list_t p_list,
mtime_t  i_date 
) [static]

Go to the next logo and return its pointer.

References logo_list_t::i_count, logo_list_t::i_counter, logo_list_t::i_delay, logo_list_t::i_next_pic, and LogoListCurrent().

Referenced by FilterSub(), and FilterVideo().

static void LogoListUnload ( logo_list_t p_list  )  [static]

Unload a list of logo and release associated ressources.

References logo_list_t::i_count, logo_list_t::p_logo, logo_t::p_pic, and picture_Release().

Referenced by LogoCallback().

static int Mouse ( filter_t p_filter,
vlc_mouse_t p_mouse,
const vlc_mouse_t p_old,
const vlc_mouse_t p_new 
) [static]

static int OpenCommon ( vlc_object_t p_this,
bool  b_sub 
) [static]

static int OpenSub ( vlc_object_t p_this  )  [static]

Open the sub filter.

References OpenCommon().

static int OpenVideo ( vlc_object_t p_this  )  [static]

Open the video filter.

References OpenVideoCommon().

int vlc_entry__main ( module_t p_module  ) 

const char* vlc_entry_license__main ( void   ) 


Variable Documentation

const int pi_pos_values[] = { 0, 1, 2, 4, 8, 5, 6, 9, 10 } [static]

const char* const ppsz_filter_callbacks[] [static]

Initial value:

 {
    "logo-file",
    "logo-x",
    "logo-y",
    "logo-position",
    "logo-opacity",
    "logo-repeat",
    NULL
}

const char* const ppsz_filter_options[] [static]

Initial value:

 {
    "file", "x", "y", "delay", "repeat", "opacity", "position", NULL
}

const char* const ppsz_pos_descriptions[] [static]

Initial value:

{ N_("Center"), N_("Left"), N_("Right"), N_("Top"), N_("Bottom"),
  N_("Top-Left"), N_("Top-Right"), N_("Bottom-Left"), N_("Bottom-Right") }


Generated on Tue May 25 08:05:30 2010 for VLC by  doxygen 1.5.6