PasLibVlc http://prog.olsztyn.pl/paslibvlc/ Library for use VideoLAN player inside Embarcadero Delphi and Lazarus / FreePascal Sat, 25 May 2019 14:32:05 +0200 en daily 1 http://prog.olsztyn.pl/paslibvlc/ Version 3.0.6 http://prog.olsztyn.pl/paslibvlc/#v3-0-6 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v3-0-6 Modify demo sources: avoid to fire OnChange event during updating of the InfoTrackBar position

  reported by Gvinci-Blowfish

    modified procedures:
    
      PasLibVlcPlayer1MediaPlayerLengthChanged(Sender: TObject; time: Int64);
      PasLibVlcPlayer1MediaPlayerTimeChanged(Sender: TObject; time: Int64);
      PlayerMediaPlayerLengthChanged(Sender: TObject; time: Int64);
      PlayerMediaPlayerTimeChanged(Sender: TObject; time: Int64);

Modify Stop procedure

  inspired by Rob Renaud

    modified procedure:

      procedure Stop(const stopTimeOut : Cardinal = 1000);

Binary demos for windows separated from source code:

• Delphi XE10 (2 demos VCL + 2 demos FMX)
• Delphi XE7 (2 demos VCL + 2 demos FMX)
• Delphi 2007 (10 demos VCL)
• Delphi 7 (1 demo VCL)
• Delphi 4 (2 demos VCL)
• Lazarus 2.0.0 - FreePascal 3.0.4 (4 demo LCL)

Please note:

• 32 bit demo require 32 bit libvlc VideoLAN
• 64 bit demo require 64 bit libvlc VideoLAN

Note for Windows XP users:

libwasapi_plugin.dll

require kernel function InitOnceExecuteOnce,

which is availiable on Win Vista and never systems.

]]>
Version 3.0.5 http://prog.olsztyn.pl/paslibvlc/#v3-0-5 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v3-0-5 Fix THandle type for some functions.

Lazarus has several definitions of THandle type (LCLQT5 Linux 64bit):

System.THandle = LongInt;
LCLType.THandle = type PtrUInt;
dynlibs.THandle = PtrInt;

This is no problem when run 32-bit app,
but generate exceptions when run 64-bit app.

Add support for events in FMX Component:

libvlc_MediaPlayerESAdded
libvlc_MediaPlayerESDeleted
libvlc_MediaPlayerESSelected
libvlc_MediaPlayerAudioDevice
libvlc_MediaPlayerChapterChanged
libvlc_RendererDiscovererItemAdded
libvlc_RendererDiscovererItemDeleted

Binary demos for windows separated from source code:

• Delphi XE10 (2 demos VCL + 2 demos FMX)
• Delphi XE7 (2 demos VCL + 2 demos FMX)
• Delphi 2007 (10 demos VCL)
• Delphi 7 (1 demo VCL)
• Delphi 4 (2 demos VCL)
• Lazarus 1.8.4 - FreePascal 3.0.4 (4 demo LCL)

Please note:

• 32 bit demo require 32 bit libvlc VideoLAN
• 64 bit demo require 64 bit libvlc VideoLAN

Note for Windows XP users:

libwasapi_plugin.dll

require kernel function InitOnceExecuteOnce,

which is availiable on Win Vista and never systems.

]]>
Version 3.0.4 http://prog.olsztyn.pl/paslibvlc/#v3-0-4 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v3-0-4 Fix Play declaration for compatible with D4

Fix small bugs in FMX component

Binary demos for windows separated from source code:

• Delphi XE10 (2 demos VCL + 2 demos FMX)
• Delphi XE7 (2 demos VCL + 2 demos FMX)
• Delphi 2007 (10 demos VCL)
• Delphi 7 (1 demo VCL)
• Delphi 4 (2 demos VCL)
• Lazarus 1.8.4 - FreePascal 3.0.4 (4 demo LCL)

Please note:

• 32 bit demo require 32 bit libvlc VideoLAN
• 64 bit demo require 64 bit libvlc VideoLAN

Note for Windows XP users:

libwasapi_plugin.dll

require kernel function InitOnceExecuteOnce,

