[FFmpeg Stream] Main Counter-Strike di TV Tabung?


Aditya Suranata 22 Mei 2016 Pemrograman

Mulai Baca

Setelah seharian puas bermain dengan media center Kodi di Raspberry Pi 1 dan sebuah TV tabung lama, bolak-balik atas bawah buka-buka channel IPTV luar negeri, muncul sebuah ide di kepala saya untuk membuat stream IPTV sendiri dirumah.

Sebelumnya, mohon maaf apabila judulnya mungkin agak sedikit kurang nyambung. Tulisan ini bukan tutorial mengenai cara untuk bisa bermain game legendaris Counter Strike di TV tabung laugh, tapi lebih ke demo dan intermezo mengenai sebuah tools, library, atau apapun orang menamainya bahkan disebut juga the swiss army knife of Internet Streaming, ya tiada lain adalah FFmpeg.

Sedikit dari Wikipedia mengenai FFmpeg:

FFmpeg is a free software project that produces libraries and programs for handling multimedia data. FFmpeg includes libavcodec, an audio/video codec library used by several other projects, libavformat, an audio/video container mux and demux library, and the ffmpeg command line program for transcoding multimedia files.

So, Apa yang sebenarnya saya lakukan di video tersebut?

Video tersebut memperlihatkan bagaimana saya men-stream / menyiarkan layar desktop komputer saya secara nirkabel ke TV tabung yang terhubung ke Raspberry Pi dengan Kodi media center. Jadi video dan audio dari komputer bisa diputar di TV melalui jaringan. Saya bisa memutar apapun di komputer, dan melakukan kegiatan seperti browsing, nonton Youtube, Facebok-an dll dan akan tampil juga di TV (Screen Mirroring).

Saya juga menguji performanya dengan bermain game legendaris yang tidak pernah bosan untuk dimainkan, Counter Strike Condition Zero. Hasilnya mantap, meski tidak fullscreen karena resolusi saya tidak sesuai dengan resolusi maksimal gamenya, tapi hasilnya cukup mulus.

Apa yang membuat FFmpeg sangat powerful?

FFmpeg lebih dari sekedar screen recorder & streaming seperti yang terlihat pada apa yang saya lakukan itu. FFmpeg ini adalah sekumpulan library/pustaka yang berisi set lengkap alat-alat yang diperlukan untuk melakukan manipulasi file multimedia. Berbagai hal yang dilakukan di dunia per-multimediaan mulai dari video editing/recording, video broadcasting hingga ke siaran-siaran dan konversi-konversi serta manipulasi file multimedia menggunakan komponen yang ada pada FFmpeg.

Agar terbayang, contoh kasus dalam kegiatan sehari-hari adalah, FFmpeg digunakan untuk melakukan konversi video yang diupload ke Youtube. Dengan FFmpeg kita juga bisa melakukan streaming dan pemantauan jarak jauh melalui IP camera. Begitu juga dengan pengolahan citra dan video, kita bisa menggunakan FFmpeg untuk mempersiapkan umpan/feed sebelum bisa diproses.

FFmpeg juga bisa digunakan pada model-model perangkat remote control (RC) yang memerlukan fungsi streaming baik video maupun audio. Misal, kita bisa menggunakan FFmpeg untuk melakukan streaming dari kamera yang terpasang pada pesawat terbang RC, atau robot land rover yang berisi kamera dan mikrofon sehingga kita bisa melihat dan mendengar lingkungan di lokasi remote dari jarak jauh.

FFmpeg juga digunakan sebagai mixer video, sehingga output dari video bisa berasal dari banyak input. Bisa digunakan untuk mengkonversi segala jenis format video dan audio, mulai dari 3gp hingga ke mp4 dan mkv, mulai dari mp3 ke aac dan sebagainya.

Segudang fitur FFmpeg tidak akan bisa dituliskan disini, jika ingin tahu lebih banyak lagi silahkan melihat-lihat ke halaman dokumentasinya.

Bagaimana caranya menstream layar desktop ke TV tabung?

Caranya adalah tinggal mengunduh FFmpeg versi Windows dari situs pengembangnya di Zeranoe. Kita menggunakan versi static build. Dan agar FFmpeg dapat menangkap siaran layar desktop, kita perlu menginstal pustaka tambahan yang bernama Screen Capture Recorder. Screen Capture Recorder ini adalah plugin tambahan dari DirectShow yang merupakan video input filter dari FFmpeg.

