Synology docker EBS 라디오 녹음
- IT/Synology (시놀로지)
- 2020. 8. 21.
반응형
배경
현재 시대는 항상 우리가 영어를 자유롭게 사용할 수 있도록 공부해야 되는 세상이다.
지금은 코로나 때문에 해외여행을 갈 수가 없지만, 해외여행 가서 본인이 원하는 걸 하려면 반드시 배워야 한다.
한 번에 모든 것을 이룰 수 없는 것이기에 틈나는 대로 조금씩, 조금씩 공부하기 위한 방법으로
나는 EBS 라디오 프로그램중, 영어와 관련된 것을 챙겨서 들으려고 노력하고 있다.
매번 생방송으로 청취 할 수 없기에, NAS에 저장해 두고 필요할 때마다 조금씩 듣는다.
하드웨어 및 적용대상
Synology Model : ds3617xs
구동 환경 : Docker
*과거 1515+ 모델에서 웹서핑을 통해서 EBS 녹음이 가능하도록 설정해두었는데, 하드웨어가 변경되면서
debian chroot 의 설치에 문제점이 발생 (브로드웰 CPU에서 해당 패키지 미지원)
적용방법
1. Docker ubuntu 설치
녹음된 파일이 저장되어야 할 DSM의 위치도 함께 마운트 (예, volume1/music/EBS)
2. Docker - Ubuntu 접속 후, 아래의 미디어 패키지 설치 진행
apt-get update
apt-get upgrade
apt-get insstall locale
dpkg-reconfigure locales
dpkg-reconfigure tzdata
apt-get install libav-tools
3. 실행 파일 생성(ebs-record.sh)
아래의 내용으로 파일명을 ebs-record.sh로 파일을 생성하였습니다.
그리고 본인이 synology에서 스크립트를 실행하기 편한 위치에 파일을 저장합니다.
root 권한 부여는 필수입니다.
ADIO_ADDR="rtmp://ebsandroid.ebs.co.kr/fmradiofamilypc/familypc1m"
#RADIO_ADDR="rtmp://ebsandroid.ebs.co.kr/iradio/iradiolive_m4a"
RADIO_ADDR="rtsp://ebsonairandaod.ebs.co.kr:554/fmradiobandiaod/bandiappaac"
RADIO_NAME="ebs_radio"
PROGRAM_NAME=$1
RECORD_MINS=$(($2 * 60))
DEST_DIR=$3
DEST_DIR2="/volume1/music"
REC_DATE=`date +%y%m%d`
TEMP_FLV=`mktemp -u`
MP3_FILE_NAME=$PROGRAM_NAME"_"$REC_DATE.mp3
docker exec Ubuntu-EBS_Record rtmpdump -r $RADIO_ADDR -B $RECORD_MINS -o $TEMP_FLV
docker exec Ubuntu-EBS_Record avconv -i $TEMP_FLV -ac 2 -ab 128 -vn -y -f mp3 $MP3_FILE_NAME
docker exec Ubuntu-EBS_Record rm $TEMP_FLV
docker exec Ubuntu-EBS_Record mkdir -p $DEST_DIR
docker exec Ubuntu-EBS_Record mv $MP3_FILE_NAME $DEST_DIR
synoindex -a "$DEST_DIR2/$DEST_DIR/$MP3_FILE_NAME"
#synoindex -a volume1/music/EBS/Listen/Listen_English_171211.mp3
#synoindex -a "$DEST_DIR/$FINAL_AAC"
4. 제어판 작업 스케쥴러 등록
synology 작업 스케쥴러에서, 녹음해야 할 시간에 저것을 실행시켜 주면 됩니다.
/volume1/SH/ebs-record.sh "Pocket_English" 20 "EBS/Pocket_English"
// /volume1/SH/ebs-record.sh "폴더명" 녹음시간 "저장위치"