X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc%2Flibvlc.h;h=7c82df8e9e26e8486a44e34d42e01706da786907;hb=081c8d03ae3e16a8b38a0b4c39c9ce6d5edfa45b;hp=e9a25b330f915bbda1d53e8a8163c957090d99ac;hpb=1fb2f8b0febfae75d04c915f40bc189b956be968;p=vlc diff --git a/include/vlc/libvlc.h b/include/vlc/libvlc.h index e9a25b330f..7c82df8e9e 100644 --- a/include/vlc/libvlc.h +++ b/include/vlc/libvlc.h @@ -31,10 +31,24 @@ */ -#ifndef _LIBVLC_H -#define _LIBVLC_H 1 - -#include +#ifndef VLC_LIBVLC_H +#define VLC_LIBVLC_H 1 + +#if defined (WIN32) && defined (DLL_EXPORT) +# define VLC_PUBLIC_API __declspec(dllexport) +#else +# define VLC_PUBLIC_API +#endif + +#ifdef __LIBVLC__ +/* Avoid unuseful warnings from libvlc with our deprecated APIs */ +# define VLC_DEPRECATED_API VLC_PUBLIC_API +#elif defined(__GNUC__) && \ + (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0) +# define VLC_DEPRECATED_API VLC_PUBLIC_API __attribute__((deprecated)) +#else +# define VLC_DEPRECATED_API VLC_PUBLIC_API +#endif # ifdef __cplusplus extern "C" { @@ -145,6 +159,27 @@ VLC_PUBLIC_API void libvlc_release( libvlc_instance_t * ); */ VLC_PUBLIC_API void libvlc_retain( libvlc_instance_t * ); +/** + * Try to start a user interface for the libvlc instance, and wait until the + * user exits. + * + * \param p_instance the instance + * \param name interface name, or NULL for default + * \param p_exception an initialized exception pointer + */ +VLC_PUBLIC_API +void libvlc_add_intf( libvlc_instance_t *p_instance, const char *name, + libvlc_exception_t *p_exception ); + +/** + * Waits until an interface causes the instance to exit. + * You should start at least one interface first, using libvlc_add_intf(). + * + * \param p_instance the instance + */ +VLC_PUBLIC_API +void libvlc_wait( libvlc_instance_t *p_instance ); + /** * Retrieve libvlc version. * @@ -152,7 +187,7 @@ VLC_PUBLIC_API void libvlc_retain( libvlc_instance_t * ); * * \return a string containing the libvlc version */ -VLC_PUBLIC_API const char * libvlc_get_version(); +VLC_PUBLIC_API const char * libvlc_get_version(void); /** * Retrieve libvlc compiler version. @@ -161,7 +196,7 @@ VLC_PUBLIC_API const char * libvlc_get_version(); * * \return a string containing the libvlc compiler version */ -VLC_PUBLIC_API const char * libvlc_get_compiler(); +VLC_PUBLIC_API const char * libvlc_get_compiler(void); /** * Retrieve libvlc changeset. @@ -170,7 +205,7 @@ VLC_PUBLIC_API const char * libvlc_get_compiler(); * * \return a string containing the libvlc changeset */ -VLC_PUBLIC_API const char * libvlc_get_changeset(); +VLC_PUBLIC_API const char * libvlc_get_changeset(void); /** @}*/ @@ -291,7 +326,7 @@ VLC_PUBLIC_API void * * @{ */ -/** +/** * Create an empty Media Player object * * \param p_libvlc_instance the libvlc instance in which the Media Player @@ -328,7 +363,7 @@ VLC_PUBLIC_API void libvlc_media_player_retain( libvlc_media_player_t * ); VLC_PUBLIC_API void libvlc_media_player_set_media( libvlc_media_player_t *, libvlc_media_t *, libvlc_exception_t * ); /** - * Get the media used by the media_player. + * Get the media used by the media_player. * * \param p_mi the Media Player * \param p_e an initialized exception pointer @@ -347,7 +382,7 @@ VLC_PUBLIC_API libvlc_media_t * libvlc_media_player_get_media( libvlc_media_play VLC_PUBLIC_API libvlc_event_manager_t * libvlc_media_player_event_manager ( libvlc_media_player_t *, libvlc_exception_t * ); /** - * Play + * Play * * \param p_mi the Media Player * \param p_e an initialized exception pointer @@ -355,7 +390,7 @@ VLC_PUBLIC_API libvlc_event_manager_t * libvlc_media_player_event_manager ( libv VLC_PUBLIC_API void libvlc_media_player_play ( libvlc_media_player_t *, libvlc_exception_t * ); /** - * Pause + * Pause * * \param p_mi the Media Player * \param p_e an initialized exception pointer @@ -363,7 +398,7 @@ VLC_PUBLIC_API void libvlc_media_player_play ( libvlc_media_player_t *, libvlc_e VLC_PUBLIC_API void libvlc_media_player_pause ( libvlc_media_player_t *, libvlc_exception_t * ); /** - * Stop + * Stop * * \param p_mi the Media Player * \param p_e an initialized exception pointer @@ -516,6 +551,16 @@ VLC_PUBLIC_API int libvlc_video_get_spu( libvlc_media_player_t *, libvlc_excepti */ VLC_PUBLIC_API void libvlc_video_set_spu( libvlc_media_player_t *, int , libvlc_exception_t * ); +/** + * Set new video subtitle file. + * + * \param p_mediaplayer the media player + * \param psz_subtitle new video subtitle file + * \param p_e an initialized exception pointer + * \return the success status (boolean) + */ +VLC_PUBLIC_API int libvlc_video_set_subtitle_file( libvlc_media_player_t *, char *, libvlc_exception_t * ); + /** * Get current crop filter geometry. * @@ -574,8 +619,6 @@ VLC_PUBLIC_API void libvlc_video_set_teletext( libvlc_media_player_t *, int, lib */ VLC_PUBLIC_API void libvlc_video_take_snapshot( libvlc_media_player_t *, char *,unsigned int, unsigned int, libvlc_exception_t * ); -VLC_PUBLIC_API int libvlc_video_destroy( libvlc_media_player_t *, libvlc_exception_t *); - /** * Resize the current video output window. * @@ -606,28 +649,6 @@ VLC_PUBLIC_API int libvlc_video_reparent( libvlc_media_player_t *, libvlc_drawab */ VLC_PUBLIC_API void libvlc_video_redraw_rectangle( libvlc_media_player_t *, const libvlc_rectangle_t *, libvlc_exception_t * ); -/** - * Set the default video output's parent. - * - * This setting will be used as default for all video outputs. - * - * \param p_instance libvlc instance - * \param drawable the new parent window (Drawable on X11, CGrafPort on MacOSX, HWND on Win32) - * \param p_e an initialized exception pointer - */ -VLC_PUBLIC_API void libvlc_video_set_parent( libvlc_instance_t *, libvlc_drawable_t, libvlc_exception_t * ); - -/** - * Set the default video output parent. - * - * This setting will be used as default for all video outputs. - * - * \param p_instance libvlc instance - * \param drawable the new parent window (Drawable on X11, CGrafPort on MacOSX, HWND on Win32) - * \param p_e an initialized exception pointer - */ -VLC_PUBLIC_API libvlc_drawable_t libvlc_video_get_parent( libvlc_instance_t *, libvlc_exception_t * ); - /** * Set the default video output size. *