넷북에 리눅스 깔고 Music Streaming Server 만들기. :: Horizontal Grays S2

꽤 오래전에 그 당시 기준 나름 싸게, 현 시점 기준 비싸게(ㅋㅋ)주고 산 넷북이 하나 있다.


이름하야 Acer Aspire-one AOA150 (응? AOA?? AOA 좋음 ㅋㅋㅋ)


사양이 

CPU : Intel Atom N270 1.6Ghz (1세대 아톰)

RAM : 1G

HDD : 160G

Monitor : 8.9인치 (1024 * 600) <- 이 세로 600 해상도가 아주 사람 미치게 한다 


여튼 이놈의 넷북이 아는 사람은 알겠지만 그 성능이 참 안타깝고도 안타까워 딱히 활용하기가 지랄같다.

그래서 해본게


1. 윈도우XP에 외장하드 붙여서 네트워크 하드로 써보자

 - 속도 1Mbps 나옴.. 너무 느림


2. Xpenology 설치해서 NAS로 써보자.

 - 다운받을 수 있는 모든 버전별 Xpenology 이미지들 다 적용안됨 T.T

  (일반PC에 설치할 수 있는 무료 NAS 운영체제가 몇가지 있는데 Xpenology , Free4Nas, OpenMediaVault 등이 있다.)

 - 그 와중에 예전에 해외구매 해두었던 Belkin 공유기에 DD-WRT에 Tomato 핵펌 올리는데 성공, 여기에 외장하드 (Ext3 포맷하고) 붙이니 속도 10MBps 가까이 나옴 

 


3. 리눅스 중에 가볍다는 Mint Linux 설치해보자.

  - Linux Mint 16 Petra Mate 32Bit 설치 성공

 - Interface도 괜찮고 나름 나쁘지 않게 돌아가나 저놈의 세로 해상도 600은 웹서핑하기도 지랄맞음 T.T



그렇다면 요놈을 홈시어터용 PC로 만들어보자고 결정하고 XBMC 설치

- XBMC 설치는 잘 되나 1080P  동영상 안돌아감, 720P 동영상도 힘들어함


그래서 대체 이놈을 뭐에 써먹나 고민중에 내린 결론이 뮤직서버로 만들면 어떨까 해서 검삭해보니

리눅스를 뮤직 스트리밍 서버로 사용하는 사람이 좀 있었다!!!


여튼 그래서 Mint Linux 에 MPD(Music Player Daemon) 을 설치하기로 결정!!


1. ALSA 오디오 출력 설치 (기본적으로 깔려있을꺼임!)

 


역시 이미 깔려있슴


2. MPD와 MPD Client 설치 

 MPD Client Program은 뒤적여보니 ncmpc를 많이 쓰나 봄




이렇게 설치


3. MPD 설정

nano /etc/mpd.conf

로 mpd 설정파일 편집한다

(nano 말고 vi를 쓰건 뭘 쓰건 텍스트 편집기 사용은 자기 마음)






bind_to_address 에서 "localhost" -> "0.0.0.0" 으로

밑에 #port "6600" -> port "6600" (#제거)


포트6600이 있는 걸로 봐서 원격에서 접속시 공유기 포트포워딩 mpd포트 6600번 해주면 될것 같음



#metadata_to_use 에서 #제거하고 metadata_to_use 로 metadata 사용 가능하게 만들기




심볼릭링크를 이용해서 음악을 가져오기 위해서

follow_outside_symlinks 와 follow_inside_symlinks 앞에 # 제거

(심볼릭 링크가 뭔진 아직 모르겠슴.. 이럴때 걍 시키는 대로 하는거임 ^^;;)




원격접속시 사용할 비밀번호 설정

사용하고자 한다면 #password 앞에 # 제거 그래고 "password@read,add ..." 에서 password 부분에 원하는 암호 입력



input 비활성화.. 앞에 다 #붙여서 비활성화 시킨다. 

물론 입력기능을 쓰고자 한다면 알아서 쓰시길



오디오 출력관련

첨에 설치확인했던 것처럼 오디오 출력은 alsa를 이용한다. 여기서 type "alsa"를 제외하곤 다 비활성화 되어있음, 그대로 쓰면 됨

하나 확인해야할 것은 device다.

일단 출력이 하나고 기본출력이면 그냥쓰면 될것 같은데 난 일전에 구매한 USB-DAC를 사용하고자 한다. 

아직 그걸 붙인건 아니지만 그걸 붙이면 수정해줘야 할듯


그렇다면 자기 device 확인 방법은 일단 편집기 저장하고 터미널로 돌아가자


터미널에서 aplay -l 해보면 장치목록이 나온다.

여기서 보면 0번 카드 Intel HDA 어쩌구 저쩌구

