장거리 운전할 때 두시탈출 컬투쇼 들으면 졸음예방도 되고 지루하지 않아서 좋습니다. 라디오가 항상 잘 나온다는 보장도 없고 오후 2시~4시에만 컬투쇼를 들을 수 있기에 저는 우분투 기반의 홈서버를 활용하여 매일 컬투쇼를 예약 녹음하고 있습니다.


우선 다음과 같이 필요한 패키지를 설치합니다.


$ sudo apt-get install mimms

$ sudo apt-get install mplayer

$ sudo apt-get install lame 


SBS 라디오를 녹음하기 위한 스크립트를 생성합니다. 다음 내용을 rec_knn_radio.sh로 저장해 주세요.


#!/bin/bash

RADIO_ADDR="mms://211.220.195.199/viewradio"

RADIO_NAME="knn_radio"


PROGRAM_NAME=$1

RECORD_MINS=$2

DEST_DIR=$3

NO=$4


REC_DATE=`date +%Y%m%d`

TEMP_ASX=`mktemp -u`

TEMP_WAV=`mktemp -u`

MP3_FILE_NAME=$PROGRAM_NAME"_"$REC_DATE"_"$NO.mp3


ID3_TITLE=$PROGRAM_NAME"_"$REC_DATE"_"$NO

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

chgrp user $MP3_FILE_NAME

mv $MP3_FILE_NAME $DEST_DIR


SBS에서 고릴라 앱을 제공하면서 mms 서버를 막아놔서, KNN이 제공하는 mms를 활용하고 있습니다. 가끔은 컬투쇼가 아닌 다른 방송이 녹음되기도 합니다.


스크립트 파일에 실행 권한을 부여합니다.


$ chmod a+x recEbsRadio.sh


crontab에 다음과 같이 등록합니다.


# m h  dom mon dow   command

00 14 * * * /home/reshout/bin/rec_knn_radio.sh sbs_cultwo_show 60 /data/media/라디오 1 > /dev/null 2>&1

00 15 * * * /home/reshout/bin/rec_knn_radio.sh sbs_cultwo_show 60 /data/media/라디오 2 > /dev/null 2>&1


다음과 같은 형식의 이름으로 저장됩니다.


/data/media/라디오/sbs_cultwo_show_20121107_1.mp3

/data/media/라디오/sbs_cultwo_show_20121107_2.mp3


원인은 잘 모르겠지만 2시간 분량을 한번에 녹음할 수 없어서, 1시간씩 2번에 걸쳐 녹음하도록 설정했습니다.


조금 더 자세한 설명이 필요하시면 제가 예전에 작성한 글을 참조하세요.

http://blog.reshout.com/2692460


우분투 리눅스를 활용하여 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 라디오 듣기에 대한 포스팅에 이어, mp3로 녹음하는 방법을 소개해 드리고자 합니다. 거원제트오디오와 같은 별도의 어플리케이션을 설치해야 될 줄 알았는데, 다음 팟 플레이어로 간단히 되더군요. 

다음 팟 플레이어의 소리 설정 > 소리 캡처(Shift + G) 기능을 활용하면 됩니다. 현재 플레이 되고 있는 소리를 mp3, ogg 등의 포맷으로 녹음해주는 기능입니다. 


mp3로 녹음한 경우, 보시는 것 처럼 1분당 대략 1MB 근처의 용량을 사용하게 됩니다. 귀트영 하루분량 30분을 녹음하면 대략 30MB 정도 되겠네요.


+ Recent posts