#!/usr/bin/perl my $tag = $ARGV[0] or "pix2pixhd_" . time; $tag =~ s/\....$//; if (! -e "results/$tag") { print "usage: $0 [tag]\n"; exit(1); } chdir('results/$tag'); my $i = 0; my $ls = `ls -1v *.png`; my @lines = split('\n', $ls); my $pwd = `pwd`; chomp $pwd; $pwd .= '/'; print $pwd . "\n"; mkdir('./tmp'); for my $line (@lines) { chomp $line; system('ln', '-s', $pwd . $line, sprintf('./tmp/frame_%05d.png', $i)); $i += 1; } system("ffmpeg", "-i", "./tmp/frame_%05d.png", "-y", "-c:v", "libx264", "-vf", "fps=25", "-pix_fmt", "yuv420p", "-s", "1024x512", $tag . ".mp4" ); END { system('rm', '-rf', 'tmp'); chdir('../..'); }