WD MC 분류

WD My Cloud로 MMS프로토콜 라디오 녹음하기

컨텐츠 정보

본문

1. 들어가며


http://cafe.naver.com/pogolinux/1282


위 링크의 강좌 내용과 거의 동일합니다.


마이 클라우드에 맞게 /dev/null 관련 설정과 저장 장소 변경만 있습니다.


사실 그게 중요하죠 ^^;;


EBS라디오의 경우 rtmp 프로토콜이기 때문에 mms 프로토콜과 접근 방식이 약간 다릅니다.


mms 프로토콜 다운로드를 위해 mimms 패키지 설치가 필요합니다.



2. mimms 패키지 설치


http://www.wsgvet.com/bbs/board.php?bo_table=iomega&wr_id=686


우선 위 강좌에 있는대로 1~4번까지 진행합니다.


그리고 기존 EBSradio 강좌를 진행하지 않으셨다면 스크립트가 들어갈 폴더를 생성해야 합니다. (위 강좌에는 5번에 포함)


mkdir /DataVolume/EBSradio



저장 폴더를 변경하고 싶다면 위 강좌의 2번에서 폴더 이름을 바꿔서 저장하면 됩니다.



apt-get install mimms


위 명령어로 mimms 패키지를 설치합니다.


WDMyCloud:~# apt-get install mimms

Reading package lists... Done

Building dependency tree

Reading state information... Done

The following extra packages will be installed:

  python-support

The following NEW packages will be installed:

  mimms python-support

0 upgraded, 2 newly installed, 0 to remove and 76 not upgraded.

Need to get 0 B/44.3 kB of archives.

After this operation, 187 kB of additional disk space will be used.

Do you want to continue [Y/n]? y

Selecting previously unselected package python-support.

.

.

.

.

.

(Reading database ... 27624 files and directories currently installed.)

Unpacking python-support (from .../python-support_1.0.15_all.deb) ...

Selecting previously unselected package mimms.

Unpacking mimms (from .../archives/mimms_3.2.2-1_all.deb) ...

Processing triggers for man-db ...

Setting up python-support (1.0.15) ...

Setting up mimms (3.2.2-1) ...

Processing triggers for python-support ...

WDMyCloud:~#


대략 위와 비슷하게 진행됩니다.



reboot


위 명령어를 내려 재부팅을 해줍니다.


마클 특성상 재부팅을 해야 제대로 작동하는 것들이 있더라구요.




3. 녹음 스크립트 작성하기


mms 프로토콜을 지원하는 인터넷 라디오가 많기 때문에


각각의 방송에 맞게 스크립트를 작성하면 됩니다.


예를 들어 MBC FM4U를 녹음하고 싶다면



nano /DataVolume/EBSradio/mbc_fm4u.sh


위 명령어로 들어가서



#!/bin/bash

RADIO_ADDR="mms://211.181.136.136/livefm


PROGRAM_NAME=$1

RECORD_MINS=$(($2))

DEST_DIR=$3

TEMP=/DataVolume/EBSradio/`date +%Y%m%d-%H%M`


REC_DATE=`date +%Y%m%d-%H%M`


OUTPUT_FILENAME=$PROGRAM_NAME"_"$REC_DATE.mp3

mimms -t $RECORD_MINS $RADIO_ADDR $TEMP > /dev/null 2>&1

ffmpeg -i $TEMP -f mp3 -ab 128k $OUTPUT_FILENAME > /dev/null 2>&1


rm $TEMP


mkdir -p $DEST_DIR

mv $OUTPUT_FILENAME $DEST_DIR



위 내용을 그대로 붙여넣기 하고 


컨트롤 + O, 엔터, 컨트롤 + X를 하여 저장 후 닫습니다.


위에 빨간색으로 표시한 부분이 mms 주소가 들어갈 부분입니다.



chmod 755 /DataVolume/EBSradio/mbc_fm4u.sh


위 명령어로 실행 권한을 줍니다.





하나만 더 예를 들면, SBS 파워FM의 경우 



nano /DataVolume/EBSradio/sbs_pwfm.sh


위와 같이 알아보기 쉽게 파일 이름을 정하고



#!/bin/bash

RADIO_ADDR="mms://114.108.140.39/magicfm_live


PROGRAM_NAME=$1

RECORD_MINS=$(($2))

DEST_DIR=$3

TEMP=/DataVolume/EBSradio/`date +%Y%m%d-%H%M`


REC_DATE=`date +%Y%m%d-%H%M`


OUTPUT_FILENAME=$PROGRAM_NAME"_"$REC_DATE.mp3

mimms -t $RECORD_MINS $RADIO_ADDR $TEMP > /dev/null 2>&1

ffmpeg -i $TEMP -f mp3 -ab 128k $OUTPUT_FILENAME > /dev/null 2>&1


rm $TEMP


mkdir -p $DEST_DIR

mv $OUTPUT_FILENAME $DEST_DIR



위 내용을 그대로 붙여넣기 하고 


컨트롤 + O, 엔터, 컨트롤 + X를 하여 저장 후 닫습니다.



chmod 755 /DataVolume/EBSradio/sbs_pwfm.sh


위 명령어로 권한을 줍니다.



빨간색 주소보면 아시겠죠? 


다른 방송도 마찬가지로 sh 파일을 생성하고 해당 주소를 넣으면 됩니다.



4. 테스트하기


잘 되는지 테스트 해봐야겠죠?


/DataVolume/EBSradio/mbc_fm4u.sh mbc_test 1 /shares/EBS/mbc


위 명령어를 내리면 1분동안 녹음을 하고 MP3로 변환합니다.


변환하는 시간은 녹음시간의 1/3 정도 됩니다.


1분의 경우 20초 정도가 소요되며, 20분이면 6~7분 정도 소요됩니다.


변환하는 동안엔 CPU 사용률이 100%가 됩니다.


RTMP 프로토콜의 경우 M4A로 저장하면 순식간에 변환이 가능하나,


mms의 경우 변환하지 않으면 파일이 깨지더군요;;



/shares/EBS/mbc


위 폴더로 들어가보면 해당 파일이 mbc_test_20140207-0835.mp3 이런 식으로 저장됨을 볼 수 있습니다.


1분에 대략 1MB 정도 됩니다.




5. 스케쥴 작업 넣기


녹음할 때마다 SSH 접속해서 명령을 내리면 귀찮겠죠?


그래서 자동으로 작업을 수행하게 CRON을 쓸 것입니다.


스케쥴러 강좌는


http://www.wsgvet.com/bbs/board.php?bo_table=iomega&wr_id=200


위 링크의 5번에 있으니 참조하시면 됩니다.


간단하게 예를 들면


00 18 * * * /DataVolume/EBSradio/mbc_fm4u.sh BCS_Music_Camp 120 /shares/EBS/mbc


위와 같이 넣으면 매일 오후 6시부터 2시간 동안 녹음을 하게 됩니다.


20분까지는 해봤는데 2시간은 해보질 않아서 잘 될지 모르겠네요.



이상 mms 라디오 녹음 강좌를 마칩니다.

관련자료

  • 서명
    우성짱의 NAS를 운영하고 있습니다.

    저의 즐거움이 여러분의 즐거움이면 좋겠습니다.

댓글 0
등록된 댓글이 없습니다.
전체 99 / 4 페이지
RSS

최근글


새댓글


알림 0