Author: sparky Date: Sat Jan 30 23:16:56 2010 New Revision: 11122 Modified: toys/rsget.pl/Video/YouTube Log: - added fmt 37 (1080p)
Modified: toys/rsget.pl/Video/YouTube ============================================================================== --- toys/rsget.pl/Video/YouTube (original) +++ toys/rsget.pl/Video/YouTube Sat Jan 30 23:16:56 2010 @@ -10,13 +10,21 @@ web: "http://www.youtube.com/" uri: qr{youtube\.com/watch\?v=.*} slots: max -status: OK 2009-10-03 +status: OK 2010-01-30 unify: s/#.*//; m{[\?&]v=([-_a-zA-Z0-9]+)(?:&.*?)?$}; return "http://www.youtube.com/watch?v=$1" if $1; +pre: + my @fmt = ( + [ 37, "mp4", "1080p" ], + [ 22, "mp4", "720p" ], + [ 35, "flv", "HQ" ], + [ 18, "mp4", "LQ" ], + ); + start: GET( $-{_uri} ); @@ -30,20 +38,21 @@ ! /"fmt_map"\s*:\s*"(.*?)"/; my %fmts = map { m{(\d+)/}; $1 => $_ } split ",", uri_unescape( $1 ); - my $fmt = "18"; - $fmt = "35" if $fmts{35}; - $fmt = "22" if $fmts{22}; - - my $ext = "mp4"; - $ext = "flv" if $fmt eq "35"; + my $fmt; + foreach my $f ( @fmt ) { + if ( exists $fmts{ $f->[0] } ) { + $fmt = $f; + last; + } + } ! /"t"\s*:\s*"(.*?)"/; my $t = $1; - my $fname = $name . "." . $ext; - INFO( name => $fname, quality => "fmt$fmt" ); + my $fname = $name . "." . $fmt->[1]; + INFO( name => $fname, fmt => $fmt->[0], quality => $fmt->[2] ); - DOWNLOAD( "http://youtube.com/get_video?video_id=$id&t=$t&fmt=$fmt", + DOWNLOAD( "http://youtube.com/get_video?video_id=$id&t=$t&fmt=$fmt->[0]", fname => $fname ); # vim: filetype=perl:ts=4:sw=4 _______________________________________________ pld-cvs-commit mailing list pld-cvs-commit@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit