우분투에서 EBS 라디오 예약 녹음하기

우분투 리눅스를 활용하여 EBS 라디오를 예약 녹음하는 방법을 소개합니다.
우선 다음과 같이 필요한 패키지를 설치합니다.
$ sudo apt-get install mimms
$ sudo apt-get install mplayer
$ sudo apt-get install lame 
EBS 라디오를 녹음하기 위한 스크립트를 생성합니다. 
다음 내용을 recEbsRadio.sh로 저장해 주세요.
#!/bin/bash
RADIO_ADDR=”mms://211.218.209.124/L-FM_300k”
RADIO_NAME=”ebs_radio”

PROGRAM_NAME=$1
RECORD_MINS=$2
DEST_DIR=$3

REC_DATE=`date +%m%d`
TEMP_ASX=`mktemp -u`
TEMP_WAV=`mktemp -u`
MP3_FILE_NAME=$PROGRAM_NAME”_”$REC_DATE.mp3

ID3_TITLE=$REC_DATE”_”$PROGRAM_NAME
ID3_ARTIST=$RADIO_NAME
ID3_ALBUM=$PROGRAM_NAME
ID3_YEAR=`date +%Y`

mimms -t $RECORD_MINS $RADIO_ADDR $TEMP_ASX
mplayer -ao pcm:file=$TEMP_WAV $TEMP_ASX
lame –preset voice –tt $ID3_TITLE –ta $ID3_ARTIST –tl $ID3_ALBUM –ty $ID3_YEAR $TEMP_WAV $MP3_FILE_NAME

rm $TEMP_WAV
rm $TEMP_ASX

mkdir -p $DEST_DIR
mv $MP3_FILE_NAME $DEST_DIR
다음과 같이 recEbsRadio.sh 파일에 실행 권한을 부여합니다. 
$ chmod a+x recEbsRadio.sh
첫번째 인자는 프로그램 이름 
두번째 인자는 녹음 시간(분)
세번째 인자는 mp3 파일 저장 디렉토리
사용 예제는 다음과 같습니다. 
$ ~/recEbsRadio.sh EarEng 30 ~/ebs 
지금부터 30분 동안 EBS 라디오를 녹음하여 ~/ebs/EarEng_0201.mp3로 저장하겠다는 의미입니다.
cron을 활용하여 월요일~토요일 오전 6시부터 30분 동안 귀트영을 녹음하는 설정을 해보겠습니다. 
cron에 스크립트 실행을 등록하기 위해 다음 명령어를 실행해 주세요.

$ crontab -e

에디터가 실행되면 다음 한 줄을 추가 후, 저장하고 나오시면 됩니다. 
00 06 * * 1-6 ~/recEbsRadio.sh EarEng 30 ~/ebs &> /dev/null
이는 월요일~토요일(1-6) 매일 오전 6시(06) 00분(00)에 recEbsRadio.sh를 실행하겠다는 의미입니다. 
귀트영, 운트영, 입트영을 모두 녹음하시려면 다음 3줄을 추가해 주세요. 
00 06 * * 1-6 ~/recEbsRadio.sh EarEng 30 ~/ebs &> /dev/null 2>&1
30 06 * * 1-6 ~/recEbsRadio.sh LuckEng 20 ~/ebs &> /dev/null 2>&1
00 07 * * 1-6 ~/recEbsRadio.sh MouthEng 20 ~/ebs &> /dev/null 2>&1
다음 명령을 통해 cron에 제대로 등록되었는지 확인할 수 있습니다. 
$ crontab -l

이 글은 다음 URL을 참조 및 보완하여 작성되었습니다. 

“우분투에서 EBS 라디오 예약 녹음하기”에 대한 11개의 생각

  1. 좋은 내용 감사합니다.
    EBS 라디오 방송 관련해서 쓰신 글 링크를 제 블로그에 소개했습니다.
    혹시 문제가 된다면 삭제하겠습니다. 그럼 좋은 하루 보내세요~ 🙂

  2. 제 우분투 환경에서 테스트 하면서 생긴문제 입니다.
    쉘스크립트를 만든 후 직접 실행 하면 레코딩이 잘 되지만
    crontab에 등록시키면 안되거나, 48k의 용량으로 5초간만 녹음되는 문제가 발생했습니다.
    문제는 터미널에 출력메세지에 있었습니다. crontab에 등록시 아래와 같이 해 주시면 정상 동작합니다.
    00 06 * * 1-6 ~/recEbsRadio.sh EarEng 30 ~/ebs > /dev/null 2>&1
    주인장님 좋은 내용 감사합니다. 덕분에 손쉽게 녹음할수 있게 되었네요~

  3. 저는 CentOS5를 돌리고 있는데요.
    mplayer와 lame은 설치했는데
    mimms설치에서 애를 먹고 있습니다.
    mimms설치때 python버전때문에 python버전업을 했더니
    libc.so.6(GLIBC_2.7)(64bit)
    rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadIsXz) <= 5.2-1 이런것들을 요구하더군요. 일단 python버전업때문에 오늘은 기진맥진입니다. 좋은 방법이 없을까요? 저것들을 찾아서 설치하면 될까요?

댓글 남기기