Вы просто должны породить свой mp3-плеер как трубу из Perl. Вот так:
$| = 1; # Set unbuffered output.
open( my $mp3player, "| mpg123" ) or die "cannot start mp3 player: $!";
print $mp3player "s";
...
print $mp3player "q";
close $mp3player
Вторая попытка вызова нескольких скриптов: в интерактивной оболочке введите tty
. Это даст вам псевдо-терминальное имя. Теперь запустите вашего игрока в этой оболочке. В другой оболочке напишите на этот псевдо-терминал. Например. echo "s" > /dev/pts/11
. Игрок получит это в качестве ввода. Если это работает, используйте ваш perl-скрипт вместо echo для записи в псевдотерминал.