| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259 |
- {
- Copyright (c) 2012 by Michael Van Canneyt
- member of the Free Pascal development team
- This is a translation of the VLC library headers.
- The original VLC library license applies if you use the VLC libraries.
- See http://www.videolan.org/ for license details.
-
- See the file COPYING.FPC, included in this distribution,
- for details about the copyright.
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- **********************************************************************}
- {$mode objfpc}
- {$IFNDEF FPC_DOTTEDUNITS}
- unit libvlc;
- {$ENDIF FPC_DOTTEDUNITS}
- interface
- {$IFDEF FPC_DOTTEDUNITS}
- uses
- System.CTypes;
- {$ELSE FPC_DOTTEDUNITS}
- uses
- ctypes;
- {$ENDIF FPC_DOTTEDUNITS}
- {$IFDEF FPC}
- {$PACKRECORDS C}
- {$ENDIF}
- Const
- {$ifdef unix}
- libname = 'libvlc.so.5';
- {$else}
- {$ifdef windows}
- corelibname = 'libvlccore.dll';
- libname = 'libvlc.dll';
- var
- DefaultlibPath: String;
- {$endif}
- {$endif}
- Type
- _bool = cint;
- Ppcchar = ^Pcchar;
- // Opaque types.
- libvlc_event_manager_t = record end;
- Libvlc_instance_t = record end;
- Libvlc_log_iterator_t = record end;
- Libvlc_log_t = record end;
- Libvlc_media_discoverer_t = record end;
- Libvlc_media_library_t = record end;
- Libvlc_media_list_player_t = record end;
- Libvlc_media_list_t = record end;
- Libvlc_media_player_t = record end;
- Libvlc_media_t = record end;
-
- Plibvlc_audio_output_t = ^libvlc_audio_output_t;
- Plibvlc_event_manager_t = ^libvlc_event_manager_t;
- Plibvlc_event_t = ^libvlc_event_t;
- Plibvlc_instance_t = ^libvlc_instance_t;
- Plibvlc_log_iterator_t = ^libvlc_log_iterator_t;
- Plibvlc_log_message_t = ^libvlc_log_message_t;
- Plibvlc_log_t = ^libvlc_log_t;
- Plibvlc_media_discoverer_t = ^libvlc_media_discoverer_t;
- Plibvlc_media_library_t = ^libvlc_media_library_t;
- Plibvlc_media_list_player_t = ^libvlc_media_list_player_t;
- Plibvlc_media_list_t = ^libvlc_media_list_t;
- Plibvlc_media_player_t = ^libvlc_media_player_t;
- Plibvlc_media_stats_t = ^libvlc_media_stats_t;
- Plibvlc_media_t = ^libvlc_media_t;
- Plibvlc_media_track_info_t = ^libvlc_media_track_info_t;
- Plibvlc_module_description_t = ^libvlc_module_description_t;
- Plibvlc_track_description_t = ^libvlc_track_description_t;
-
-
- int8_t = cschar;
- int16_t = csint;
- int32_t = cint;
- int64_t = cint64;
- uint8_t = cuchar;
- uint16_t = csint;
- uint32_t = cuint;
- uint64_t = cuint64;
- int_least8_t = cschar;
- int_least16_t = csint;
- int_least32_t = cint;
- int_least64_t = cint64;
- uint_least8_t = cuchar;
- uint_least16_t = csint;
- uint_least32_t = cuint;
- uint_least64_t = cuint64;
- int_fast8_t = cschar;
- int_fast16_t = clong;
- int_fast32_t = clong;
- int_fast64_t = cint64;
- uint_fast8_t = cuchar;
- uint_fast16_t = culong;
- uint_fast32_t = culong;
- uint_fast64_t = cuint64;
- intptr_t = PtrInt;
- uintptr_t = PtrUInt;
- intmax_t = cint64;
- uintmax_t = cuint64;
- libvlc_time_t = int64_t;
- libvlc_log_message_t = record
- i_severity : cint;
- psz_type : ^cchar;
- psz_name : ^cchar;
- psz_header : ^cchar;
- psz_message : ^cchar;
- end;
- libvlc_event_type_t = cint;
- libvlc_callback_t = procedure (_para1:Plibvlc_event_t; _para2:pointer);cdecl;
- libvlc_module_description_t = record
- psz_name : ^cchar;
- psz_shortname : ^cchar;
- psz_longname : ^cchar;
- psz_help : ^cchar;
- p_next : ^libvlc_module_description_t;
- end;
- {
- static inline int64_t libvlc_delay(int64_t pts)
- return pts - libvlc_clock();
- }
- libvlc_meta_t = (libvlc_meta_Title,libvlc_meta_Artist,
- libvlc_meta_Genre,libvlc_meta_Copyright,
- libvlc_meta_Album,libvlc_meta_TrackNumber,
- libvlc_meta_Description,libvlc_meta_Rating,
- libvlc_meta_Date,libvlc_meta_Setting,
- libvlc_meta_URL,libvlc_meta_Language,
- libvlc_meta_NowPlaying,libvlc_meta_Publisher,
- libvlc_meta_EncodedBy,libvlc_meta_ArtworkURL,
- libvlc_meta_TrackID);
- libvlc_state_t = (libvlc_NothingSpecial := 0,libvlc_Opening,
- libvlc_Buffering,libvlc_Playing,libvlc_Paused,
- libvlc_Stopped,libvlc_Ended,libvlc_Error
- );
- libvlc_media_option_t = (libvlc_media_option_trusted := $2,libvlc_media_option_unique := $100
- );
- libvlc_track_type_t = (libvlc_track_unknown := -(1),libvlc_track_audio := 0,
- libvlc_track_video := 1,libvlc_track_text := 2
- );
- libvlc_media_stats_t = record
- i_read_bytes : cint;
- f_input_bitrate : cfloat;
- i_demux_read_bytes : cint;
- f_demux_bitrate : cfloat;
- i_demux_corrupted : cint;
- i_demux_discontinuity : cint;
- i_decoded_video : cint;
- i_decoded_audio : cint;
- i_displayed_pictures : cint;
- i_lost_pictures : cint;
- i_played_abuffers : cint;
- i_lost_abuffers : cint;
- i_sent_packets : cint;
- i_sent_bytes : cint;
- f_send_bitrate : cfloat;
- end;
- libvlc_media_track_info_t = record
- i_codec : uint32_t;
- i_id : cint;
- i_type : libvlc_track_type_t;
- i_profile : cint;
- i_level : cint;
- u : record
- case longint of
- 0 : ( audio : record
- i_channels : cunsigned;
- i_rate : cunsigned;
- end );
- 1 : ( video : record
- i_height : cunsigned;
- i_width : cunsigned;
- end );
- end;
- end;
- libvlc_track_description_t = record
- i_id : cint;
- psz_name : ^cchar;
- p_next : ^libvlc_track_description_t;
- end;
- libvlc_audio_output_t = record
- psz_name : ^cchar;
- psz_description : ^cchar;
- p_next : ^libvlc_audio_output_t;
- end;
- libvlc_rectangle_t = record
- top : cint;
- left : cint;
- bottom : cint;
- right : cint;
- end;
- libvlc_video_marquee_option_t = (libvlc_marquee_Enable := 0,libvlc_marquee_Text,
- libvlc_marquee_Color,libvlc_marquee_Opacity,
- libvlc_marquee_Position,libvlc_marquee_Refresh,
- libvlc_marquee_Size,libvlc_marquee_Timeout,
- libvlc_marquee_X,libvlc_marquee_Y);
- libvlc_navigate_mode_t = (libvlc_navigate_activate := 0,libvlc_navigate_up,
- libvlc_navigate_down,libvlc_navigate_left,
- libvlc_navigate_right);
- libvlc_video_lock_cb = function (opaque:pointer; planes:Ppointer):pointer;cdecl;
- libvlc_video_unlock_cb = procedure (opaque:pointer; picture:pointer; planes:Ppointer);cdecl;
- libvlc_video_display_cb = procedure (opaque:pointer; picture:pointer);cdecl;
- libvlc_video_format_cb = function (opaque:Ppointer; chroma:pcchar; width:pcunsigned; height:pcunsigned; pitches:pcunsigned;
- lines:pcunsigned):cunsigned;cdecl;
- libvlc_video_cleanup_cb = procedure (opaque:pointer);cdecl;
- libvlc_audio_play_cb = procedure (data:pointer; samples:pointer; count:cunsigned; pts:int64_t);cdecl;
- libvlc_audio_pause_cb = procedure (data:pointer; pts:int64_t);cdecl;
- libvlc_audio_resume_cb = procedure (data:pointer; pts:int64_t);cdecl;
- libvlc_audio_flush_cb = procedure (data:pointer; pts:int64_t);cdecl;
- libvlc_audio_drain_cb = procedure (data:pointer);cdecl;
- libvlc_audio_set_volume_cb = procedure (data:pointer; volume:cfloat; mute:_Bool);cdecl;
- libvlc_audio_setup_cb = function (data:Ppointer; format:pcchar; rate:pcunsigned; channels:pcunsigned):cint;cdecl;
- libvlc_audio_cleanup_cb = procedure (data:pointer);cdecl;
- libvlc_video_logo_option_t = (libvlc_logo_enable,libvlc_logo_file,libvlc_logo_x,
- libvlc_logo_y,libvlc_logo_delay,libvlc_logo_repeat,
- libvlc_logo_opacity,libvlc_logo_position
- );
- libvlc_video_adjust_option_t = (libvlc_adjust_Enable := 0,libvlc_adjust_Contrast,
- libvlc_adjust_Brightness,libvlc_adjust_Hue,
- libvlc_adjust_Saturation,libvlc_adjust_Gamma
- );
- libvlc_audio_output_device_types_t = (libvlc_AudioOutputDevice_Error := -(1),
- libvlc_AudioOutputDevice_Mono := 1,
- libvlc_AudioOutputDevice_Stereo := 2,
- libvlc_AudioOutputDevice_2F2R := 4,
- libvlc_AudioOutputDevice_3F2R := 5,
- libvlc_AudioOutputDevice_5_1 := 6,libvlc_AudioOutputDevice_6_1 := 7,
- libvlc_AudioOutputDevice_7_1 := 8,libvlc_AudioOutputDevice_SPDIF := 10
- );
- libvlc_audio_output_channel_t = (libvlc_AudioChannel_Error := -(1),libvlc_AudioChannel_Stereo := 1,
- libvlc_AudioChannel_RStereo := 2,libvlc_AudioChannel_Left := 3,
- libvlc_AudioChannel_Right := 4,libvlc_AudioChannel_Dolbys := 5
- );
- libvlc_playback_mode_t = (libvlc_playback_mode_default,libvlc_playback_mode_loop,
- libvlc_playback_mode_repeat);
- libvlc_event_e = (libvlc_MediaMetaChanged := 0,
- libvlc_MediaSubItemAdded,
- libvlc_MediaDurationChanged,libvlc_MediaParsedChanged,
- libvlc_MediaFreed,libvlc_MediaStateChanged,
- libvlc_MediaPlayerMediaChanged := $100,
- libvlc_MediaPlayerNothingSpecial,libvlc_MediaPlayerOpening,
- libvlc_MediaPlayerBuffering,libvlc_MediaPlayerPlaying,
- libvlc_MediaPlayerPaused,libvlc_MediaPlayerStopped,
- libvlc_MediaPlayerForward,libvlc_MediaPlayerBackward,
- libvlc_MediaPlayerEndReached,libvlc_MediaPlayerEncounteredError,
- libvlc_MediaPlayerTimeChanged,libvlc_MediaPlayerPositionChanged,
- libvlc_MediaPlayerSeekableChanged,libvlc_MediaPlayerPausableChanged,
- libvlc_MediaPlayerTitleChanged,libvlc_MediaPlayerSnapshotTaken,
- libvlc_MediaPlayerLengthChanged,libvlc_MediaPlayerVout,
- libvlc_MediaListItemAdded := $200,libvlc_MediaListWillAddItem,
- libvlc_MediaListItemDeleted,libvlc_MediaListWillDeleteItem,
- libvlc_MediaListViewItemAdded := $300,
- libvlc_MediaListViewWillAddItem,libvlc_MediaListViewItemDeleted,
- libvlc_MediaListViewWillDeleteItem,libvlc_MediaListPlayerPlayed := $400,
- libvlc_MediaListPlayerNextItemSet,libvlc_MediaListPlayerStopped,
- libvlc_MediaDiscovererStarted := $500,
- libvlc_MediaDiscovererEnded,libvlc_VlmMediaAdded := $600,
- libvlc_VlmMediaRemoved,libvlc_VlmMediaChanged,
- libvlc_VlmMediaInstanceStarted,libvlc_VlmMediaInstanceStopped,
- libvlc_VlmMediaInstanceStatusInit,libvlc_VlmMediaInstanceStatusOpening,
- libvlc_VlmMediaInstanceStatusPlaying,
- libvlc_VlmMediaInstanceStatusPause,libvlc_VlmMediaInstanceStatusEnd,
- libvlc_VlmMediaInstanceStatusError);
- libvlc_event_t = record
- _type : cint;
- p_obj : pointer;
- case longint of
- 0 : ( media_meta_changed : record
- meta_type : libvlc_meta_t;
- end );
- 1 : ( media_subitem_added : record
- new_child : ^libvlc_media_t;
- end );
- 2 : ( media_duration_changed : record
- new_duration : int64_t;
- end );
- 3 : ( media_parsed_changed : record
- new_status : cint;
- end );
- 4 : ( media_freed : record
- md : ^libvlc_media_t;
- end );
- 5 : ( media_state_changed : record
- new_state : libvlc_state_t;
- end );
- 6 : ( media_player_buffering : record
- new_cache : cfloat;
- end );
- 7 : ( media_player_position_changed : record
- new_position : cfloat;
- end );
- 8 : ( media_player_time_changed : record
- new_time : libvlc_time_t;
- end );
- 9 : ( media_player_title_changed : record
- new_title : cint;
- end );
- 10 : ( media_player_seekable_changed : record
- new_seekable : cint;
- end );
- 11 : ( media_player_pausable_changed : record
- new_pausable : cint;
- end );
- 12 : ( media_player_vout : record
- new_count : cint;
- end );
- 13 : ( media_list_item_added : record
- item : ^libvlc_media_t;
- index : cint;
- end );
- 14 : ( media_list_will_add_item : record
- item : ^libvlc_media_t;
- index : cint;
- end );
- 15 : ( media_list_item_deleted : record
- item : ^libvlc_media_t;
- index : cint;
- end );
- 16 : ( media_list_will_delete_item : record
- item : ^libvlc_media_t;
- index : cint;
- end );
- 17 : ( media_list_player_next_item_set : record
- item : ^libvlc_media_t;
- end );
- 18 : ( media_player_snapshot_taken : record
- psz_filename : ^cchar;
- end );
- 19 : ( media_player_length_changed : record
- new_length : libvlc_time_t;
- end );
- 20 : ( vlm_media_event : record
- psz_media_name : ^cchar;
- psz_instance_name : ^cchar;
- end );
- 21 : ( media_player_media_changed : record
- new_media : ^libvlc_media_t;
- end );
- end;
- PPlibvlc_media_track_info_t = ^Plibvlc_media_track_info_t;
- cbtype1 = procedure (_para1:pointer); cdecl;
- Var
- libvlc_media_player_new : function(p_libvlc_instance:Plibvlc_instance_t):plibvlc_media_player_t; cdecl;
- libvlc_media_player_new_from_media : function(p_md:Plibvlc_media_t):plibvlc_media_player_t; cdecl;
- libvlc_media_player_release : procedure(p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_media_player_retain : procedure(p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_media_player_set_media : procedure(p_mi:Plibvlc_media_player_t; p_md:Plibvlc_media_t); cdecl;
- libvlc_media_player_get_media : function(p_mi:Plibvlc_media_player_t):plibvlc_media_t; cdecl;
- libvlc_media_player_event_manager : function(p_mi:Plibvlc_media_player_t):plibvlc_event_manager_t; cdecl;
- libvlc_media_player_is_playing : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_media_player_play : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_media_player_set_pause : procedure(mp:Plibvlc_media_player_t; do_pause:cint); cdecl;
- libvlc_media_player_pause : procedure(p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_media_player_stop : procedure(p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_media_new_location : function(p_instance:Plibvlc_instance_t; psz_mrl:pcchar):plibvlc_media_t; cdecl;
- libvlc_media_new_path : function(p_instance:Plibvlc_instance_t; path:pcchar):plibvlc_media_t; cdecl;
- libvlc_media_new_fd : function(p_instance:Plibvlc_instance_t; fd:cint):plibvlc_media_t; cdecl;
- libvlc_media_new_as_node : function(p_instance:Plibvlc_instance_t; psz_name:pcchar):plibvlc_media_t; cdecl;
- libvlc_media_add_option : procedure(p_md:Plibvlc_media_t; ppsz_options:pcchar); cdecl;
- libvlc_media_add_option_flag : procedure(p_md:Plibvlc_media_t; ppsz_options:pcchar; i_flags:cunsigned); cdecl;
- libvlc_media_retain : procedure(p_md:Plibvlc_media_t); cdecl;
- libvlc_media_release : procedure(p_md:Plibvlc_media_t); cdecl;
- libvlc_media_get_mrl : function(p_md:Plibvlc_media_t):pcchar; cdecl;
- libvlc_media_duplicate : function(p_md:Plibvlc_media_t):plibvlc_media_t; cdecl;
- libvlc_media_get_meta : function(p_md:Plibvlc_media_t; e_meta:libvlc_meta_t):pcchar; cdecl;
- libvlc_media_set_meta : procedure(p_md:Plibvlc_media_t; e_meta:libvlc_meta_t; psz_value:pcchar); cdecl;
- libvlc_media_save_meta : function(p_md:Plibvlc_media_t):cint; cdecl;
- libvlc_media_get_state : function(p_md:Plibvlc_media_t):libvlc_state_t; cdecl;
- libvlc_media_get_stats : function(p_md:Plibvlc_media_t; p_stats:Plibvlc_media_stats_t):cint; cdecl;
- libvlc_media_subitems : function(p_md:Plibvlc_media_t):plibvlc_media_list_t; cdecl;
- libvlc_media_event_manager : function(p_md:Plibvlc_media_t):plibvlc_event_manager_t; cdecl;
- libvlc_media_get_duration : function(p_md:Plibvlc_media_t):libvlc_time_t; cdecl;
- libvlc_media_parse : procedure(p_md:Plibvlc_media_t); cdecl;
- libvlc_media_parse_async : procedure(p_md:Plibvlc_media_t); cdecl;
- libvlc_media_is_parsed : function(p_md:Plibvlc_media_t):cint; cdecl;
- libvlc_media_set_user_data : procedure(p_md:Plibvlc_media_t; p_new_user_data:pointer); cdecl;
- libvlc_media_get_user_data : function(p_md:Plibvlc_media_t):pointer; cdecl;
- libvlc_media_get_tracks_info : function(p_md:Plibvlc_media_t; tracks:PPlibvlc_media_track_info_t):cint; cdecl;
- libvlc_module_description_list_release : procedure(p_list:Plibvlc_module_description_t); cdecl;
- libvlc_audio_filter_list_get : function(p_instance:Plibvlc_instance_t):plibvlc_module_description_t; cdecl;
- libvlc_video_filter_list_get : function(p_instance:Plibvlc_instance_t):plibvlc_module_description_t; cdecl;
- libvlc_clock : function:int64_t; cdecl;
- libvlc_errmsg : function:pcchar; cdecl;
- libvlc_clearerr : procedure; cdecl;
- libvlc_printerr : function(fmt:pcchar):pcchar;varargs; cdecl;
- libvlc_new : function(argc:cint; argv:Ppcchar):plibvlc_instance_t; cdecl;
- libvlc_release : procedure(p_instance:Plibvlc_instance_t); cdecl;
- libvlc_retain : procedure(p_instance:Plibvlc_instance_t); cdecl;
- libvlc_add_intf : function(p_instance:Plibvlc_instance_t; name:pcchar):cint; cdecl;
- libvlc_set_exit_handler : procedure(p_instance:Plibvlc_instance_t; cb:cbtype1; opaque:pointer); cdecl;
- libvlc_wait : procedure(p_instance:Plibvlc_instance_t); cdecl;
- libvlc_set_user_agent : procedure(p_instance:Plibvlc_instance_t; name:pcchar; http:pcchar); cdecl;
- libvlc_get_version : function:pcchar; cdecl;
- libvlc_get_compiler : function:pcchar; cdecl;
- libvlc_get_changeset : function:pcchar; cdecl;
- libvlc_free : procedure(ptr:pointer); cdecl;
- libvlc_event_attach : function(p_event_manager:Plibvlc_event_manager_t; i_event_type:libvlc_event_type_t; f_callback:libvlc_callback_t; user_data:pointer):cint; cdecl;
- libvlc_event_detach : procedure(p_event_manager:Plibvlc_event_manager_t; i_event_type:libvlc_event_type_t; f_callback:libvlc_callback_t; p_user_data:pointer); cdecl;
- libvlc_event_type_name : function(event_type:libvlc_event_type_t):pcchar; cdecl;
- libvlc_get_log_verbosity : function(p_instance:Plibvlc_instance_t):cunsigned; cdecl;
- libvlc_set_log_verbosity : procedure(p_instance:Plibvlc_instance_t; level:cunsigned); cdecl;
- libvlc_log_open : function(p_instance:Plibvlc_instance_t):plibvlc_log_t; cdecl;
- libvlc_log_close : procedure(p_log:Plibvlc_log_t); cdecl;
- libvlc_log_count : function(p_log:Plibvlc_log_t):cunsigned; cdecl;
- libvlc_log_clear : procedure(p_log:Plibvlc_log_t); cdecl;
- libvlc_log_get_iterator : function(p_log:Plibvlc_log_t):plibvlc_log_iterator_t; cdecl;
- libvlc_log_iterator_free : procedure(p_iter:Plibvlc_log_iterator_t); cdecl;
- libvlc_log_iterator_has_next : function(p_iter:Plibvlc_log_iterator_t):cint; cdecl;
- libvlc_log_iterator_next : function(p_iter:Plibvlc_log_iterator_t; p_buffer:Plibvlc_log_message_t):plibvlc_log_message_t; cdecl;
- libvlc_audio_output_list_get : function(p_instance:Plibvlc_instance_t):plibvlc_audio_output_t; cdecl;
- libvlc_audio_output_list_release : procedure(p_list:Plibvlc_audio_output_t); cdecl;
- libvlc_audio_output_set : function(p_mi:Plibvlc_media_player_t; psz_name:pcchar):cint; cdecl;
- libvlc_audio_output_device_count : function(p_instance:Plibvlc_instance_t; psz_audio_output:pcchar):cint; cdecl;
- libvlc_audio_output_device_longname : function(p_instance:Plibvlc_instance_t; psz_audio_output:pcchar; i_device:cint):pcchar; cdecl;
- libvlc_audio_output_device_id : function(p_instance:Plibvlc_instance_t; psz_audio_output:pcchar; i_device:cint):pcchar; cdecl;
- libvlc_audio_output_device_set : procedure(p_mi:Plibvlc_media_player_t; psz_audio_output:pcchar; psz_device_id:pcchar); cdecl;
- libvlc_audio_output_get_device_type : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_audio_output_set_device_type : procedure(p_mi:Plibvlc_media_player_t; device_type:cint); cdecl;
- libvlc_audio_toggle_mute : procedure(p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_audio_get_mute : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_audio_set_mute : procedure(p_mi:Plibvlc_media_player_t; status:cint); cdecl;
- libvlc_audio_get_volume : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_audio_set_volume : function(p_mi:Plibvlc_media_player_t; i_volume:cint):cint; cdecl;
- libvlc_audio_get_track_count : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_audio_get_track_description : function(p_mi:Plibvlc_media_player_t):plibvlc_track_description_t; cdecl;
- libvlc_audio_get_track : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_audio_set_track : function(p_mi:Plibvlc_media_player_t; i_track:cint):cint; cdecl;
- libvlc_audio_get_channel : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_audio_set_channel : function(p_mi:Plibvlc_media_player_t; channel:cint):cint; cdecl;
- libvlc_audio_get_delay : function(p_mi:Plibvlc_media_player_t):int64_t; cdecl;
- libvlc_audio_set_delay : function(p_mi:Plibvlc_media_player_t; i_delay:int64_t):cint; cdecl;
- libvlc_media_list_new : function(p_instance:Plibvlc_instance_t):plibvlc_media_list_t; cdecl;
- libvlc_media_list_release : procedure(p_ml:Plibvlc_media_list_t); cdecl;
- libvlc_media_list_retain : procedure(p_ml:Plibvlc_media_list_t); cdecl;
- libvlc_media_list_add_file_content : function(p_ml:Plibvlc_media_list_t; psz_uri:pcchar):cint; cdecl;
- libvlc_media_list_set_media : procedure(p_ml:Plibvlc_media_list_t; p_md:Plibvlc_media_t); cdecl;
- libvlc_media_list_media : function(p_ml:Plibvlc_media_list_t):plibvlc_media_t; cdecl;
- libvlc_media_list_add_media : function(p_ml:Plibvlc_media_list_t; p_md:Plibvlc_media_t):cint; cdecl;
- libvlc_media_list_insert_media : function(p_ml:Plibvlc_media_list_t; p_md:Plibvlc_media_t; i_pos:cint):cint; cdecl;
- libvlc_media_list_remove_index : function(p_ml:Plibvlc_media_list_t; i_pos:cint):cint; cdecl;
- libvlc_media_list_count : function(p_ml:Plibvlc_media_list_t):cint; cdecl;
- libvlc_media_list_item_at_index : function(p_ml:Plibvlc_media_list_t; i_pos:cint):plibvlc_media_t; cdecl;
- libvlc_media_list_index_of_item : function(p_ml:Plibvlc_media_list_t; p_md:Plibvlc_media_t):cint; cdecl;
- libvlc_media_list_is_readonly : function(p_ml:Plibvlc_media_list_t):cint; cdecl;
- libvlc_media_list_lock : procedure(p_ml:Plibvlc_media_list_t); cdecl;
- libvlc_media_list_unlock : procedure(p_ml:Plibvlc_media_list_t); cdecl;
- libvlc_media_list_event_manager : function(p_ml:Plibvlc_media_list_t):plibvlc_event_manager_t; cdecl;
- libvlc_media_list_player_new : function(p_instance:Plibvlc_instance_t):plibvlc_media_list_player_t; cdecl;
- libvlc_media_list_player_release : procedure(p_mlp:Plibvlc_media_list_player_t); cdecl;
- libvlc_media_list_player_retain : procedure(p_mlp:Plibvlc_media_list_player_t); cdecl;
- libvlc_media_list_player_event_manager : function(p_mlp:Plibvlc_media_list_player_t):plibvlc_event_manager_t; cdecl;
- libvlc_media_list_player_set_media_player : procedure(p_mlp:Plibvlc_media_list_player_t; p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_media_list_player_set_media_list : procedure(p_mlp:Plibvlc_media_list_player_t; p_mlist:Plibvlc_media_list_t); cdecl;
- libvlc_media_list_player_play : procedure(p_mlp:Plibvlc_media_list_player_t); cdecl;
- libvlc_media_list_player_pause : procedure(p_mlp:Plibvlc_media_list_player_t); cdecl;
- libvlc_media_list_player_is_playing : function(p_mlp:Plibvlc_media_list_player_t):cint; cdecl;
- libvlc_media_list_player_get_state : function(p_mlp:Plibvlc_media_list_player_t):libvlc_state_t; cdecl;
- libvlc_media_list_player_play_item_at_index : function(p_mlp:Plibvlc_media_list_player_t; i_index:cint):cint; cdecl;
- libvlc_media_list_player_play_item : function(p_mlp:Plibvlc_media_list_player_t; p_md:Plibvlc_media_t):cint; cdecl;
- libvlc_media_list_player_stop : procedure(p_mlp:Plibvlc_media_list_player_t); cdecl;
- libvlc_media_list_player_next : function(p_mlp:Plibvlc_media_list_player_t):cint; cdecl;
- libvlc_media_list_player_previous : function(p_mlp:Plibvlc_media_list_player_t):cint; cdecl;
- libvlc_media_list_player_set_playback_mode : procedure(p_mlp:Plibvlc_media_list_player_t; e_mode:libvlc_playback_mode_t); cdecl;
- libvlc_media_library_new : function(p_instance:Plibvlc_instance_t):plibvlc_media_library_t; cdecl;
- libvlc_media_library_release : procedure(p_mlib:Plibvlc_media_library_t); cdecl;
- libvlc_media_library_retain : procedure(p_mlib:Plibvlc_media_library_t); cdecl;
- libvlc_media_library_load : function(p_mlib:Plibvlc_media_library_t):cint; cdecl;
- libvlc_media_library_media_list : function(p_mlib:Plibvlc_media_library_t):plibvlc_media_list_t; cdecl;
- libvlc_video_get_adjust_int : function(p_mi:Plibvlc_media_player_t; option:cunsigned):cint; cdecl;
- libvlc_video_set_adjust_int : procedure(p_mi:Plibvlc_media_player_t; option:cunsigned; value:cint); cdecl;
- libvlc_video_get_adjust_float : function(p_mi:Plibvlc_media_player_t; option:cunsigned):cfloat; cdecl;
- libvlc_video_set_adjust_float : procedure(p_mi:Plibvlc_media_player_t; option:cunsigned; value:cfloat); cdecl;
- libvlc_video_get_logo_int : function(p_mi:Plibvlc_media_player_t; option:cunsigned):cint; cdecl;
- libvlc_video_set_logo_int : procedure(p_mi:Plibvlc_media_player_t; option:cunsigned; value:cint); cdecl;
- libvlc_video_set_logo_string : procedure(p_mi:Plibvlc_media_player_t; option:cunsigned; psz_value:pcchar); cdecl;
- libvlc_audio_set_format_callbacks : procedure(mp:Plibvlc_media_player_t; setup:libvlc_audio_setup_cb; cleanup:libvlc_audio_cleanup_cb); cdecl;
- libvlc_audio_set_format : procedure(mp:Plibvlc_media_player_t; format:pcchar; rate:cunsigned; channels:cunsigned); cdecl;
- libvlc_media_player_get_length : function(p_mi:Plibvlc_media_player_t):libvlc_time_t; cdecl;
- libvlc_media_player_get_time : function(p_mi:Plibvlc_media_player_t):libvlc_time_t; cdecl;
- libvlc_media_player_set_time : procedure(p_mi:Plibvlc_media_player_t; i_time:libvlc_time_t); cdecl;
- libvlc_media_player_get_position : function(p_mi:Plibvlc_media_player_t):cfloat; cdecl;
- libvlc_media_player_set_position : procedure(p_mi:Plibvlc_media_player_t; f_pos:cfloat); cdecl;
- libvlc_media_player_set_chapter : procedure(p_mi:Plibvlc_media_player_t; i_chapter:cint); cdecl;
- libvlc_media_player_get_chapter : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_media_player_get_chapter_count : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_media_player_will_play : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_media_player_get_chapter_count_for_title : function(p_mi:Plibvlc_media_player_t; i_title:cint):cint; cdecl;
- libvlc_media_player_set_title : procedure(p_mi:Plibvlc_media_player_t; i_title:cint); cdecl;
- libvlc_media_player_get_title : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_media_player_get_title_count : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_media_player_previous_chapter : procedure(p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_media_player_next_chapter : procedure(p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_media_player_get_rate : function(p_mi:Plibvlc_media_player_t):cfloat; cdecl;
- libvlc_media_player_set_rate : function(p_mi:Plibvlc_media_player_t; rate:cfloat):cint; cdecl;
- libvlc_media_player_get_state : function(p_mi:Plibvlc_media_player_t):libvlc_state_t; cdecl;
- libvlc_media_player_get_fps : function(p_mi:Plibvlc_media_player_t):cfloat; cdecl;
- libvlc_media_player_has_vout : function(p_mi:Plibvlc_media_player_t):cunsigned; cdecl;
- libvlc_media_player_is_seekable : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_media_player_can_pause : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_media_player_next_frame : procedure(p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_media_player_navigate : procedure(p_mi:Plibvlc_media_player_t; navigate:cunsigned); cdecl;
- libvlc_track_description_list_release : procedure(p_track_description:Plibvlc_track_description_t); cdecl;
- libvlc_track_description_release : procedure(p_track_description:Plibvlc_track_description_t); cdecl;
- libvlc_toggle_fullscreen : procedure(p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_set_fullscreen : procedure(p_mi:Plibvlc_media_player_t; b_fullscreen:cint); cdecl;
- libvlc_get_fullscreen : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_video_set_key_input : procedure(p_mi:Plibvlc_media_player_t; on:cunsigned); cdecl;
- libvlc_video_set_mouse_input : procedure(p_mi:Plibvlc_media_player_t; on:cunsigned); cdecl;
- libvlc_video_get_size : function(p_mi:Plibvlc_media_player_t; num:cunsigned; px:pcunsigned; py:pcunsigned):cint; cdecl;
- libvlc_video_get_height : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_video_get_width : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_video_get_cursor : function(p_mi:Plibvlc_media_player_t; num:cunsigned; px:pcint; py:pcint):cint; cdecl;
- libvlc_video_get_scale : function(p_mi:Plibvlc_media_player_t):cfloat; cdecl;
- libvlc_video_set_scale : procedure(p_mi:Plibvlc_media_player_t; f_factor:cfloat); cdecl;
- libvlc_video_get_aspect_ratio : function(p_mi:Plibvlc_media_player_t):pcchar; cdecl;
- libvlc_video_set_aspect_ratio : procedure(p_mi:Plibvlc_media_player_t; psz_aspect:pcchar); cdecl;
- libvlc_video_get_spu : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_video_get_spu_count : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_video_get_spu_description : function(p_mi:Plibvlc_media_player_t):plibvlc_track_description_t; cdecl;
- libvlc_video_set_spu : function(p_mi:Plibvlc_media_player_t; i_spu:cunsigned):cint; cdecl;
- libvlc_video_set_subtitle_file : function(p_mi:Plibvlc_media_player_t; psz_subtitle:pcchar):cint; cdecl;
- libvlc_video_get_spu_delay : function(p_mi:Plibvlc_media_player_t):int64_t; cdecl;
- libvlc_video_set_spu_delay : function(p_mi:Plibvlc_media_player_t; i_delay:int64_t):cint; cdecl;
- libvlc_video_get_title_description : function(p_mi:Plibvlc_media_player_t):plibvlc_track_description_t; cdecl;
- libvlc_video_get_chapter_description : function(p_mi:Plibvlc_media_player_t; i_title:cint):plibvlc_track_description_t; cdecl;
- libvlc_video_get_crop_geometry : function(p_mi:Plibvlc_media_player_t):pcchar; cdecl;
- libvlc_video_set_crop_geometry : procedure(p_mi:Plibvlc_media_player_t; psz_geometry:pcchar); cdecl;
- libvlc_video_get_teletext : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_video_set_teletext : procedure(p_mi:Plibvlc_media_player_t; i_page:cint); cdecl;
- libvlc_toggle_teletext : procedure(p_mi:Plibvlc_media_player_t); cdecl;
- libvlc_video_get_track_count : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_video_get_track_description : function(p_mi:Plibvlc_media_player_t):plibvlc_track_description_t; cdecl;
- libvlc_video_get_track : function(p_mi:Plibvlc_media_player_t):cint; cdecl;
- libvlc_video_set_track : function(p_mi:Plibvlc_media_player_t; i_track:cint):cint; cdecl;
- libvlc_video_take_snapshot : function(p_mi:Plibvlc_media_player_t; num:cunsigned; psz_filepath:pcchar; i_width:cuint; i_height:cuint):cint; cdecl;
- libvlc_video_set_deinterlace : procedure(p_mi:Plibvlc_media_player_t; psz_mode:pcchar); cdecl;
- libvlc_video_get_marquee_int : function(p_mi:Plibvlc_media_player_t; option:cunsigned):cint; cdecl;
- libvlc_video_get_marquee_string : function(p_mi:Plibvlc_media_player_t; option:cunsigned):pcchar; cdecl;
- libvlc_video_set_marquee_int : procedure(p_mi:Plibvlc_media_player_t; option:cunsigned; i_val:cint); cdecl;
- libvlc_video_set_marquee_string : procedure(p_mi:Plibvlc_media_player_t; option:cunsigned; psz_text:pcchar); cdecl;
- libvlc_audio_set_callbacks : procedure(mp:Plibvlc_media_player_t; play:libvlc_audio_play_cb; pause:libvlc_audio_pause_cb; resume:libvlc_audio_resume_cb; flush:libvlc_audio_flush_cb;
- drain:libvlc_audio_drain_cb; opaque:pointer); cdecl;
- libvlc_audio_set_volume_callback : procedure(mp:Plibvlc_media_player_t; set_volume:libvlc_audio_set_volume_cb); cdecl;
- libvlc_video_set_callbacks : procedure(mp:Plibvlc_media_player_t; lock:libvlc_video_lock_cb; unlock:libvlc_video_unlock_cb; display:libvlc_video_display_cb; opaque:pointer); cdecl;
- libvlc_video_set_format : procedure(mp:Plibvlc_media_player_t; chroma:pcchar; width:cunsigned; height:cunsigned; pitch:cunsigned); cdecl;
- libvlc_video_set_format_callbacks : procedure(mp:Plibvlc_media_player_t; setup:libvlc_video_format_cb; cleanup:libvlc_video_cleanup_cb); cdecl;
- libvlc_media_player_set_nsobject : procedure(p_mi:Plibvlc_media_player_t; drawable:pointer); cdecl;
- libvlc_media_player_get_nsobject : function(p_mi:Plibvlc_media_player_t):pointer; cdecl;
- libvlc_media_player_set_agl : procedure(p_mi:Plibvlc_media_player_t; drawable:uint32_t); cdecl;
- libvlc_media_player_get_agl : function(p_mi:Plibvlc_media_player_t):uint32_t; cdecl;
- libvlc_media_player_set_xwindow : procedure(p_mi:Plibvlc_media_player_t; drawable:uint32_t); cdecl;
- libvlc_media_player_get_xwindow : function(p_mi:Plibvlc_media_player_t):uint32_t; cdecl;
- libvlc_media_player_set_hwnd : procedure(p_mi:Plibvlc_media_player_t; drawable:pointer); cdecl;
- libvlc_media_player_get_hwnd : function(p_mi:Plibvlc_media_player_t):pointer; cdecl;
- libvlc_media_discoverer_new_from_name : function(p_inst:Plibvlc_instance_t; psz_name:pcchar):plibvlc_media_discoverer_t; cdecl;
- libvlc_media_discoverer_release : procedure(p_mdis:Plibvlc_media_discoverer_t); cdecl;
- libvlc_media_discoverer_localized_name : function(p_mdis:Plibvlc_media_discoverer_t):pcchar; cdecl;
- libvlc_media_discoverer_media_list : function(p_mdis:Plibvlc_media_discoverer_t):plibvlc_media_list_t; cdecl;
- libvlc_media_discoverer_event_manager : function(p_mdis:Plibvlc_media_discoverer_t):plibvlc_event_manager_t; cdecl;
- libvlc_media_discoverer_is_running : function(p_mdis:Plibvlc_media_discoverer_t):cint; cdecl;
- libvlc_vlm_release : procedure(p_instance:Plibvlc_instance_t); cdecl;
- libvlc_vlm_add_broadcast : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; psz_input:pcchar; psz_output:pcchar; i_options:cint;
- ppsz_options:Ppcchar; b_enabled:cint; b_loop:cint):cint; cdecl;
- libvlc_vlm_add_vod : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; psz_input:pcchar; i_options:cint; ppsz_options:Ppcchar;
- b_enabled:cint; psz_mux:pcchar):cint; cdecl;
- libvlc_vlm_del_media : function(p_instance:Plibvlc_instance_t; psz_name:pcchar):cint; cdecl;
- libvlc_vlm_set_enabled : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; b_enabled:cint):cint; cdecl;
- libvlc_vlm_set_output : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; psz_output:pcchar):cint; cdecl;
- libvlc_vlm_set_input : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; psz_input:pcchar):cint; cdecl;
- libvlc_vlm_add_input : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; psz_input:pcchar):cint; cdecl;
- libvlc_vlm_set_loop : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; b_loop:cint):cint; cdecl;
- libvlc_vlm_set_mux : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; psz_mux:pcchar):cint; cdecl;
- libvlc_vlm_change_media : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; psz_input:pcchar; psz_output:pcchar; i_options:cint;
- ppsz_options:Ppcchar; b_enabled:cint; b_loop:cint):cint; cdecl;
- libvlc_vlm_play_media : function(p_instance:Plibvlc_instance_t; psz_name:pcchar):cint; cdecl;
- libvlc_vlm_stop_media : function(p_instance:Plibvlc_instance_t; psz_name:pcchar):cint; cdecl;
- libvlc_vlm_pause_media : function(p_instance:Plibvlc_instance_t; psz_name:pcchar):cint; cdecl;
- libvlc_vlm_seek_media : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; f_percentage:cfloat):cint; cdecl;
- libvlc_vlm_show_media : function(p_instance:Plibvlc_instance_t; psz_name:pcchar):pcchar; cdecl;
- libvlc_vlm_get_media_instance_position : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; i_instance:cint):cfloat; cdecl;
- libvlc_vlm_get_media_instance_time : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; i_instance:cint):cint; cdecl;
- libvlc_vlm_get_media_instance_length : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; i_instance:cint):cint; cdecl;
- libvlc_vlm_get_media_instance_rate : function(p_instance:Plibvlc_instance_t; psz_name:pcchar; i_instance:cint):cint; cdecl;
- libvlc_vlm_get_event_manager : function(p_instance:Plibvlc_instance_t):plibvlc_event_manager_t; cdecl;
- libvlc_playlist_play : procedure(p_instance:Plibvlc_instance_t; i_id:cint; i_options:cint; ppsz_options:Ppcchar); cdecl;
- Procedure Freelibvlc;
- Procedure Loadlibvlc(lib : AnsiString; CheckProcNames : Boolean = False);
- {$IFDEF WINDOWS}
- function GetVLCLibPath: String;
- {$ENDIF WINDOWS}
- implementation
- {$IFDEF FPC_DOTTEDUNITS}
- uses
- System.SysUtils,
- {$IFDEF Windows}
- WinApi.Windows,
- {$ENDIF}
- System.DynLibs;
- {$ELSE FPC_DOTTEDUNITS}
- uses
- SysUtils,
- {$IFDEF WINDOWS}
- windows,
- {$ENDIF}
- dynlibs;
- {$ENDIF FPC_DOTTEDUNITS}
- var
- hlib : tlibhandle;
- {$IFDEF WINDOWS}
- hclib : tlibhandle;
- {$ENDIF}
- LibRefCount : Integer;
- procedure Freelibvlc;
- begin
- if (LibRefCount>0) then
- Dec(LibRefCount);
- if LibRefCount>0 then
- exit;
- FreeLibrary(hlib);
- hlib:=NilHandle;
- {$IFDEF WINDOWS}
- FreeLibrary(hclib);
- hclib:=NilHandle;
- {$ENDIF}
- libvlc_errmsg:=nil;
- libvlc_clearerr:=nil;
- libvlc_printerr:=nil;
- libvlc_new:=nil;
- libvlc_release:=nil;
- libvlc_retain:=nil;
- libvlc_add_intf:=nil;
- libvlc_set_exit_handler:=nil;
- libvlc_wait:=nil;
- libvlc_set_user_agent:=nil;
- libvlc_get_version:=nil;
- libvlc_get_compiler:=nil;
- libvlc_get_changeset:=nil;
- libvlc_free:=nil;
- libvlc_event_attach:=nil;
- libvlc_event_detach:=nil;
- libvlc_event_type_name:=nil;
- libvlc_get_log_verbosity:=nil;
- libvlc_set_log_verbosity:=nil;
- libvlc_log_open:=nil;
- libvlc_log_close:=nil;
- libvlc_log_count:=nil;
- libvlc_log_clear:=nil;
- libvlc_log_get_iterator:=nil;
- libvlc_log_iterator_free:=nil;
- libvlc_log_iterator_has_next:=nil;
- libvlc_log_iterator_next:=nil;
- libvlc_module_description_list_release:=nil;
- libvlc_audio_filter_list_get:=nil;
- libvlc_video_filter_list_get:=nil;
- libvlc_clock:=nil;
- libvlc_media_new_location:=nil;
- libvlc_media_new_path:=nil;
- libvlc_media_new_fd:=nil;
- libvlc_media_new_as_node:=nil;
- libvlc_media_add_option:=nil;
- libvlc_media_add_option_flag:=nil;
- libvlc_media_retain:=nil;
- libvlc_media_release:=nil;
- libvlc_media_get_mrl:=nil;
- libvlc_media_duplicate:=nil;
- libvlc_media_get_meta:=nil;
- libvlc_media_set_meta:=nil;
- libvlc_media_save_meta:=nil;
- libvlc_media_get_state:=nil;
- libvlc_media_get_stats:=nil;
- libvlc_media_subitems:=nil;
- libvlc_media_event_manager:=nil;
- libvlc_media_get_duration:=nil;
- libvlc_media_parse:=nil;
- libvlc_media_parse_async:=nil;
- libvlc_media_is_parsed:=nil;
- libvlc_media_set_user_data:=nil;
- libvlc_media_get_user_data:=nil;
- libvlc_media_get_tracks_info:=nil;
- libvlc_media_player_new:=nil;
- libvlc_media_player_new_from_media:=nil;
- libvlc_media_player_release:=nil;
- libvlc_media_player_retain:=nil;
- libvlc_media_player_set_media:=nil;
- libvlc_media_player_get_media:=nil;
- libvlc_media_player_event_manager:=nil;
- libvlc_media_player_is_playing:=nil;
- libvlc_media_player_play:=nil;
- libvlc_media_player_set_pause:=nil;
- libvlc_media_player_pause:=nil;
- libvlc_media_player_stop:=nil;
- libvlc_video_set_callbacks:=nil;
- libvlc_video_set_format:=nil;
- libvlc_video_set_format_callbacks:=nil;
- libvlc_media_player_set_nsobject:=nil;
- libvlc_media_player_get_nsobject:=nil;
- libvlc_media_player_set_agl:=nil;
- libvlc_media_player_get_agl:=nil;
- libvlc_media_player_set_xwindow:=nil;
- libvlc_media_player_get_xwindow:=nil;
- libvlc_media_player_set_hwnd:=nil;
- libvlc_media_player_get_hwnd:=nil;
- libvlc_audio_set_callbacks:=nil;
- libvlc_audio_set_volume_callback:=nil;
- libvlc_audio_set_format_callbacks:=nil;
- libvlc_audio_set_format:=nil;
- libvlc_media_player_get_length:=nil;
- libvlc_media_player_get_time:=nil;
- libvlc_media_player_set_time:=nil;
- libvlc_media_player_get_position:=nil;
- libvlc_media_player_set_position:=nil;
- libvlc_media_player_set_chapter:=nil;
- libvlc_media_player_get_chapter:=nil;
- libvlc_media_player_get_chapter_count:=nil;
- libvlc_media_player_will_play:=nil;
- libvlc_media_player_get_chapter_count_for_title:=nil;
- libvlc_media_player_set_title:=nil;
- libvlc_media_player_get_title:=nil;
- libvlc_media_player_get_title_count:=nil;
- libvlc_media_player_previous_chapter:=nil;
- libvlc_media_player_next_chapter:=nil;
- libvlc_media_player_get_rate:=nil;
- libvlc_media_player_set_rate:=nil;
- libvlc_media_player_get_state:=nil;
- libvlc_media_player_get_fps:=nil;
- libvlc_media_player_has_vout:=nil;
- libvlc_media_player_is_seekable:=nil;
- libvlc_media_player_can_pause:=nil;
- libvlc_media_player_next_frame:=nil;
- libvlc_media_player_navigate:=nil;
- libvlc_track_description_list_release:=nil;
- libvlc_track_description_release:=nil;
- libvlc_toggle_fullscreen:=nil;
- libvlc_set_fullscreen:=nil;
- libvlc_get_fullscreen:=nil;
- libvlc_video_set_key_input:=nil;
- libvlc_video_set_mouse_input:=nil;
- libvlc_video_get_size:=nil;
- libvlc_video_get_height:=nil;
- libvlc_video_get_width:=nil;
- libvlc_video_get_cursor:=nil;
- libvlc_video_get_scale:=nil;
- libvlc_video_set_scale:=nil;
- libvlc_video_get_aspect_ratio:=nil;
- libvlc_video_set_aspect_ratio:=nil;
- libvlc_video_get_spu:=nil;
- libvlc_video_get_spu_count:=nil;
- libvlc_video_get_spu_description:=nil;
- libvlc_video_set_spu:=nil;
- libvlc_video_set_subtitle_file:=nil;
- libvlc_video_get_spu_delay:=nil;
- libvlc_video_set_spu_delay:=nil;
- libvlc_video_get_title_description:=nil;
- libvlc_video_get_chapter_description:=nil;
- libvlc_video_get_crop_geometry:=nil;
- libvlc_video_set_crop_geometry:=nil;
- libvlc_video_get_teletext:=nil;
- libvlc_video_set_teletext:=nil;
- libvlc_toggle_teletext:=nil;
- libvlc_video_get_track_count:=nil;
- libvlc_video_get_track_description:=nil;
- libvlc_video_get_track:=nil;
- libvlc_video_set_track:=nil;
- libvlc_video_take_snapshot:=nil;
- libvlc_video_set_deinterlace:=nil;
- libvlc_video_get_marquee_int:=nil;
- libvlc_video_get_marquee_string:=nil;
- libvlc_video_set_marquee_int:=nil;
- libvlc_video_set_marquee_string:=nil;
- libvlc_video_get_logo_int:=nil;
- libvlc_video_set_logo_int:=nil;
- libvlc_video_set_logo_string:=nil;
- libvlc_video_get_adjust_int:=nil;
- libvlc_video_set_adjust_int:=nil;
- libvlc_video_get_adjust_float:=nil;
- libvlc_video_set_adjust_float:=nil;
- libvlc_audio_output_list_get:=nil;
- libvlc_audio_output_list_release:=nil;
- libvlc_audio_output_set:=nil;
- libvlc_audio_output_device_count:=nil;
- libvlc_audio_output_device_longname:=nil;
- libvlc_audio_output_device_id:=nil;
- libvlc_audio_output_device_set:=nil;
- libvlc_audio_output_get_device_type:=nil;
- libvlc_audio_output_set_device_type:=nil;
- libvlc_audio_toggle_mute:=nil;
- libvlc_audio_get_mute:=nil;
- libvlc_audio_set_mute:=nil;
- libvlc_audio_get_volume:=nil;
- libvlc_audio_set_volume:=nil;
- libvlc_audio_get_track_count:=nil;
- libvlc_audio_get_track_description:=nil;
- libvlc_audio_get_track:=nil;
- libvlc_audio_set_track:=nil;
- libvlc_audio_get_channel:=nil;
- libvlc_audio_set_channel:=nil;
- libvlc_audio_get_delay:=nil;
- libvlc_audio_set_delay:=nil;
- libvlc_media_list_new:=nil;
- libvlc_media_list_release:=nil;
- libvlc_media_list_retain:=nil;
- libvlc_media_list_add_file_content:=nil;
- libvlc_media_list_set_media:=nil;
- libvlc_media_list_media:=nil;
- libvlc_media_list_add_media:=nil;
- libvlc_media_list_insert_media:=nil;
- libvlc_media_list_remove_index:=nil;
- libvlc_media_list_count:=nil;
- libvlc_media_list_item_at_index:=nil;
- libvlc_media_list_index_of_item:=nil;
- libvlc_media_list_is_readonly:=nil;
- libvlc_media_list_lock:=nil;
- libvlc_media_list_unlock:=nil;
- libvlc_media_list_event_manager:=nil;
- libvlc_media_list_player_new:=nil;
- libvlc_media_list_player_release:=nil;
- libvlc_media_list_player_retain:=nil;
- libvlc_media_list_player_event_manager:=nil;
- libvlc_media_list_player_set_media_player:=nil;
- libvlc_media_list_player_set_media_list:=nil;
- libvlc_media_list_player_play:=nil;
- libvlc_media_list_player_pause:=nil;
- libvlc_media_list_player_is_playing:=nil;
- libvlc_media_list_player_get_state:=nil;
- libvlc_media_list_player_play_item_at_index:=nil;
- libvlc_media_list_player_play_item:=nil;
- libvlc_media_list_player_stop:=nil;
- libvlc_media_list_player_next:=nil;
- libvlc_media_list_player_previous:=nil;
- libvlc_media_list_player_set_playback_mode:=nil;
- libvlc_media_library_new:=nil;
- libvlc_media_library_release:=nil;
- libvlc_media_library_retain:=nil;
- libvlc_media_library_load:=nil;
- libvlc_media_library_media_list:=nil;
- libvlc_media_discoverer_new_from_name:=nil;
- libvlc_media_discoverer_release:=nil;
- libvlc_media_discoverer_localized_name:=nil;
- libvlc_media_discoverer_media_list:=nil;
- libvlc_media_discoverer_event_manager:=nil;
- libvlc_media_discoverer_is_running:=nil;
- libvlc_vlm_release:=nil;
- libvlc_vlm_add_broadcast:=nil;
- libvlc_vlm_add_vod:=nil;
- libvlc_vlm_del_media:=nil;
- libvlc_vlm_set_enabled:=nil;
- libvlc_vlm_set_output:=nil;
- libvlc_vlm_set_input:=nil;
- libvlc_vlm_add_input:=nil;
- libvlc_vlm_set_loop:=nil;
- libvlc_vlm_set_mux:=nil;
- libvlc_vlm_change_media:=nil;
- libvlc_vlm_play_media:=nil;
- libvlc_vlm_stop_media:=nil;
- libvlc_vlm_pause_media:=nil;
- libvlc_vlm_seek_media:=nil;
- libvlc_vlm_show_media:=nil;
- libvlc_vlm_get_media_instance_position:=nil;
- libvlc_vlm_get_media_instance_time:=nil;
- libvlc_vlm_get_media_instance_length:=nil;
- libvlc_vlm_get_media_instance_rate:=nil;
- libvlc_vlm_get_event_manager:=nil;
- libvlc_playlist_play:=nil;
- end;
- {$IFDEF WINDOWS}
- function GetVLCLibPath: String;
- var
- Handle: HKEY;
- RegType: Integer;
- DataSize: Cardinal;
- Key: PWideChar;
- res: WideString;
- begin
- Result := '';
- try
- Key := 'Software\VideoLAN\VLC';
- if RegOpenKeyExW(HKEY_LOCAL_MACHINE, Key, 0, KEY_READ, Handle) = ERROR_SUCCESS then
- begin
- if RegQueryValueExW(Handle, 'InstallDir', nil, @RegType, nil, @DataSize) = ERROR_SUCCESS then
- begin
- SetLength(res, DataSize div 2);
- RegQueryValueExW(Handle, 'InstallDir', nil, @RegType, PByte(@res[1]), @DataSize);
- res[DataSize div 2] := '\';
- end;
- RegCloseKey(Handle);
- Result := UTF8Encode(res);
- end;
- except
- // Ignore errors.
- end;
- end;
- {$ENDIF}
- Procedure Loadlibvlc(lib : AnsiString; CheckProcNames : Boolean = False);
- Function GetProcAddress(h : TLibHandle; Name : AnsiString) : Pointer;
-
- begin
- Result:={$IFDEF FPC_DOTTEDUNITS}System.{$ENDIF}DynLibs.GetProcAddress(h,Name);
- If (Result=Nil) and CheckProcNames then
- raise Exception.CreateFmt('Could not find procedure address: %s ',[Name]);
- end;
-
- Procedure EM(FN : String);
-
- begin
- {$ifndef VER2_6}
- Raise Exception.CreateFmt('Could not load library "%s": %s',[FN,GetLoadErrorStr]);
- {$else}
- raise Exception.CreateFmt('Could not load library "%s"',[FN]);
- {$endif}
- end;
- Function TryLoadLib(ALib : String) : TLibHandle;
- // On Windows, the vlccore lib must be loaded first.
- // If it is not in the PATH then this will fail when specifying an arbitrary path.
- // So we load it explicitly from the same directory first
- {$IFDEF WINDOWS}
- Var
- ADir : String;
- {$endif}
- begin
- {$IFDEF WINDOWS}
- Result:=NilHandle;
- ADir:=ExtractFilePath(ALib);
- if ADir<>'' then
- ADir:=IncludeTrailingPathDelimiter(ADir);
- hclib:=LoadLibrary(ADir+corelibname);
- if (HCLib<>Nilhandle) then
- {$ENDIF}
- Result:=LoadLibrary(ALib);
- end;
- {$IFDEF WINDOWS}
- Var
- D : String;
- {$endif}
- begin
- if (hLib<>NilHandle) then
- begin
- Inc(LibRefCount);
- Exit;
- end;
- hlib:=TryLoadLib(lib);
- {$IFDEF WINDOWS}
- // MVC: This automatism is highly questionable; The end user should in fact determine the library.
- if (hlib=NilHandle) then
- begin
- D:=ExtractFilePath(lib);
- // Try default name in same directiory.
- hlib:=TryLoadLib(d+libname);
- if (hLib=NilHandle) and (d='') then
- begin
- // No directory specified, try default name in installation directory.
- if (DefaultlibPath='') then
- DefaultLibPath:=GetVLCLibPath;
- if (DefaultLibPath<>'') then
- hLib:=TryLoadLib(IncludeTrailingPathDelimiter(DefaultlibPath)+libname);
- end;
- end;
- {$endif}
- if (hLib=NilHandle) then
- EM(Lib);
- Inc(LibRefCount);
- pointer(libvlc_errmsg):=GetProcAddress(hlib,'libvlc_errmsg');
- pointer(libvlc_clearerr):=GetProcAddress(hlib,'libvlc_clearerr');
- pointer(libvlc_printerr):=GetProcAddress(hlib,'libvlc_printerr');
- pointer(libvlc_new):=GetProcAddress(hlib,'libvlc_new');
- pointer(libvlc_release):=GetProcAddress(hlib,'libvlc_release');
- pointer(libvlc_retain):=GetProcAddress(hlib,'libvlc_retain');
- pointer(libvlc_add_intf):=GetProcAddress(hlib,'libvlc_add_intf');
- pointer(libvlc_set_exit_handler):=GetProcAddress(hlib,'libvlc_set_exit_handler');
- pointer(libvlc_wait):=GetProcAddress(hlib,'libvlc_wait');
- pointer(libvlc_set_user_agent):=GetProcAddress(hlib,'libvlc_set_user_agent');
- pointer(libvlc_get_version):=GetProcAddress(hlib,'libvlc_get_version');
- pointer(libvlc_get_compiler):=GetProcAddress(hlib,'libvlc_get_compiler');
- pointer(libvlc_get_changeset):=GetProcAddress(hlib,'libvlc_get_changeset');
- pointer(libvlc_free):=GetProcAddress(hlib,'libvlc_free');
- pointer(libvlc_event_attach):=GetProcAddress(hlib,'libvlc_event_attach');
- pointer(libvlc_event_detach):=GetProcAddress(hlib,'libvlc_event_detach');
- pointer(libvlc_event_type_name):=GetProcAddress(hlib,'libvlc_event_type_name');
- pointer(libvlc_get_log_verbosity):=GetProcAddress(hlib,'libvlc_get_log_verbosity');
- pointer(libvlc_set_log_verbosity):=GetProcAddress(hlib,'libvlc_set_log_verbosity');
- pointer(libvlc_log_open):=GetProcAddress(hlib,'libvlc_log_open');
- pointer(libvlc_log_close):=GetProcAddress(hlib,'libvlc_log_close');
- pointer(libvlc_log_count):=GetProcAddress(hlib,'libvlc_log_count');
- pointer(libvlc_log_clear):=GetProcAddress(hlib,'libvlc_log_clear');
- pointer(libvlc_log_get_iterator):=GetProcAddress(hlib,'libvlc_log_get_iterator');
- pointer(libvlc_log_iterator_free):=GetProcAddress(hlib,'libvlc_log_iterator_free');
- pointer(libvlc_log_iterator_has_next):=GetProcAddress(hlib,'libvlc_log_iterator_has_next');
- pointer(libvlc_log_iterator_next):=GetProcAddress(hlib,'libvlc_log_iterator_next');
- pointer(libvlc_module_description_list_release):=GetProcAddress(hlib,'libvlc_module_description_list_release');
- pointer(libvlc_audio_filter_list_get):=GetProcAddress(hlib,'libvlc_audio_filter_list_get');
- pointer(libvlc_video_filter_list_get):=GetProcAddress(hlib,'libvlc_video_filter_list_get');
- pointer(libvlc_clock):=GetProcAddress(hlib,'libvlc_clock');
- pointer(libvlc_media_new_location):=GetProcAddress(hlib,'libvlc_media_new_location');
- pointer(libvlc_media_new_path):=GetProcAddress(hlib,'libvlc_media_new_path');
- pointer(libvlc_media_new_fd):=GetProcAddress(hlib,'libvlc_media_new_fd');
- pointer(libvlc_media_new_as_node):=GetProcAddress(hlib,'libvlc_media_new_as_node');
- pointer(libvlc_media_add_option):=GetProcAddress(hlib,'libvlc_media_add_option');
- pointer(libvlc_media_add_option_flag):=GetProcAddress(hlib,'libvlc_media_add_option_flag');
- pointer(libvlc_media_retain):=GetProcAddress(hlib,'libvlc_media_retain');
- pointer(libvlc_media_release):=GetProcAddress(hlib,'libvlc_media_release');
- pointer(libvlc_media_get_mrl):=GetProcAddress(hlib,'libvlc_media_get_mrl');
- pointer(libvlc_media_duplicate):=GetProcAddress(hlib,'libvlc_media_duplicate');
- pointer(libvlc_media_get_meta):=GetProcAddress(hlib,'libvlc_media_get_meta');
- pointer(libvlc_media_set_meta):=GetProcAddress(hlib,'libvlc_media_set_meta');
- pointer(libvlc_media_save_meta):=GetProcAddress(hlib,'libvlc_media_save_meta');
- pointer(libvlc_media_get_state):=GetProcAddress(hlib,'libvlc_media_get_state');
- pointer(libvlc_media_get_stats):=GetProcAddress(hlib,'libvlc_media_get_stats');
- pointer(libvlc_media_subitems):=GetProcAddress(hlib,'libvlc_media_subitems');
- pointer(libvlc_media_event_manager):=GetProcAddress(hlib,'libvlc_media_event_manager');
- pointer(libvlc_media_get_duration):=GetProcAddress(hlib,'libvlc_media_get_duration');
- pointer(libvlc_media_parse):=GetProcAddress(hlib,'libvlc_media_parse');
- pointer(libvlc_media_parse_async):=GetProcAddress(hlib,'libvlc_media_parse_async');
- pointer(libvlc_media_is_parsed):=GetProcAddress(hlib,'libvlc_media_is_parsed');
- pointer(libvlc_media_set_user_data):=GetProcAddress(hlib,'libvlc_media_set_user_data');
- pointer(libvlc_media_get_user_data):=GetProcAddress(hlib,'libvlc_media_get_user_data');
- pointer(libvlc_media_get_tracks_info):=GetProcAddress(hlib,'libvlc_media_get_tracks_info');
- pointer(libvlc_media_player_new):=GetProcAddress(hlib,'libvlc_media_player_new');
- pointer(libvlc_media_player_new_from_media):=GetProcAddress(hlib,'libvlc_media_player_new_from_media');
- pointer(libvlc_media_player_release):=GetProcAddress(hlib,'libvlc_media_player_release');
- pointer(libvlc_media_player_retain):=GetProcAddress(hlib,'libvlc_media_player_retain');
- pointer(libvlc_media_player_set_media):=GetProcAddress(hlib,'libvlc_media_player_set_media');
- pointer(libvlc_media_player_get_media):=GetProcAddress(hlib,'libvlc_media_player_get_media');
- pointer(libvlc_media_player_event_manager):=GetProcAddress(hlib,'libvlc_media_player_event_manager');
- pointer(libvlc_media_player_is_playing):=GetProcAddress(hlib,'libvlc_media_player_is_playing');
- pointer(libvlc_media_player_play):=GetProcAddress(hlib,'libvlc_media_player_play');
- pointer(libvlc_media_player_set_pause):=GetProcAddress(hlib,'libvlc_media_player_set_pause');
- pointer(libvlc_media_player_pause):=GetProcAddress(hlib,'libvlc_media_player_pause');
- pointer(libvlc_media_player_stop):=GetProcAddress(hlib,'libvlc_media_player_stop');
- pointer(libvlc_video_set_callbacks):=GetProcAddress(hlib,'libvlc_video_set_callbacks');
- pointer(libvlc_video_set_format):=GetProcAddress(hlib,'libvlc_video_set_format');
- pointer(libvlc_video_set_format_callbacks):=GetProcAddress(hlib,'libvlc_video_set_format_callbacks');
- pointer(libvlc_media_player_set_nsobject):=GetProcAddress(hlib,'libvlc_media_player_set_nsobject');
- pointer(libvlc_media_player_get_nsobject):=GetProcAddress(hlib,'libvlc_media_player_get_nsobject');
- pointer(libvlc_media_player_set_agl):=GetProcAddress(hlib,'libvlc_media_player_set_agl');
- pointer(libvlc_media_player_get_agl):=GetProcAddress(hlib,'libvlc_media_player_get_agl');
- pointer(libvlc_media_player_set_xwindow):=GetProcAddress(hlib,'libvlc_media_player_set_xwindow');
- pointer(libvlc_media_player_get_xwindow):=GetProcAddress(hlib,'libvlc_media_player_get_xwindow');
- pointer(libvlc_media_player_set_hwnd):=GetProcAddress(hlib,'libvlc_media_player_set_hwnd');
- pointer(libvlc_media_player_get_hwnd):=GetProcAddress(hlib,'libvlc_media_player_get_hwnd');
- pointer(libvlc_audio_set_callbacks):=GetProcAddress(hlib,'libvlc_audio_set_callbacks');
- pointer(libvlc_audio_set_volume_callback):=GetProcAddress(hlib,'libvlc_audio_set_volume_callback');
- pointer(libvlc_audio_set_format_callbacks):=GetProcAddress(hlib,'libvlc_audio_set_format_callbacks');
- pointer(libvlc_audio_set_format):=GetProcAddress(hlib,'libvlc_audio_set_format');
- pointer(libvlc_media_player_get_length):=GetProcAddress(hlib,'libvlc_media_player_get_length');
- pointer(libvlc_media_player_get_time):=GetProcAddress(hlib,'libvlc_media_player_get_time');
- pointer(libvlc_media_player_set_time):=GetProcAddress(hlib,'libvlc_media_player_set_time');
- pointer(libvlc_media_player_get_position):=GetProcAddress(hlib,'libvlc_media_player_get_position');
- pointer(libvlc_media_player_set_position):=GetProcAddress(hlib,'libvlc_media_player_set_position');
- pointer(libvlc_media_player_set_chapter):=GetProcAddress(hlib,'libvlc_media_player_set_chapter');
- pointer(libvlc_media_player_get_chapter):=GetProcAddress(hlib,'libvlc_media_player_get_chapter');
- pointer(libvlc_media_player_get_chapter_count):=GetProcAddress(hlib,'libvlc_media_player_get_chapter_count');
- pointer(libvlc_media_player_will_play):=GetProcAddress(hlib,'libvlc_media_player_will_play');
- pointer(libvlc_media_player_get_chapter_count_for_title):=GetProcAddress(hlib,'libvlc_media_player_get_chapter_count_for_title');
- pointer(libvlc_media_player_set_title):=GetProcAddress(hlib,'libvlc_media_player_set_title');
- pointer(libvlc_media_player_get_title):=GetProcAddress(hlib,'libvlc_media_player_get_title');
- pointer(libvlc_media_player_get_title_count):=GetProcAddress(hlib,'libvlc_media_player_get_title_count');
- pointer(libvlc_media_player_previous_chapter):=GetProcAddress(hlib,'libvlc_media_player_previous_chapter');
- pointer(libvlc_media_player_next_chapter):=GetProcAddress(hlib,'libvlc_media_player_next_chapter');
- pointer(libvlc_media_player_get_rate):=GetProcAddress(hlib,'libvlc_media_player_get_rate');
- pointer(libvlc_media_player_set_rate):=GetProcAddress(hlib,'libvlc_media_player_set_rate');
- pointer(libvlc_media_player_get_state):=GetProcAddress(hlib,'libvlc_media_player_get_state');
- pointer(libvlc_media_player_get_fps):=GetProcAddress(hlib,'libvlc_media_player_get_fps');
- pointer(libvlc_media_player_has_vout):=GetProcAddress(hlib,'libvlc_media_player_has_vout');
- pointer(libvlc_media_player_is_seekable):=GetProcAddress(hlib,'libvlc_media_player_is_seekable');
- pointer(libvlc_media_player_can_pause):=GetProcAddress(hlib,'libvlc_media_player_can_pause');
- pointer(libvlc_media_player_next_frame):=GetProcAddress(hlib,'libvlc_media_player_next_frame');
- pointer(libvlc_media_player_navigate):=GetProcAddress(hlib,'libvlc_media_player_navigate');
- pointer(libvlc_track_description_list_release):=GetProcAddress(hlib,'libvlc_track_description_list_release');
- pointer(libvlc_track_description_release):=GetProcAddress(hlib,'libvlc_track_description_release');
- pointer(libvlc_toggle_fullscreen):=GetProcAddress(hlib,'libvlc_toggle_fullscreen');
- pointer(libvlc_set_fullscreen):=GetProcAddress(hlib,'libvlc_set_fullscreen');
- pointer(libvlc_get_fullscreen):=GetProcAddress(hlib,'libvlc_get_fullscreen');
- pointer(libvlc_video_set_key_input):=GetProcAddress(hlib,'libvlc_video_set_key_input');
- pointer(libvlc_video_set_mouse_input):=GetProcAddress(hlib,'libvlc_video_set_mouse_input');
- pointer(libvlc_video_get_size):=GetProcAddress(hlib,'libvlc_video_get_size');
- pointer(libvlc_video_get_height):=GetProcAddress(hlib,'libvlc_video_get_height');
- pointer(libvlc_video_get_width):=GetProcAddress(hlib,'libvlc_video_get_width');
- pointer(libvlc_video_get_cursor):=GetProcAddress(hlib,'libvlc_video_get_cursor');
- pointer(libvlc_video_get_scale):=GetProcAddress(hlib,'libvlc_video_get_scale');
- pointer(libvlc_video_set_scale):=GetProcAddress(hlib,'libvlc_video_set_scale');
- pointer(libvlc_video_get_aspect_ratio):=GetProcAddress(hlib,'libvlc_video_get_aspect_ratio');
- pointer(libvlc_video_set_aspect_ratio):=GetProcAddress(hlib,'libvlc_video_set_aspect_ratio');
- pointer(libvlc_video_get_spu):=GetProcAddress(hlib,'libvlc_video_get_spu');
- pointer(libvlc_video_get_spu_count):=GetProcAddress(hlib,'libvlc_video_get_spu_count');
- pointer(libvlc_video_get_spu_description):=GetProcAddress(hlib,'libvlc_video_get_spu_description');
- pointer(libvlc_video_set_spu):=GetProcAddress(hlib,'libvlc_video_set_spu');
- pointer(libvlc_video_set_subtitle_file):=GetProcAddress(hlib,'libvlc_video_set_subtitle_file');
- pointer(libvlc_video_get_spu_delay):=GetProcAddress(hlib,'libvlc_video_get_spu_delay');
- pointer(libvlc_video_set_spu_delay):=GetProcAddress(hlib,'libvlc_video_set_spu_delay');
- pointer(libvlc_video_get_title_description):=GetProcAddress(hlib,'libvlc_video_get_title_description');
- pointer(libvlc_video_get_chapter_description):=GetProcAddress(hlib,'libvlc_video_get_chapter_description');
- pointer(libvlc_video_get_crop_geometry):=GetProcAddress(hlib,'libvlc_video_get_crop_geometry');
- pointer(libvlc_video_set_crop_geometry):=GetProcAddress(hlib,'libvlc_video_set_crop_geometry');
- pointer(libvlc_video_get_teletext):=GetProcAddress(hlib,'libvlc_video_get_teletext');
- pointer(libvlc_video_set_teletext):=GetProcAddress(hlib,'libvlc_video_set_teletext');
- pointer(libvlc_toggle_teletext):=GetProcAddress(hlib,'libvlc_toggle_teletext');
- pointer(libvlc_video_get_track_count):=GetProcAddress(hlib,'libvlc_video_get_track_count');
- pointer(libvlc_video_get_track_description):=GetProcAddress(hlib,'libvlc_video_get_track_description');
- pointer(libvlc_video_get_track):=GetProcAddress(hlib,'libvlc_video_get_track');
- pointer(libvlc_video_set_track):=GetProcAddress(hlib,'libvlc_video_set_track');
- pointer(libvlc_video_take_snapshot):=GetProcAddress(hlib,'libvlc_video_take_snapshot');
- pointer(libvlc_video_set_deinterlace):=GetProcAddress(hlib,'libvlc_video_set_deinterlace');
- pointer(libvlc_video_get_marquee_int):=GetProcAddress(hlib,'libvlc_video_get_marquee_int');
- pointer(libvlc_video_get_marquee_string):=GetProcAddress(hlib,'libvlc_video_get_marquee_string');
- pointer(libvlc_video_set_marquee_int):=GetProcAddress(hlib,'libvlc_video_set_marquee_int');
- pointer(libvlc_video_set_marquee_string):=GetProcAddress(hlib,'libvlc_video_set_marquee_string');
- pointer(libvlc_video_get_logo_int):=GetProcAddress(hlib,'libvlc_video_get_logo_int');
- pointer(libvlc_video_set_logo_int):=GetProcAddress(hlib,'libvlc_video_set_logo_int');
- pointer(libvlc_video_set_logo_string):=GetProcAddress(hlib,'libvlc_video_set_logo_string');
- pointer(libvlc_video_get_adjust_int):=GetProcAddress(hlib,'libvlc_video_get_adjust_int');
- pointer(libvlc_video_set_adjust_int):=GetProcAddress(hlib,'libvlc_video_set_adjust_int');
- pointer(libvlc_video_get_adjust_float):=GetProcAddress(hlib,'libvlc_video_get_adjust_float');
- pointer(libvlc_video_set_adjust_float):=GetProcAddress(hlib,'libvlc_video_set_adjust_float');
- pointer(libvlc_audio_output_list_get):=GetProcAddress(hlib,'libvlc_audio_output_list_get');
- pointer(libvlc_audio_output_list_release):=GetProcAddress(hlib,'libvlc_audio_output_list_release');
- pointer(libvlc_audio_output_set):=GetProcAddress(hlib,'libvlc_audio_output_set');
- pointer(libvlc_audio_output_device_count):=GetProcAddress(hlib,'libvlc_audio_output_device_count');
- pointer(libvlc_audio_output_device_longname):=GetProcAddress(hlib,'libvlc_audio_output_device_longname');
- pointer(libvlc_audio_output_device_id):=GetProcAddress(hlib,'libvlc_audio_output_device_id');
- pointer(libvlc_audio_output_device_set):=GetProcAddress(hlib,'libvlc_audio_output_device_set');
- pointer(libvlc_audio_output_get_device_type):=GetProcAddress(hlib,'libvlc_audio_output_get_device_type');
- pointer(libvlc_audio_output_set_device_type):=GetProcAddress(hlib,'libvlc_audio_output_set_device_type');
- pointer(libvlc_audio_toggle_mute):=GetProcAddress(hlib,'libvlc_audio_toggle_mute');
- pointer(libvlc_audio_get_mute):=GetProcAddress(hlib,'libvlc_audio_get_mute');
- pointer(libvlc_audio_set_mute):=GetProcAddress(hlib,'libvlc_audio_set_mute');
- pointer(libvlc_audio_get_volume):=GetProcAddress(hlib,'libvlc_audio_get_volume');
- pointer(libvlc_audio_set_volume):=GetProcAddress(hlib,'libvlc_audio_set_volume');
- pointer(libvlc_audio_get_track_count):=GetProcAddress(hlib,'libvlc_audio_get_track_count');
- pointer(libvlc_audio_get_track_description):=GetProcAddress(hlib,'libvlc_audio_get_track_description');
- pointer(libvlc_audio_get_track):=GetProcAddress(hlib,'libvlc_audio_get_track');
- pointer(libvlc_audio_set_track):=GetProcAddress(hlib,'libvlc_audio_set_track');
- pointer(libvlc_audio_get_channel):=GetProcAddress(hlib,'libvlc_audio_get_channel');
- pointer(libvlc_audio_set_channel):=GetProcAddress(hlib,'libvlc_audio_set_channel');
- pointer(libvlc_audio_get_delay):=GetProcAddress(hlib,'libvlc_audio_get_delay');
- pointer(libvlc_audio_set_delay):=GetProcAddress(hlib,'libvlc_audio_set_delay');
- pointer(libvlc_media_list_new):=GetProcAddress(hlib,'libvlc_media_list_new');
- pointer(libvlc_media_list_release):=GetProcAddress(hlib,'libvlc_media_list_release');
- pointer(libvlc_media_list_retain):=GetProcAddress(hlib,'libvlc_media_list_retain');
- pointer(libvlc_media_list_add_file_content):=GetProcAddress(hlib,'libvlc_media_list_add_file_content');
- pointer(libvlc_media_list_set_media):=GetProcAddress(hlib,'libvlc_media_list_set_media');
- pointer(libvlc_media_list_media):=GetProcAddress(hlib,'libvlc_media_list_media');
- pointer(libvlc_media_list_add_media):=GetProcAddress(hlib,'libvlc_media_list_add_media');
- pointer(libvlc_media_list_insert_media):=GetProcAddress(hlib,'libvlc_media_list_insert_media');
- pointer(libvlc_media_list_remove_index):=GetProcAddress(hlib,'libvlc_media_list_remove_index');
- pointer(libvlc_media_list_count):=GetProcAddress(hlib,'libvlc_media_list_count');
- pointer(libvlc_media_list_item_at_index):=GetProcAddress(hlib,'libvlc_media_list_item_at_index');
- pointer(libvlc_media_list_index_of_item):=GetProcAddress(hlib,'libvlc_media_list_index_of_item');
- pointer(libvlc_media_list_is_readonly):=GetProcAddress(hlib,'libvlc_media_list_is_readonly');
- pointer(libvlc_media_list_lock):=GetProcAddress(hlib,'libvlc_media_list_lock');
- pointer(libvlc_media_list_unlock):=GetProcAddress(hlib,'libvlc_media_list_unlock');
- pointer(libvlc_media_list_event_manager):=GetProcAddress(hlib,'libvlc_media_list_event_manager');
- pointer(libvlc_media_list_player_new):=GetProcAddress(hlib,'libvlc_media_list_player_new');
- pointer(libvlc_media_list_player_release):=GetProcAddress(hlib,'libvlc_media_list_player_release');
- pointer(libvlc_media_list_player_retain):=GetProcAddress(hlib,'libvlc_media_list_player_retain');
- pointer(libvlc_media_list_player_event_manager):=GetProcAddress(hlib,'libvlc_media_list_player_event_manager');
- pointer(libvlc_media_list_player_set_media_player):=GetProcAddress(hlib,'libvlc_media_list_player_set_media_player');
- pointer(libvlc_media_list_player_set_media_list):=GetProcAddress(hlib,'libvlc_media_list_player_set_media_list');
- pointer(libvlc_media_list_player_play):=GetProcAddress(hlib,'libvlc_media_list_player_play');
- pointer(libvlc_media_list_player_pause):=GetProcAddress(hlib,'libvlc_media_list_player_pause');
- pointer(libvlc_media_list_player_is_playing):=GetProcAddress(hlib,'libvlc_media_list_player_is_playing');
- pointer(libvlc_media_list_player_get_state):=GetProcAddress(hlib,'libvlc_media_list_player_get_state');
- pointer(libvlc_media_list_player_play_item_at_index):=GetProcAddress(hlib,'libvlc_media_list_player_play_item_at_index');
- pointer(libvlc_media_list_player_play_item):=GetProcAddress(hlib,'libvlc_media_list_player_play_item');
- pointer(libvlc_media_list_player_stop):=GetProcAddress(hlib,'libvlc_media_list_player_stop');
- pointer(libvlc_media_list_player_next):=GetProcAddress(hlib,'libvlc_media_list_player_next');
- pointer(libvlc_media_list_player_previous):=GetProcAddress(hlib,'libvlc_media_list_player_previous');
- pointer(libvlc_media_list_player_set_playback_mode):=GetProcAddress(hlib,'libvlc_media_list_player_set_playback_mode');
- pointer(libvlc_media_library_new):=GetProcAddress(hlib,'libvlc_media_library_new');
- pointer(libvlc_media_library_release):=GetProcAddress(hlib,'libvlc_media_library_release');
- pointer(libvlc_media_library_retain):=GetProcAddress(hlib,'libvlc_media_library_retain');
- pointer(libvlc_media_library_load):=GetProcAddress(hlib,'libvlc_media_library_load');
- pointer(libvlc_media_library_media_list):=GetProcAddress(hlib,'libvlc_media_library_media_list');
- pointer(libvlc_media_discoverer_new_from_name):=GetProcAddress(hlib,'libvlc_media_discoverer_new_from_name');
- pointer(libvlc_media_discoverer_release):=GetProcAddress(hlib,'libvlc_media_discoverer_release');
- pointer(libvlc_media_discoverer_localized_name):=GetProcAddress(hlib,'libvlc_media_discoverer_localized_name');
- pointer(libvlc_media_discoverer_media_list):=GetProcAddress(hlib,'libvlc_media_discoverer_media_list');
- pointer(libvlc_media_discoverer_event_manager):=GetProcAddress(hlib,'libvlc_media_discoverer_event_manager');
- pointer(libvlc_media_discoverer_is_running):=GetProcAddress(hlib,'libvlc_media_discoverer_is_running');
- pointer(libvlc_vlm_release):=GetProcAddress(hlib,'libvlc_vlm_release');
- pointer(libvlc_vlm_add_broadcast):=GetProcAddress(hlib,'libvlc_vlm_add_broadcast');
- pointer(libvlc_vlm_add_vod):=GetProcAddress(hlib,'libvlc_vlm_add_vod');
- pointer(libvlc_vlm_del_media):=GetProcAddress(hlib,'libvlc_vlm_del_media');
- pointer(libvlc_vlm_set_enabled):=GetProcAddress(hlib,'libvlc_vlm_set_enabled');
- pointer(libvlc_vlm_set_output):=GetProcAddress(hlib,'libvlc_vlm_set_output');
- pointer(libvlc_vlm_set_input):=GetProcAddress(hlib,'libvlc_vlm_set_input');
- pointer(libvlc_vlm_add_input):=GetProcAddress(hlib,'libvlc_vlm_add_input');
- pointer(libvlc_vlm_set_loop):=GetProcAddress(hlib,'libvlc_vlm_set_loop');
- pointer(libvlc_vlm_set_mux):=GetProcAddress(hlib,'libvlc_vlm_set_mux');
- pointer(libvlc_vlm_change_media):=GetProcAddress(hlib,'libvlc_vlm_change_media');
- pointer(libvlc_vlm_play_media):=GetProcAddress(hlib,'libvlc_vlm_play_media');
- pointer(libvlc_vlm_stop_media):=GetProcAddress(hlib,'libvlc_vlm_stop_media');
- pointer(libvlc_vlm_pause_media):=GetProcAddress(hlib,'libvlc_vlm_pause_media');
- pointer(libvlc_vlm_seek_media):=GetProcAddress(hlib,'libvlc_vlm_seek_media');
- pointer(libvlc_vlm_show_media):=GetProcAddress(hlib,'libvlc_vlm_show_media');
- pointer(libvlc_vlm_get_media_instance_position):=GetProcAddress(hlib,'libvlc_vlm_get_media_instance_position');
- pointer(libvlc_vlm_get_media_instance_time):=GetProcAddress(hlib,'libvlc_vlm_get_media_instance_time');
- pointer(libvlc_vlm_get_media_instance_length):=GetProcAddress(hlib,'libvlc_vlm_get_media_instance_length');
- pointer(libvlc_vlm_get_media_instance_rate):=GetProcAddress(hlib,'libvlc_vlm_get_media_instance_rate');
- pointer(libvlc_vlm_get_event_manager):=GetProcAddress(hlib,'libvlc_vlm_get_event_manager');
- pointer(libvlc_playlist_play):=GetProcAddress(hlib,'libvlc_playlist_play');
- end;
- end.
|