로그인
Sign in
Extra Form


 비디오/오디오 홈네트워크를 위한  DLNA/BubbleUPnP 서버 만들기



xtreamer2.jpg 

                                                          <필자의 홈네트워크 멀티미디어 환경>

유니온 정보통신의 Xtreamer ultra HTPC(Home Theater Computer/현재 단종))에 오디오 앰프(데논)과 CJ헬로비전의 셋탑박스가 연결되어 오디오 앰프를 통해 HTPC및 다른 데스크탑, 노트북, 스마트폰의 콘텐츠를 감상할 수 있는 환경. Xtreamer Ultra HTPC는 인텔 아톰 D525 CPU, 4G Ram, 1G 2.5' HDD, Gigabyte RTL8111 Ethernet과 리모콘 사용이 가능한 IR이 내장된 제품으로, No1.Linux 2014.10 버전이 설치되어 있고, HTPC 미디어센터 프로그램으로 XBMC(Xbox Media Center, 현재는 KODI로 이름이 바뀜)를 전용. 이 리눅스박스에는 삼바 서버가 설치되어 삼바를 통해 다른 PC에서 데이터를 전송하고 있으며, DLNA와 BubbleUPnP 서버가 설치되어 있어서 XBMC와 스마트폰에서 멀티미디어 콘텐츠를 쌍방향으로 즐기고 있음.


1. 준비물

- 586이상 PC와 No1.Linux 2014.12 버전 또는 No1.Linux 2016 Spring 이후의 버전

- ReadyMedia(minidlna)

- 스마트폰 DLNA Player App(GinkoDlna)

- KODI(XBMC) MediaCenter


2. DLNA 서버 구축


* DLNA란?


DLNA(Digital Living Network Alliance)는 DLNA 인증을 받은 기기간에 네트워크로 멀티미디어 콘텐츠를 서로 공유하고 재생할 수 있도록 규약을 정의하는 단체를 말합니다. 가정에 DLNA 인증을 지원하는 기기들이 있다면 해당 기기간에 동영상이나 음악을 재생할 수 있습니다.


* DLNA 서버 구축 목적


스마트폰이나 노트북 또는 PC에서 재생한 미디어(동영상, 음악)를 텔레비전에서 보거나 듣길 원합니까? 이러한 목적으로 여러가지 기술이나 제품들이 개발되었는데, 그 중의 하나가 DLNA라는 것입니다. DLNA 기능이 있는 스마트TV를 사용한다면 스마트폰에 있는 멀티미디어 콘텐츠를 스마트TV으로 전송하여 시청또는 청취할 수 있습니다. 그러나 DLNA를 지원하지 않는 TV인 경우에는 스마트폰에 있는 미디어 콘텐츠를 즐기려면 MHL 케이블을 사용하거나 미라캐스트(miracast)를 지원하는 HDMI 동글과 같은 장치를 사용해야 하는데, 비용 부담이 따르게 됩니다. 우리가 리눅스를 쓰는 장점중에 하나가 비용을 들지 않고서도 이러한 장치와 비슷한 기능을 만들어 사용할 수 있다는 점입니다. 따라서 넘버원 리눅스에서는 DLNA를 지원하지 않는 가엾은 텔레비전을 DLNA 지원되는 스마트TV로 변신할 수 있도록 DLNA와 BubbleUPnP서버를 만드는 방법에 대해서 알아볼 것입니다. DLNA와 BubbleUPnP 서버를 구축하게 되면 리눅스 서버가 오디오 앰프와 티비와 연결되어 있다면 스마트폰, 노트북, 다른 PC에 있는 동영상 파일을 텔레비전에서 감상할 수 있으며, 오디오 파일은 오디오 앰프에서 감상할 수 있게 됩니다. 자, 멀티미디어에 많은 관심이 있는 리눅스 사용자를 위하여 DLNA 서버를 구축하는 방법을 살펴보겠습니다.


* MiniDLNA 서버 구축


