#!/usr/bin/perl -w

use strict;
use Data::Dumper;

my $main_file = $ARGV[0];
my $stem = $main_file;
$stem =~ s/\.(ly|midi)//;

my @lst = `grep mstaff $stem.ly`;
@lst = grep { s/.*mstaff//; chomp; } @lst;

my $cmd = "timidity -EI26 -a -Zpure"; #  -S48000, ogg seems require 41kHz
my $run;

$run = "$cmd -Ov $stem.midi";
print "$run\n";
`$run`;

for (my $ix = 0; $ix < @lst; $ix++) {
    my $num = $ix + 1;
    my $n = $lst[$ix];
    my $str = `grep $n $stem.instrument`;
    my @fld = split( / *\/ */, $str);
    my $name = $fld[3];
    $name =~ tr/ /_/;
    $run = "$cmd -OvM -Q 0,-$num -o ${stem}_$name.ogg $stem.midi";
    print $run, "\n";
    `$run`;
}
