포토로그 마이가든



[펌]CentoOS DSS(Darwin Streaming Server) 설치 실시간방송

출처.
http://blog.vinestory.com/87


회사에서 모바일 스트리밍 관련 서버가 필요하여서 알아보던중 같은 mp4 파일로 아이폰과 안드로이드에 서비스가 되어 야한다고 하여서 찾아보던중...
iphone은 어차피 http 80 port로 서비스를 그냥 하면되고  android는 http로는 스트리밍 서비스가안되어 rtsp로 서비스를 해야 되야 됐다.

그래서 검색하다 찾은것이 DSS(Darwin Streaming Server)였다. 모 검색한 간단한 설명을 붙이면

 애플사의 퀵타임 스트리밍 서버는 애플의 소스 공개 정책에 따라 윈도우즈와 매킨토시 양쪽을 모두 지원하는 다윈 스트리밍 서버(Darwin Streaming Server) 프로그램이 소스까지 공개되어 있기 때문에 누구든지 무료로 설치하여 사용할 수 있고, 동영상, MP3등의 디지털미디어를 실시간으로 배포하고 라이브 이벤트를 실현시킬 수 있으며, Linux, Solaris, Windows NT/2000 등 가장 대중적인 엔터프라이즈급 플랫폼을 지원합니다.

이 서버 프로그램은 업계 표준 스트리밍 프로토콜인 RTP/RTSP를 지원하며, 음성과 이미지의 고품질으로 인기가 높습니다.

이런다란다...

DSS 설치 환경은 CeontOS 5.6의 환경에서 진행 하였다.

 cd /usr/local
wget http://dss.macosforge.org/downloads/DarwinStreamingSrvr6.0.3-Source.tar
tar xvf DarwinStreamingSrvr6.0.3-Source.tar
wget http://www.abrahamsson.com/dss-6.0.3.patch
patch -p0 < dss-6.0.3.patch
cd DarwinStreamingSrvr6.0.3-Source
./buildtarball
cd DarwinStreamingSrvr-Linux
./Install
Installing Darwin Streaming Server

Checking for and Killing currently running Darwin Streaming Server
...(생략)...

characters long
Enter DSS Administrator Username : (Admin Username 입력)

DSS Administrator Password cannot contain spaces, or quotes, either single or double, and cannot be more than 80
characters long
Enter DSS Administrator Password: (패스워드 입력)
Re-enter DSS Administrator Password: (패스 워드 확인)
Adding userName admin
Setup Complete!

 이렇게 진행되었으면 설치는 완료 되것이다.

netstat -nlp

해보면 아래와 같은 포트가 열려진것을 확인해볼수 있을것이다. 

tcp        0      0 0.0.0.0:8000                0.0.0.0:*                   LISTEN      4273/DarwinStreamin 
tcp        0      0 0.0.0.0:8001                0.0.0.0:*                   LISTEN      4273/DarwinStreamin 
tcp        0      0 0.0.0.0:1220                0.0.0.0:*                   LISTEN      4316/perl           
tcp        0      0 0.0.0.0:554                 0.0.0.0:*                   LISTEN      4273/DarwinStreamin  
tcp        0      0 0.0.0.0:7070                0.0.0.0:*                   LISTEN      4273/DarwinStreamin 
......

 기본영상이 올라가는 기본경로는 

/usr/local/movies

이니 적당한 폴더를 생성하여 사용하는것이 좋을것이다.

http://Server주소:1220 으로 접속해 보면 관리 화면으로 접속해 볼수 있을것 이다.

처음 접속하면 새로운 패스워드를 접해주면 되고

80포트 사용이라든지 디렉토리 경로 설정이라든지 SSL 사용 설정을 하게 되고

관리 페이지로 들어가게 될것이다.

여기서 여러가지 설정값을 사용할수 있고

Play list 메뉴에서 영상을 추가해주면된다.

그리고 virtualhosts에서 해당 디렉토리(예 /usr/local/movies)를 설정하여 하여 http와 rtsp가 같은 곳을 바로보게 한다면

소스를 iphone 접속과 android 접속을 구분해 준다면 같은 파일을 가지고 스트리밍 서비스를 할수 있다.



