use strict;
use warnings;
use WWW::YouTube::Download;
use Parallel::ForkManager;
my $urls = [qw{
http://www.youtube.com/watch?v=kKVYVj5-wQ0
http://www.youtube.com/watch?v=gtezI4QriS0
http://www.youtube.com/watch?v=rTJbGp8og7g
}];
my $pm = Parallel::ForkManager->new(scalar @$urls);
for my $url (@$urls) {
my $pid = $pm->start and next;
my $client = WWW::YouTube::Download->new;
$client->download($url);
$pm->finish;
}
$pm->wait_all_children;