mplayer에서 시간 제한을 사용하는 방법?


1

라이브 http 스트림에서 mplayer를 사용하여 오디오를 저장하려고합니다. 오디오 저장 성공. 라이브 스트림이 재생되지 않으면 자동으로 종료되지 않습니다. 라이브 스트림이없는 경우 시간 초과를 설정할 수있는 방법이 있습니까?

코드 : mplayer -i url -t 00:00:10 -acodec libmp3lame -ab 24 -ar 8000 audio.mp3

미리 감사드립니다.

답변:


0

나는 그것을 사용하여 해결했습니다. 배고 있다 . 스트리밍 재생을 시작합니다. ./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가 그러한 경우에 감지 할 출력 문자열이 없다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.