~ubuntu-branches/ubuntu/natty/vlc/natty

« back to all changes in this revision

Viewing changes to projects/activex/axvlc.idl

  • Committer: Bazaar Package Importer
  • Author(s): Benjamin Drung
  • Date: 2010-06-25 01:09:16 UTC
  • mfrom: (1.1.30 upstream)
  • Revision ID: james.westby@ubuntu.com-20100625010916-asxhep2mutg6g6pd
Tags: 1.1.0-1ubuntu1
* Merge from Debian unstable, remaining changes:
  - build and install the libx264 plugin
  - add Xb-Npp header to vlc package
  - Add apport hook to include more vlc dependencies in bug reports
* Drop xulrunner patches.
* Drop 502_xulrunner_191.diff.

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
 * axvlc.idl: ActiveX control for VLC
3
3
 *****************************************************************************
4
4
 * Copyright (C) 2006 the VideoLAN team
 
5
 * Copyright (C) 2010 M2X BV
5
6
 *
6
7
 * Authors: Damien Fouilleul <Damien.Fouilleul@laposte.net>
7
8
 *          Jean-Paul Saman <jpsaman _at_ m2x _dot_ nl>
21
22
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
22
23
 *****************************************************************************/
23
24
 
24
 
//comments terminated by [t] are by tonsofpcs, regarding the string review.  April 02, 2006. [t]
25
 
//Possibly change all instances of "the current playlist" to "the playlist" and "current playlist" to "the playlist" [t]
 
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]
26
29
 
27
30
import "ocidl.idl";
28
31
 
37
40
    interface IVLCControl;
38
41
    interface IVLCAudio;
39
42
    interface IVLCInput;
40
 
    interface IVLCLog;
41
 
    interface IVLCMessage;
42
 
    interface IVLCMessageIterator;
43
 
    interface IVLCMessages;
 
43
    interface IVLCLogo;
 
44
    interface IVLCDeinterlace;
 
45
    interface IVLCMarquee;
44
46
    interface IVLCPlaylist;
 
47
    interface IVLCSubtitle;
45
48
    interface IVLCVideo;
46
49
    interface IVLCControl2;
47
50
    dispinterface DVLCEvents;
127
130
        HRESULT setVariable([in] BSTR name, [in] VARIANT value);
128
131
        [helpstring("Returns the value of a VLC variable.")]
129
132
        HRESULT getVariable([in] BSTR name, [out, retval] VARIANT *value);
130
 
        [helpstring("Add an item to the playlist.")]
131
133
 
132
134
/*
133
135
** use VARIANT rather than a SAFEARRAY as argument type
134
136
** for compatibility with some scripting language (JScript)
135
137
*/
136
138
 
 
139
        [helpstring("Add an item to the playlist.")]
137
140
        HRESULT addTarget([in] BSTR uri, [in] VARIANT options, [in] enum VLCPlaylistMode mode, [in] int position);
138
141
        [propget, helpstring("Returns index of current item in playlist.")]
139
142
        HRESULT PlaylistIndex([out, retval] int* index);
165
168
    const int DISPID_PauseEvent = 101;
166
169
    const int DISPID_StopEvent  = 102;
167
170
 
 
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;
 
182
 
 
183
    const int DISPID_MediaPlayerTimeChangedEvent = 210;
 
184
    const int DISPID_MediaPlayerPositionChangedEvent = 211;
 
185
    const int DISPID_MediaPlayerSeekableChangedEvent = 212;
 
186
    const int DISPID_MediaPlayerPausableChangedEvent = 213;
 
187
 
168
188
    [
169
189
      uuid(DF48072F-5EF8-434e-9B40-E2F3AE759B5F),
170
190
      helpstring("Event interface for VLC control"),
179
199
            void pause();
180
200
            [id(DISPID_StopEvent), helpstring("Stopped")]
181
201
            void stop();
 
202
 
 
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();
 
224
 
 
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);
182
233
    };
183
234
 
184
235
    [
208
259
        [propput, helpstring("Returns/sets audio track used/to use.")]
209
260
        HRESULT track([in] long track);
210
261
 
 
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);
 
266
 
211
267
        [propget, helpstring("Returns audio channel [1-5] indicating; stereo, reverse stereo, left, right, dolby.")]
