Attachment 'libvlc.vapi'

Download

   1 [CCode(cheader_filename = "vlc/vlc.h")]
   2 namespace Vlc
   3 {
   4 	//due to many temporary variables created by Vala, this section generates invalid pointers
   5 	[CCode(cname = "libvlc_errmsg")]
   6 	public static string errmsg();
   7 	[CCode(cname = "libvlc_clearerr")]
   8 	public static void clearerr();
   9 	[CCode(cname = "libvlc_vprinterr")]
  10 	public static string vprinterr(string format, va_list args);
  11 	[CCode(cname = "libvlc_printerr")]
  12 	public static string printerr(string format, ...);
  13 	[CCode(cname = "libvlc_get_version")]
  14 	public static string get_version();
  15 	[CCode(cname = "libvlc_get_compiler")]
  16 	public static string get_compiler();
  17 	[CCode(cname = "libvlc_get_changeset")]
  18 	public static string get_changeset();
  19 	//end of section
  20 	
  21 	public delegate void vlc_callback(Event evt, void *ptr);
  22 	public delegate void log_callback(void *data, int level, string format, va_list args);
  23 	
  24 	[CCode(cname = "struct libvlc_log_subscriber", cprefix = "libvlc_log_", unref_function = "libvlc_log_unsubscribe")]
  25 	public class LogSubscriber{
  26 		[CCode (has_construct_function = false)]
  27 		public LogSubscriber();
  28 		public void subscribe(log_callback cb, void *data);
  29 	}
  30 	
  31 	[CCode(cprefix = "libvlc_event_", cname = "struct libvlc_event_manager_t")]
  32 	public class EventManager{
  33 		public int attach(EventType type, vlc_callback cb, void *data);
  34 		public void detach(EventType type, vlc_callback cb, void *data);
  35 		[CCode(cname = "libvlc_event_type_name")]
  36 		public static string type_name(EventType type);
  37 	}
  38 	
  39 	[CCode(cname = "enum libvlc_event_e",cprefix = "libvlc_")]
  40 	public enum EventType{
  41 		MediaMetaChanged=0,
  42 		MediaSubItemAdded,
  43 		MediaDurationChanged,
  44 		MediaParsedChanged,
  45 		MediaFreed,
  46 		MediaStateChanged,
  47 
  48 		MediaPlayerMediaChanged=0x100,
  49 		MediaPlayerNothingSpecial,
  50 		MediaPlayerOpening,
  51 		MediaPlayerBuffering,
  52 		MediaPlayerPlaying,
  53 		MediaPlayerPaused,
  54 		MediaPlayerStopped,
  55 		MediaPlayerForward,
  56 		MediaPlayerBackward,
  57 		MediaPlayerEndReached,
  58 		MediaPlayerEncounteredError,
  59 		MediaPlayerTimeChanged,
  60 		MediaPlayerPositionChanged,
  61 		MediaPlayerSeekableChanged,
  62 		MediaPlayerPausableChanged,
  63 		MediaPlayerTitleChanged,
  64 		MediaPlayerSnapshotTaken,
  65 		MediaPlayerLengthChanged,
  66 		MediaPlayerVout,
  67 
  68 		MediaListItemAdded=0x200,
  69 		MediaListWillAddItem,
  70 		MediaListItemDeleted,
  71 		MediaListWillDeleteItem,
  72 
  73 		MediaListViewItemAdded=0x300,
  74 		MediaListViewWillAddItem,
  75 		MediaListViewItemDeleted,
  76 		MediaListViewWillDeleteItem,
  77 
  78 		MediaListPlayerPlayed=0x400,
  79 		MediaListPlayerNextItemSet,
  80 		MediaListPlayerStopped,
  81 
  82 		MediaDiscovererStarted=0x500,
  83 		MediaDiscovererEnded,
  84 
  85 		VlmMediaAdded=0x600,
  86 		VlmMediaRemoved,
  87 		VlmMediaChanged,
  88 		VlmMediaInstanceStarted,
  89 		VlmMediaInstanceStopped,
  90 		VlmMediaInstanceStatusInit,
  91 		VlmMediaInstanceStatusOpening,
  92 		VlmMediaInstanceStatusPlaying,
  93 		VlmMediaInstanceStatusPause,
  94 		VlmMediaInstanceStatusEnd,
  95 		VlmMediaInstanceStatusError
  96 	}
  97 	
  98 	public struct Event
  99 	{
 100 		public EventType type;
 101 		public void *sender;
 102 		public _union union;
 103 	}
 104 	
 105 	public struct _union{
 106 		public _MediaMetaChanged MediaMetaChanged;
 107 		public _MediaSubitemAdded MediaSubitemAdded;
 108 		public _MediaDurationChanged MediaDurationChanged;
 109 		public _MediaParsedChanged MediaParsedChanged;
 110 		public _MediaFreed MediaFreed;
 111 		public _MediaStateChanged MediaStateChanged;
 112 		public _MediaPlayerBuffering MediaPlayerBuffering;
 113 		public _MediaPlayerPositionChanged MediaPlayerPositionChanged;
 114 		public _MediaPlayerTimeChanged MediaPlayerTimeChanged;
 115 		public _MediaPlayerTitleChanged MediaPlayerTitleChanged;
 116 		public _MediaPlayerSeekableChanged MediaPlayerSeekableChanged;
 117 		public _MediaPlayerPausableChanged MediaPlayerPausableChanged;
 118 		public _MediaPlayerVout MediaPlayerVout;
 119 		public _MediaListItemDeleted MediaListItemDeleted;
 120 		public _MediaListItemAdded MediaListItemAdded;
 121 		public _MediaListAddItem MediaListAddItem;
 122 		public _MediaListWillDeleteItem MediaListWillDeleteItem;
 123 		public _MediaListPlayerNextItemSet MediaListPlayerNextItemSet;
 124 		public _MediaPlayerSnapshotTaken MediaPlayerSnapshotTaken;
 125 		public _MediaPlayerLengthChanged MediaPlayerLengthChanged;
 126 		public _VlmMediaEvent VlmMediaEvent;
 127 		public _MediaPlayerMediaChanged MediaPlayerMediaChanged;
 128 	}
 129 	
 130 	public struct _MediaMetaChanged{public TagType type;}
 131 	public struct _MediaSubitemAdded{public Media child;}
 132 	public struct _MediaDurationChanged{public long duration;}
 133 	public struct _MediaParsedChanged{public int status;}
 134 	public struct _MediaFreed{public Media media;}
 135 	public struct _MediaStateChanged{public State new_state;}
 136 	public struct _MediaPlayerBuffering{public float cache;}
 137 	public struct _MediaPlayerPositionChanged{public float position;}
 138 	public struct _MediaPlayerTimeChanged{public long time;}
 139 	public struct _MediaPlayerTitleChanged{public int title;}
 140 	public struct _MediaPlayerSeekableChanged{public int seekable;}
 141 	public struct _MediaPlayerPausableChanged{public int pausable;}
 142 	public struct _MediaPlayerVout{public int count;}
 143 	public struct _MediaListItemDeleted{
 144 		public Media media;
 145 		public int index;
 146 	}
 147 	public struct _MediaListItemAdded{
 148 		public Media item;
 149 		public int index;
 150 	}
 151 	public struct _MediaListAddItem{
 152 		public Media item;
 153 		public int index;
 154 	}
 155 	public struct _MediaListWillDeleteItem{
 156 		public Media item;
 157 		public int index;
 158 	}
 159 	public struct _MediaListPlayerNextItemSet{
 160 		 public Media media;}
 161 	public struct _MediaPlayerSnapshotTaken{
 162 		string filename;
 163 	}
 164 	public struct _MediaPlayerLengthChanged{
 165 		public long length;
 166 	}
 167 	public struct _VlmMediaEvent{
 168 		public string media_name;
 169 		public string instance_name;
 170 	}
 171 	public struct _MediaPlayerMediaChanged{
 172 		public Media new_media;
 173 	}
 174 	
 175 	[CCode(cname = "enum libvlc_state_t",cprefix = "libvlc_")]
 176 	public enum State{
 177 		NothingSpecial=0,
 178 		Opening,
 179 		Buffering,
 180 		Playing,
 181 		Paused,
 182 		Stopped,
 183 		Ended,
 184 		Error
 185 	}
 186 	
 187 	[CCode(cname = "enum libvlc_meta_t", cprefix = "libvlc_meta_")]
 188 	public enum TagType{
 189 		Title,
 190 		Artist,
 191 		Genre,
 192 		Copyright,
 193 		Album,
 194 		TrackNumber,
 195 		Description,
 196 		Rating,
 197 		Date,
 198 		Setting,
 199 		URL,
 200 		Language,
 201 		NowPlaying,
 202 		Publisher,
 203 		EncodedBy,
 204 		ArtworkURL,
 205 		TrackID	
 206 	}
 207 	
 208 	[CCode(cname = "libvlc_instance_t", ref_function = "libvlc_retain", unref_function = "libvlc_release", cprefix = "libvlc_")]
 209 	public class Instance{
 210 		public static long clock();
 211 		
 212 		[CCode(cname = "libvlc_new")]
 213 		public Instance(int argc, char **argv);
 214 		public int add_intf(string name);
 215 		public void wait();
 216 		public void set_user_agent(string name, string http);
 217 		public ModuleDescription audio_filter_list_get();
 218 		public ModuleDescription video_filter_list_get();
 219 		public AudioOutput audio_output_list_get();
 220 		public AudioOutputDevice audio_output_device_list_get(string name);
 221 	}
 222 	
 223 	[CCode(cname = "struct libvlc_media_t",ref_function = "libvlc_media_retain", unref_function = "libvlc_media_release", cprefix = "libvlc_media_")]
 224 	public class Media{
 225 		[CCode(cname = "libvlc_media_new_location")]
 226 		public Media.location(Instance i, string location);
 227 		[CCode(cname = "libvlc_media_new_path")]
 228 		public Media.path(Instance i, string path);
 229 		public string get_mrl();
 230 		public Media duplicate();
 231 		public string get_meta(TagType type);
 232 		public void set_meta(TagType type, string value);
 233 		public int save_meta();
 234 		public int get_stats(out MediaStats stats);
 235 		public long get_duration();
 236 		public void parse();
 237 		public void parse_async();
 238 		public int is_parsed();
 239 		public EventManager event_manager();
 240 		public void set_user_data(void *user_data);
 241 		public void *get_user_data();
 242 		public void *user_data{get; set;}
 243 		public string meta{get; set;}
 244 	}
 245 	
 246 	[CCode(cname = "libvlc_media_player_t", ref_function = "libvlc_media_player_retain", unref_function = "libvlc_media_player_release", cprefix = "libvlc_media_player_")]
 247 	public class MediaPlayer{
 248 		[CCode(cname = "libvlc_media_player_new")]
 249 		public MediaPlayer(Instance i);
 250 		[CCode(cname = "libvlc_media_player_new_from_media")]
 251 		public MediaPlayer.from_media(Media m);
 252 		public void set_media(Media m);
 253 		public Media get_media();
 254 		public int is_playing();
 255 		public int play();
 256 		public void set_pause(int do_pause);
 257 		public void pause();
 258 		public void stop();
 259 		[CCode(cname = "libvlc_video_set_callbacks")]
 260 		public void set_callbacks(VideoLockFunc l, VideoUnlockFunc u, VideoDisplayFunc d, void *opaque);
 261 		[CCode(cname = "libvlc_video_set_format")]
 262 		public void set_videoformat(string chroma, uint width, uint height, uint pitch);
 263 		[CCode(cname = "libvlc_video_set_format_callbacks")]
 264 		public void set_format_callbacks(VideoFormatFunc format, VideoCleanupFunc cleanup);
 265 		public void set_xwindow(uint drawable);
 266 		public uint get_xwindow();
 267 		public long get_length();
 268 		public long get_time();
 269 		public void set_time(long time);
 270 		public float get_position();
 271 		public void set_position(float pos);
 272 		public void set_chapter(int chapter);
 273 		public int get_chapter();
 274 		public int get_chapter_count();
 275 		public int will_play();
 276 		public int get_chapter_count_for_title();
 277 		public int get_title();
 278 		public void set_title(int title);
 279 		public int get_title_count();
 280 		public void previous_chapter();
 281 		public void next_chapter();
 282 		public float get_rate();
 283 		public void set_rate(float rate);
 284 		public State get_state();
 285 		public float get_fps();
 286 		public uint has_vout();
 287 		public int is_seekable();
 288 		public int can_pause();
 289 		public void next_frame();
 290 		[CCode(cname = "libvlc_set_fullscreen")]
 291 		public void set_fullscreen(int f);
 292 		[CCode(cname = "libvlc_get_fullscreen")]
 293 		public int get_fullscreen();
 294 		[CCode(cname = "libvlc_video_get_size")]
 295 		public int get_video_size(uint index, out uint x, out uint y);
 296 		[CCode(cname = "libvlc_video_get_cursor")]
 297 		public int get_cursor_position(uint index, out uint px, out uint py);
 298 		[CCode(cname = "libvlc_video_get_scale")]
 299 		public float get_videoscale();
 300 		[CCode(cname = "libvlc_video_set_scale")]
 301 		public void set_videoscale(float scale);
 302 		public void navigate(NavigateMode mode);
 303 		[CCode(cname = "libvlc_video_get_aspect_ratio")]
 304 		public string get_aspect_ratio();
 305 		[CCode(cname = "libvlc_video_set_aspect_ratio")]
 306 		public void set_aspect_ratio(string ratio);
 307 		[CCode(cname = "libvlc_video_get_spu")]
 308 		public int get_current_subtitle();
 309 		[CCode(cname = "libvlc_video_get_spu_count")]
 310 		public int get_subtitles_count();
 311 		[CCode(cname = "libvlc_video_get_spu_description")]
 312 		public TrackDescription get_subtitles_description();
 313 		[CCode(cname = "libvlc_video_set_spu")]
 314 		public int set_current_subtitle(uint sub);
 315 		[CCode(cname = "libvlc_video_set_subtitle_file")]
 316 		public int set_subtitles_file(string file);
 317 		[CCode(cname = "libvlc_video_get_spu_delay")]
 318 		public long get_subtitle_delay();
 319 		[CCode(cname = "libvlc_video_set_spu_delay")]
 320 		public int set_subtitle_delay(long delay);
 321 		[CCode(cname = "libvlc_video_get_title_description")]
 322 		public TrackDescription get_title_description();
 323 		[CCode(cname = "libvlc_video_get_chapter_description")]
 324 		public TrackDescription get_chapter_description();
 325 		[CCode(cname = "libvlc_video_get_crop_geometry")]
 326 		public string get_crop_geometry();
 327 		[CCode(cname = "libvlc_video_set_crop_geometry")]
 328 		public void set_crop_geometry(string crop);
 329 		[CCode(cname = "libvlc_video_get_track_count")]
 330 		public int get_videotrack_count();
 331 		[CCode(cname = "libvlc_video_get_track_description")]
 332 		public TrackDescription get_track_description();
 333 		[CCode(cname = "libvlc_video_get_track")]
 334 		public int get_videotrack();
 335 		[CCode(cname = "libvlc_video_set_track")]
 336 		public int set_videotrack(int track);
 337 		[CCode(cname = "libvlc_video_take_snapshot")]
 338 		public int snapshot(uint video_index,string filepath,uint width, uint height);
 339 		public EventManager event_manager();
 340 		public int videotrack {get; set;}
 341 		public string crop_geometry {get; set;}
 342 		public long subtitle_delay {get; set;}
 343 		public string aspect_ratio {get; set;}
 344 		public float videoscale {get; set;}
 345 		public float rate {get; set;}
 346 		public int title {get; set;}
 347 		public int chapter {get; set;}
 348 		public float position {get; set;}
 349 		public long time {get; set;}
 350 		public uint xwindow {get; set;}
 351 		public Media media {get; set;}
 352 	}
 353 	
 354 	[CCode(cname = "struct libvlc_track_description_t",ref_function = "", unref_function = "")]
 355 	public class TrackDescription{
 356 		public int i_id;
 357 		public string psz_name;
 358 		public TrackDescription p_next;
 359 		[CCode(cname = "libvlc_track_description_list_release")]
 360 		public void release();
 361 	}
 362 	
 363 	[CCode(cname = "struct libvlc_audio_output_t",ref_function = "", unref_function = "")]
 364 	public class AudioOutput
 365 	{
 366 		public string psz_name;
 367 		public string psz_description;
 368 		public AudioOutput p_next;
 369 		[CCode(cname = "libvlc_audio_output_list_release")]
 370 		public void release();
 371 	}
 372 	
 373 	public class AudioOutputDevice{
 374 		public AudioOutputDevice p_next;
 375 		public string psz_device;
 376 		public string psz_description;
 377 		[CCode(cname = "libvlc_audio_output_device_list_release")]
 378 		public void release();
 379 	}
 380 	
 381 	[CCode(cname = "struct libvlc_module_description_t", ref_function = "", unref_function = "")]
 382 	public class ModuleDescription{
 383 		
 384 		public string psz_name;
 385 		public string psz_shortname;
 386 		public string psz_longname;
 387 		public string psz_help;
 388 		public ModuleDescription p_next;
 389 		[CCode(cname = "libvlc_module_description_list_release")]
 390 		public void release();
 391 	}
 392 	
 393 	[CCode(cprefix = "libvlc_media_list_", cname = "struct libvlc_media_list_t", unref_function = "libvlc_media_list_release", ref_function = "libvlc_media_list_retain")]
 394 	public class MediaList{
 395 		[CCode(cname = "libvlc_media_list_new")]
 396 		public MediaList(Instance i);
 397 		public void set_media(Media m);
 398 		[CCode(cname = "libvlc_media_list_media")]
 399 		public Media get_media();
 400 		public int add_media(Media m);
 401 		public int insert_media(Media m, int position);
 402 		public int remove_index(int index);
 403 		public int count();
 404 		public Media item_at_index(int index);
 405 		public int index_of_item(Media m);
 406 		public int is_readonly();
 407 		public void lock();
 408 		public void unlock();
 409 		public Media media {get; set;}
 410 		public EventManager event_manager();
 411 	}
 412 	
 413 	[CCode(cprefix = "libvlc_media_library_", cname = "struct libvlc_media_library_t", ref_function = "libvlc_media_library_retain", unref_function = "libvlc_media_library_release")]
 414 	public class MediaLibrary{
 415 		[CCode(cname = "libvlc_media_library_new")]
 416 		public MediaLibrary(Instance i){}
 417 		public int load();
 418 		public MediaList list();
 419 	}
 420 	
 421 	[CCode(cprefix = "libvlc_media_discoverer_", cname = "struct libvlc_media_discoverer_t", unref_function = "libvlc_media_discoverer_release")]
 422 	public class MediaDiscoverer{
 423 		[CCode(cname = "libvlc_media_discoverer_new_from_name")]
 424 		public MediaDiscoverer(Instance i, string name);
 425 		public string localized_name();
 426 		public MediaList media_list();
 427 		public int is_running();
 428 		public EventManager event_manager();
 429 	}
 430 	
 431 	[CCode(cprefix = "libvlc_media_list_player_", cname = "struct libvlc_media_list_player_t", unref_function = "libvlc_media_list_player_release", ref_function = "libvlc_media_list_player_retain")]
 432 	public class MediaListPlayer{
 433 		[CCode(cname = "libvlc_media_list_player_new")]
 434 		public MediaListPlayer(Instance i);
 435 		public void set_media_player(MediaPlayer player);
 436 		public void set_media_list(MediaList list);
 437 		public void play();
 438 		public void pause();
 439 		public int is_playing();
 440 		public State get_state();
 441 		public int play_item_at_index(int index);
 442 		public int play_item(Media media);
 443 		public void stop();
 444 		public void next();
 445 		public void previous();
 446 		public void set_playback_mode(PlaybackMode mode);
 447 		public EventManager event_manager();
 448 	}
 449 	
 450 	[CCode(cname = "int")]
 451 	public enum PlaybackMode{
 452 		Default,
 453 		Loop,
 454 		Repeat
 455 	}
 456 	
 457 	[CCode(cname = "uint")]
 458 	public enum NavigateMode{
 459 		Activate,
 460 		Up,
 461 		Down,
 462 		Left,
 463 		Right
 464 	}
 465 	
 466 	public delegate void VideoLockFunc(void *opaque, void **planes);
 467 	public delegate void VideoUnlockFunc(void *opaque, void *picture, void **planes);
 468 	public delegate void VideoDisplayFunc(void *opaque, void *picture);
 469 	public delegate uint VideoFormatFunc(void **opaque, string chroma,
 470                                            uint *width, uint *height,
 471                                            uint *pitches,
 472                                            uint *lines);
 473     public delegate void VideoCleanupFunc(void *opaque);
 474     public delegate void AudioPlayFunc(void *data, void *samples, uint count, long pts);
 475     public delegate void AudioPauseFunc(void *data, long pts);
 476 	
 477 	public struct MediaStats{
 478 		public int         i_read_bytes;
 479 		public float       f_input_bitrate;
 480 		public int         i_demux_read_bytes;
 481 		public float       f_demux_bitrate;
 482 		public int         i_demux_corrupted;
 483 		public int         i_demux_discontinuity;
 484 		public int         i_decoded_video;
 485 		public int         i_decoded_audio;
 486 		public int         i_displayed_pictures;
 487 		public int         i_lost_pictures;
 488 		public int         i_played_abuffers;
 489 		public int         i_lost_abuffers;
 490 		public int         i_sent_packets;
 491 		public int         i_sent_bytes;
 492 		public float       f_send_bitrate;
 493 	}
 494 
 495 	[CCode(cprefix = "libvlc_vlm_", unref_function = "libvlc_vlm_release")]
 496 	public class Vlm
 497 	{
 498 		public static int add_broadcast(Instance instance, string name, string input, string output,
 499 									int number_options, string options, int enabled, int loop);
 500 		public static int add_vod(Instance instance, string name, string input,
 501 							int number_options, string options,int enabled, string muxer);
 502 		public static int del_media(Instance instance, string media_name);
 503 		public static int set_enabled(Instance instance, string media_name, int enabled);
 504 		public static int set_input(Instance instance, string name, string input);
 505 		public static int set_output(Instance instance, string name, string output);
 506 		public static int add_input(Instance instance, string name, string input);
 507 		public static int set_loop(Instance instance, string name, int loop);
 508 		public static int set_mux(Instance instance, string name, string muxer);
 509 		public static int change_media(Instance instance, string name, string input, string output,
 510 								int number_options, string options, int enabled, int loop);
 511 		public static int play_media(Instance instance, string name);
 512 		public static int stop_media(Instance instance, string name);
 513 		public static int pause_media(Instance instance, string name);
 514 		public static int seek_media(Instance instance, string name, float percentage);
 515 		public static string show_media(Instance instance, string name);
 516 		public static float get_media_instance_position(Instance instance, string name, int instance_id);
 517 		public static int get_media_instance_time(Instance instance, string name, int instance_id);
 518 		public static int get_media_instance_length(Instance instance, string name, int instance_id);
 519 		public static int get_media_instance_rate(Instance instance, string name, int instance_id);
 520 		public static int get_media_instance_title(Instance instance, string name, int instance_id);
 521 		public static int get_media_instance_chapter(Instance instance, string name, int instance_id);
 522 		public static int get_media_instance_seekable(Instance instance, string name, int instance_id);
 523 		public static EventManager event_manager(Instance instance);
 524 	}
 525 }

Attached Files

To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.
  • [get | view] (2021-02-25 10:01:18, 85.4 KB) [[attachment:gladeui-2.0.vapi]]
  • [get | view] (2021-02-25 10:01:18, 14.1 KB) [[attachment:glu.vapi]]
  • [get | view] (2021-02-25 10:01:18, 23.6 KB) [[attachment:glut.vapi]]
  • [get | view] (2021-02-25 10:01:18, 8.1 KB) [[attachment:glx.vapi]]
  • [get | view] (2021-02-25 10:01:18, 12.0 KB) [[attachment:gtkglext-1.0.vapi]]
  • [get | view] (2021-02-25 10:01:18, 6.4 KB) [[attachment:libglfw.vapi]]
  • [get | view] (2021-02-25 10:01:18, 18.7 KB) [[attachment:libvlc.vapi]]
 All files | Selected Files: delete move to page copy to page

You are not allowed to attach a file to this page.