which is availiable on Win Vista and never systems.

]]>
Version 3.0.3 http://prog.olsztyn.pl/paslibvlc/#v3-0-3 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v3-0-3 Fix resize bug under FPC 1.8.x

  reported by Mukataï Mukatai

    affected procedures:

      procedure WMEraseBkgnd(var msg: ...); message ...;


Fix untyped Dispose bug

  affected procedures:

    procedure libvlc_media_close_cb_stm(mctx : Pointer); cdecl;


Add support for media callbacks

  new procedure:

    procedure Play(stm : TStream, ...); overload;

  • Thanks for Mark Adamson
  
Remove duplicated code

  affected procedures:

    procedure Play (...); overload;
    procedure PlayNormal (...); overload;
    procedure PlayYoutube(...); overload;

Update for compatibility with Fedora


  add new search path /usr/lib64

  function libvlc_media_player_set_evas_object
  is not availiable in VLC release for Fedora

  • Thanks for Jim Lee

Fix read_dec_number bug

  • Thanks for Wortmann Sándor

Extend procedure parameters:

  procedure TPasLibVlcMediaList.Add(mrl : WideString; mediaOptions : array of WideString);

  • Thanks for Wortmann Sándor

Fix PlayYoutube bug

  • Thanks for Ahmet Yeşilçimen

]]>
Version 3.0.2 http://prog.olsztyn.pl/paslibvlc/#v3-0-2 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v3-0-2 More buffers, better FMX stability

  • Thanks for testing to Νίκος Κόρδας

Binary demos for windows separated from source code:

  • Delphi XE10 (2 demos VCL + 2 demos FMX)
  • Delphi XE7 (2 demos VCL + 2 demos FMX)
  • Delphi 2007 (10 demos VCL)
  • Delphi 7 (2 demos VCL)
  • Delphi 4 (2 demos VCL)
  • Lazarus 1.8.2 - FreePascal 3.0.2 (4 demo LCL)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 3.0.1 http://prog.olsztyn.pl/paslibvlc/#v3-0-1 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v3-0-1 Redesign dataflow for better FMX stability

  • Thanks for testing to Νίκος Κόρδας

Include demo source code:

  • Delphi XE10 (2 demos VCL + 2 demos FMX)
  • Delphi XE7 (2 demos VCL + 2 demos FMX)
  • Delphi 2007 (10 demos VCL)
  • Delphi 7 (2 demos VCL)
  • Delphi 4 (2 demos VCL)
  • Lazarus 1.8.2 - FreePascal 3.0.2 (4 demo LCL)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 3.0.0 http://prog.olsztyn.pl/paslibvlc/#v3-0-0 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v3-0-0 Update for compatibility with libvlc 3.0.1

  • Fix video callbacks reported by Νίκος Κόρδας

  • New events:

      libvlc_MediaPlayerESAdded,
      libvlc_MediaPlayerESDeleted,
      libvlc_MediaPlayerESSelected,
      libvlc_MediaPlayerAudioDevice,
      libvlc_MediaPlayerChapterChanged,
      libvlc_RendererDiscovererItemAdded,
      libvlc_RendererDiscovererItemDeleted,

  • New functions:

      libvlc_dialog_set_callbacks
      libvlc_dialog_set_context
      libvlc_dialog_get_context
      libvlc_dialog_post_login
      libvlc_dialog_post_action
      libvlc_dialog_dismiss

      libvlc_renderer_item_hold
      libvlc_renderer_item_release
      libvlc_renderer_item_name
      libvlc_renderer_item_type
      libvlc_renderer_item_icon_uri
      libvlc_renderer_item_flags

      libvlc_renderer_discoverer_new
      libvlc_renderer_discoverer_release
      libvlc_renderer_discoverer_start
      libvlc_renderer_discoverer_stop
      libvlc_renderer_discoverer_event_manager
      libvlc_renderer_discoverer_list_get
      libvlc_renderer_discoverer_list_release

      libvlc_media_new_callbacks(p_inst, open_cb, read_cb, seek_cb, close_cb, opaque);

      libvlc_media_parse_with_options
      libvlc_media_parse_stop
      libvlc_media_get_parsed_status

      libvlc_media_get_codec_description

      libvlc_media_get_type
      libvlc_media_slaves_add
      libvlc_media_slaves_clear
      libvlc_media_slaves_get
      libvlc_media_slaves_release

      libvlc_media_discoverer_new
      libvlc_media_discoverer_start
      libvlc_media_discoverer_stop
      libvlc_media_discoverer_list_get
      libvlc_media_discoverer_list_release

      libvlc_media_list_player_get_media_player
      libvlc_media_list_player_set_pause

      libvlc_media_player_set_renderer
      libvlc_media_player_set_android_context
      libvlc_media_player_set_evas_object
      libvlc_media_player_add_slave

      libvlc_video_new_viewpoint
      libvlc_video_update_viewpoint

      libvlc_media_player_get_full_title_descriptions
      libvlc_title_descriptions_release

      libvlc_media_player_get_full_chapter_descriptions
      libvlc_chapter_descriptions_release

      libvlc_audio_output_device_get

      libvlc_media_player_get_role
      libvlc_media_player_set_role

