Raspberry Pi(Raspbian Wheezy)에 node.js를 설치해서 테스트해보았다. 강좌(http://pyrasis.com/nodejs/nodejs-HOWTO)를 따라서 콘솔 메시지로 Hello World까지는 출력을 했지만, express 모듈을 설치하고 사용하는 것이 그리 순탄치 않다.
npm ERR! Error: failed to fetch from registry: express
위와 같은 메시지가 나타나며 패키지 설치에 실패한다든지, 세그멘테이션 오류가 발생한다든지 하는 문제가 생긴다.
다음의 명령으로 패키지를 제거한 뒤에,
sudo apt-get purge nodejs npm
다음의 명령으로 4.2.4 버전을 다시 설치했다.
wget http://nodejs.org/dist/v4.2.4/node-v4.2.4-linux-armv6l.tar.gz
cd /usr/local
sudo tar xzvf ~/node-v4.2.4-linux-armv6l.tar.gz --strip=1
지난 번에 수리를 했던, 사무실에 둔 IBM A22e 2655 노트북은 펜티엄3 CPU에 현재 256MB 램을 갖고 있는데, 동영상 스트리밍으로 강좌를 보기에는 어려움이 있었다.
Lubuntu 14.04를 설치한 HP tx1000을 집에서 시험해보니, 파이어폭스 브라우저에서 동영상 강좌를 보고 문제를 푸는 데에 지장이 없다. AMD (Turion 64 X2 Mobile Technology) CPU에 RAM은 512MB만 남겨둔 상태. 다음에 사무실에 들릴 때 이걸로 바꿔야겠다.
3. 스타일(테마)을 변경하고 싶으면, 데모 페이지에서 원하는 스타일의 이름을 알아둔 다음, 스타일 디렉터리에서 해당되는 파일명을 확인하고, 1.의 템플릿 HTML을 수정. 예를 들어, Tomorrow Night 스타일을 적용하려면 default.min.css를 tomorrow-night.min.css로 변경한다.
라인 코퍼레이션이 법적으로 잘못한 것은 없다. 그렇다면 도덕적으로는 잘못했나? 내 생각엔 그렇지 않다. 협상이 잘 안되니 조정을 거쳤을 것이다. 오히려 도메인 이름을 선점한 것을 가지고 한몫 잡아보려한 사람이 뜻대로 일이 풀리지 않으니 송사와 언론 플레이를 시도했지만, 사리에 어둡고 과정이 치밀하지 못했기 때문에 제 풀에 넘어진 것이다.
도메인을 내놓게 된 그 사람은 이제 일본 회사가 한국의 개인을 등쳐먹는 듯한 구도를 억지로 만들어가려고 하고, 이에 몇몇 사람들은 케케묵은 일본에 대한 앙금을 토해내고, 또 어떤 이들은 악덕 기업과 헬조선을 건져올린다. 신물 난다.
한국인은 늘 감정을 앞세우다가 이성을 잃고 손해를 보는 듯하다. 그 와중에 이성적인 판단을 했던 이들까지 지탄을 받는다.
한 줄 요약: 그냥 라인이 십만 달러 지르고 생색 냈으면(그 일을 마케팅 소재로 삼았으면) 차라리 좋았을 것을...
앞의 글에서는 Raspberry Pi에 USB 마이크를 연결하고 arecord와 aplay 명령을 사용하여 소리의 녹음과 재생을 해보았는데, 이번에는 같은 일을 Python에서 시도해 보았다. 사용한 라이브러리는 PyAudio라는 것으로, PortAudio의 Python 바인딩이다.
Raspberry Pi는 소리를 출력할 수 있지만, 아날로그 마이크를 연결해서 소리를 녹음할 수 없다. 그래서 ① 마이크가 내장된 USB 카메라를 사용하거나, ② USB 사운드카드에 마이크를 연결한다. 내가 선택한 것은 ③ USB 동글 형태의, 사운드카드와 마이크 일체형(?)으로, "USB Microphone" 비슷한 이름이 붙은 물건이다. eBay에서 1.65 달러에 구입했다.
$ arecord -l **** List of CAPTURE Hardware Devices **** card 1: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio] Subdevices: 1/1 Subdevice #0: subdevice #0
위에서는 card 번호가 1, device 번호가 0이다.
녹음해본다. 앞에서 알아낸 번호를 -D hw: 인자에 써준다.
$ arecord -D hw:1,0 -f S16_LE -d 5 -r 44100 test.wav Recording WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono
만약 장치(-D 옵션)를 올바로 지정하지 않으면 다음과 같은 오류가 발생한다.
arecord: main:682: audio open error: No such file or directory
비트율(-r 옵션)을 생략하거나 부적당한 값을 지정하면 경고가 발생할 수 있다. 'got = '에 표시된 값으로 바꿔서 다시 녹음해본다.
Warning: rate is not accurate (requested = 8000Hz, got = 44100Hz) please, try the plug plugin
녹음된 파일을 재생해본다.
$ aplay test.wav Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono
음량을 조절하려면 alsamixer를 실행한다. 처음 보이는 화면은 재생 음량이고, 탭을 한 번 누르면 녹음 음량이 보인다. 이때, <F6> 키를 누르고 사운드카드를 선택한 다음, 위아래 화살표 키로 음량을 조절한다. 스페이스 바를 눌러 "CAPTURE"라는 빨간 글씨가 보이도록 해야한다. <esc> 키로 종료한다. 설정 값을 저장해두하려면 sudo alsactl store를 실행한다.