Not exactly simpler, though scriptable. For sure
there's many ways to do
this, here's one example that uses Jack for MIDI and audio.
The only manual step involved is to select stops in aeolus, though that
could be automated by selecting a preset via MIDI (haven't tried that
part).
# start aeolus without the -A option (defaults to Jack)
aeolus &
# start a jack-MIDI aware smf file player like jpmidi or jack-smf-player
from jack-smf-utils
jack-smf-player -n foo.mid &
# give a little time for ports to show up
sleep 5
# using ecasound as a jack-aware command-line recorder
ecasound -i jack -o foo.ogg &
sleep 1
# ==== make connections in jack
# == midi
jack_connect 'jack-smf-player:midi_out' 'aeolus:Midi/in'
# == audio
jack_connect 'aeolus:out.L' 'ecasound:in_1'
jack_connect 'aeolus:out.R' 'ecasound:in_2'
# not required but you might want to listen
jack_connect 'aeolus:out.L' 'system:playback_1'
jack_connect 'aeolus:out.R' 'system:playback_2'
sleep 1
# make sure to locate transport TL to zero
echo locate 0 | jack_transport
# start jack_transport
echo play | jack_transport
# ..recording..
By using jack_capture instead of ecasound, this should be enough:
jack_capture --jack-transport
jack-smf-player -n foo.mid &
sleep 5
echo locate 0 | jack_transport
echo play | jack_transport