Monday, May 5, 2014

Encoder Live RTMP dengan FFMPEG di Linux (Bag II)


LIVE DENGAN V4L2

Live streaming yang pertama adalah dengan menggunakan  Module V4L2 ( Video For Linux Versi 2 ), untuk input video yang dapat digunakan adalah dengan menggunakan Video Capture dengan menggunakan TV Tunner ataupun USB Card Video Capture  atau UVC Camera. Untuk Mengetahui Video Capture yang support dengan Module V4L2 adalah:
Vendor Headquarters Analog Digital
3Dfx Interactive U.S. Yes ✘ No
ADS Tech Taiwan Yes Yes
Anysee Korea
Yes
AOpen Taiwan Yes Yes
Artec Taiwan ✘ No Yes
ASUS Taiwan Yes Yes
ATI/AMD Canada/U.S. Yes Yes
AVerMedia Taiwan Yes Yes
BBTI U.S. ✘ No Yes
Blackgold G.B. Yes Yes
Compro Technology U.S. Yes Yes
Digital Everywhere Austria ✘ No Yes
DVBWorld China ✘ No Yes
DViCO Korea Yes Yes
Elgato Germany Yes Yes
Encore U.S Yes Yes
Fission Taiwan ✘ No Yes
Fujitsu Siemens Netherlands
Yes
Galaxis Technology AG Germany


Geniatech/MyGica China Yes Yes
Hama Germany
Yes
Hauppauge U.S. Yes Yes
KNC1 Germany Yes Yes
KWorld Taiwan Yes Yes
Leadtek Taiwan Yes Yes
LifeView Taiwan Yes Yes
Linux4Media Germany ✘ No Yes
Magic Pro Hong Kong Yes Yes
Matrox Canada Yes  ?
Medion U.S. Yes

Miglia ? Unknown
Yes
MSI Taiwan Yes Yes
Nebula U.K.
Yes
NEOTION France


PC-Basic France Yes Yes
pcHDTV U.S. ✘ No Yes
Pinnacle U.S. Yes Yes
Pixelview Taiwan Yes Yes
Plextor Japan


Prof China ✘ No Yes
Satelco Germany
Yes
Siano Mobile Silicon Israel ✘ No Yes
Siemens Germany
Yes
SIGMACOM Korea Yes Yes
Skydigital Korea
Yes
STB Systems
Yes ✘ No
Sundtek Germany Yes Yes
TBS China
Yes
TechniSat Germany
Yes
TechnoTrend Germany
Yes
TerraTec Germany Yes Yes
TwinHan Technology Co. Ltd Taiwan Yes Yes
USBGear U.S. Yes Yes
V-Gear
Yes

VBox Israel Yes Yes
Wayjet Technology Inc Taiwan
Yes
X3M digital S.A. Poland Yes Yes


Jika anda menggunakan Video Capture sesuai dengan Daftar Support Hardware untuk module V4L2 ini berarti anda dapat melakukan proses live streaming dengan Menggunakan Kamera Profesional ataupun kamera yang lainnya yaitu yang memiliki Output RCA , selajuntnya output RCA pada kamera dimasukkan pada Input Video yang terdapat pada Video Capture anda.

Untuk proses Live Streamingnya sederhana, anda cukup mengetikkan perintah sebagai berikut :

ffmpeg -f v4l2 -i /dev/video0 -vcodec libx264 -s 320x240 -b:v 200k -f flv rtmp://xxx.xxx.xxx.xxx/live/namestream.mp4

proses diatas atas adalah melakukan mengencode sumber pada Video di /dev/video0 dengan format V4L2 yang dirubah menjadi video digital dengan Codec Video LIBX264 dengan ukuran screen 320x240  dan bitrate sebesar 200Kb menuju server streaming RTMP xxx.xxx.xxx.xxx dengan nama streaming namestream.mp4

Untuk melihat hasilnya anda dapat menggunakan aplikasi FFPLAY yang terdapat pada aplikasi FFMPEG , dengan perintah

ffplay rtmp://xxx.xxx.xxx.xxx/live/namestreaming.mp4

bila berhasil anda tinggal memasukkan url rtmp://xxx.xxx.xxx.xxx/live/namestreaming.mp4 pada web dengan menggunakan embeding flash player.

MODULE DV (DIGITAL VIDEO) IEEE 1394

Input Video selanjutnya selain V4L2 pada linux adalah input dengan menggunakan Fire Wire IEEE 1394 atau dikenal dengan input FireWire DV ( Digital Video ). 

Pada Komputer anda yang akan dijadikan PC Encoder harus memiliki input Firewire IEEE 1394 seperti gambar berikut :

dan pada kamera yang akan dipakai sebagai sumber Live Streaming harus memiliki output Firewire ( 4x ) IEEE 1394  seperti gambar berikut :





untuk menggunakan module IEEE 1394 anda harus mengkompile ulang FFMPEG anda namun anda harus menginstall file DEV yang dibutuhkan yaitu:

sudo apt-get install libraw1394-dev libiec61883-dev libavc1394-dev
cd ~/sourceffmpeg
cd ffmpeg
sudo make clean
/configure --extra-libs="-ldl" --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-x11grab --enable-libiec61883

make 
sudo make install 
sudo make distclean 
hash -r 

setalh dikompile anda dapat melakukan live streaming dengan menggunakan module IEEE 1394 dengan perintah

ffmpeg -f iec61883 -i auto -vcodec libx264 -s 320x240 -b:v 200k -f flv rtmp://xxx.xxx.xxx.xxx/live/namestream.mp4

dan untuk melihat hasilnya anda dapat menggunakan aplikasi FFPLAY yang ada pada FFMPEG 

ffplay rtmp://xxx.xxx.xxx.xxx/live/namestream.mp4

INPUT SUARA DENGAN ALSA

Bila dua bagian diatas adalah penjelasan mengenai input Video untuk Live Streaming selanjutnya untuk sumber suara anda dapat menggunakan module Alsa ,sehingga live streaming anda adalah Video dan audio.
Untuk mengambil input suara dari sound card anda dengan module alsa ini anda cukup menambahkan perintah
-f alsa -i hw:0
jadi bila digabungkan adalah :
untuk Video V4L2

ffmpeg -f v4l2 -i /dev/video0 -f alsa -i hw:0 -vcodec libx264 -s 320x240 -b:v 200k -acodec libfdk_aac -ar 22050 -ac 1 -b:a 16k -f flv rtmp://xxx.xxx.xxx.xxx/live/namestream.mp4.

sedangkan untuk IEEE 1394


ffmpeg -f iec61883 -i auto -f alsa -i hw:0 -vcodec libx264 -s 320x240 -b:v 200k -acodec libfdk_aac -ar 22050 -ac 1 -b:a 16k -f flv rtmp://xxx.xxx.xxx.xxx/live/namestream.mp4

0 komentar:

Post a Comment