1 /*****************************************************************************
2 * deprecated.h: libvlc deprecated API
3 *****************************************************************************
4 * Copyright (C) 1998-2008 the VideoLAN team
7 * Authors: Clément Stenac <zorglub@videolan.org>
8 * Jean-Paul Saman <jpsaman@videolan.org>
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
23 *****************************************************************************/
25 #ifndef LIBVLC_DEPRECATED_H
26 #define LIBVLC_DEPRECATED_H 1
30 * This file defines libvlc depreceated API
34 * This is the legacy representation of a platform-specific drawable. Because
35 * it cannot accomodate a pointer on most 64-bits platforms, it should not be
38 typedef int libvlc_drawable_t;
45 * Set the drawable where the media player should render its video output.
47 * On Windows 32-bits, a window handle (HWND) is expected.
48 * On Windows 64-bits, this function will always fail.
50 * On OSX 32-bits, a CGrafPort is expected.
51 * On OSX 64-bits, this function will always fail.
53 * On other platforms, an existing X11 window ID is expected. See
54 * libvlc_media_player_set_xid() for details.
56 * \param p_mi the Media Player
57 * \param drawable the libvlc_drawable_t where the media player
58 * should render its video
59 * \param p_e an initialized exception pointer
61 VLC_DEPRECATED_API void libvlc_media_player_set_drawable ( libvlc_media_player_t *, libvlc_drawable_t, libvlc_exception_t * );
64 * Get the drawable where the media player should render its video output
66 * \param p_mi the Media Player
67 * \param p_e an initialized exception pointer
68 * \return the libvlc_drawable_t where the media player
69 * should render its video
71 VLC_DEPRECATED_API libvlc_drawable_t
72 libvlc_media_player_get_drawable ( libvlc_media_player_t *, libvlc_exception_t * );
75 * Set the default video output's parent.
77 * This setting will be used as default for any video output.
79 * \param p_instance libvlc instance
80 * \param drawable the new parent window
81 * (see libvlc_media_player_set_drawable() for details)
82 * \param p_e an initialized exception pointer
83 * @deprecated Use libvlc_media_player_set_drawable
85 VLC_DEPRECATED_API void libvlc_video_set_parent( libvlc_instance_t *, libvlc_drawable_t, libvlc_exception_t * );
88 * Set the default video output parent.
90 * This setting will be used as default for all video outputs.
92 * \param p_instance libvlc instance
93 * \param drawable the new parent window (Drawable on X11, CGrafPort on MacOSX, HWND on Win32)
94 * \param p_e an initialized exception pointer
95 * @deprecated Use libvlc_media_player_get_drawable
97 VLC_DEPRECATED_API libvlc_drawable_t libvlc_video_get_parent( libvlc_instance_t *, libvlc_exception_t * );
100 * Does nothing. Do not use this function.
102 VLC_DEPRECATED_API int libvlc_video_reparent( libvlc_media_player_t *, libvlc_drawable_t, libvlc_exception_t * );
105 * Resize the current video output window.
106 * This might crash. Please use libvlc_video_set_scale() instead.
108 * \param p_mi media player instance
109 * \param width new width for video output window
110 * \param height new height for video output window
111 * \param p_e an initialized exception pointer
112 * \return the success status (boolean)
114 VLC_DEPRECATED_API void libvlc_video_resize( libvlc_media_player_t *, int, int, libvlc_exception_t *);
117 * Tell windowless video output to redraw rectangular area (MacOS X only).
118 * This might crash. Do not use this function.
120 * \param p_mi media player instance
121 * \param area coordinates within video drawable
122 * \param p_e an initialized exception pointer
124 VLC_DEPRECATED_API void libvlc_video_redraw_rectangle( libvlc_media_player_t *, const libvlc_rectangle_t *, libvlc_exception_t * );
127 * Set the default video output size.
128 * This setting will be used as default for all video outputs.
130 * \param p_instance libvlc instance
131 * \param width new width for video drawable
132 * \param height new height for video drawable
133 * \param p_e an initialized exception pointer
135 VLC_DEPRECATED_API void libvlc_video_set_size( libvlc_instance_t *, int, int, libvlc_exception_t * );
138 * Set the default video output viewport for a windowless video output
139 * (MacOS X only). This might crash. Do not use this function.
141 * This setting will be used as default for all video outputs.
143 * \param p_instance libvlc instance
144 * \param p_mi media player instance
145 * \param view coordinates within video drawable
146 * \param clip coordinates within video drawable
147 * \param p_e an initialized exception pointer
149 VLC_DEPRECATED_API void libvlc_video_set_viewport( libvlc_instance_t *, libvlc_media_player_t *, const libvlc_rectangle_t *, const libvlc_rectangle_t *, libvlc_exception_t * );
152 * This function shall not be used at all. It may lead to crash and race condition.
154 VLC_DEPRECATED_API int libvlc_video_destroy( libvlc_media_player_t *, libvlc_exception_t *);
156 /*****************************************************************************
157 * Playlist (Deprecated)
158 *****************************************************************************/
159 /** \defgroup libvlc_playlist libvlc_playlist (Deprecated)
161 * LibVLC Playlist handling (Deprecated)
162 * @deprecated Use media_list
167 * Set the playlist's loop attribute. If set, the playlist runs continuously
168 * and wraps around when it reaches the end.
170 * \param p_instance the playlist instance
171 * \param loop the loop attribute. 1 sets looping, 0 disables it
172 * \param p_e an initialized exception pointer
174 VLC_DEPRECATED_API void libvlc_playlist_loop( libvlc_instance_t* , int,
175 libvlc_exception_t * );
180 * Additionnal playlist item options can be specified for addition to the
181 * item before it is played.
183 * \param p_instance the playlist instance
184 * \param i_id the item to play. If this is a negative number, the next
185 * item will be selected. Otherwise, the item with the given ID will be
187 * \param i_options the number of options to add to the item
188 * \param ppsz_options the options to add to the item
189 * \param p_e an initialized exception pointer
191 VLC_DEPRECATED_API void libvlc_playlist_play( libvlc_instance_t*, int, int,
192 char **, libvlc_exception_t * );
195 * Toggle the playlist's pause status.
197 * If the playlist was running, it is paused. If it was paused, it is resumed.
199 * \param p_instance the playlist instance to pause
200 * \param p_e an initialized exception pointer
202 VLC_DEPRECATED_API void libvlc_playlist_pause( libvlc_instance_t *,
203 libvlc_exception_t * );
206 * Checks whether the playlist is running
208 * \param p_instance the playlist instance
209 * \param p_e an initialized exception pointer
210 * \return 0 if the playlist is stopped or paused, 1 if it is running
212 VLC_DEPRECATED_API int libvlc_playlist_isplaying( libvlc_instance_t *,
213 libvlc_exception_t * );
216 * Get the number of items in the playlist
218 * Expects the playlist instance to be locked already.
220 * \param p_instance the playlist instance
221 * \param p_e an initialized exception pointer
222 * \return the number of items
224 VLC_DEPRECATED_API int libvlc_playlist_items_count( libvlc_instance_t *,
225 libvlc_exception_t * );
227 VLC_DEPRECATED_API int libvlc_playlist_get_current_index( libvlc_instance_t *,
228 libvlc_exception_t *);
232 * \param p_instance the playlist instance
234 VLC_DEPRECATED_API void libvlc_playlist_lock( libvlc_instance_t * );
237 * Unlock the playlist.
239 * \param p_instance the playlist instance
241 VLC_DEPRECATED_API void libvlc_playlist_unlock( libvlc_instance_t * );
246 * \param p_instance the playlist instance to stop
247 * \param p_e an initialized exception pointer
249 VLC_DEPRECATED_API void libvlc_playlist_stop( libvlc_instance_t *,
250 libvlc_exception_t * );
253 * Go to the next playlist item. If the playlist was stopped, playback
256 * \param p_instance the playlist instance
257 * \param p_e an initialized exception pointer
259 VLC_DEPRECATED_API void libvlc_playlist_next( libvlc_instance_t *,
260 libvlc_exception_t * );
263 * Go to the previous playlist item. If the playlist was stopped, playback
266 * \param p_instance the playlist instance
267 * \param p_e an initialized exception pointer
269 VLC_DEPRECATED_API void libvlc_playlist_prev( libvlc_instance_t *,
270 libvlc_exception_t * );
273 * Empty a playlist. All items in the playlist are removed.
275 * \param p_instance the playlist instance
276 * \param p_e an initialized exception pointer
278 VLC_DEPRECATED_API void libvlc_playlist_clear( libvlc_instance_t *,
279 libvlc_exception_t * );
282 * Append an item to the playlist. The item is added at the end. If more
283 * advanced options are required, \see libvlc_playlist_add_extended instead.
285 * \param p_instance the playlist instance
286 * \param psz_uri the URI to open, using VLC format
287 * \param psz_name a name that you might want to give or NULL
288 * \param p_e an initialized exception pointer
289 * \return the identifier of the new item
291 VLC_DEPRECATED_API int libvlc_playlist_add( libvlc_instance_t *, const char *,
292 const char *, libvlc_exception_t * );
295 * Append an item to the playlist. The item is added at the end, with
296 * additional input options.
298 * \param p_instance the playlist instance
299 * \param psz_uri the URI to open, using VLC format
300 * \param psz_name a name that you might want to give or NULL
301 * \param i_options the number of options to add
302 * \param ppsz_options strings representing the options to add
303 * \param p_e an initialized exception pointer
304 * \return the identifier of the new item
306 VLC_DEPRECATED_API int libvlc_playlist_add_extended( libvlc_instance_t *, const char *,
307 const char *, int, const char **,
308 libvlc_exception_t * );
311 * Append an item to the playlist. The item is added at the end, with
312 * additional input options from an untrusted source.
314 * \param p_instance the playlist instance
315 * \param psz_uri the URI to open, using VLC format
316 * \param psz_name a name that you might want to give or NULL
317 * \param i_options the number of options to add
318 * \param ppsz_options strings representing the options to add
319 * \param p_e an initialized exception pointer
320 * \return the identifier of the new item
322 VLC_DEPRECATED_API int libvlc_playlist_add_extended_untrusted( libvlc_instance_t *, const char *,
323 const char *, int, const char **,
324 libvlc_exception_t * );
327 * Delete the playlist item with the given ID.
329 * \param p_instance the playlist instance
330 * \param i_id the id to remove
331 * \param p_e an initialized exception pointer
332 * \return 0 in case of success, a non-zero value otherwise
334 VLC_DEPRECATED_API int libvlc_playlist_delete_item( libvlc_instance_t *, int,
335 libvlc_exception_t * );
337 /** Get the input that is currently being played by the playlist.
339 * \param p_instance the playlist instance to use
340 * \param p_e an initialized exception pointern
341 * \return a media instance object
343 VLC_DEPRECATED_API libvlc_media_player_t * libvlc_playlist_get_media_player(
344 libvlc_instance_t *, libvlc_exception_t * );
352 #endif /* _LIBVLC_DEPRECATED_H */