우분투 11.04 기준으로 작성되었습니다.
ffmpeg를 이용하여 리눅스 데스크탑 화면을 실시간으로 방송하는 방법을 정리하였다. 우분투에 포함된 ffmpeg 패키지는 libx264와 libmp3lame등이 포함되어 있지 않으므로, ffmpeg를 빌드 설치 해야 한다.
0. 기존 설치된 ffmpeg 패키지가 있으면 이를 삭제한다.
$ sudo apt-get remove ffmpeg
$ sudo apt-get update $ sudo apt-get install build-essential checkinstall git libfaac-dev libjack-jackd2-dev \ libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev \ libva-dev libvdpau-dev libvorbis-dev libx11-dev libxfixes-dev texi2html yasm zlib1g-dev \ kx11grab libx264-dev libmp3lame-dev
$ git clone git://source.ffmpeg.org/ffmpeg.git
$ cd ffmpeg $ ./configure --enable-x11grab --enable-memalign-hack --enable-pthreads \ --enable-libmp3lame--enable-libx264 --enable-gpl --disable-shared --enable-static $ make $ sudo make install
5. Justin.tv에 ffmpeg로 데스크탑 화면을 생방송하는 스크립트를 작성한다.
* desktop_stream.sh
#!/bin/sh INRES="1920x1080" # input resolution OUTRES="1280x720" FPS="20" # target FPS # Justin STREAM_KEY="live_YOUR_STREAM_KEY" URL="rtmp://live.justin.tv/app/$STREAM_KEY" ffmpeg -f x11grab -s "$INRES" -r "$FPS" -i :0.0 \ -f alsa -ac 2 -i pulse -vcodec libx264 -s "$OUTRES" -ar 22050 \ -acodec libmp3lame -ab 64k -threads 0 \ -f flv $URL
$ ./desktop_stream.sh
댓글 없음:
댓글 쓰기