212
268
        HRESULT channel([out, retval] long* channel);
213
269
        [propput, helpstring("Sets audio channel to [1-5] indicating; stereo, reverse stereo, left, right, dolby.")]
253
309
 
254
310
    [
255
311
      odl,
256
 
      uuid(9ED00AFA-7BCD-4FFF-8D48-7DD4DB2C800D),
257
 
      helpstring("VLC Log Message"),
258
 
      dual,
259
 
      oleautomation
260
 
    ]
261
 
    interface IVLCMessage: IDispatch
262
 
    {
263
 
        [id(DISPID_VALUE), propget]
264
 
        HRESULT _Value([out, retval] VARIANT* message);
265
 
 
266
 
        [propget, helpstring("Returns message severity.")]
267
 
        HRESULT severity([out, retval] long* level);
268
 
 
269
 
        [propget, helpstring("Returns message issuer type.")]
270
 
        HRESULT type([out, retval] BSTR* type);
271
 
 
272
 
        [propget, helpstring("Returns message issuer name.")]
273
 
        HRESULT name([out, retval] BSTR* name);
274
 
 
275
 
        [propget, helpstring("Returns message header.")]
276
 
        HRESULT header([out, retval] BSTR* header);
277
 
 
278
 
        [propget, helpstring("Returns message content.")]
279
 
        HRESULT message([out, retval] BSTR* message);
280
 
    };
281
 
 
282
 
    [
283
 
      odl,
284
 
      uuid(15179CD8-CC12-4242-A58E-E412217FF343),
285
 
      helpstring("VLC Log iterator"),
286
 
      dual,
287
 
      oleautomation
288
 
    ]
289
 
    interface IVLCMessageIterator : IDispatch
290
 
    {
291
 
        [propget, helpstring("Returns whether a message is available.")]
292
 
        HRESULT hasNext([out, retval] VARIANT_BOOL* hasNext);
293
 
 
294
 
        [helpstring("Returns next message.")]
295
 
        HRESULT next([out, retval] IVLCMessage** msg);
296
 
    };
297
 
 
298
 
    [
299
 
      odl,
300
 
      uuid(6C5CE55D-2D6C-4AAD-8299-C62D2371F106),
301
 
      helpstring("VLC Log Messages Collection."),
302
 
      dual,
303
 
      oleautomation
304
 
    ]
305
 
    interface IVLCMessages : IDispatch
306
 
    {
307
 
        [id(DISPID_NEWENUM), propget]
308
 
        HRESULT _NewEnum([out, retval] IUnknown** _NewEnum);
309
 
 
310
 
        [helpstring("Clear all messages from log.")]
311
 
        HRESULT clear();
312
 
 
313
 
        [propget, helpstring("Returns the number of messages.")]
314
 
        HRESULT count([out, retval] long* count);
315
 
 
316
 
        [helpstring("Returns an iterator for messages in log")]
317
 
        HRESULT iterator([out, retval] IVLCMessageIterator** iter);
318
 
    };
319
 
 
320
 
    [
321
 
      odl,
322
 
      uuid(8E3BC3D9-62E9-48FB-8A6D-993F9ABC4A0A),
323
 
      helpstring("VLC Log APIs"),
324
 
      dual,
325
 
      oleautomation
326
 
    ]
327
 
    interface IVLCLog : IDispatch
328
 
    {
329
 
        [propget, helpstring("Returns messages in log")]
330
 
        HRESULT messages([out, retval] IVLCMessages** iter);
331
 
 
332
 
        [propget, helpstring("Returns/Sets the log versbosity level.")]
333
 
        HRESULT verbosity([out, retval] long* level);
334
 
        [propput, helpstring("Returns/Sets the log versbosity level.")]
335
 
        HRESULT verbosity([in] long level);
336
 
    };
337
 
 
338
 
    [
339
 
      odl,
340
312
      uuid(FD37FE32-82BC-4A25-B056-315F4DBB194D),
341
313
      helpstring("VLC Playlist Items collection"),
342
314
      dual,
402
374
 
403
375
    [
404
376
      odl,
 
377
      uuid(465E787A-0556-452F-9477-954E4A940003),
 
378
      helpstring("VLC Subtitle APIs"),
 
379
      dual,
 
380
      oleautomation
 
381
    ]
 
382
    interface IVLCSubtitle : IDispatch
 
383
    {
 
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);
 
388
 
 
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);
 
