diff options
author | fnord <fnord@fnord.mobi> | 2013-04-04 08:04:31 -0500 |
---|---|---|
committer | fnord <fnord@fnord.mobi> | 2013-04-04 08:04:31 -0500 |
commit | b32fb116579f15cfdb2077493cda249d5d84ea31 (patch) | |
tree | 958731f197cf81a0da5037a49a1075a08ba719ff | |
parent | 713d73065bb9ba89dd537240a2d1d5fb9ab81ad9 (diff) | |
download | get-flash-videos-b32fb116579f15cfdb2077493cda249d5d84ea31.tar.gz |
Selects highest non-iphone bitrate video, fallback to highest iphone
bitrate, shun akamaihd.net as it leads to split videos and madness.
Added plugin version
-rw-r--r-- | lib/FlashVideo/Site/Adultswim.pm | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/lib/FlashVideo/Site/Adultswim.pm b/lib/FlashVideo/Site/Adultswim.pm index 604e840..1ad2943 100644 --- a/lib/FlashVideo/Site/Adultswim.pm +++ b/lib/FlashVideo/Site/Adultswim.pm @@ -4,6 +4,9 @@ package FlashVideo::Site::Adultswim; use strict; use FlashVideo::Utils; +our $VERSION = '0.02'; +sub Version() { $VERSION; } + sub find_video { my($self, $browser, $embed_url) = @_; @@ -64,25 +67,17 @@ sub find_video { $browser->get($videoURL); $xml = from_xml($browser); - my $pick; - my $bitrate; + my $bitrate=-1; my $file_url; foreach(@{$xml->{entry}}){ - if(!($_->{ref}->{href} =~ m/iPhone/)){ - $file_url=$_->{ref}->{href}; - $pick = $1; last; - } + next if(ref($_) ne 'HASH'); + next if ($_->{ref}->{href} =~ m,\.akamaihd\.net\/,); + next if ($_->{param}->{bitrate} < $bitrate && $_->{ref}->{href} =~ m/iPhone/); + $file_url=$_->{ref}->{href}; + $bitrate=$_->{param}->{bitrate}; + #print STDERR $_->{param}->{bitrate}."\t".$_->{ref}->{href}."\n"; } -# grep { $_->{name} eq "mimeType" } @{$_->{param}})[0]->{value} -# my $pick = (grep { $_->{param}->{value}->[3] eq "video/x-flv" } @{$xml->{entry} } )[0]; - -# my $pick = $xml->{entry}[4]; - -# my $file_url = $pick->{ref}->{href}; - - # $prefs->{quality} - return $file_url, title_to_filename($title); } |