------------------------------------------------------------------------------------------------------------------


Darwin Streaming Server (DSS) 설치

애플사의 퀵타임 스트리밍 서버는 애플의 소스 공개 정책에 따라 윈도우즈와 매킨토시 양쪽을 모두 지원하는 다윈 스트리밍 서버(Darwin Streaming Server) 프로그램이 소스까지 공개되어 있기 때문에 누구든지 무료로 설치하여 사용할 수 있고, 동영상, MP3등의 디지털미디어를 실시간으로 배포하고 라이브 이벤트를 실현시킬 수 있으며, Linux, Solaris, Windows NT/2000 등 가장 대중적인 엔터프라이즈급 플랫폼을 지원한다.

이 서버 프로그램은 업계 표준 스트리밍 프로토콜인 RTP/RTSP를 지원하며, 음성과 이미지의 고품질으로 인기가 높다.

그럼, 이제 소스를 다운 받아 설치해보자.
소스는 http://developer.apple.com/darwin/projects/streaming/ 에서 구할수 있다.

다운받은 파일을 /usr/local/에 카피한 후 압축을 푼다.


# cp DarwinStreamingSrvr4.1.3-Linux.tar.gz /usr/local/
# cd /usr/local/
# tar xvzf DarwinStreamingSrvr4.1.3-Linux.tar.gz


압축을 푼 파일을 보면 친절하게도 인스톨 파일이 있다. 그럼 인스톨 파일을 실행시킨다.


# ls
3rdPartyAcknowledgements.rtf qtpasswd sample.mp3
AdminHtml qtusers streamingadminserver.pl
DarwinStreamingServer readme.pdf StreamingLoadTool
Install relayconfig.xml-Sample streamingloadtool.conf
MP3Broadcaster sample_100kbit.mov StreamingServerModules
perlpath.pl sample_100kbit.mp4 streamingserver.xml
PlaylistBroadcaster sample_300kbit.mov streamingserver.xml-sample
qtgroups sample_300kbit.mp4
# ./Install
Installing Darwin Streaming Server

Checking for and Killing currently running Darwin Streaming Server
...(생략)...

Installation Complete

Darwin Streaming Server Setup

DSS Administrator Username cannot contain spaces, or quotes, either single or double, and cannot be more than 255
characters long
Enter DSS Administrator Username : (Admin Username 입력)

DSS Administrator Password cannot contain spaces, or quotes, either single or double, and cannot be more than 80
characters long
Enter DSS Administrator Password: (패스워드 입력)
Re-enter DSS Administrator Password: (패스워드 확인)
Adding userName admin
Setup Complete!
#


여기까지 하면 설치는 모두 끝났다.

 

Darwin Streaming Server (DSS) 설정

그럼 이제 DSS(Darwin Streming Server)의 서버 설정을 해보자.

웹브라우져를 띄워서 http://IP_Address:1220 를 입력하자. (1220 포트는 DSS(Darwin Streming Server)의 관리자 페이지 접속을 위한 포트이다.)
로그인 화면이 나오면 지정한 Admin 계정과 패스워드를 넣고 다음으로 넘어가면, MP3 Broadcast를 위한 패스워드 설정이 나온다. 설정을 하고 다음으로 넘어간다.
다음으로 Secure Administration 설정이 나온다. 설정하고 또 넘어간다.
이제 Media Folder 설정이 나온다. 관리를 편하게 하기 위해 media 계정을 생성하고, 계정의 홈 디렉토리를 이용하면 나중에 관리하기 용이하다. 설정을 하였으면 넘어간다.
끝으로 Streaming on Port 80 설정이 나온다. 설정하고 완료한다.

여기까지를 모두 마치면, DSS(Darwin Streming Server) 관리자 페이지가 보일 것이고, 서버상태를 요약한 메인 화면이 보인다.

---------------------------------------------------------------------------------------------------------


Friday, August 29, 2008

Darwin Streaming Server 6.0.3 on Linux

