VLC
4.0.0-dev
|
Go to the source code of this file.
Data Structures | |
struct | vlc_exit |
struct | libvlc_priv_t |
Macros | |
#define | vlc_backtrace() vlc_trace(__func__, __FILE__, __LINE__) |
#define | vlc_custom_create(o, s, n) vlc_custom_create(VLC_OBJECT(o), s, n) |
#define | ZOOM_SECTION N_("Zoom") |
#define | ZOOM_QUARTER_KEY_TEXT N_("1:4 Quarter") |
#define | ZOOM_HALF_KEY_TEXT N_("1:2 Half") |
#define | ZOOM_ORIGINAL_KEY_TEXT N_("1:1 Original") |
#define | ZOOM_DOUBLE_KEY_TEXT N_("2:1 Double") |
Typedefs | |
typedef struct variable_t | variable_t |
typedef struct vlc_logger | vlc_logger_t |
typedef struct vlc_exit | vlc_exit_t |
typedef struct vlc_dialog_provider | vlc_dialog_provider |
Private LibVLC instance data. More... | |
typedef struct vlc_keystore | vlc_keystore |
typedef struct vlc_actions_t | vlc_actions_t |
typedef struct vlc_playlist | vlc_playlist_t |
typedef struct vlc_media_source_provider_t | vlc_media_source_provider_t |
typedef struct intf_thread_t | intf_thread_t |
typedef struct libvlc_priv_t | libvlc_priv_t |
Functions | |
void | system_Init (void) |
Initializes MME timer, Winsock. More... | |
void | system_Configure (libvlc_int_t *, int, const char *const []) |
void | vlc_CPU_dump (vlc_object_t *) |
int | vlc_clone_detach (vlc_thread_t *, void *(*)(void *), void *, int) |
int | vlc_set_priority (vlc_thread_t, int) |
void | vlc_threads_setup (libvlc_int_t *) |
void | vlc_trace (const char *fn, const char *file, unsigned line) |
Print a backtrace to the standard error for debugging purpose. More... | |
int | vlc_LogPreinit (libvlc_int_t *) |
Performs preinitialization of the messages logging subsystem. More... | |
void | vlc_LogInit (libvlc_int_t *) |
Initializes the messages logging subsystem and drain the early messages to the configured log. More... | |
void | vlc_ExitInit (vlc_exit_t *) |
int | vlc_object_init (vlc_object_t *obj, vlc_object_t *parent, const char *type_name) |
Initializes a VLC object. More... | |
void | vlc_object_deinit (vlc_object_t *obj) |
Deinitializes a VLC object. More... | |
void * | vlc_custom_create (vlc_object_t *p_this, size_t i_size, const char *psz_type) |
Creates a VLC object. More... | |
void * | vlc_objres_new (size_t size, void(*release)(void *)) |
Allocates an object resource. More... | |
void | vlc_objres_push (vlc_object_t *obj, void *data) |
Pushes an object resource on the object resources stack. More... | |
void | vlc_objres_clear (vlc_object_t *obj) |
Releases all resources of an object. More... | |
void | vlc_objres_remove (vlc_object_t *obj, void *data, bool(*match)(void *, void *)) |
Releases one object resource explicitly. More... | |
static libvlc_priv_t * | libvlc_priv (libvlc_int_t *libvlc) |
int | intf_InsertItem (libvlc_int_t *, const char *mrl, unsigned optc, const char *const *optv, unsigned flags) |
Inserts an item in the playlist. More... | |
void | intf_DestroyAll (libvlc_int_t *) |
Stops and destroys all interfaces, then the playlist. More... | |
int | vlc_MetadataRequest (libvlc_int_t *libvlc, input_item_t *item, input_item_meta_request_option_t i_options, const input_preparser_callbacks_t *cbs, void *cbs_userdata, int timeout, void *id) |
void | var_OptionParse (vlc_object_t *, const char *, bool trusted) |
Parse a stringified option This function parse a string option and create the associated object variable The option must be of the form "[no[-]]foo[=bar]" where foo is the option name and bar is the value of the option. More... | |
Variables | |
const char | psz_vlc_changeset [] |
#define vlc_backtrace | ( | ) | vlc_trace(__func__, __FILE__, __LINE__) |
#define vlc_custom_create | ( | o, | |
s, | |||
n | |||
) | vlc_custom_create(VLC_OBJECT(o), s, n) |
Referenced by addons_manager_WriteCatalog(), aout_New(), aout_volume_New(), Create(), CreateConverter(), CreateDecoder(), CreateFilter(), CreateObject(), demux_PacketizerNew(), filter_chain_AppendInner(), filter_NewBlend(), FinderThread(), fingerprinter_Create(), httpd_HostCreate(), input_item_WriteMeta(), InputSourceMeta(), installOrRemoveAddon(), intf_Create(), InvokeModule(), keystore_create(), libvlc_InternalCreate(), libvlc_MlCreate(), LoadLocalStorage(), sout_AccessOutNew(), sout_EncoderCreate(), sout_MuxNew(), sout_NewInstance(), sout_StreamNew(), spu_Create(), SpuRenderCreateAndLoadScale(), SpuRenderCreateAndLoadText(), StreamExtractorAttach(), update_Download(), video_splitter_New(), vlc_gl_Create(), vlc_inhibit_Create(), vlc_LogModuleCreate(), vlc_player_New(), vlc_playlist_Export(), vlc_probe(), vlc_rd_new(), vlc_sd_Create(), vlc_stream_CustomNew(), vlc_tls_ClientCreate(), vlc_tls_ServerCreate(), vlm_ControlMediaAdd(), vlm_New(), vout_CreateCommon(), vout_display_New(), vout_window_New(), xml_Create(), and xml_ReaderCreate().
#define ZOOM_DOUBLE_KEY_TEXT N_("2:1 Double") |
#define ZOOM_HALF_KEY_TEXT N_("1:2 Half") |
#define ZOOM_ORIGINAL_KEY_TEXT N_("1:1 Original") |
#define ZOOM_QUARTER_KEY_TEXT N_("1:4 Quarter") |
#define ZOOM_SECTION N_("Zoom") |
typedef struct intf_thread_t intf_thread_t |
typedef struct libvlc_priv_t libvlc_priv_t |
typedef struct variable_t variable_t |
typedef struct vlc_actions_t vlc_actions_t |
typedef struct vlc_dialog_provider vlc_dialog_provider |
Private LibVLC instance data.
typedef struct vlc_exit vlc_exit_t |
typedef struct vlc_keystore vlc_keystore |
typedef struct vlc_logger vlc_logger_t |
typedef struct vlc_media_source_provider_t vlc_media_source_provider_t |
typedef struct vlc_playlist vlc_playlist_t |
void intf_DestroyAll | ( | libvlc_int_t * | libvlc | ) |
Stops and destroys all interfaces, then the playlist.
libvlc | the LibVLC instance |
References AddIntfCallback(), config_ChainDestroy(), libvlc_priv_t::interfaces, libvlc_priv(), libvlc_priv_t::lock, module_unneed, intf_thread_t::p_cfg, intf_thread_t::p_module, intf_thread_t::p_next, var_DelCallback(), vlc_mutex_lock(), vlc_mutex_unlock(), and vlc_object_delete.
Referenced by libvlc_InternalCleanup(), and libvlc_priv().
int intf_InsertItem | ( | libvlc_int_t * | libvlc, |
const char * | mrl, | ||
unsigned | optc, | ||
const char *const * | optv, | ||
unsigned | flags | ||
) |
Inserts an item in the playlist.
This function is used during initialization. It inserts an item to the beginning of the playlist. That is meant to compensate for the reverse parsing order of the command line.
References input_item_AddOptions(), input_item_New, input_item_Release(), libvlc_GetMainPlaylist(), unlikely, vlc_playlist_InsertOne(), vlc_playlist_Lock(), vlc_playlist_Unlock(), and VLC_SUCCESS.
Referenced by GetFilenames(), libvlc_InternalInit(), and libvlc_priv().
|
inlinestatic |
References container_of, intf_DestroyAll(), intf_InsertItem(), var_OptionParse(), and vlc_MetadataRequest().
Referenced by get_dialog_provider(), get_memory_keystore(), intf_Create(), intf_DestroyAll(), IPCHelperThread(), libvlc_ArtRequest(), libvlc_GetMainPlaylist(), libvlc_InternalActionsClean(), libvlc_InternalActionsInit(), libvlc_InternalCleanup(), libvlc_InternalCreate(), libvlc_InternalDialogClean(), libvlc_InternalDialogInit(), libvlc_InternalInit(), libvlc_InternalKeystoreClean(), libvlc_InternalKeystoreInit(), libvlc_MetadataCancel(), libvlc_MetadataRequest(), libvlc_Quit(), libvlc_SetExitHandler(), player_on_state_changed(), vlc_actions_get_key_names(), vlc_media_source_provider_Get(), vlc_MetadataRequest(), vlc_ml_instance_get(), vlm_Delete(), and vlm_New().
void system_Configure | ( | libvlc_int_t * | , |
int | , | ||
const char * | const[] | ||
) |
References vlc_ipc_data_t::argc, vlc_ipc_data_t::data, vlc_ipc_data_t::enqueue, hpipeIPC, IPC_CMD_ENQUEUE, IPC_CMD_GO, IPCHelperThread(), libvlc_InternalAddIntf(), msg_Dbg, msg_Err, msg_Info, s_jvm, strdup(), system_ConfigureDbus(), system_End(), tidIPCFirst, tidIPCHelper, var_Create(), var_InheritBool(), var_SetAddress(), VLC_IPC_PIPE, vlc_path2uri(), and VLC_VAR_ADDRESS.
Referenced by libvlc_InternalInit().
void system_Init | ( | void | ) |
Initializes MME timer, Winsock.
References _fmode_bin, getenv(), setenv(), and system_InitWSA().
Referenced by config_GetBaseDir(), and libvlc_InternalInit().
void var_OptionParse | ( | vlc_object_t * | p_obj, |
const char * | psz_option, | ||
bool | trusted | ||
) |
Parse a stringified option This function parse a string option and create the associated object variable The option must be of the form "[no[-]]foo[=bar]" where foo is the option name and bar is the value of the option.
p_obj | the object in which the variable must be created |
psz_option | the option to parse |
trusted | whether the option is set by a trusted input or not |
References vlc_value_t::b_bool, config_GetType(), config_IsSafe(), vlc_value_t::f_float, vlc_value_t::i_int, i_type, msg_Err, psz_name, vlc_value_t::psz_string, psz_value, strcasecmp(), strdup(), strtoll(), us_atof(), var_Create(), var_Set(), VLC_VAR_BOOL, VLC_VAR_FLOAT, VLC_VAR_INTEGER, and VLC_VAR_STRING.
Referenced by input_item_ApplyOptions(), libvlc_priv(), and var_LocationParse().
int vlc_clone_detach | ( | vlc_thread_t * | , |
void * | *)(void *, | ||
void * | , | ||
int | |||
) |
void vlc_CPU_dump | ( | vlc_object_t * | ) |
References msg_Dbg, vlc_memstream::ptr, vlc_memstream_close(), vlc_memstream_open(), and vlc_memstream_puts().
Referenced by libvlc_InternalInit().
void* vlc_custom_create | ( | vlc_object_t * | p_this, |
size_t | i_size, | ||
const char * | psz_type | ||
) |
Creates a VLC object.
Note that because the object name pointer must remain valid, potentially even after the destruction of the object (through the message queues), this function CANNOT be exported to plugins as is. In this case, the old vlc_object_create() must be used instead.
p_this | an existing VLC object |
i_size | byte size of the object structure |
psz_type | object type name |
References unlikely, and vlc_object_init().
Referenced by vlc_object_create().
void vlc_ExitInit | ( | vlc_exit_t * | ) |
References vlc_exit::handler, vlc_exit::lock, vlc_exit::opaque, and vlc_mutex_init().
Referenced by libvlc_InternalCreate().
void vlc_LogInit | ( | libvlc_int_t * | ) |
Initializes the messages logging subsystem and drain the early messages to the configured log.
References discard_log, vlc_object_t::logger, libvlc_int_t::obj, vlc_LogModuleCreate(), vlc_LogSwitch(), and VLC_OBJECT.
Referenced by libvlc_InternalInit().
int vlc_LogPreinit | ( | libvlc_int_t * | vlc | ) |
Performs preinitialization of the messages logging subsystem.
Early log messages will be stored in memory until the subsystem is fully initialized with vlc_LogInit(). This enables logging before the configuration and modules bank are ready.
References vlc_object_t::logger, libvlc_int_t::obj, unlikely, vlc_LogEarlyOpen(), vlc_LogSpam(), vlc_LogSwitch(), vlc_LogSwitchCreate(), and VLC_OBJECT.
Referenced by libvlc_InternalInit().
int vlc_MetadataRequest | ( | libvlc_int_t * | libvlc, |
input_item_t * | item, | ||
input_item_meta_request_option_t | i_options, | ||
const input_preparser_callbacks_t * | cbs, | ||
void * | cbs_userdata, | ||
int | timeout, | ||
void * | id | ||
) |
References input_preparser_Push(), libvlc_priv(), libvlc_priv_t::parser, unlikely, VLC_ENOMEM, and VLC_SUCCESS.
Referenced by libvlc_MetadataRequest(), libvlc_priv(), vlc_media_tree_Preparse(), and vlc_playlist_Preparse().
void vlc_object_deinit | ( | vlc_object_t * | obj | ) |
Deinitializes a VLC object.
This frees resources allocated by vlc_object_init().
References vlc_object_internals::resources, var_DestroyAll(), vlc_internals, vlc_restorecancel(), and vlc_savecancel().
Referenced by vlc_object_delete().
int vlc_object_init | ( | vlc_object_t * | obj, |
vlc_object_t * | parent, | ||
const char * | type_name | ||
) |
Initializes a VLC object.
obj | storage space for object to initialize [OUT] |
parent | parent object (or NULL to initialize the root) [IN] |
type_name | object type name |
0 | on success |
-1 | on (out of memory) error |
void vlc_objres_clear | ( | vlc_object_t * | obj | ) |
Releases all resources of an object.
All resources added with vlc_objres_add() are released in reverse order. The resource list is reset to empty.
obj | object whose resources to release |
References container_of, vlc_res::payload, vlc_res::release, and vlc_objres_pop().
Referenced by demux_Probe(), generic_start(), module_unneed(), tls_client_load(), tls_server_load(), vlc_decoder_device_Create(), vlc_decoder_device_Release(), vlc_gl_Release(), vlc_gl_start(), vlc_tls_ClientDelete(), vlc_tls_ServerDelete(), vout_display_Delete(), vout_display_New(), vout_display_start(), vout_window_Delete(), and vout_window_start().
void* vlc_objres_new | ( | size_t | size, |
void(*)(void *) | release | ||
) |
Allocates an object resource.
size | storage size in bytes of the resource data |
release | callback to release the resource |
References add_overflow, vlc_res::payload, vlc_res::release, and unlikely.
Referenced by vlc_obj_malloc().
void vlc_objres_push | ( | vlc_object_t * | obj, |
void * | data | ||
) |
Pushes an object resource on the object resources stack.
obj | object to allocate the resource for |
data | resource base address (as returned by vlc_objres_new()) |
References container_of, vlc_res::payload, vlc_res::prev, and vlc_obj_res().
Referenced by vlc_obj_malloc().
void vlc_objres_remove | ( | vlc_object_t * | obj, |
void * | data, | ||
bool(*)(void *, void *) | match | ||
) |
Releases one object resource explicitly.
If a resource associated with an object needs to be released explicitly earlier than normal, call this function. This is relatively slow and should be avoided.
obj | object whose resource to release |
data | private data for the comparison function |
match | comparison function to match the targeted resource |
References vlc_res::payload, vlc_res::prev, vlc_res::release, and vlc_obj_res().
Referenced by vlc_obj_free().
int vlc_set_priority | ( | vlc_thread_t | , |
int | |||
) |
References VLC_EGENERIC, and VLC_SUCCESS.
Referenced by Run().
void vlc_threads_setup | ( | libvlc_int_t * | ) |
References ABOVE_NORMAL_PRIORITY_CLASS, mdate_default(), mdate_selected, msg_Dbg, SelectClockSource(), var_InheritBool(), and VLC_OBJECT.
Referenced by libvlc_InternalInit(), and mdate_default().
void vlc_trace | ( | const char * | fn, |
const char * | file, | ||
unsigned | line | ||
) |
Print a backtrace to the standard error for debugging purpose.
References ARRAY_SIZE, and fsync().
Referenced by vlc_thread_fatal().
const char psz_vlc_changeset[] |
Referenced by Version(), and vlc_LogSpam().