즉 위에 mpd.conf 파일의 출력 관련 항목에서

device "hw:0,0" 에서 앞의 0이 출력장치 번호이다.


나중에 USB-DAC를 연결하고 장치목록을 확인해보니 1번이더라 그리고 그쪽으로 출력을 하고 싶다면

device "hw:1,0" 이라고 하면 된다.... 될꺼다 ^^;



httpd 출력 설정

보아하니 외부에서 http로 접속할 때 음악의 출력을 내보내주는 부분에 대한 설정인듯하다.

일단 이놈은 사용해야 할 듯해서 #을 지워서 사용가능하게 했다.

encoder 항복에서 vorbis는 ogg포맷 lame은 mp3포맷이라는데 ogg포맷은 문제가 생겼다고 해서 나도 mp3포맷으로 설정

bitrate 192kbps, format 44100:16:1 이면 CD음질 일게다.




Internal Buffer Size 설정

audio_buffer_size의 앞에 #을 제거하여 사용하도록 설정하고 원래 "2048" 이었는데 4배인 "8192"로 설정했다.

(이게 뭐 얼마나 리소스 잡아먹겠어 하는 맘임.. 결과는 아직 모르겠슴 ㅋ)


자 이렇게 일단 설정을 마치고

네트워크 설정을 해야하는데 우선 지금 회사 내부네트워크 이므로 별다른 설정없이 테스트해 볼 생각


ifconfig 로 현재 연결된 무선네트워크의 ip를 보니 192.168.0.15 다


기억해두고 리부팅


4. MPD 동작 확인



sudo /etc/init.d/mpd restart로 확인했는데 266라인에서 뭐가 문제가 생겼단다.. --+


자 그럼 다시 nano /etc/mpd.conf 로 문제의 266라인을 보자.



아.. 이런 #audio_output 에서 #을 안지웠다. 그래서 지우고

sudo /etc/init.d/mpd restart




오.. 이제 문제없이 MPD가 시작되었다.!


5. 음악파일 MPD폴더에 링크

테스트를 위해 다운 받은 음악폴더를 MPD폴더에 링크 시킨다.

여기서 외장하드 등의 다른 장치는 /media/장치/음악폴더 를 이용하여 링크시킨다.


링크는 ln -s 음악이 들어있는 경로 및 폴더 /var/lib/mpd/저장할링크이름 으로 한다.


나는 테스트할 음악을 /home/jslee/music에 넣어두었고 저장할 링크이름은 imusiclink로 했다.



6. ncmpc로 데이터베이스 업데이트

그리고 터미널에서 ncmpc 실행하고 아까 설정한 비밀번호 입력하여 들어간뒤 Ctrl + u 하면 데이터베이스를 업데이트 하는데...



이런 아무것도 안뜬다 ㅠㅜ


아마 음악파일 MDP폴더에 링크시키는 것에 문제가 있지 않았는데 그건 아니고 저건 그냥 playlists 재생한게 없어서 안뜨는거

3번 열람을 누르면 아까 링크한 음악들이 보인다 ㅋ


7. 그런데 ncmpc 가 불편해서 그런지 sonata라는 클라이언트를 쓰나보다. 아마 GUI를 지원해서 그런듯

sudo apt-get install sonata

 위와 같이 sonata 설치


설치가 완료되면  sonata 실행하고 아까 입력한 비밀번호 치면



위와 같이 화면이 뜨고 Library에 아까 링크한 음악들이 표시된다.

재생할 음악을 선택하나 뒤 우측 마우스 버튼 클릭해서 add 하면 Current탭에 음악이 표시되고 이 음악을 재생시킬 수 있다.

이렇게 sonata 실행해서 음악감상하면 끝....

끝???


아.. 내가 원한건 아이폰이나 아이패드등 다른 기기를 클라이언트로 이용하는 것인데...


8. 다른 기기를 클라이언트로 사용

 아이폰 : mpod

 아이패드 : mpad

 안드로이드 : mpdroid

라는 MPD 클라이언트 어플이 있단다.


 우선 아이폰에 mpod 설치하고 실행하고

 Connections/Server에 넷북의 무선 IP 192.168.0.15 입력

 Connections/Password에 아까 비밀번호 입력해서 연결하고

 Select Music/song/playlist 를 누르니

오~ 아까 그 음악들이 보인다.

여기서 재생하면 끝


물론 이것은 내부네트워크니까 그냥 한거고

아까 말한것처럼 외부에서도 사용하기 위해서는 공유기 포트포워딩 하고 DDNS 받아서 설정해야할 것이다.


아래 링크 참고해서 작성 (감사합니다)

http://ko.goldenears.net/board/ST_TipInfo/3155439




+ Recent posts