sub new {
my $class = shift;
- my $self = $class->SUPER::new();
-
- $self->{'NAME'} = 'vimeo';
- $self->{_SELFTESTURL} = 'http://vimeo.com/35055590';
- $self->{_SELFTESTTITLE} = 'Hello';
- $self->{'PATTERNS'} = ['(http://(?:[-a-zA-Z0-9_.]+\.)*vimeo.com/(?:m/)?(\d+))'];
-
- bless($self, $class);
- $self->_prepare_parameters();
-
- return $self;
+ my $self = $class->SUPER::new(
+ NAME => 'vimeo',
+ _SELFTESTURL => 'http://vimeo.com/35055590',
+ _SELFTESTTITLE => 'Hello',
+ PATTERNS => ['(http://(?:[-a-zA-Z0-9_.]+\.)*vimeo.com/(?:m/)?(\d+))'],
+ @_,
+ );
+
+ return bless($self, $class);
}
sub _parse {
if ($e->[0] eq 'script') {
my $t = $p->get_text();
- if ($t =~ m|clip\d+_\d+ = (.*\});Player|) {
+ if ($t =~ m|clip\d+_\d+ = (.*\});Player|s) {
my $jsp = videosite::JSArrayParser->new();
my $r;
}
$metadata->{'TITLE'} = $r->{'config'}->{'video'}->{'title'};
+ $hd = grep { $_ eq 'hd' } @{$r->{'config'}->{'video'}->{'files'}->{'h264'}};
+ $self->debug("HD: %d", $hd);
$r = $r->{'config'}->{'request'};
- $metadata->{'DLURL'} = sprintf("http://%s/play_redirect?clip_id=%d&sig=%s&time=%d&quality=hd&codecs=H264,VP8,VP6",
+ $metadata->{'DLURL'} = sprintf("http://%s/play_redirect?clip_id=%d&sig=%s&time=%d&quality=%s&codecs=H264,VP8,VP6",
$r->{'player_url'},
$metadata->{'ID'},
$r->{'signature'},
$r->{'timestamp'},
+ $hd?'hd':'sd',
);
}
}