digg_url="http://cwshep.blogspot.com/2008/08/darwin-streaming-server-603-on-linux.html";0diggsdigg
Quick tutorial for installing DSS on Ubuntu 8.04.1 64bit (x86_64).

Most of these details can be found here: http://dss.macosforge.org/trac/ticket/6

Hopefully they will integrate these patches in to the next release, but until then here are the build instructions for Ubuntu:

Download DSS 6.0.3: http://static.macosforge.org/dss/downloads/DarwinStreamingSrvr6.0.3-Source.tar

Download this patch: http://dss.macosforge.org/trac/raw-attachment/ticket/6/dss-6.0.3.patch (Thank you Sverker Abrahamsson!)

And this patch: http://dss.macosforge.org/trac/raw-attachment/ticket/6/dss-hh-20080728-1.patch

Finally get the modified Install script: http://dss.macosforge.org/trac/raw-attachment/ticket/6/Install

The basic process is:

1. Get the build dependencies from the repositories.
2. Set up the qtss user (this is because the Install script does it in a way that is incompatible with Ubuntu)
3. Extract the source code.
4. Apply both patches.
5. Replace the Install script and chmod +x it.
6. Compile.
7. Install.

Notably for ssl admin you need the openssl and libnet-ssleay-perl packages, unfortunately even with these packages I was unable to get ssl admin to work.

I created the modified Install script; you can do a diff with the original if you want to see what I changed. Mostly just the paths were broken, but I am guessing that some other modules and such will probably not work.

Here is the bash script I used to do everything (including automatically download everything):


#!/bin/bash

sudo apt-get install build-essential wget
sudo addgroup --system qtss
sudo adduser --system --no-create-home --ingroup qtss qtss

wget http://static.macosforge.org/dss/downloads/DarwinStreamingSrvr6.0.3-Source.tar
tar -xvf DarwinStreamingSrvr6.0.3-Source.tar
mv DarwinStreamingSrvr6.0.3-Source DarwinStreamingSrvr6.0.3-Source.orig
wget http://dss.macosforge.org/trac/raw-attachment/ticket/6/dss-6.0.3.patch
patch -p0 < dss-6.0.3.patch
mv DarwinStreamingSrvr6.0.3-Source.orig DarwinStreamingSrvr6.0.3-Source
wget http://dss.macosforge.org/trac/raw-attachment/ticket/6/dss-hh-20080728-1.patch
patch -p0 < dss-hh-20080728-1.patch
#need to answer n then y
cd DarwinStreamingSrvr6.0.3-Source
mv Install Install.orig
wget http://dss.macosforge.org/trac/raw-attachment/ticket/6/Install
chmod +x Install
./Buildit
sudo ./Install




Update 2/2/2009: I changed the links to all point to dss.macosforge.org, which is a much more reliable host. Everyone should also take a look at that thread, as there are a lot of updates, including a newer patch from Horace Hsieh. I haven't played with this in a while, but if I get a chance I will try to update this with the newer patch. Please let me know if there are any problems (I just turned comment notifications on :/).

실시간 방송 워밍업 실시간방송

다음 팟을 이용한 실시간 방송이 막혔다.

뭐 정확히 말하자면 제휴라는 걸 통해 방송을 할 목적과 기대효과 등을 작성해서
다음 측에 신청을 하면 다음에서는 심사후에 방송가능 여부를 확인 해 주는 것으로
정책이 변경이 되었다.

여기까지는 좋은데
이제부터 실시간 방송에 광고가 들어간다는게 문제다.

물론
다음측에서도 수익모델이 있어야 하기때문에 당연한 것이지만
다음 팟을 통해 실시간 방송을 하는 입장에서는 삽입되는 광고가
좀 부담스러운 것이 사실이다.

그래서 차일피일 미루어왔던 실시간 방송 서버를 직접 구성해보기로 한다.

[펌]KT 출시 노키아 5800 뮤직폰을 SK텔레콤 망에서 이용 시 MMS 이용을 위한 셋팅방법입니다. 핸드폰+스마트폰

출처 : http://blog.tworld.co.kr/20