Include demo source code:

  • Delphi XE10 (2 demos VCL + 2 demos FMX)
  • Delphi XE7 (2 demos VCL + 2 demos FMX)
  • Delphi 2007 (10 demos VCL)
  • Delphi 7 (2 demos VCL)
  • Delphi 4 (2 demos VCL)
  • Lazarus 1.8.0 - FreePascal 3.0.2 (4 demo LCL)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 2.2.9 http://prog.olsztyn.pl/paslibvlc/#v2-2-9 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-2-9 Add support for new compilers:

  • Delphi 10.2.2 Tokyo
  • Lazarus 1.8.0 (FPC 3.0.4).

Better support for FreeBSD11 + FPC:

  • correct THandle => TLibHandle

Extend parameters:

inspired by "Christian Koch"
required to add ":cdda-track=1" as option to the media

affected procedures:

procedure Play (mrl: WideString; mediaOptions : array of WideString; ...); overload;
procedure PlayNormal (mrl: WideString; mediaOptions : array of WideString; ...); overload;
procedure PlayYoutube(mrl: WideString; mediaOptions : array of WideString; ...); overload;

New functions:

function GetVideoSampleAspectRatio(var sar_num, sar_den : LongWord): Boolean; overload;
function GetVideoSampleAspectRatio() : Single; overload;

Include demo source code:

  • Delphi XE10 (2 demos VCL + 2 demos FMX)
  • Delphi XE7 (2 demos VCL + 2 demos FMX)
  • Delphi 2007 (10 demos VCL)
  • Delphi 7 (2 demos VCL)
  • Delphi 4 (2 demos VCL)
  • Lazarus 1.8.0 - FreePascal 3.0.2 (4 demo LCL)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 2.2.8 http://prog.olsztyn.pl/paslibvlc/#v2-2-8 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-2-8 Add support for new compilers:

  • Delphi 10.2 Tokyo
  • Lazarus 1.6.4 (FPC 3.0.2).

Include demo source code:

  • Delphi XE10 (2 demos VCL + 2 demos FMX)
  • Delphi XE7 (2 demos VCL + 2 demos FMX)
  • Delphi 2007 (10 demos VCL)
  • Delphi 7 (2 demos VCL)
  • Delphi 4 (2 demos VCL)
  • Lazarus 1.6.4 - FreePascal 3.0.2 (4 demo LCL)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 2.2.7 http://prog.olsztyn.pl/paslibvlc/#v2-2-7 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-2-7 Correct media list event handler WillAddItem

  2017.04.11 - reported by "Adolfo Ramirez"

    OnItemAdded => OnWillAddItem

Update Equalizer functions declarations for compile with BC6.

  reported by "Woldemar"

Cleanup PasLibVlcUnit and prepare for use with FMX.

  PasLibVlcFmx - initial release native FMX component (require XE7 or up).

  Usage ilustrated with 2 Delphi XE7 demos:

    FmxDemoPasLibVlc (tested successfully: WinXP, Win7 32bit and 64bit, OSX 10.7.5 32 bit)
    FmxDemoPasLibVlcPlayer (tested successfully: WinXP, Win7 32bit and 64bit)

Add support for adjust video:

  procedure SetVideoAdjustEnable(value : Boolean);
  procedure SetVideoAdjustContrast(value : Single);
  procedure SetVideoAdjustBrightness(value : Single);
  procedure SetVideoAdjustHue(value : Integer);
  procedure SetVideoAdjustSaturation(value : Single);
  procedure SetVideoAdjustGamma(value : Single);

  function GetVideoAdjustEnable() : Boolean;
  function GetVideoAdjustContrast() : Single;
  function GetVideoAdjustBrightness() : Single;
  function GetVideoAdjustHue(): Integer;
  function GetVideoAdjustSaturation() : Single;
  function GetVideoAdjustGamma() : Single;


