Here is one simple way to do what you want with a simple shell script. Since OSX is Unix-based, it includes the standard shell, the only trick is to be careful about embedded blanks in the file names...many things don't work as expected with those at the shell level...
Say you have unzipped the collection in a directory named "e-piano-competition-2002-2009" as I did.
In the parent directory, create a shell file, named for instance PlayList.sh with the following content (assuming Pianoteq was installed in the default directory):
#!/bin/sh
ls e-piano-competition-2002-2009/*$1*smf* > list
while read file
do
echo $file
cp "$file" file.mid
/Applications/Pianoteq\ 5/Pianoteq\ 5.app/Contents/MacOS/Pianoteq\ 5 --preset "D4 Daily Practice" --midi file.mid --headless --play-and-quit
done <list
rm list file.mid
Don't forget to make it excutable by chmod +x ./PlayList.sh
Then, for instance, the command ./PlayList.sh Bach will play all the Bach files in the collection.
Of course you can change the preset in the file and if you prefer, take away the --headless parameter if you want the GUI visible. Other parameters are displayed with the --help option.
That is one way to create a temporary playlist to render with Pianoteq. The parameter can be any substring of the file names, for instance the name of a performer.
No parameter means all the files so beware. (You can always stop the process with ctrl-z)
(I pass a copy of the file to Pianoteq because the blanks in the names cause a lot of problems when passed directly inside a script as a parameter...)
Hope this helps!
Last edited by Gilles (21-09-2014 22:40)