MiniDLNA는 DLNA/UPnP-AV 클라이언트와 완벽한 호환이 될 수 있도록 넷기어에서 ReadyNAS 제품 개발을 위해서 만든 서버 소프트웨어로 현재는 ReadyMedia라는 용어로 바뀌었습니다. minidlna는 대부분의 리눅스 배포판에서 지원하고 있어서 별도로 다운로드할 필요없이 각 배포판의 리포지토리 서버로부터 패키지 설치 도구로 손쉽게 설치할 수 있습니다. 그러면 넘버원 리눅스에서 이 서버 패키지를 설치하여 설정하는 방법은 다음과 같습니다.


step1. 시냅틱 설치 도구를 실행하여 검색 도구 아이콘을 클릭하여 dlna를 키워드 검색하여 minidlna를 설치합니다. 또는 콘솔에서 apt-get install minidlna 명령으로 설치합니다.

  # apt-get install minidlna


step2. minidlna의 설정 파일은 /etc/sysconfig/minidlna입니다. 다른 배포판에서는 /etc/minidlna.conf 파일을 사용합니다. 이 파일을 편집기로 열어서 다음 설정들을 여러분 환경에 맞게 설정합니다.

 port=8200                   # 관리자 모드로 접속하고자 할 때의 TCP 포트입니다. 기본 포트는 8200이지만 다른 포트로 사용할 경우에 변경합니다.

 network_interface=eth0   # 데이터 통신에 사용할 이더넷 인터페이스를 지정합니다. 네트워크가 하나만 있는 경우에는 그대로 둡니다.

 media_dir=                  # 공유할 멀티미디어 콘텐츠의 위치를 설정하는데, 경로만 설정해도 되고, A,/data/Musicz와 같은 형태로도 설정합니다.


그외의 설정들은 주석에 있는 설명을 참조로 해서 수정하면 됩니다. 중요한 것은 media_dir 옵션이므로 서로 공유할 경로만 정확히 지정해 주면 됩니다.


step3. minidlna 데몬을 다음과 같이 띄웁니다.

  # /etc/init.d/minidlna restart

  Stopping minidlna                                                  [확인]

  Starting minidlna                                                   [확인]

 #


step4. 파이어폭스를 실행하여 http://localhost:8200 로 접속합니다.

dlna1.png

DLNA 서버에 접속하면 DLNA 서버 상태를 볼 수 있습니다. media_dir 옵션으로 명시된 경로에 파일들이 존재하게 되면 Media Library 에서 공유 가능한 파일 개수들을 확인할 수 있습니다.


* 방화벽 설정


넘버원 리눅스 2016이후의 버전부터는 기본적으로 방화벽이 적용되고 있기 때문에 다른 네트워크에서 접근할 때는 방화벽을 수정해 주어야 합니다. Minidlna는 TCP 8200과 UDP 1900번을 사용하고 있으므로 /etc/shorewall/rule.drakx 파일에 다음과 같이 추가한 후에 shorewall 데몬을 다시 띄워 주면 됩니다.


 ACCEPT  net     fw      tcp     8200    -
 ACCEPT  net     fw      udp    1900    -


그리고나서 다음과 같이 shorewall 방화벽을 재실행합니다.

 [root@xtreamer shorewall]# /etc/init.d/shorewall restart



* DLNA 공유및 실행


DLNA 서버가 정상적으로 동작되고 있음을 확인하였다면 이제는 스마트폰에 DLNA 플레이어 앱을 설치합니다. 구글 플레이에서 DLNA를 검색하여 DLNA Player(GinkgoDlna)를 설치합니다.

Screenshot_2016-04-29-16-13-12[1].png


이 어플 말고도 AllConnect나 UPnPPlay 등 그외의 DLNA 플레이어를 사용해도 됩니다. 또한 UPnP를 지원하는 장비가 있고 그 장비로 멀티미디어를 전송하려면 BubbleUPnP를 설치해도 되는데, 이 앱에 대해선 뒷부분에 다시 언급하게 될 것입니다. 일단은 GinkgoDlna DLNA Player를 선택하여 설치하는 것으로 하겠습니다.


step1. DLNA Player를 설치한 후 실행합니다.  [LIBRARY]탭의 All Servers에서 DLNA 서버 리스트가 보여집니다.

