우분투 12.0.4 desktop 버전에서 설치 한 내역입니다.
1. yasm 설치
http://yasm.tortall.net/Download.html
source 를 다운 받는다.
(2012.06.04 현재 1.2.0 버전)
tar xvfz yasm-1.2.0.tar.gz
cd yasm-1.2.0
./configure
make
make install
2. x264 설치
http://www.videolan.org/developers/x264.html
x264 를 다운 로드 받음
tar -xvjf last_x264.tar.bz2
cd x264-snapshot-20120603-2245
./configure --enable-shared
make
make install
3. faad2 설치
//아래의 faad2 는 더이상 업그레이드가 안되는것 같다. 그래서 wget 으로 다운 받음
wget http://downloads.sourceforge.net/faac/faad2-2.7.tar.gz
tar xvfz faad2-2.7.tar.gz
cd faad2-2.7
./configure
make
make install
4. faac 설치
wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz
tar xvfz faac-1.28.tar.gz
cd faac-1.28
./configure
//exec: g++: not found 에러 날 경우
//c나 c++ 컴파일러가 없다는 얘기 이므로
sudo apt-get install build-essential
//gcc -v 또는 gcc -dumpversion 으로 확인 해볼것
make
//
mpeg4ip.h:126:58: error: new declaration ?
/usr/include/string.h:369:28: error: ambiguates old declaration ?
// 이런 에러 메시지가 나옴
~faac-1.28/common/mp4v2로 가서
vi mpeg4ip.h
126번째 줄로 가서
extern "C" {
#endif
#ifndef _STRING_H
char *strcasestr(const char *haystack, const char *needle);
#endif
#ifdef __cplusplus
앞뒤를 이렇게 바꿔줌
(구체적 내용은
http://blog.naver.com/xor74?Redirect=Log&logNo=40150529439
참조함)
다시 make 해주고 make install
5. libmp3lame 설치
http://sourceforge.net/projects/lame/files/3.99/
에 가서 최신판 받기
tar xvfz lame-3.99.5.tar.gz
cd lame-3.99.5
./configure
make
make install
6. libogg 설치
http://downloads.xiph.org/releases/ogg/
에 가서 최신판을 받는다.
wget http://downloads.xiph.org/releases/ogg/libogg-1.3.0.tar.gz
tar xvfz libogg-1.3.0.tar.gz
cd libogg-1.3.0
./configure
make
make install
7. libvorbis 설치
http://downloads.xiph.org/releases/vorbis
에 가서 최신판을 다운 받는다.
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.3.tar.gz
tar xvfz libvorbis-1.3.3.tar.gz
cd libvorbis-1.3.3
./configure
make
make install
8. libSDL 설치
에서 최신판을 다운 받는다.
내가 볼때는 SDL-1.2.9 버전이 최신이었으나 컴파일 실패로 apt-get 으로 설치
sudo apt-get install libsdl1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev
9. libtheora 설치
wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.gz
tar xvfz libtheora-1.1.1.tar.gz
cd libtheora-1.1.1
./configure
make
make install
10. libxvid 설치
wget http://downloads.xvid.org/downloads/xvidcore-1.2.1.tar.gz
tar xvfz xvidcore-1.2.1.tar.gz
cd xvidcore/build/generic
./configure
make
make install
11. ffmpeg 설치
먼저 svn 이 안깔려 있다면
sudo apt-get install subversion 으로 까시길...
svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg
cd ffmpeg
./configure --enable-static \
--enable-shared \
--enable-gpl \
--enable-postproc \
--enable-pthreads \
--enable-libfaac \
--enable-libmp3lame \
--enable-libx264 \
--enable-nonfree \
--enable-avfilter \
--enable-avfilter \
--enable-runtime-cpudetect \
--enable-libtheora \
--enable-libvorbis \
--enable-libxvid \
--enable-nonfree \
--enable-postproc \
--enable-x11grab
/etc/ld.so.conf 에서
/usr/local/lib 추가
ldconfig
12. avi 파일을 ts 파일로 바꿔야 함
ffmpeg -i input.avi -vcodec copy -acodec copy -f mpegts output.ts
ffmpeg -y -threads 2 -i "input.avi" -ab 128k -b 2500k -r 25 -maxrate 8000k -bufsize 1000k -vcodec mpeg2video -s 4cif -acodec mp2 -map 0:0 -map 0:1 "output.ts"
위와 같은 방식으로 바꾸기(둘중 하나로 하면 되는데 위의 방법만 테스트 하였음)
13. segmenter 설치
svn co http://svn.assembla.com/svn/legend/segmenter/
cd segmenter
vi segmenter.c
242 번째 줄 수정
ofmt = av_guess_format("mpegts",NULL,NULL);
수정 후
make
make install
14. 아파치 설정
아파치에서 설정해 줄 것이므로
아파치설치 경로로 가서
cd /usr/local/apache2.4/conf
vi httpd.conf
<IfModule mime_module> 태그 안에 아래 2줄 추가
AddType application/x-mpegurl .m3u8
AddType video/MP2T .ts
segmenter 로 ts 파일을 m3u8 로 바꿔주기
segmenter <source ts 파일명> <segment 될 시간(초)> <streaming 될 파일명> <http url 로 접속 될 파일명>
ex)
segmenter ./gundam.ts 10 gundam gundam.m3u8 http://211.63.6.184/test/
이러면 gundam-1,2,3~~~~.ts
라고 ts 파일들이 생성 될 것이다.
그러면 ts 파일과 m3u8 파일을 http쪽 실행 될 경로에 복사한다.
cp ./gundam.m3u8 /usr/local/apache2.4/htdocs/test/
cp ./gundam*.ts /usr/local/apache2.4/htdocs/test/
15. 정상적으로 streaming 되는지 확인
I-Phone 에서 http://211.63.6.184/test/gundam.m3u8
이라고 웹브라우저로 접근 시 정상 접근 되는지 확인 할 것
아이폰이 없을 경우
http://demo.anevia.com:8080/ott/vlc.php
에서 http live streaming 이 되는 player 를 다운 받을 수 있다.
나는 윈도우 용으로 설치 하고 진행하여 보았다.
play 방법은 아래와 같다.
'Linux Unix' 카테고리의 다른 글
[ Linux ] GCC 설치 (4) | 2012.07.21 |
---|---|
[ Linux ] 사용자 aging 정보 (0) | 2012.06.13 |
[ Ubuntu ] ssh, ftp 설치 (0) | 2012.06.01 |
[ Ubuntu ] 네트워크 설정 (0) | 2012.05.06 |
[ Ubuntu ] 우분투 설치 (12.04 server for cloud) (0) | 2012.05.06 |
댓글