Include demo source code:

  Delphi 4 (2 demos VCL)
  Delphi 7 (1 demo VCL)
  Delphi 2007 (10 demos VCL)
  Delphi XE7 (2 demos VCL + 2 demos FMX)
  Lazarus 1.4.4 - FreePascal 2.6.4 (4 demo LCL)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 2.2.6 http://prog.olsztyn.pl/paslibvlc/#v2-2-6 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-2-6 Correct declarations for libvlc_log_cb

  reported by: Technosite
  
Add Delphi2007/DemoLog for ilustrate libvlc_log_cb usage.

Update Delphi2007/DemoVideoCallBacks

Include demo source code:

  Delphi 4 (2 demos)
  Delphi 7 (1 demo)
  Delphi 2007 (10 demos)
  Delphi XE7 (2 demos) with simple equalizer usage  
  Lazarus 1.4.4 - FreePascal 2.6.4 (4 demo)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 2.2.5 http://prog.olsztyn.pl/paslibvlc/#v2-2-5 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-2-5 Correct struct declarations for better working with 64-bit

  reported by: Chris

Include demo source code:

  Delphi 4 (2 demos)
  Delphi 7 (1 demo)
  Delphi 2007 (9 demos)
  Delphi XE7 (2 demos) with simple equalizer usage
  Lazarus 1.4.4 - FreePascal 2.6.4 (4 demo)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 2.2.4 http://prog.olsztyn.pl/paslibvlc/#v2-2-4 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-2-4 Correct function definitions:

  reported by: Reiner Sombrowsky

Updated functions:

  libvlc_video_unlock_cb = procedure(...); cdecl;
  libvlc_video_display_cb = procedure(...); cdecl;
  libvlc_video_format_cb = function(...): LongWord; cdecl;

Include demo source code:

  Delphi 4 (2 demos)
  Delphi 7 (1 demo)
  Delphi 2007 (9 demos)
  Delphi XE7 (2 demos) with simple equalizer usage
  Lazarus 1.4.4 - FreePascal 2.6.4 (4 demo)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 2.2.3 http://prog.olsztyn.pl/paslibvlc/#v2-2-3 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-2-3 Update for allow change audio output

Changed functions:

  GetAudioOutputList
  GetAudioOutputDeviceList
  GetAudioOutputDeviceEnum
  SetAudioOutput
  SetAudioOutputDevice
  SetAudioOutputDevice
  Play
  PlayNormal
  PlayYoutube

New properties:

  LastAudioOutput
  LastAudioOutputDeviceId

Include demo source code:

  Delphi 4 (2 demos)
  Delphi 7 (1 demo)
  Delphi 2007 (9 demos)
  Delphi XE7 (2 demos) with simple equalizer usage
  Lazarus 1.4.4 - FreePascal 2.6.4 (4 demo)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 2.2.2 http://prog.olsztyn.pl/paslibvlc/#v2-2-2 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-2-2 Update for better compatibility with libvlc 2.2.2

New events:

  libvlc_MediaPlayerCorked
  libvlc_MediaPlayerUncorked,
  libvlc_MediaPlayerMuted,
  libvlc_MediaPlayerUnmuted,
  libvlc_MediaPlayerAudioVolume


Include demo source code:

  Delphi 4 (2 demos)
  Delphi 7 (1 demo)
  Delphi 2007 (9 demos)
  Delphi XE7 (2 demos) with simple equalizer usage
  Lazarus 1.4.4 - FreePascal 2.6.4 (4 demo)

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN
  
Note for Windows XP users:

  libwasapi_plugin.dll

  require kernel function InitOnceExecuteOnce,
  
  which is availiable on Win Vista and never systems.

]]>
Version 2.2.0 http://prog.olsztyn.pl/paslibvlc/#v2-2-0 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-2-0 Now before load libvlc library PasLibVlc
try detect library architecture (32 or 64 bit)