Screenshot_2016-04-29-19-07-03[1].png


step2. 해당 DLNA서버를 선택하면 공유 폴더들이 보여집니다.

Screenshot_2016-04-29-19-09-14[1].png


step3. minidlna 설정파일의 media_dir로 설정된 디렉토리에 동영상이나 오디오 파일을 복사합니다.


step4. 스마트폰의 DLNA 앱에서 복사한 오디오 파일에 있는 폴더로 이동하여 해당 파일을 실행합니다.


step5. [PLAYING] 탭을 클릭하여 [Android Renderer] 렌더러를 선택합니다.

Screenshot_2016-04-29-20-56-25[1].png

step6. 그리고 다시 실행 버튼을 클릭하면 스마트폰에서 사운드가 나오게 됩니다.



3. BubbleUPnP 서버 구축


DLNA 서버를 구축하여 스마트폰에서 서버의 멀티미디어 콘텐츠를 이용하는 방법을 ReadyMedia를 통하여 알아보았습니다. 이번에는 ReadyMedia 서버에 BubbleUPnP 서버를 구축하여 ReadyMedia 서버쪽으로 스마트폰에 있는 오디오 파일이나 다른 PC에 있는 오디오 파일을 스트리밍하는 방법을 알아보겠습니다.


DLNA 서버/BubbleUPNP서버             <----- 스마트폰 GinkgoDLNA        <--------  스마트폰 오디오 파일 / 다른PC 오디오 파일



3.1. BubbleUPnP


BubbleUPnP는 UPnP/DLNA를 지원하는 오디오 리시버와 같은 장비로 재생된 오디오 콘텐츠 데이터를 전송해 주는 역할을 합니다. 크롬캐스트나 와이파이 무선 뮤직 리시버쪽으로 오디오 파일의 음향을 전송해 주어 그 장비에서 오디오를 들을 수 있게 해 줍니다. 오디오 앰프가 무선을 지원하지 않는 경우 무선 뮤직 리시버를 앰프에 달아서 스마트폰에 있는 데이터 또는 스트리밍 플레이어의 데이터를 전송시켜 앰프의 스피커로 들을 때 유용합니다.

BubbleUPnP서버에 관한 자세한 내용은 http://www.bubblesoftapps.com/bubbleupnpserver 를 참고하기 바랍니다.


3.2. BubbleUPnp 서버 구축하기


step1. 넘버원 리눅스에서는 BubbleUPnP서버 패키지를 지원하지 않으므로 BubbleUPnP 사이트에서 페도라용으로 다운로드합니다. 


32비트용 다운로드 (No1.Linux-2014.10.25 버전)

64비트용 다운로드 (No1.Linux-2016-Spring 이후의 버전과 No1.Linux-2014.12 64비트 버전)

                    

step2. 콘솔창을 열어서 다운로드된 경로(~/Downloads)로 이동하여 apt-get 도구를 이용하여 다음과 같이 설치합니다.

  # apt-get install bubbleserver-0.8.2-3.x86_64.rpm


step3. /opt/buibbleserver 디렉토리로 이동하여 다음과 같이 실행하여 bubbleupnpserver 데몬을 띄웁니다.

  # chmod +x launch.sh

  # sh launch.sh &


step4. 파이어폭스를 싫행하여 http://localhost:58050 주소로 접속합니다.

bubbble1.png


step5. [Media Renderers] 탭을 클릭합니다. 렌더러 장치가 없으면 아무런 것도 나오질 않습니다. 예제 화면의 경우에는 AirTry라는 와이파이 Music Receiver입니다.

bubble2.png

상기같은 리시버나 블루투스로 된 뮤직 리시버가 있으면 편리하겠지만, 이런 것이 없어서 렌더러를 만드는 것이므로, 리눅스 박스에 렌더러해 주는 프로그램을 설치해서 그 프로그램을 통해서 리시버 역할이 이뤄지게 하면 될 것입니다. 이러한 역할을 해 주는 리눅스용 대표적인 프로그램으로는 XBMC(KODI)가 있습니다. Enna라는 프로그램도 있다고 하지만, 넘버원리눅스에서는 사용할 수 없으므로 패스하고, 제가 애호하는 KODI(예전에는 XBMC이었다가 현재는 KODI로 바뀌었음)로 이용하겠습니다. DLNA서버에서 kodi 또는 xbmc를 실행합니다. 