393
    };
 
394
 
 
395
    [
 
396
      odl,
 
397
      uuid(8D076AD6-9B6F-4150-A0FD-5D7E8C8CB02C),
 
398
      helpstring("VLC Marquee Filter"),
 
399
      dual,
 
400
      oleautomation
 
401
    ]
 
402
    interface IVLCMarquee : IDispatch
 
403
    {
 
404
        [helpstring("enable Marquee Filter.")]
 
405
        HRESULT enable();
 
406
        [helpstring("disable Marquee Filter.")]
 
407
        HRESULT disable();
 
408
 
 
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);
 
413
 
 
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);
 
446
    };
 
447
 
 
448
    [
 
449
      odl,
 
450
      uuid(8a4a20c2-93f3-44e8-8644-beb2e3487e84),
 
451
      helpstring("VLC Logo Filter"),
 
452
      dual,
 
453
      oleautomation
 
454
    ]
 
455
    interface IVLCLogo : IDispatch
 
456
    {
 
457
        [helpstring("Enable the logo filter.")]
 
458
        HRESULT enable();
 
459
        [helpstring("Disable the logo filter.")]
 
460
        HRESULT disable();
 
461
 
 
462
        [helpstring("specify input file[[,delay],alpha].")]
 
463
        HRESULT file([in] BSTR fname);
 
464
 
 
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);
 
469
 
 
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);
 
474
 
 
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);
 
479
 
 
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);
 
484
 
 
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);
 
493
 
 
494
    };
 
495
    [
 
496
      odl,
 
497
      uuid(bc97469f-cb11-4037-8dce-5fc9f5f85307),
 
498
      helpstring("VLC Deinterlace Filter"),
 
499
      dual,
 
500
      oleautomation
 
501
    ]
 
502
    interface IVLCDeinterlace : IDispatch
 
503
    {
 
504
        [helpstring("Enable deinterlace filter and set method.")]
 
505
        HRESULT enable([in] BSTR mode);
 
506
        [helpstring("Disable deinterlace filter.")]
 
507
        HRESULT disable();
 
508
 
 
509
    };
 
510
 
 
511
    [
 
512
      odl,
405
513
      uuid(0AAEDF0B-D333-4B27-A0C6-BBF31413A42E),
406
514
      helpstring("VLC Video APIs"),
407
515
      dual,
449
557
 
450
558
        [helpstring("toggle teletext transparent state.")]
451
559
        HRESULT toggleTeletext();
 
560
 
 
561
        [propget, helpstring("Returns the marquee object.")]
 
562
        HRESULT marquee([out, retval] IVLCMarquee** obj);
 
563
 
 
564
        [propget, helpstring("Returns the logo object.")]
 
565
        HRESULT logo([out, retval] IVLCLogo** obj);
 
566
 
 
567
        [propget, helpstring("Returns the logo object.")]
 
568
        HRESULT deinterlace([out, retval] IVLCDeinterlace** obj);
452
569
    };
453
570
 
454
571
    [
519
636
        [propget, helpstring("Returns the audio object.")]
520
637
        HRESULT input([out, retval] IVLCInput** obj);
521
638
 
522
 
        [propget, helpstring("Returns the log object.")]
523
 
        HRESULT log([out, retval] IVLCLog** obj);
524
 
 
525
639
        [propget, helpstring("Returns the playlist object.")]
526
640
        HRESULT playlist([out, retval] IVLCPlaylist** obj);
527
641
 
528
642
        [propget, helpstring("Returns the audio object.")]
 
643
        HRESULT subtitle([out, retval] IVLCSubtitle** obj);
 
644
 
 
645
        [propget, helpstring("Returns the audio object.")]
529
646
        HRESULT video([out, retval] IVLCVideo** obj);
530
647
    };
531
648
 
550
667
    {
551
668
        [default] interface IVLCControl2;
552
669
        interface IVLCControl;
 
670
        [default, source] dispinterface DVLCEvents;
553
671
    };
554
672
};