MSW: fix DisableScreensaver and RestoreScreensaver definitions
[vlc/asuraparaju-public.git] / projects / activex / axvlc.idl
blobde7562ddf213759bc211977cdc1bb3a5951e10e5
1 /*****************************************************************************
2 * axvlc.idl: ActiveX control for VLC
3 *****************************************************************************
4 * Copyright (C) 2006 the VideoLAN team
5 * Copyright (C) 2010 M2X BV
7 * Authors: Damien Fouilleul <Damien.Fouilleul@laposte.net>
8 * Jean-Paul Saman <jpsaman _at_ m2x _dot_ nl>
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 // comments terminated by [t] are by tonsofpcs, regarding the string
26 // review. April 02, 2006. [t]
27 // Possibly change all instances of "the current playlist" to "the
28 // playlist" and "current playlist" to "the playlist" [t]
30 import "ocidl.idl";
33 uuid(DF2BBE39-40A8-433b-A279-073F48DA94B6),
34 version(1.0),
35 helpstring("VideoLAN VLC ActiveX Plugin")
37 library AXVLC
39 // Forward declare all types defined in this typelib
40 interface IVLCControl;
41 interface IVLCAudio;
42 interface IVLCInput;
43 interface IVLCLogo;
44 interface IVLCDeinterlace;
45 interface IVLCMarquee;
46 interface IVLCPlaylist;
47 interface IVLCSubtitle;
48 interface IVLCVideo;
49 interface IVLCControl2;
50 dispinterface DVLCEvents;
52 importlib("stdole2.tlb");
54 typedef [public] enum VLCPlaylistMode
56 VLCPlayListInsert = 1,
57 VLCPlayListInsertAndGo = 9,
58 VLCPlayListReplace = 2,
59 VLCPlayListReplaceAndGo = 10,
60 VLCPlayListAppend = 4,
61 VLCPlayListAppendAndGo = 12,
62 VLCPlayListCheckInsert = 16
63 } eVLCPlaylistMode;
65 // playlist target position
66 const int VLCPlayListEnd = -666;
68 // DISPID definitions
69 const int DISPID_BackColor = -501;
71 const int DISPID_Visible = 100;
72 const int DISPID_Playing = 101;
73 const int DISPID_Position = 102;
74 const int DISPID_Time = 103;
75 const int DISPID_Length = 104;
76 const int DISPID_Volume = 105;
77 const int DISPID_MRL = 106;
78 const int DISPID_AutoPlay = 107;
79 const int DISPID_AutoLoop = 108;
80 const int DISPID_StartTime = 109;
81 const int DISPID_BaseURL = 110;
82 const int DISPID_Toolbar = 111;
85 odl,
86 uuid(C2FA41D0-B113-476e-AC8C-9BD14999C1C1),
87 helpstring("VLC Control (deprecated)"),
88 dual,
89 oleautomation
91 interface IVLCControl : IDispatch
93 [id(DISPID_Visible), propget, bindable, helpstring("Returns/sets a value that determines whether viewing area is visible or hidden.")]
94 HRESULT Visible([out, retval] VARIANT_BOOL* visible);
95 [id(DISPID_Visible), propput, bindable, helpstring("Returns/sets a value that determines whether viewing area is visible or hidden.")]
96 HRESULT Visible([in] VARIANT_BOOL visible);
97 [helpstring("Play current target in playlist.")]
98 HRESULT play();
99 [helpstring("Pause playback.")]
100 HRESULT pause();
101 [helpstring("Stop playback.")]
102 HRESULT stop();
103 [id(DISPID_Playing), hidden, propget, helpstring("Returns a value that determines whether VLC is currently playing.")]
104 HRESULT Playing([out, retval] VARIANT_BOOL* isPlaying);
105 [id(DISPID_Position), propget, helpstring("Returns/sets playback position within the current item. Position is a relative value ranging from 0.0 to 1.0.")]
106 HRESULT Position([out, retval] float* position);
107 [id(DISPID_Position), propput, helpstring("Returns/sets playback position within the current item. Position is a relative value ranging from 0.0 to 1.0.")]
108 HRESULT Position([in] float position);
109 [id(DISPID_Time), propget, helpstring("Returns/sets playback time relative to the start of the current item.")]
110 HRESULT Time([out, retval] int* seconds);
111 [id(DISPID_Time), propput, helpstring("Returns/sets playback time relative to the start of the current item.")]
112 HRESULT Time([in] int seconds);
113 [helpstring("Advance or backtrack playback time, relative to current time.")] //possibly find a better word to replace 'backtrack' [t]
114 HRESULT shuttle([in] int seconds);
115 [helpstring("Switch video between normal and fullscreen view modes.")]
116 HRESULT fullscreen();
117 [id(DISPID_Length), propget, hidden, helpstring("Returns the total length, in seconds, of the current item, may be unknown.")]
118 HRESULT Length([out, retval] int* seconds);
119 [helpstring("Increases playback speed. Possible speeds are: 1x, 2x, 4x, 8x.")]
120 HRESULT playFaster();
121 [helpstring("Decreases playback speed. Possible speeds are: 1x, 2x, 4x, 8x.")]
122 HRESULT playSlower();
123 [id(DISPID_Volume), propget, helpstring("Returns/sets playback volume, ranges from 0 to 200%.")] //possibly remove % from 'ranges', change to 'values', and specify that 200 is equivilant to 200% (remember, 200% == 2.0, but this gets an int not a float) [t]
124 HRESULT Volume([out, retval] int* volume);
125 [id(DISPID_Volume), propput, helpstring("Returns/sets playback volume, ranges from 0 to 200%.")]
126 HRESULT Volume([in] int volume);
127 [helpstring("Mute/unmute playback audio.")]
128 HRESULT toggleMute();
129 [helpstring("Sets the value of a VLC variable.")]
130 HRESULT setVariable([in] BSTR name, [in] VARIANT value);
131 [helpstring("Returns the value of a VLC variable.")]
132 HRESULT getVariable([in] BSTR name, [out, retval] VARIANT *value);
135 ** use VARIANT rather than a SAFEARRAY as argument type
136 ** for compatibility with some scripting language (JScript)
139 [helpstring("Add an item to the playlist.")]
140 HRESULT addTarget([in] BSTR uri, [in] VARIANT options, [in] enum VLCPlaylistMode mode, [in] int position);
141 [propget, helpstring("Returns index of current item in playlist.")]
142 HRESULT PlaylistIndex([out, retval] int* index);
143 [propget, helpstring("Returns number of items in playlist.")]
144 HRESULT PlaylistCount([out, retval] int* index);
145 [helpstring("Advance to next item in playlist.")]
146 HRESULT playlistNext();
147 [helpstring("Advance to previous item in playlist.")]
148 HRESULT playlistPrev();
149 [helpstring("Remove all items from playlist.")]
150 HRESULT playlistClear();
151 [propget, hidden, helpstring("Returns VLC Version.")]
152 HRESULT VersionInfo([out, retval] BSTR* version);
153 [id(DISPID_MRL), propget, helpstring("Returns/sets the first MRL in playlist, used for AutoPlay")]
154 HRESULT MRL([out, retval] BSTR* mrl);
155 [id(DISPID_MRL), propput, helpstring("Returns/sets the first MRL in playlist, used for AutoPlay")]
156 HRESULT MRL([in] BSTR mrl);
157 [id(DISPID_AutoPlay), propget, helpstring("Returns/sets a value that determines whether the playlist is played on startup")]
158 HRESULT AutoPlay([out, retval] VARIANT_BOOL* autoplay);
159 [id(DISPID_AutoPlay), propput, helpstring("Returns/Sets a value that determines whether the playlist is played on startup")]
160 HRESULT AutoPlay([in] VARIANT_BOOL autoplay);
161 [id(DISPID_AutoLoop), propget, helpstring("Returns/sets a value that determines whether the playlist is looped")]
162 HRESULT AutoLoop([out, retval] VARIANT_BOOL* autoloop);
163 [id(DISPID_AutoLoop), propput, helpstring("Returns/sets a value that determines whether the playlist is looped")]
164 HRESULT AutoLoop([in] VARIANT_BOOL autoloop);
167 const int DISPID_PlayEvent = 100;
168 const int DISPID_PauseEvent = 101;
169 const int DISPID_StopEvent = 102;
171 /* async events from libvlc */
172 const int DISPID_MediaPlayerNothingSpecialEvent = 200;
173 const int DISPID_MediaPlayerOpeningEvent = 201;
174 const int DISPID_MediaPlayerBufferingEvent = 202;
175 const int DISPID_MediaPlayerPlayingEvent = 203;
176 const int DISPID_MediaPlayerPausedEvent = 204;
177 const int DISPID_MediaPlayerForwardEvent = 205;
178 const int DISPID_MediaPlayerBackwardEvent = 206;
179 const int DISPID_MediaPlayerEncounteredErrorEvent = 207;
180 const int DISPID_MediaPlayerEndReachedEvent = 208;
181 const int DISPID_MediaPlayerStoppedEvent = 209;
183 const int DISPID_MediaPlayerTimeChangedEvent = 210;
184 const int DISPID_MediaPlayerPositionChangedEvent = 211;
185 const int DISPID_MediaPlayerSeekableChangedEvent = 212;
186 const int DISPID_MediaPlayerPausableChangedEvent = 213;
189 uuid(DF48072F-5EF8-434e-9B40-E2F3AE759B5F),
190 helpstring("Event interface for VLC control"),
192 dispinterface DVLCEvents
194 properties:
195 methods:
196 [id(DISPID_PlayEvent), helpstring("Playing")]
197 void play();
198 [id(DISPID_PauseEvent), helpstring("Paused")]
199 void pause();
200 [id(DISPID_StopEvent), helpstring("Stopped")]
201 void stop();
203 /* asyn events from libvlc */
204 [id(DISPID_MediaPlayerNothingSpecialEvent), helpstring("Idle state")]
205 void MediaPlayerNothingSpecial();
206 [id(DISPID_MediaPlayerOpeningEvent), helpstring("Opening media")]
207 void MediaPlayerOpening();
208 [id(DISPID_MediaPlayerBufferingEvent), helpstring("Buffering media")]
209 void MediaPlayerBuffering();
210 [id(DISPID_MediaPlayerPlayingEvent), helpstring("Media is playing")]
211 void MediaPlayerPlaying();
212 [id(DISPID_MediaPlayerPausedEvent), helpstring("Media is paused")]
213 void MediaPlayerPaused();
214 [id(DISPID_MediaPlayerForwardEvent), helpstring("Forward playback")]
215 void MediaPlayerForward();
216 [id(DISPID_MediaPlayerBackwardEvent), helpstring("Backward playback")]
217 void MediaPlayerBackward();
218 [id(DISPID_MediaPlayerEncounteredErrorEvent), helpstring("An error has been encountered")]
219 void MediaPlayerEncounteredError();
220 [id(DISPID_MediaPlayerEndReachedEvent), helpstring("End of playback reached")]
221 void MediaPlayerEndReached();
222 [id(DISPID_MediaPlayerStoppedEvent), helpstring("Playback stopped")]
223 void MediaPlayerStopped();
225 [id(DISPID_MediaPlayerTimeChangedEvent), helpstring("Time changed")]
226 void MediaPlayerTimeChanged([in] long time);
227 [id(DISPID_MediaPlayerPositionChangedEvent), helpstring("Position changed")]
228 void MediaPlayerPositionChanged([in] long position);
229 [id(DISPID_MediaPlayerSeekableChangedEvent), helpstring("Seek changed")]
230 void MediaPlayerSeekableChanged([in] VARIANT_BOOL seekable);
231 [id(DISPID_MediaPlayerPausableChangedEvent), helpstring("Pause setting changed")]
232 void MediaPlayerPausableChanged([in] VARIANT_BOOL pausable);
236 odl,
237 uuid(9E0BD17B-2D3C-4656-B94D-03084F3FD9D4),
238 helpstring("VLC Audio APIs"),
239 dual,
240 oleautomation
242 interface IVLCAudio : IDispatch
244 [propget, helpstring("Returns/sets the audio mute state.")]
245 HRESULT mute([out, retval] VARIANT_BOOL* muted);
246 [propput, helpstring("Returns/sets the audio mute state.")]
247 HRESULT mute([in] VARIANT_BOOL muted);
249 [propget, helpstring("Returns/sets audio volume as a percent value.")]
250 HRESULT volume([out, retval] long* volume);
251 [propput, helpstring("Returns/sets audio volume as a percent value.")]
252 HRESULT volume([in] long volume);
254 [helpstring("Mute/unmute audio playback.")]
255 HRESULT toggleMute();
257 [propget, helpstring("Returns/sets audio track used/to use.")]
258 HRESULT track([out, retval] long* track);
259 [propput, helpstring("Returns/sets audio track used/to use.")]
260 HRESULT track([in] long track);
262 [propget, helpstring("Returns the number of audio tracks available.")]
263 HRESULT count([out, retval] long* trackNumber);
264 [helpstring("Returns audio track name.")]
265 HRESULT description([in] long trackID, [out, retval] BSTR* name);
267 [propget, helpstring("Returns audio channel [1-5] indicating; stereo, reverse stereo, left, right, dolby.")]
268 HRESULT channel([out, retval] long* channel);
269 [propput, helpstring("Sets audio channel to [1-5] indicating; stereo, reverse stereo, left, right, dolby.")]
270 HRESULT channel([in] long channel);
274 odl,
275 uuid(49E0DBD1-9440-466C-9C97-95C67190C603),
276 helpstring("VLC Input APIs"),
277 dual,
278 oleautomation
280 interface IVLCInput : IDispatch
282 [propget, helpstring("Returns the clip length, in milliseconds.")]
283 HRESULT length([out, retval] double* length);
285 [propget, helpstring("Returns/sets playback position in current clip. Position is ranging from 0.0 to 1.0.")]
286 HRESULT position([out, retval] double* position);
287 [propput, helpstring("Returns/sets playback position in the current clip. Position ranging from 0.0 to 1.0.")]
288 HRESULT position([in] double position);
290 [propget, helpstring("Returns/sets playback time in current clip, in milliseconds.")]
291 HRESULT time([out, retval] double* time);
292 [propput, helpstring("Returns/sets playback time in the current clip, in milliseconds.")]
293 HRESULT time([in] double time);
295 [propget, helpstring("Returns current playback state.")]
296 HRESULT state([out, retval] long* state);
298 [propget, helpstring("Returns/sets current playback rate, normal rate is 1.0 ")]
299 HRESULT rate([out, retval] double* rate);
300 [propput, helpstring("Returns/sets current playback rate, normal rate is 1.0.")]
301 HRESULT rate([in] double rate);
303 [propget, helpstring("Returns current playback frames per seconds if available.")]
304 HRESULT fps([out, retval] double* fps);
306 [propget, helpstring("Returns whether current playback displays video.")]
307 HRESULT hasVout([out, retval] VARIANT_BOOL* hasVout);
311 odl,
312 uuid(FD37FE32-82BC-4A25-B056-315F4DBB194D),
313 helpstring("VLC Playlist Items collection"),
314 dual,
315 oleautomation
317 interface IVLCPlaylistItems : IDispatch
319 [propget, helpstring("Returns number of items in playlist.")]
320 HRESULT count([out, retval] long* count);
322 [helpstring("Remove all items from playlist.")]
323 HRESULT clear();
325 [helpstring("remove item from playlist.")]
326 HRESULT remove([in] long itemId);
330 odl,
331 uuid(54613049-40BF-4035-9E70-0A9312C0188D),
332 helpstring("VLC Playlist APIs"),
333 dual,
334 oleautomation
336 interface IVLCPlaylist : IDispatch
338 [hidden, propget, helpstring("Returns number of items in playlist. (deprecated)")]
339 HRESULT itemCount([out, retval] long* count);
341 [propget, helpstring("Returns whether playback displays video.")]
342 HRESULT isPlaying([out, retval] VARIANT_BOOL* playing);
344 [helpstring("Add a playlist item.")]
345 HRESULT add([in] BSTR uri, [in, optional] VARIANT name, [in, optional] VARIANT options, [out, retval] long* itemId);
347 [helpstring("Play/Resume the playlist.")]
348 HRESULT play();
350 [helpstring("Play item in playlist.")]
351 HRESULT playItem([in] long itemId);
353 [helpstring("Play/Pause current clip.")]
354 HRESULT togglePause();
356 [helpstring("Stop current clip.")]
357 HRESULT stop();
359 [helpstring("Advance to next item in playlist.")]
360 HRESULT next();
362 [helpstring("Advance to previous item in playlist.")]
363 HRESULT prev();
365 [hidden, helpstring("Remove all items from playlist. (deprecated)")]
366 HRESULT clear();
368 [hidden, helpstring("Remove item from playlist. (deprecated)")]
369 HRESULT removeItem([in] long item);
371 [propget, helpstring("Returns the playlist items collection object.")]
372 HRESULT items([out, retval] IVLCPlaylistItems** obj);
376 odl,
377 uuid(465E787A-0556-452F-9477-954E4A940003),
378 helpstring("VLC Subtitle APIs"),
379 dual,
380 oleautomation
382 interface IVLCSubtitle : IDispatch
384 [propget, helpstring("Returns video subtitle used.")]
385 HRESULT track([out, retval] long* spu);
386 [propput, helpstring("Sets video subtitle to use.")]
387 HRESULT track([in] long spu);
389 [propget, helpstring("Returns the number of video subtitles available.")]
390 HRESULT count([out, retval] long* spuNumber);
391 [helpstring("Returns video subtitle name.")]
392 HRESULT description([in] long nameID, [out, retval] BSTR* name);
396 odl,
397 uuid(8D076AD6-9B6F-4150-A0FD-5D7E8C8CB02C),
398 helpstring("VLC Marquee Filter"),
399 dual,
400 oleautomation
402 interface IVLCMarquee : IDispatch
404 [helpstring("enable Marquee Filter.")]
405 HRESULT enable();
406 [helpstring("disable Marquee Filter.")]
407 HRESULT disable();
409 [propget, helpstring("Retrieve marquee text.")]
410 HRESULT text([out, retval] BSTR* val);
411 [propput, helpstring("Change marquee text.")]
412 HRESULT text([in] BSTR val);
414 [propget, helpstring("Retrieve text color.")]
415 HRESULT color([out, retval] LONG* val);
416 [propput, helpstring("Change text color.")]
417 HRESULT color([in] LONG val);
418 [propget, helpstring("Retrieve text opacity.")]
419 HRESULT opacity([out, retval] LONG* val);
420 [propput, helpstring("Set text opacity (0=transparent, 255=opaque).")]
421 HRESULT opacity([in] LONG val);
422 [propget, helpstring("Retrieve text position.")]
423 HRESULT position([out, retval] BSTR* val);
424 [propput, helpstring("Text positioning relative to: center, left, right, top, bottom, top-left, top-right, bottom-left, bottom-right.")]
425 HRESULT position([in] BSTR val);
426 [propget, helpstring("Retrieve text refresh time.")]
427 HRESULT refresh([out, retval] LONG* val);
428 [propput, helpstring("Set text refresh time.")]
429 HRESULT refresh([in] LONG val);
430 [propget, helpstring("Retrieve text size.")]
431 HRESULT size([out, retval] LONG* val);
432 [propput, helpstring("Set text size.")]
433 HRESULT size([in] LONG val);
434 [propget, helpstring("Retrieve timeout.")]
435 HRESULT timeout([out, retval] LONG* val);
436 [propput, helpstring("Change timeout.")]
437 HRESULT timeout([in] LONG val);
438 [propget, helpstring("Retrieve text abcissa.")]
439 HRESULT x([out, retval] LONG* val);
440 [propput, helpstring("Change text abcissa.")]
441 HRESULT x([in] LONG val);
442 [propget, helpstring("Retrieve text ordinate.")]
443 HRESULT y([out, retval] LONG* val);
444 [propput, helpstring("Change text ordinate.")]
445 HRESULT y([in] LONG val);
449 odl,
450 uuid(8a4a20c2-93f3-44e8-8644-beb2e3487e84),
451 helpstring("VLC Logo Filter"),
452 dual,
453 oleautomation
455 interface IVLCLogo : IDispatch
457 [helpstring("Enable the logo filter.")]
458 HRESULT enable();
459 [helpstring("Disable the logo filter.")]
460 HRESULT disable();
462 [helpstring("specify input file[[,delay],alpha].")]
463 HRESULT file([in] BSTR fname);
465 [propget, helpstring("")]
466 HRESULT delay([out, retval] long* val);
467 [propput, helpstring("Set delay-to-next-picture in miliseconds.")]
468 HRESULT delay([in] long val);
470 [propget, helpstring("")]
471 HRESULT repeat([out, retval] long* val);
472 [propput, helpstring("Repeat: -1 continuous (default), 0 no repeat, ....")]
473 HRESULT repeat([in] long val);
475 [propget, helpstring("Returns the `global' alpha value.")]
476 HRESULT opacity([out, retval] long* val);
477 [propput, helpstring("Alpha value: 0 opaque to 255 fully transparent")]
478 HRESULT opacity([in] long val);
480 [propget, helpstring("Retrieve picture position.")]
481 HRESULT position([out, retval] BSTR* val);
482 [propput, helpstring("Picture positioning relative to: center, left, right, top, bottom, top-left, top-right, bottom-left, bottom-right.")]
483 HRESULT position([in] BSTR val);
485 [propget, helpstring("Picture x offset.")]
486 HRESULT x([out, retval] long* val);
487 [propput, helpstring("Picture x offset.")]
488 HRESULT x([in] long val);
489 [propget, helpstring("Picture y offset.")]
490 HRESULT y([out, retval] long* val);
491 [propput, helpstring("Picture y offset.")]
492 HRESULT y([in] long val);
496 odl,
497 uuid(bc97469f-cb11-4037-8dce-5fc9f5f85307),
498 helpstring("VLC Deinterlace Filter"),
499 dual,
500 oleautomation
502 interface IVLCDeinterlace : IDispatch
504 [helpstring("Enable deinterlace filter and set method.")]
505 HRESULT enable([in] BSTR mode);
506 [helpstring("Disable deinterlace filter.")]
507 HRESULT disable();
512 odl,
513 uuid(0AAEDF0B-D333-4B27-A0C6-BBF31413A42E),
514 helpstring("VLC Video APIs"),
515 dual,
516 oleautomation
518 interface IVLCVideo : IDispatch
520 [propget, helpstring("Returns/sets the fullscreen state.")]
521 HRESULT fullscreen([out, retval] VARIANT_BOOL* fullscreen);
523 [propput, helpstring("Returns/sets the fullscreen state.")]
524 HRESULT fullscreen([in] VARIANT_BOOL fullscreen);
526 [propget, helpstring("Returns video original width.")]
527 HRESULT width([out, retval] long* width);
529 [propget, helpstring("Returns video original height.")]
530 HRESULT height([out, retval] long* height);
532 [propget, helpstring("Returns video aspect ratio.")]
533 HRESULT aspectRatio([out, retval] BSTR* aspect);
534 [propput, helpstring("Sets video aspect ratio.")]
535 HRESULT aspectRatio([in] BSTR aspect);
537 [propget, helpstring("Returns video subtitle used.")]
538 HRESULT subtitle([out, retval] long* spu);
539 [propput, helpstring("Sets video subtitle to use.")]
540 HRESULT subtitle([in] long spu);
542 [propget, helpstring("Returns crop filter geometry.")]
543 HRESULT crop([out, retval] BSTR* geometry);
544 [propput, helpstring("Sets crop filter geometry.")]
545 HRESULT crop([in] BSTR geometry);
547 [propget, helpstring("Returns teletext page used.")]
548 HRESULT teletext([out, retval] long* page);
549 [propput, helpstring("Sets teletext page to use.")]
550 HRESULT teletext([in] long page);
552 [helpstring("toggle fullscreen/windowed state.")]
553 HRESULT toggleFullscreen();
555 [helpstring("take video snapshot and save it into picture object.")]
556 HRESULT takeSnapshot([out, retval] IPictureDisp** picture);
558 [helpstring("toggle teletext transparent state.")]
559 HRESULT toggleTeletext();
561 [propget, helpstring("Returns the marquee object.")]
562 HRESULT marquee([out, retval] IVLCMarquee** obj);
564 [propget, helpstring("Returns the logo object.")]
565 HRESULT logo([out, retval] IVLCLogo** obj);
567 [propget, helpstring("Returns the logo object.")]
568 HRESULT deinterlace([out, retval] IVLCDeinterlace** obj);
572 odl,
573 uuid(2D719729-5333-406C-BF12-8DE787FD65E3),
574 helpstring("VLC Control"),
575 dual,
576 oleautomation
578 interface IVLCControl2 : IDispatch
580 [id(DISPID_AutoLoop), propget, helpstring("Returns/sets a value that determines whether the playlist is looped")]
581 HRESULT AutoLoop([out, retval] VARIANT_BOOL* autoloop);
582 [id(DISPID_AutoLoop), propput, helpstring("Returns/sets a value that determines whether the playlist is looped")]
583 HRESULT AutoLoop([in] VARIANT_BOOL autoloop);
585 [id(DISPID_AutoPlay), propget, helpstring("Returns/sets a value that determines whether the playlist is played on startup")]
586 HRESULT AutoPlay([out, retval] VARIANT_BOOL* autoplay);
587 [id(DISPID_AutoPlay), propput, helpstring("Returns/Sets a value that determines whether the playlist is played on startup")]
588 HRESULT AutoPlay([in] VARIANT_BOOL autoplay);
590 [id(DISPID_BaseURL), propget, helpstring("Returns/sets the base URL for relative paths")]
591 HRESULT BaseURL([out, retval] BSTR* url);
592 [id(DISPID_BaseURL), propput, helpstring("Returns/sets the base URL for relative paths")]
593 HRESULT BaseURL([in] BSTR url);
595 [id(DISPID_StartTime), propget, helpstring("Returns/sets playback start time of URL.")]
596 HRESULT StartTime([out, retval] long* seconds);
597 [id(DISPID_StartTime), propput, helpstring("Returns/sets playback start time of URL.")]
598 HRESULT StartTime([in] long seconds);
600 [id(DISPID_MRL), propget, helpstring("Returns/sets the default MRL in playlist")]
601 HRESULT MRL([out, retval] BSTR* mrl);
602 [id(DISPID_MRL), propput, helpstring("Returns/sets the default MRL in playlist")]
603 HRESULT MRL([in] BSTR mrl);
605 [propget, helpstring("Returns VLC Version.")]
606 HRESULT VersionInfo([out, retval] BSTR* version);
608 [id(DISPID_Visible), propget, helpstring("Returns/sets a value that determines whether viewing area is visible or hidden.")]
609 HRESULT Visible([out, retval] VARIANT_BOOL* visible);
610 [id(DISPID_Visible), propput, helpstring("Returns/sets a value that determines whether viewing area is visible or hidden.")]
611 HRESULT Visible([in] VARIANT_BOOL visible);
613 [id(DISPID_Volume), propget, helpstring("Returns/sets default audio volume.")]
614 HRESULT Volume([out, retval] long* volume);
615 [id(DISPID_Volume), propput, helpstring("Returns/sets default audio volume.")]
616 HRESULT Volume([in] long volume);
618 [id(DISPID_BackColor), propget, helpstring("Returns/sets background color.")]
619 HRESULT BackColor([out, retval] OLE_COLOR* backcolor);
620 [id(DISPID_BackColor), propput, helpstring("Returns/sets background color.")]
621 HRESULT BackColor([in] OLE_COLOR backcolor);
624 * caution: vlcobject.toolbar:bool does not yet exists in Firefox
625 * plugin. Official usage is through "toolbar" property for now,
626 * which is compatibile with Firefox.
628 [id(DISPID_Toolbar), propget, helpstring("Returns/sets visibility of the toolbar")]
629 HRESULT Toolbar([out, retval] VARIANT_BOOL* visible);
630 [id(DISPID_Toolbar), propput, helpstring("Returns/sets visibility of the toolbar")]
631 HRESULT Toolbar([in] VARIANT_BOOL visible);
633 [propget, helpstring("Returns the audio object.")]
634 HRESULT audio([out, retval] IVLCAudio** obj);
636 [propget, helpstring("Returns the audio object.")]
637 HRESULT input([out, retval] IVLCInput** obj);
639 [propget, helpstring("Returns the playlist object.")]
640 HRESULT playlist([out, retval] IVLCPlaylist** obj);
642 [propget, helpstring("Returns the audio object.")]
643 HRESULT subtitle([out, retval] IVLCSubtitle** obj);
645 [propget, helpstring("Returns the audio object.")]
646 HRESULT video([out, retval] IVLCVideo** obj);
650 uuid(E23FE9C6-778E-49D4-B537-38FCDE4887D8),
651 helpstring("VLC control (deprecated)"),
652 control
654 coclass VLCPlugin
656 [default] interface IVLCControl;
657 interface IVLCControl2;
658 [default, source] dispinterface DVLCEvents;
662 uuid(9BE31822-FDAD-461B-AD51-BE1D1C159921),
663 helpstring("VLC control"),
664 control
666 coclass VLCPlugin2
668 [default] interface IVLCControl2;
669 interface IVLCControl;
670 [default, source] dispinterface DVLCEvents;