bubble3.png

step6. KODI에서 [시스템 > 설정 >  서비스 > UPnp./DLNA]를 선택해서 모든 항목을 체크합니다.

bubble4.png


step7. [Media Renderes]에 XBMC(KODI)가 자동으로 추가됩니다.

bubble5.png


step8. 스마트폰 GinkgoDlna DLNA 플레이어의 [PLAYING]를 선택해서 Android Renderer를 누르면 XBMC가 보이는데, 이를 선택합니다.


step9. 자, 이제 플레이 버튼을 누르면 DLNA 서버에서 사운드가 나오게 됩니다.


* 인터넷 라디오 스트리밍 출력


DLNA 플레이어 GinkgoDlna는 오디오 파일을 재생하여 DLNA 서버로 출력하는데 괜찮은 프로그램이지만, 인터넷 라디오 방송을 들고자 할때는 불편함이 있습니다. 이런 경우에는 앞서 언급했던 BubbleUPNP 어플을 이용하면 됩니다. 그러면 구글 플레이에서 이 어플을 검색하여 설치하고나서 인터넷 라디오 방송 어플을 실행합니다. 필자는 Tunein를 선호하므로 이 어플을 이용하여 설명하겠습니다.

스마트폰의 BubbleUPnP 크롬캐스트용은 무료버전이긴 하지만, 스트리밍을 이용할 때 제약이 있습니다. 동일한 앱에서 3번 이상 재생이 불가하기 때문에 스트리밍을 주로 이용하는 경우에는 라이선스를 구입해서 이용하는 것이 좋습니다.


Step1. 크롬 캐스트용 BubbleUPnP를 검색하여 설치합니다.

a023.png  


step2. Tunein를 실행한 후 청취하고자 하는 방송을 선택하여 실행합니다. 실행된 방송 플레이어를 누릅니다.

Screenshot_2016-04-29-21-18-49[1].png


step3. 스트리밍 재생기에 버블UPnP 아이콘이 생성되는 스마트폰에서는 아이콘을 클릭하면 되고, 그렇지 않은 스마트폰에서는 공유 아이콘을 클릭하여 버블UPnP를 선택합니다.

Screenshot_2016-04-29-21-19-39[1].png


step4. 왼쪽 상단에 짝대기 3개로 된 아이콘을 누르면 설정 화면이 나옵니다.

Screenshot_2016-04-29-21-22-35[1].png


step5. Renderer 항목에서 XBMC를 선택합니다.,

Screenshot_2016-04-29-21-23-21[1].png



step6. XBMC와 연결된 스피커에서 인터넷 라디오 방송이 나오게 됩니다.


Screenshot_2016-04-29-21-23-31[1].png



* 스마트폰의 유투브 화면을  XBMC가 있는 텔레비전 화면으로 스트리밍하기


이번에는 스마트폰의 유투브 화면을 티비에서 즐기는 방법은 유튜브에서 공유 아이콘을 클릭하여 버블UPnP를 실행하여 KODI로 출력하면 되는데, 이번에는 DLNA player로 Allconnect라는 앱을 이용해 스트리밍하는 방법을 알아봅니다. 이를 위해서 구글 플레이에서 DLNA를 검색하여 Allconnect를 설치해야 합니다. Allconnect를 설치한 후 실행하면 자동으로 UPnP 서버를 검색하여 보여줍니다. Screenshot_2016-05-02-02-04-37.png

Xtreamer Ultra HTPC에 XBMC가 실행중이므로, Allconnect 앱은 XBMC를 찾아서 상기 그림처럼 방사성 원형안에 보여줍니다.  XBMC가 정상적으로 나타남을 확인하였다면 이 프로그램을 종료하고 유투브 앱을 실행합니다. 유튜브 앱을 클릭하면 오른쪽 방향의 방향 아이콘(공유 아이콘)이 보이는데, 이 이이콘을 눌러 Allconnect를 선택합니다. Allconnect에서 검색한 XBMC를 클릭하면 XBMC에서 유투브 화면을 볼 수 있게 됩니다.