Update for better compatibility with libvlc 2.2.0

  EqualizerGetPresetList(): TStringList;
  EqualizerGetBandCount(): Word;
  EqualizerGetBandFrequency(bandIndex : Word): Single;

  EqualizerCreate(APreset : Word = $FFFF) : TPasLibVlcEqualizer;
  EqualizerApply(AEqualizer : TPasLibVlcEqualizer);
  EqualizerSetPreset(APreset : Word = $FFFF);
  
  Include Delphi XE7 demo with simple equalizer usage
  (compiled binary 32 and 64 bit)
  
  fix function SetAudioMute
  reported by "Moisés Ribeiro"
  
New API:

  libvlc_media_player_program_scrambled
  libvlc_audio_output_device_enum

  libvlc_audio_equalizer_get_preset_count
  libvlc_audio_equalizer_get_preset_name
  libvlc_audio_equalizer_get_band_count
  libvlc_audio_equalizer_get_band_frequency
  libvlc_audio_equalizer_new
  libvlc_audio_equalizer_new_from_preset
  libvlc_audio_equalizer_release
  libvlc_audio_equalizer_set_preamp
  libvlc_audio_equalizer_get_preamp
  libvlc_audio_equalizer_set_amp_at_index
  libvlc_audio_equalizer_get_amp_at_index
  libvlc_media_player_set_equalizer

New events:

   libvlc_MediaPlayerVout
   libvlc_MediaPlayerScrambledChanged

New meta data types:

   libvlc_meta_TrackTotal
   libvlc_meta_Director
   libvlc_meta_Season
   libvlc_meta_Episode
   libvlc_meta_ShowName
   libvlc_meta_Actors

Include demo source code:

  Delphi 4 (2 demos)
  Delphi 7 (1 demo)
  Delphi 2007 (7 demos)
  Delphi XE7 (2 demos) with simple equalizer usage
  Lazarus 1.2.6 - FreePascal 2.6.4 (4 demo)  

Please note:

  • 32 bit demo require 32 bit libvlc VideoLAN
  • 64 bit demo require 64 bit libvlc VideoLAN

]]>
Version 2.1.5 http://prog.olsztyn.pl/paslibvlc/#v2-1-5 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-1-5 New functions: (2015-02-01)

    GetAudioOutputList(): TStringList;
    GetAudioOutputDeviceList(aOut : WideString): TStringList;

    inspired by: Tom Widerøe

    GetVideoDimension(var width, height: LongWord): Boolean;


New property: (2015-01-06)

    MouseEventsHandler

    inspired by: Beat Schlösser


New functions: (2014-07-12)

    GetVideoChapterCountByTitleId(const title_id : Integer): Integer;

    GetVideoSubtitleList(): TStringList;
    GetVideoSubtitleCount(): Integer;
    GetVideoSubtitleCountByTitleId(const title_id : Integer): Integer;
    GetVideoSubtitleId(): Integer;
    SetVideoSubtitleById(const subtitle_id : Integer);
    GetVideoSubtitleNo(): Integer;
    SetVideoSubtitleByNo(subtitle_no : Integer);
    GetVideoSubtitleDescriptionById(const subtitle_id : Integer): WideString;
    GetVideoSubtitleDescriptionByNo(subtitle_no : Integer): WideString;
    SetVideoSubtitleFile(filename : WideString);

    GetVideoTitleList() : TStringList;
    GetVideoTitleCount(): Integer;
    GetVideoTitleId():Integer;
    SetVideoTitleById(const title_id:Integer);
    GetVideoTitleNo(): Integer;
    SetVideoTitleByNo(title_no : Integer);
    GetVideoTitleDescriptionById(const track_id : Integer): WideString;
    GetVideoTitleDescriptionByNo(title_no : Integer): WideString;
    
    inspired by: Sebastián Mayorá


Rename functions:
    
    GetAspectRatio() to GetVideoAspectRatio()
    SetAspectRatio() to SetVideoAspectRatio()
    
    GetChannel() to GetAudioChannel()
    SetChannel() to SetAudioChannel()