KT 출시 노키아 5800 뮤직폰을 SK텔레콤 망에서 이용 시 MMS 이용을 위한 셋팅방법입니다.
아래와 같이 세팅을 해주시면 이상없이 이용이 가능합니다.

Nokia 5800 XpressMusic 휴대폰의 경우, 2010년 4월 9일 오후 2시 이후부터 SK텔레콤 USIM을 사용하시는 고객님들도 MMS를 이용하실 수 있습니다.


데이터 사용 (APN 세팅)
① 설정 → 연결 → 대상 → 인터넷 → 왼쪽 하단의 옵션 → 새 엑세스 지점
"사용 가능한 액세스 지점을 자동으로 확인하시겠습니까?" 팝업에서 '아니오' 선택
→ 패킷 데이터

② 패킷 데이터 액세스 지점 이름  : [ web.sktelecom.com]을 하이라이트 후 'OK' 선택

③ 위 설정 후 액세스 지점에서 입력하신 [ web.sktelecom.com ] 을 선택하신 후
왼쪽 하단 옵션 -> 구성 -> 우선 순위 변경 -> 'KT-HSDPA' 더블클릭


[ web.sktelecom.com ] 이 우선순위 1위로 변경된 것을 확인하실 수 있습니다.

MMS 사용 (MMS 세팅)
① 설정 → 연결 → 대상 → 멀티메시지 → 왼쪽 하단의 옵션 → 새 엑세스 지점
"사용 가능한 액세스 지점을 자동으로 확인하시겠습니까?" 팝업에서 '아니오' 선택
→ 패킷 데이터


② 패킷 데이터 액세스 지점 이름  : [ web.sktelecom.com] 입력 후 'OK' 선택

③ 위 설정 후 액세스 지점에서 입력하신 [  web.sktelecom.com ] 을 선택하신 후
왼쪽 하단 옵션 → 편집

