J'ai un shell script qui fonctionne sur mon mac ( ./go
), il ouvre une session ssh sur un raspberry pi puis exécute un script qui diffuse de la vidéo depuis le raspberry pi vers un port UDP sur le mac.
J'ai également besoin que le mac exécute une réception script ( ./tsplay
) afin qu'il puisse visualiser la vidéo diffusée.
Le problème est que j'ai essayé d'utiliser la commande open -a Terminal.app ./tsplay
avant que la session SSH ne soit lancée, une nouvelle fenêtre de terminal s'ouvre mais elle n'attend pas l'arrivée des données du flux et se termine - [Processus terminé].
#!/bin/bash
source network.conf
rm remote.conf
if [ "$1" != "" ]
then
sed "s/FRAMERATE=25/FRAMERATE=$1/" video.conf > remote.conf
else
cp video.conf remote.conf
fi
open -a Terminal.app ./tsplay
date
echo "###### Network Settings ######" >> remote.conf
echo export TCPPORT=$TCPPORT >> remote.conf
echo export UDPPORT=$UDPPORT >> remote.conf
echo export RX_IP=$RX_IP >> remote.conf
echo export NOW=\"`date +%F" "%T`\" >> remote.conf
#echo exit >> remote.conf
chmod +x remote.conf
echo Copy script to $TX_IP
scp remote.conf $USER@$TX_IP:/home/pi
echo Run Script
ssh $USER@$TX_IP ./ustream
ssh $USER@$TX_IP