diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2018-06-07 00:46:37 +0200 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2018-06-07 00:46:37 +0200 |
| commit | e76bb4fc2a6e7b83d1a2b7b16b6a363638177cd9 (patch) | |
| tree | df54fc2e2c03fff83b7fa5242e23ff7ee78fd44c /get.pl | |
| parent | b03e91783d9074454fb0073a3965e1b5dda9a83f (diff) | |
get script
Diffstat (limited to 'get.pl')
| -rw-r--r-- | get.pl | 92 |
1 files changed, 92 insertions, 0 deletions
@@ -0,0 +1,92 @@ +#!/usr/bin/perl + +$SIG{TERM} = $SIG{INT} = sub { exit 1 }; + +sub sanitize ($) { + my $s = lc shift; + $s =~ s/\.[^.]+$//g; + $s =~ s/\W//g; + $s =~ s/\s+/_/g; + if (length($s) == 0) { + print "fn is empty"; + exit(1); + } + $s =~ s/_+/_/g; + return $s; +} + +my ($module, $url) = @ARGV; + +if (not defined $module || not defined $url || $s !~ /^http/) { + die "usage: ./get.pl pix2pix http://...\n"; +} + +mkdir("$module/"); +mkdir("$module/sequences/"); +chdir("$module/sequences/"); + +my $fn, $new_fn; + +# ZIP file of spectrograms >:) +if ($s =~ /(zip)$/i) { + $s =~ s/^\s+//; + $s =~ s/\s+$//; + my $fn = `basename $s`; + $clean_fn = $fn; + $clean_fn =~ s/-/_/g; + $clean_fn =~ s/^\s//; + $clean_fn =~ s/\s$//; + $clean_fn =~ s/\s/_/g; + $clean_fn =~ s/_+/_/g; + system('rm', $fn); + system('rm', $clean_fn); + print "downloading $clean_fn\n"; + system('wget', '-O', $clean_fn, $s); + system('unzip', '$clean_fn'); + $fn = $clean_fn; +} +elsif ($s =~ /(mov|mp4|webm|avi|mpe?g)$/i) { + $s =~ s/^\s+//; + $s =~ s/\s+$//; + my $fn = `basename $s`; + $clean_fn = $fn; + $clean_fn =~ s/-/_/g; + $clean_fn =~ s/^\s//; + $clean_fn =~ s/\s$//; + $clean_fn =~ s/\s/_/g; + $clean_fn =~ s/_+/_/g; + system('rm', $fn); + system('rm', $clean_fn); + print "downloading $clean_fn\n"; + system('wget', '-O', $clean_fn, $s); + $fn = $clean_fn; +} +else { + print "youtube-dl $s\n"; + my $yt = `youtube-dl -o "%(title)s.%(ext)s" $s`; + my @partz = split("\n", $yt); + foreach $part (@partz) { + if ($part =~ /\[ffmpeg\] Destination\: ([^)]+)$/) { + $fn = $1; + } + } + if ($fn) { + my $tag = sanitize($fn); + mkdir('$tag'); + system('ffmpeg', '-i', $fn, './sequences/' . $module . '/' . $tag . '/frame_%05d.png'); + print "created_dataset: $tag\n"; + # $new_fn + } +} + +my $tag = sanitize($fn); +open(my $fd, ">>../run_slap.sh"); +print $fd "standard $tag\n"; +close $fn; + +$fn = undef; + +END { + chdir('../..'); +} + |