④ 홈페이지 : [ http://omms.nate.com:9082/oma_mms ] 입력

⑤ 액세스 지점 사용을 '자동'으로 변경

⑥ 위 페이지에서 옵션 → 고급설정
* 프록시 서버 주소 : [ smart.nate.com ]  입력
* 프록시 포트 번호 : [ 9093 ]


[ web.sktelecom.com ] 을 하이라이트 한 후 왼쪽 하단 옵션 → 구성 → 우선 순위 변경 → 'KT-HSDPA' 더블클릭

[ web.sktelecom.com ] 이 우선순위 1위로 변경된 것을 확인하실 수 있습니다.

⑦ 초기 메뉴에서 메시지 -> 옵션 -> 설정 -> 멀티메시지 사용 액세스 지점을 [ web.sktelecom.com ] 으로 변경

주의 사항
1. 위와 같이 설정을 하지 않으실 경우 데이터 서비스는 Wi-Fi로만 가능하며, MMS는 받기/보내기가 되지 않습니다. 

2. 과다한 요금 발생 방지를 위해 데이터 요금제에 가입 후 이용하시기를 추천합니다.
(Tworld 데이터 요금제 보기)

3. 기본적인 MMS 기능이 가능하지만 5800 XpressMusic 단말에서 MMS 발신 시 규격 차이로 인해 일부 단말(예: 넥서스원/HD2 개인인증 휴대폰 등)에서 MMS 내용이 깨질 수 있습니다.

4. 5800 XpressMusic 단말에서 일부 단말 (블랙베리 등 일부 글로벌 휴대폰)으로 일정 및 연락처 첨부 시 규격 차이로 인해 정상적으로 보이지 않을 수도 있습니다.

5. KT와의 규격 차이로 인해 SMS/MMS 발송 시 KT와 다르게 동작할 수 있습니다.
   * KT 5800 XpressMusic단말에서 일반 단말로 한글 작성 후 발신 기준.
   * 작성 창에서 남은 글자 수 30까지(80바이트) : 수신 휴대폰에 1개의 SMS로 전송됨
   * 작성 창에서 남은 글자 수 29에서 0까지 (81바 이트 – 140바이트) : 수신 단말에 2개의 SMS로 전송됨
   * 작성 창에서 “메시지 형식이 멀티메시지로 변경되었습니다” 팝업 후 : 수신 단말에 MMS로 전송됨


umount시 device is busy 우분투(Ubuntu)


먼저 사용자 혹은 프로세스를 한번 체크해보자

# fuser -cu 디렉토리


그리고 죽여보자

# fuser -ck 디렉토리

그 담엔 umonut 명령 실행~


CentOS를 설치하자(cafe24) - sever 우분투(Ubuntu)

1. cafe24에서 테라서버 호스팅을 선청했다.
나름 쓸만할거 같음. 월 유지비는 나가지만 트래픽도 괜찮음.

2. 테라서버 OS는 CentOS와 Ubuntu로 나뉘어지며 fedora는 추후지원이라함(2011.01.21.현재)

3. 여러번의 삽질끝에 cafe24 기술지원팀과 CentOS를 쓰다 ubuntu로 넘어갔다
결국은 CentOS로 다시 넘어옴.
(cafe24의 경우 CentOS를 기반으로 한다는... 그런... 뭐 그런게 있었음. 고로 문제 발생시에도 CentOS가 낫고
기존에 cafe24 호스팅에서 서버를 이동할때도 CentOS를 추천하고 있음)

4. Sever버전을 깔아줌. (cafe24에서는 할일 다했음)

5. 이제 내 차례

-------------------------------------------------------------------------------------------------------------
내 차례는 다시 순번 들어감.

1. Server의 특성상 GUI는 지원하지 않음. but 난 server고 desktop이고 GUI가 편하기 때문에
Server에 GNOME을 설치함.

     
#  yum groupinstall "X Window System" "GNOME Desktop Environment"

그런데 GNOME말고 KDE도 있음. (KDE는 GNOME보다 조금 무겁다는 이야기를 봤으나 들어보지 않아 모름)
kde를 설치하는 방법은 

      #  yum groupinstall "X Window System" "KDE (K Desktop Environment)"

이렇게 GNOME이든 KDE든 설치하고 난 후에

한글 패키지도 까는 경우도 필요하니까 한글 폰트도 한번 설치해주자.
(사실 이게 정확히 뭘 하는건지 모르지만 하면 좋을거 같다. ㅡ.ㅡ;)
 
      #  yum install kde-i18n-Korean        <- 이거는 kde가 설치되어 있지 않으면 설치가 추가로 안된다.

      #  yum install fonts-korean              <- gnome만 설치한 나에겐 요게 설치된다.


설치가 끝나면.... xwindow를 실행하는거다!!!!!

      
#  startx 

근데 뭔가 문제가 있어보임.
수 많은 에러와 특히 fatal error가 눈에 들어오고 그 담으로 No such file or directory가 들어옴.
뭔가 이상함.

난 putty를 통해 원격으로 콘솔에 접속해 있는중임. ㅋㅋㅋ
원격에서 putty로 접속해서 암만 startx를 날려봐야 소용없음 둥.

결국 ctrl + c 를 눌러 중지함.

그럼 저 너머에 있는 CentOS의 서버가 구동될때 gnome을 실행되게끔 해보자.

   
# vi /etc/inittab

여기서 8번째 정도 줄에 있는 것을 바꾸자.

   
id:3:initdefault: -> id:5:initdefault:
  (3을 5로 바꾸는게 다다. 3은 뭐고 5는 뭐냐... inittab을 열었을때 맨위의 주석을 보면 나와있다.)

바꾸고 esc키를 누른후 :wq 를 눌러 저장후 빠져나간다.
  


    # reboot


2. 자... reboot을 시켰으니까 저 너머 IDC에 있는 나의 서버는 지금 GNOME이 올라와 화려한 그래픽을
뽐내고 있을것이다.

하지만 나에게 있는 putty로는 까만 바탕과 흰 글자만 보일뿐....

이때 필요한게 뭐?  바로 vnc
vnc를 통해 우리는 원격으로 GUI환경을 맘껏 누릴 수 있다.

CentOS 5.5에서는 기본적으로 vncserver가 깔려있다.
( 내 서버 운영체제의 버전을 알고 싶다면   
# cat /etc/issue 를 입력해보면 안다.)

   # whereis vncserver

이렇게 해보면 /usr/bin/vncserver 가 있다.


3. vncserver를 설정해보자.
    
   # vi /etc/sysconfig/vncservers      (마지막에 s가 들어간다.)

이걸 열고 

   VNCSERVERS="0:root"
   VNCSERVERARGS[1]="-geometry 1024x768 "

이렇게 설정했다.

VNCSERVERS="0:root" 에서 0은 startx에서 구동한 xwindow와 화면을 공유하기때문에
끊기는 현상이 발생한다. 그래서 0을 제외한 다른 번호를 사용하지만 나는 0을 쓰겠다.

해상도도 800x600을 할 수도 있다.(x는 알파벳 x이다.) 
하지만 난 1024x768을 쓴다.


vncserver접속시 필요한 패스워드를 설정해보자.
    # vncpasswd
    Password:
    Verify:

패스워드를 설정할때는 항상 두 번을 입력해야 한다.


그 다음 구동시켜보자. 어떻게???

    # /sbin/service vncserver start

위에서 적은대로 했다면 [OK] 라는 메세지를 볼 수 있을거다.
거기서 더 눈을 크게 떠서 보면 이런 메세지도 볼 수 있다.

   
Creating default startup script /root/.vnc/xstartup

맞다.
(
중요!)
vncserver를 start시켜줘야 해당 계정의 script가 생성이 된다.
그런데 vncserver를 시작도 안하고 저 xstartup이라는 스크립트를 수정할라고 암만 찍어봐도 안나온다.

뭐 부터 해볼까.
나의 컴퓨터에서 vnc클라이언트로 접속을 먼저 해볼까
아니면 xstartup 스크립트를 먼저 수정해볼까?


4. 서버구동은 끝났으니 client에서 접속해보자.

나는 ultra vnc를 사용한다. 무료이기 때문이다.
그게 다다. 그 이상도 그 이하도 아니다. 괜히 복잡하면 머리만 더 아프니까.
(여기서 다운 받는다 :
http://www.uvnc.com/download/index.html )

설치후 viewer를 실행한다. (설치할때 viewer만 설치하면 된다. 필요에 따라 server도 설치하든지)



자 여기에서 다른거 건딜거 없다. 사실 뭔지도 모른다.
다만 vncserver 라고 나온 부분만 신경쓰면 된다. 자기 원격서버의 주소를 넣고 마지막엔 :을 하나 넣은 후 
# vi /etc/sysconfig/vncservers에서 설정한 화면 번호를 넣으면 된다. (나는 보다시피 0으로 셋팅했기에 0을 넣음)

그담엔 connect 버튼을 누르면 패스워드를 넣는 창이 뜬다.
앞에서 vncpasswd 로 설정한 패스워드를 넣어주면 된다.

음훼훼훼... 뜬다... 헉 근데 좀 이상하다....
이쁘지가 않다. 아무리 업무용이고 뭐라해도 이뻐야 일 할 맛이 나지.



vnc viewer를 종료한다.


다시 콘솔로 붙어서 앞서 생성된 스크립트를 수정한다.

      # vi /root/.vnc/xstartup

맨 마지막줄에 twm & 이라고 된 곳을 주석처리하고 아래와 같이 수정한다.
# twm &
gnome-session &

그리고 저장후 빠져나온다. (esc누르고 :wq)

그 다음 vncserver를 재시작한다. 

       # /sbin/service vncserver restart

[OK]가 두번 뜨는거 보니까 왠지 잘 되는거 같다.

다시 vnc viewer로 접속해본다.


와우~ 아까와는 많이 다르다. 
무척 다르다.


마지막으로 서버가 재부팅시 자동으로 vncserver가 시작되도록 하자.

   # /sbin/chkconfig vncserver on  (리부팅시에 자동실행


CentOS 5.5 (final) 에서 gnome설치 / vncserver 설정 완료.

ps. 본문에서 존대를 쓰지 않아 읽기가 거북스러울 수도 있습니다만
이해해주시고 필요한 정보만 가져가시면 되겠습니다. ^^
                          

1 2 3 4 5 6 7 8 9 10 다음