Perl bindings: Difference between revisions

From VideoLAN Wiki
Jump to navigation Jump to search
No edit summary
m →Usage: syntaxhighlight
Line 10: Line 10:


== Usage ==
== Usage ==
<syntaxhighlight lang="perl">
#!/usr/bin/env perl


#!/usr/bin/env perl
use strict;
use warnings;
use strict;
use 5.010;
use warnings;
 
use 5.010;
use VideoLAN::LibVLC;
 
use VideoLAN::LibVLC;
unless (@ARGV) {
die "1 argument needed - path to a file.";
unless (@ARGV) {
}
die "1 argument needed - path to a file.";
 
}
my $inst = VideoLAN::LibVLC::Instance->new;
my $media = VideoLAN::LibVLC::Media->new($inst, $ARGV[0], "path");
my $inst = VideoLAN::LibVLC::Instance->new;
my $player = VideoLAN::LibVLC::MediaPlayer->new($media);
my $media = VideoLAN::LibVLC::Media->new($inst, $ARGV[0], "path");
 
my $player = VideoLAN::LibVLC::MediaPlayer->new($media);
$player->play;
 
$player->play;
sleep 5;
say $player->fullscreen;
sleep 5;
$player->fullscreen(1);
say $player->fullscreen;
say $player->fullscreen;
$player->fullscreen(1);
sleep 5;
say $player->fullscreen;
$player->toggle_fullscreen;
sleep 5;
say $player->fullscreen;
$player->toggle_fullscreen;
sleep 5;
say $player->fullscreen;
</syntaxhighlight>
sleep 5;


== Known issues ==
== Known issues ==

Revision as of 00:53, 15 February 2019

Perl bindings

TODO: this wiki page is work in progress

Installation

You need to have libvlc with headers already installed.

TODO: install from CPAN

Usage

#!/usr/bin/env perl

use strict;
use warnings;
use 5.010;

use VideoLAN::LibVLC;

unless (@ARGV) {
	die "1 argument needed - path to a file.";
}

my $inst = VideoLAN::LibVLC::Instance->new;
my $media = VideoLAN::LibVLC::Media->new($inst, $ARGV[0], "path");
my $player = VideoLAN::LibVLC::MediaPlayer->new($media);

$player->play;

sleep 5;
say $player->fullscreen;
$player->fullscreen(1);
say $player->fullscreen;
sleep 5;
$player->toggle_fullscreen;
say $player->fullscreen;
sleep 5;

Known issues

  • Libvlc event handling is not supported currently.
  • It's unknown whether it works under windows or not, I never tested it there.