Include demo source code for:

  Delphi 4 (2 demo)
  Delphi 7 (1 demo)
  Delphi 2007 (7 demo)
  Delphi XE2 (1 demo)
  Lazarus - FreePascal (4 demo)

]]>
Version 2.1.4 http://prog.olsztyn.pl/paslibvlc/#v2-1-4 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-1-4 New functions:

    MarqueeShowText();    
    MarqueeHide();

    MarqueeSetText();
    MarqueeSetPosition();    
    MarqueeSetColor();
    MarqueeSetFontSize();
    MarqueeSetOpacity();
    MarqueeSetTimeOut();
    MarqueeSetRefresh();
    MarqueeSetEnable();

    LogoShowFile();
    LogoShowFiles();
    LogoHide();

    LogoSetFile();
    LogoSetFiles();
    LogoSetPosition();    
    LogoSetOpacity();
    LogoSetDelay();
    LogoSetRepeat();
    LogoSetEnable();
    
    GetAudioTrackList();
    GetAudioTrackId();
    SetAudioTrackById();
    SetAudioTrackByNo();
    GetAudioTrackDescriptionByNo();
    GetAudioTrackDescriptionById();

    inspired by Chris

Remove functions:

    SetAudioTrack();
    GetAudioTrackDescription();

New deinterlace filters:

    dmPHOSPHOR, dmIVTC

    inspired by Chris

Improve play normal and youtube streams

    Play();
    
Better support for Delphi XE2 and up

    Fix compilation warnings

Include demo source code for:

  Delphi 4 (2 demo)
  Delphi 7 (1 demo)
  Delphi 2007 (6 demo)
  Delphi XE2 (1 demo)
  Lazarus - FreePascal (4 demo)

]]>
Version 2.1.3 http://prog.olsztyn.pl/paslibvlc/#v2-1-3 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-1-3 New function

  libvlc_reset_function_pointers(force : Boolean = FALSE)

  inspired by: Marcio Wesley Borges
    
Fix get address of function libvlc_vlm_set_enabled
    
  reported by: Marcio Wesley Borges
  
Include demo source code for:

  Delphi 4 (2 demo)
  Delphi 7 (1 demo)
  Delphi 2007 (6 demo)
  Delphi XE2 (1 demo)
  Lazarus - FreePascal (4 demo)

]]>
Version 2.1.2 http://prog.olsztyn.pl/paslibvlc/#v2-1-2 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-1-2 Repair bug in function WmMediaPlayerPositionChanged (32bit)

  Reported by John Brookman

New functions:

  IsPause()
  GetMediaMrl();
  GetStateName();

  Written by John Brookman
  
Clean code in event handlers

Rewrite OnMediaChanged event handler
Now report current media MRL

  Requested by: Eduan Slabbert
  
Remove dead code, and unused variales

Better support for Delphi XE2 and up

  correct field align in event_t structure
  rewrite event handling functions
  
Add 64 bit demo compiled with Delphi XE2

  this demo request 64 bit VideoLAN
      
Check compatibility with version 2.1.2

Repair bug

  function TPasLibVlcPlayer.GetVideoHeight(): LongInt;
  return wideo width not height, now return video height
    
  Reported by: Dr Christoph Camphausen
      
New properties

  AudioOutput
  VideoOutput

Include demo source code for:

  Delphi 4 (2 demo)
  Delphi 7 (1 demo)
  Delphi 2007 (6 demo)
  Delphi XE2 (1 demo)
  Lazarus - FreePascal (4 demo)

]]>
Version 2.1.0 http://prog.olsztyn.pl/paslibvlc/#v2-1-0 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-1-0 New functions from libvlc 2.1.0

  libvlc_media_player_set_video_title_display
  libvlc_audio_output_device_list_get
  libvlc_audio_output_device_list_release
  libvlc_media_tracks_get
  libvlc_media_tracks_release
  libvlc_set_app_id
  libvlc_log_get_context
  libvlc_log_get_object
  libvlc_log_set
  libvlc_log_unset
  libvlc_log_set_file

Verify compatibility with libvlc 2.1.0:

  FUNCTION libvlc_audio_set_volume NOT WORK
  EXCEPTION Invalid floating point operation.

  Read more on VideoLAN forum:  
  https://forum.videolan.org/viewtopic.php?f=32&t=114264

Support Delphi 4 - conditional code compilation

