]> git.sesse.net Git - vlc/blobdiff - include/vlc/libvlc.h
Move last.fm password from PasswordShowOnEdit to Password.
[vlc] / include / vlc / libvlc.h
index 2f4203f97838bd4937bca75a9cd29855f6fe4374..7c82df8e9e26e8486a44e34d42e01706da786907 100644 (file)
  */
 
 
-#ifndef _LIBVLC_H
-#define _LIBVLC_H 1
-
-#include <vlc/vlc.h>
+#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);
 
 /** @}*/
 
@@ -219,7 +254,7 @@ VLC_PUBLIC_API libvlc_media_t * libvlc_media_new_as_node(
  * The options are detailed in vlc --long-help, for instance "--sout-all"
  *
  * \param p_instance the instance
- * \param psz_mrl the MRL to read
+ * \param ppsz_options the options (as a string)
  * \param p_e an initialized exception pointer
  */
 VLC_PUBLIC_API void libvlc_media_add_option(
@@ -242,7 +277,7 @@ VLC_PUBLIC_API libvlc_media_t * libvlc_media_duplicate( libvlc_media_t * );
  * Read the meta of the media.
  *
  * \param p_meta_desc the media to read
- * \param p_meta_desc the meta to read
+ * \param e_meta_desc the meta to read
  * \param p_e an initialized exception pointer
  * \return the media's meta
  */
@@ -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
@@ -439,7 +474,7 @@ VLC_PUBLIC_API int libvlc_media_player_can_pause( libvlc_media_player_t *p_mi, l
 /**
  * Toggle fullscreen status on video output.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param p_e an initialized exception pointer
  */
 VLC_PUBLIC_API void libvlc_toggle_fullscreen( libvlc_media_player_t *, libvlc_exception_t * );
@@ -447,7 +482,7 @@ VLC_PUBLIC_API void libvlc_toggle_fullscreen( libvlc_media_player_t *, libvlc_ex
 /**
  * Enable or disable fullscreen on a video output.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param b_fullscreen boolean for fullscreen status
  * \param p_e an initialized exception pointer
  */
@@ -456,7 +491,7 @@ VLC_PUBLIC_API void libvlc_set_fullscreen( libvlc_media_player_t *, int, libvlc_
 /**
  * Get current fullscreen status.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param p_e an initialized exception pointer
  * \return the fullscreen status (boolean)
  */
@@ -465,7 +500,7 @@ VLC_PUBLIC_API int libvlc_get_fullscreen( libvlc_media_player_t *, libvlc_except
 /**
  * Get current video height.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param p_e an initialized exception pointer
  * \return the video height
  */
@@ -474,7 +509,7 @@ VLC_PUBLIC_API int libvlc_video_get_height( libvlc_media_player_t *, libvlc_exce
 /**
  * Get current video width.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param p_e an initialized exception pointer
  * \return the video width
  */
@@ -483,7 +518,7 @@ VLC_PUBLIC_API int libvlc_video_get_width( libvlc_media_player_t *, libvlc_excep
 /**
  * Get current video aspect ratio.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param p_e an initialized exception pointer
  * \return the video aspect ratio
  */
@@ -492,7 +527,7 @@ VLC_PUBLIC_API char *libvlc_video_get_aspect_ratio( libvlc_media_player_t *, lib
 /**
  * Set new video aspect ratio.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param psz_aspect new video aspect-ratio
  * \param p_e an initialized exception pointer
  */
@@ -501,7 +536,7 @@ VLC_PUBLIC_API void libvlc_video_set_aspect_ratio( libvlc_media_player_t *, char
 /**
  * Get current video subtitle.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param p_e an initialized exception pointer
  * \return the video subtitle selected
  */
@@ -510,16 +545,26 @@ VLC_PUBLIC_API int libvlc_video_get_spu( libvlc_media_player_t *, libvlc_excepti
 /**
  * Set new video subtitle.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param i_spu new video subtitle to select
  * \param p_e an initialized exception pointer
  */
 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.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param p_e an initialized exception pointer
  * \return the crop filter geometry
  */
@@ -528,7 +573,7 @@ VLC_PUBLIC_API char *libvlc_video_get_crop_geometry( libvlc_media_player_t *, li
 /**
  * Set new crop filter geometry.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param psz_geometry new crop filter geometry
  * \param p_e an initialized exception pointer
  */
@@ -537,7 +582,7 @@ VLC_PUBLIC_API void libvlc_video_set_crop_geometry( libvlc_media_player_t *, cha
 /**
  * Toggle teletext transparent status on video output.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param p_e an initialized exception pointer
  */
 VLC_PUBLIC_API void libvlc_toggle_teletext( libvlc_media_player_t *, libvlc_exception_t * );
@@ -545,7 +590,7 @@ VLC_PUBLIC_API void libvlc_toggle_teletext( libvlc_media_player_t *, libvlc_exce
 /**
  * Get current teletext page requested.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param p_e an initialized exception pointer
  * \return the current teletext page requested.
  */
@@ -554,7 +599,7 @@ VLC_PUBLIC_API int libvlc_video_get_teletext( libvlc_media_player_t *, libvlc_ex
 /**
  * Set new teletext page to retrieve.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param i_page teletex page number requested
  * \param p_e an initialized exception pointer
  */
@@ -566,7 +611,7 @@ VLC_PUBLIC_API void libvlc_video_set_teletext( libvlc_media_player_t *, int, lib
  * If i_width AND i_height is 0, original size is used.
  * If i_width XOR i_height is 0, original aspect-ratio is preserved.
  *
- * \param p_input the input
+ * \param p_mediaplayer the media player
  * \param psz_filepath the path where to save the screenshot to
  * \param i_width the snapshot's width
  * \param i_height the snapshot's height
@@ -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.
  *