* 다른 리눅스 데스탑에서의 DLNA 이용하기 


1. VLC

VLC 프로그램을 실행한 후에 [보기 > 로컬 네트워크 > 유니버셜 플러그앤플레이]를 선택한 후 오른쪽 창에서 자동검색된 DLNA 서버를 클릭해서 원하는 콘텐츠를 선택하여 실행해 주면 됩니다.

dlna2.png


2. XBMC(KODI)

UPnP를 지원하는 리눅스용 프로그램으로는 XBMC가 있는데, XBMC에서 DLNA 서버의 콘텐츠를 이용하는 방법에 대해서 알아봅니다. 동영상을 공유하고자 하는 경우에는 [비디오 > 파일 > 비디오추가 > 탐색 > UPnP 장치]를 선택하여 DLNA 서버를 선택하면 됩니다.

xbmcupnp1.pngxbmcupnp2.png

오디오 파일도 마찬가지로 [음악 > 파일 > 오디오추가 > 탐색 > UPnP 장치]에서 DLNA 서버를 선택한 후 재생하고자 하는 파일을 골라 재생하면 XBMC를 통해서 DLNA 서버의 콘텐츠를 즐길 수 있습니다.




List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 넘버원 리눅스 팁은 FAQ 게시판으로 zharyong 2018.07.15 1866
153 [엑스] BAND 설치하기 file zharyong 2016.09.30 1809
152 [엑스] XFCE 오픈데스크탑 사용하기 file zharyong 2016.09.24 1772
151 [KDE위젯] AppMenu QML 런처 프로그램 사용 file zharyong 2016.09.21 1549
150 [No1.Linux-2016/시스탬] 한글2010에서 PDF 문서 만들기 file zharyong 2016.09.12 1782
149 [멀티미디어] KODI에서 IPTV 시청하기 file zharyong 2016.09.12 6833
148 [엑스] Mate(마테) 데스크탑 환경 file zharyong 2016.09.07 1562
147 [엑스] LXQT 오픈데스크탑 사용하기 file zharyong 2016.09.07 3203
146 [엑스] LXDE 오픈데스크탑 사용하기 file zharyong 2016.09.07 1772
145 [멀티미디어] 사운드 설정 - 재생및 캡쳐(녹음) 장치 file zharyong 2016.09.03 10743
144 [멀티미디어서버] Icecast/Ices를 이용한 스트리밍 서비스(인터넷 라디오 방송국) 만들기 1 file zharyong 2016.09.01 3802
143 [멀티미디어서버] MPD 설정및 칸타타 클라이언트로 오디오 스트리밍 감상하기 4 file zharyong 2016.08.29 2976
142 [엑스응용] 한컴 오피스 뷰어 사용하기 2 file zharyong 2016.08.12 2741
141 [No1.Linux-기능강화판] 리눅스에서 스마트폰 메시지 공유하기 file zharyong 2016.07.28 1449
140 [No1.Linux-기능강화판] 리눅스에서 안드로이드 앱 사용하기(지니모션) 4 file zharyong 2016.07.19 8799
139 [No1.Linux-기능강화판] 한글 2010 설치 1 file zharyong 2016.07.19 2054
138 [No1.Linux-기능강화판] 카카오톡 설치 1 file zharyong 2016.07.18 1405
137 [No1.Linux-기능강화판] 맑은 글꼴 사용하기 file zharyong 2016.07.18 1450
136 [엑스응용] 카카오톡 설치 1 file zharyong 2016.07.14 5148
135 [방화벽] 특정 아이피와 포트 접속 제한 zharyong 2016.05.24 2384
134 [시스템] 넘버원리눅스의 패키지 설치 방법(apt-get 사용법) zharyong 2016.05.23 1669
목록
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 12 Next
/ 12