1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
#!/usr/bin/env perl
use warnings;
use strict;
require Barcode::ZBar;
# create a Processor
my $proc = Barcode::ZBar::Processor->new();
# configure the Processor
$proc->parse_config("enable");
# initialize the Processor
$proc->init($ARGV[0] || '/dev/video0');
# setup a callback
sub my_handler {
my ($proc, $image, $closure) = @_;
# extract results
foreach my $symbol ($proc->get_results()) {
# do something useful with results
print('decoded ' . $symbol->get_type() .
' symbol "' . $symbol->get_data() . "\"\n");
}
}
$proc->set_data_handler(\&my_handler);
# enable the preview window
$proc->set_visible();
# initiate scanning
$proc->set_active();
# keep scanning until user provides key/mouse input
$proc->user_wait();
|