#!/usr/bin/perl use Cwd; $cwd = getcwd; #$minutes = int($ARGV[0]); $minutes = $ARGV[0]; $filename = $ARGV[1]; $date = time(); if ($filename) { $filename = "$cwd/$filename.ogg"; } else { $filename ||= "$cwd/$date-$minutes-minutes.ogg"; } if (-f $filename) { die("Refusing to run because '$filename' already exists\n"); } if (!$minutes) { die(&usage()); } if ($pid = fork) { $seconds = $minutes * 60; print "Recording for $minutes minutes ($seconds seconds) to '$filename' $pid\n"; sleep($seconds); #$cmd = "kill $pid"; $cmd = "pkill rec;pkill sox"; print "$cmd\n"; system($cmd); } else { $cmd = "/usr/bin/rec -c 1 -r 8000 \"$filename\" 2>&1 > /dev/null"; #print "$cmd\n\n"; system($cmd); } sub usage() { $ret = "$0 [minutes] {title}\n"; }