답변:
나는 그것을 사용하여 해결했습니다. 배고 있다 . 스트리밍 재생을 시작합니다. ./play.sh
:
while [ '1' == '1' ];
do
expect try_stream.exp $1
sleep 3
done
그리고 이것을 사용합니다. try_stream.exp
:
set timeout 4
spawn mplayer -nocache $argv
expect {
"Starting playback" {
interact
}
timeout {
send \003;
exit 1
}
}
기본적으로 스트림을 재생하려고 시도하고 3 초 이내에 재생할 수없는 경우 .exp 스크립트를 포기하고 다시 시도합니다 (.sh 스크립트). 그것은 매우 바쁜 서버와 같은 문제가있는 한 작동합니다. 불행히도 mplayer가 일단 시작되면 멈춰 버리는 경우를 다루는 방법을 모르겠다. Expect가 그러한 경우에 감지 할 출력 문자열이 없다.