-
ffmpeg 연결 재시도 옵션 설정(라디오 녹음, 녹화시)IT,컴퓨터/서비스,웹,소프트웨어 2021. 8. 8. 11:00하단 광고는 티스토리가 임의 삽입하여 노출되고 있습니다728x90
7월 말보다는 덜하지만, 여전히 더운 낮기온에 힘든 나날이 계속되고 있습니다.
제 경우는 방에 설치된 에어컨의 실외기 위치가 시원찮아서 원래 냉방성능을 못내고 있어 더하네요.
그래도 이번주는 태풍이 더위를 밀어내 줄것 같으니, 더위 밀어낸 댓가를 너무 크게 치르지 않기만 바라고 있습니다.
개인적으로 곧잘 일본쪽 성우 라디오들을 듣는지라, 이를 녹음, 전송할 수 있도록 서버를 구성했다는 이야기는 전에도 적었습니다만, [당시 글 보기]
한지 1년이 넘으니 가끔 이상한 케이스를 마주하게 됩니다. 대충 반년에 두번 정도의 빈도로.
도쿄 올림픽으로 토요일 저녁 9시부터 자정까지의 방송이 날아간 어제 문화방송(文化放送)의 경우, 다행히 대체 방송처인 초!A&G+로는 원래 시간에 송출이 진행되어 키미마치와 에디슨을 이쪽으로 녹음하도록 작업을 걸었었습니다.
근데 왠걸, 밤 9시부터 진행하는 두시간짜리 방송이 1분도 안되어서 끊겼나보더군요.
덕분에 37초짜리 파일만 만들어지고 끝나서 급하게 재녹음을 했었습니다. 앞 13분이 날아갔지만 어찌어찌 뒤쪽은 건졌네요.
일단 급한불을 끄고, cron 로그를 살펴보니 아래와 같은 로그가 보입니다.
8, 10 라인의 Connection timed out 이 보이시나요?
이거 뒤에 녹음이 재개되는가 싶다가 그대로 끊어지고 파일이 생성되었습니다. (파일 생성이 가장 마지막에 동작함)
아무래도 유료 요금제가 있는 radiko은 이런적이 없는데(있어도 제 경우는 유료 사용자라 다시듣기-타임프리-로 복구 가능하지만) 초!A&G+ 쪽은 무료인데다 품질은 둘째치고 영상도 같이 송출되고 있는지라 부하가 좀 있는 모양.
작년 말이었나 토요사키 아키 라디오도 이것때문에 끊겨서 57분만 녹음된 적이 있었습니다.
그걸 떠올리니 아차 싶더군요. 그때 옵션 연구좀 해놓을껄.
그래서 어제 밤, 급하게 ffmpeg의 재시도 옵션을 찾았습니다.
다행히 ffmpeg의 hls(http) 녹음시, 아래와 같은 옵션들을 사용할 수 있더군요. [ffmpeg Documentation]
reconnect_at_eof
reconnect_streamed
reconnect_on_network_error
reconnect_on_http_error
reconnect_delay_max
자세한 내용은 먼저 걸어둔 링크로 위 텍스트를 검색해서 확인하시고,
저는 네트워크 에러시 재시도하는 reconnect_on_network_error 옵션을 추가해서 녹화 테스트를 해 보기로 합니다.
제가 확인한 옵션을 추가한 뒤 다시 녹음되는 중간에 와이파이 연결을 끊어 보겠습니다.
적당히 15를 세고 다시 와이파이를 붙혔는데, 잠시 뒤 다시 스트림을 읽어 녹음을 시작합니다.
일단 원래 reconnect_on_network_error 옵션이 의도한 작업 중 네트워크 연결문제가 아니라 제대로 작동할까 걱정도 되는데,
옵션이라도 추가해놓고 모니터링하는게 낫겠다 싶어서 곧 실제 작업 스크립트에도 추가할 예정.
아무튼 라디오좀 편하게 보고 들어보겠다고 돌리고 있는게, 이런 생각치도 못한 변수를 만나서 흔들리고 있습니다.
이미 소는 떠났지만(?) 다음에 사올 소를 잃지 않기 위해서라도 이 설정이 잘 동작했으면 좋겠네요.
아, 이왕이면 서비스에서 Connection timed out 메시지가 안나오도록 운영되었으면 좋겠지만, 그건 제 소관이 아니니(...)
비슷한 동작을 관리하는 분들은 참고하시기 바랍니다. 특히 대상이 초!A&G+ 서버라면 더더욱.
그럼 저는 이하넥스가 늦게 입고해서 주말 지나고 도착하는 물건을 정리해 주중에 글 들고 오겠습니다.
남은 휴일도 시원하게 보내시길. 다음 글에서 뵙겠습니다.
'IT,컴퓨터 > 서비스,웹,소프트웨어' 카테고리의 다른 글
CentOS 8 Stream 전환 및 WireGuard Docker 서버 재구축기 (0) 2021.11.30 갤럭시 TO GO 워치4 + 폴드3 대여 및 후기 (0) 2021.08.23 conoha VPS 납부방식 전환 및 서버 업그레이드 (0) 2021.05.13 radiko 녹음 스크립트 수정 과정 기록 (0) 2020.12.10