Em vez de executar o mplayer diretamente da sua inicialização, eu escreveria um script e o executaria.
Seu script acabaria por executar o mesmo comando mplayer que você deu, mas antes da mão você pode verificar se a sua conexão wifi está funcionando e funcionando (talvez fazendo ping no seu roteador), isso dá o seu controle de script. Pode esperar até que a conexão apareça e depois iniciar o mplayer.
Se você colocar o script em algo como rc.local, ele será iniciado uma vez na inicialização. se você iniciá-lo a partir do seu perfil, ele será iniciado quando você fizer o login.
Aqui está um exemplo de script que aguarda até que ele pinte com sucesso um endereço IP antes de iniciar o mplayer.
#!/bin/bash
RouterIP="128.0.0.1"
TimeOut=2
WaitTime=8
echo "Waiting for network connection"
while ! ping -q -c 1 -w $TimeOut $RouterIP > /dev/null
do
echo Timeout, waiting $WaitTime seconds
sleep $WaitTime
echo "Waiting for network connection"
done
mplayer blah blah
Você pode alterar o endereço IP para a porta interna de seu roteador e corrigir a linha do mplayer.
Nomeie-o como startRadio e torne-o executável e teste-o.
'./ startRadio
Adicione-o ao script de inicialização desejado, mas redirecione stdout e stderr para / dev / null e inicie-o como um processo em segundo plano.
por exemplo,
/path/to/your/script/startRadio >/dev/null 2>&1 &