Setelah semuanya terinstall, cukup buka command promt dengan hak administrator, masuk ke folder dimana file biner dari ffmpeg berada dan eksekusi perintah berikut (ps: ganti IP dengan IP Raspi yang menjalankan Kodi):

ffmpeg -f dshow -rtbufsize 702000k -framerate 30 -i audio="virtual-audio-capturer":video="screen-capture-recorder" -preset high -maxrate 8000k -bufsize 1024k -f mpegts -s 800x600 udp://10.8.0.56:123

Hasilnya akan menjadi seperti berikut (klik untuk memperbesar):

Disisi Raspi, kita perlu merubah source dari url playlist Add-on PVR IPTV Simple Client menjadi https://tutorkeren.com/iptv/home.m3u. Mengapa mengambil dari Tutorkeren.com? karena ini akan mempermudah kita untuk mengambil playlist yang mengarahkan streamnya ke lokalhost. Jika tidak dari Tutorkeren.com, Anda harus mengunggah sendiri filenya agar bisa diambil oleh Kodi. Isi dari file home.m3u ini adalah seperti berikut:

#EXTM3U tvg-shift=3

#EXTINF:-1 tvg-id="1" tvg-name="S_SVR" tvg-logo="https://tutorkeren.com/sites/default/files/default_images/tutorkeren-iptv.jpg" group-title="Home",S SVR
udp://127.0.0.1:123

Bagian utamanya adalah url udp:127.0.0.1:123, yang merupakan alamat stream yang akan dikirim oleh FFmpeg, jadi Raspi akan melisten ke dirinya sendiri, sementara FFmpeg mengirim ke Raspi melalui protokol UDP, terlihat aneh karena kita menggunakan UDP bukan TCP.

Selanjutnya tinggal dibuka channelnya dari menu TV, dan voila, Counter Strike sudah terlihat saling dor doran di TV tabung kita..hehehe...

Dan untuk pengembangannya, ini tentu tidak berhenti hanya sebatas kita bisa menyiarkan Counter-Strike di TV tabung, dan maka dari itu judulnya jadi terjawab kita bukan main game di TV tabung, tapi hanya menyiarkan gameplaynya di TV tabung. Selanjutnya, maksud saya, agar lebih bermanfaat dan lebih keren, bagaimana kalau FFmpeg ini kita porting, dan kita bawa ke Android. Jadi kita bisa streaming layar Android kita ke TV tabung.

Kita bisa main game di Android kita, bukan CoC ya, CoC sudah bikin banyak teman saya lupa makan dan jadi gila.

Jadi idenya adalah, kita bisa menyiarkan layar Android kita ke TV tabung dengan FFmpeg ini. Atau bahkan kita juga bisa menyiarkannya langsung ke Youtube lho! Dengan menggunakan fitur Live Streamnya Youtube, kita bisa menggunakan FFmpeg ini untuk menyiarkan siaran ke channel Youtube kita, keren gak tuh!

Kita bisa menyiarkan duel kita di layar smartphone ke seluruh dunia!!! Atau dual Counter Strike kita ke manapun!

So, mari kita coba explorasi lebih jauh lagi mengenai FFmpeg ini. Stay tune...

Aditya Suranata

Tentang Penulis, Aditya Suranata

Aditya suka menulis, bukan hanya sekedar hobi, menulis menjadi medianya untuk mencurahkan pikiran dan perasaan. Di Miarana DIY kebanyakan menyumbang tulisan sesuai dengan minat dan keahliannya yaitu pada kategori pemrograman dan elektronika. Selain itu juga gemar menulis mengenai hal-hal umum, seperti ilmu alam, sosial dan beberapa pengalamannya yang mungkin bisa berguna untuk orang lain.

lihat artikel lain oleh Aditya Suranata

Kategori Tulisan

E-Book Terbaru

Teknik Antarmuka MATLAB dan Arduino

Teknik Antarmuka MATLAB dan Arduino - Cover.jpg
Pelajari konsep yang sangat luar biasa antara visualisasi, analisis dan komputasi yang ditawarkan MATLAB dengan Platform Arduino sebagai perangkat...
Jumlah Halaman:
411 Halaman

Video Terbaru

Belum Puas ? Mari Kita Saling Bicara


Join Forum Diskusi MiaranaDIY untuk berdiskusi dengan respon cepat mengenai berbagai macam tutorial hingga ulasan yang terdapat di blog ini. Untuk berlangganan artikel terbaru silahkan Like & Follow Facebook Page MiaranaDIY dan Follow Twitter @MiaranaDIY