Include demo source code for:

  Delphi 4 (2 demo)
  Delphi 2007 (6 demo)  
  Lazarus - FreePascal (4 demo)

]]>
Version 2.0.8 http://prog.olsztyn.pl/paslibvlc/#v2-0-8 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-0-8 Support for FPC LCL QT4 and FPC LCL GTK2 (LINUX, WIN)
Test: Kubuntu + VLC 2.0.8 and Windows XP SP3 + VLC 2.0.8

Unified function for display player in window

  libvlc_media_player_set_display_window

FPC For Windows : LCL GTK2+, LCL QT4, WIN32
FPC For Linux : LCL GTK2+, LCL QT4

Improve function for search libvlc.so

Verify compatibility with libvlc 2.0.8

Include demo source code for:

  Delphi 2007 (6 demo)  
  Lazarus - FreePascal (4 demo)

]]>
Version 2.0.5 http://prog.olsztyn.pl/paslibvlc/#v2-0-5 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-0-5 Fix incorrect position of MouseEventWinCtrl if Player
placed inside TPanel control aligned to right side of form.

Track bars in demo programs to use functions:

  GetVideoPosInMs()
  GetVideoLenInMs()

Rewrite events handling

New properties:

  OsdShow default true
  SpuShow default true
  SnapshotPrv default false
  
Support Delphi 7 - conditional code compilation

Demos:

  video callbacks demo

  toggle full screen and back

Include demo source code for:

  Delphi 2007 (7 demo)
  Lazarus - FreePascal (4 demo)

]]>
Version 2.0.4 http://prog.olsztyn.pl/paslibvlc/#v2-0-4 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-0-4 Add compiler options {$A4,Z4}

New property:

  StartOptions

Each player component use own instance of libvlc.

Include demo source code for:

  Delphi 2007 (4 demo)  
  Lazarus - FreePascal (4 demo)

]]>
Version 2.0.3 http://prog.olsztyn.pl/paslibvlc/#v2-0-3 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v2-0-3 Add critical section to improve calls from event handlers
now property TPasLibVlcPlayer.UseEvents default FALSE
fix bug in TPasLibVlcPlayer.function EventsEnable:
if (p_mi = NIL) then -> if (p_mi <> NIL) then
add function TPasLibVlcPlayer.Stop
add try..finally in TPasLibVlcPlayer.Destroy

Include demo source code for:

  Delphi 2007 (4 demo)  
  Lazarus - FreePascal (2 demo)

]]>
Version 1.1.11 http://prog.olsztyn.pl/paslibvlc/#v1-1-11 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v1-1-11 Linux OS support:

  conditional code compilation
  
Load libvlc.dll from custom location:

  libvlc_dynamic_dll_init_with_path(vlc_install_path: string);

]]>
Version 1.1.9 http://prog.olsztyn.pl/paslibvlc/#v1-1-9 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v1-1-9 Support Lazarus

New component:

  TPasLibVlcMediaList

New functions:

  SetPlayRate() - change current play rate
  GetPlayRate() - return current play rate
  
Include demo source code for:

  Delphi 2007 (3 demo)
  Lazarus - FreePascal (2 demo)

]]>
Version 1.1.7 http://prog.olsztyn.pl/paslibvlc/#v1-1-7 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v1-1-7 Simple help for play YouTube video links

New functions:

  GetVideoLenStr()
  GetVideoPosStr()
  
Include demo source code for:

  Delphi 2007 (2 demo)

]]>
Version 1.1.5 http://prog.olsztyn.pl/paslibvlc/#v1-1-5 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v1-1-5 Support for version 1.1.5

Support for unicode file names

Correct creation of VCL at runtime, error: control '' has no parent window

New properties:

  PopupMenu
  ShowTitle
  UseEvents
  
Include demo source code for:

  Delphi 2007 (2 demo)

]]>
Version 1.1.4 http://prog.olsztyn.pl/paslibvlc/#v1-1-4 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v1-1-4 Support for version 1.1.4

functiuons to set/get Audio Volume Level

Include demo source code for:

  Delphi 2007 (2 demo)
  Lazarus - FreePascal (4 demo)

]]>
Version 1.1.1 http://prog.olsztyn.pl/paslibvlc/#v1-1-1 Sat, 25 May 2019 14:32:05 +0200 paslibvlc http://prog.olsztyn.pl/paslibvlc/#v1-1-1 Change:

  PChar to PAnsiChar

Include demo source code for:

  Delphi 2007 (2 demo)

]]>