şenol   05-08-2020 Saat 21:09
#1
Kendi IPTV-VoD Sisteminizi Kurun


Alexander Cameron, Digital TX Ltd. Genel Müdürü

IPTV/VoD sektörünün sizden genellikle sakladığı bir sırrı vardır. Bu da bir IPTV ağı kurmanın inanılmaz derecede kolay olduğudur. Hatta bu o kadar kolaydır ki, hemen hemen herkes yapabilir. Fakat bu bilinseydi herkes kendi sistemini kurar ve hiç kimse sizlere markalı ürünlerini fahiş kârlarla satarak para kazanamazdı.

IPTV ağları aslında birer intranetten ibarettir. Aradaki tek fark web tarayıcısının bir PC’nin içinde değil, bir set üstü kutusunun içinde olmasıdır. Kendinize bir intranet veya kamuya açık bir web sitesi kurduysanız, kendi IPTV şebekenizi de kurabilir ve bununla istediğinizi yapabilirsiniz. Dev boyutlarda, pahalı sunuculara, ince teknik özelliklere sahip set üstü kutularına, ya da karmaşık yazılımlarla uğraşan kalabalık geliştirici ekiplerine ihtiyacınız olmaz. Elinizde doğru donanım ve yazılım varsa, bunu yapmak en fazla birkaç saat sürer.

Tamam da, niçin kendi sistemimi kurmak isteyeyim ki?

... diye soracak olursanız, belki aşağıdakileri yapabilmek hoşunuza gider: Ya da amacınız zaten bunlardan biridir:

* Eğitim, reklam, veya bilgi göstermek için dahili bir TV sistemi oluşturmak;
* Müşterilerinize IPTV’nin sunduğu olanakları tanıtmak;
* Büyük masraflara girmeden mevcut IPTV teknolojisinden yararlanmak;
* Mevcut istemci web sitelerinizi ve uygulamalarınızı IPTV versiyonlarına dönüştürmek;
* Web geliştiricilerinizin IPTV konularını öğrenmeleri için birbirlerini eğitmelerini sağlamak;
* Uygulamaları ve fikirleri denemek için gerçek bir IPTV şebekesi oluşturmak;
* Ürün ve hizmetleriniz için bir IPTV demo platformu oluşturmak;
* IPTV’de iyi gidecek mükemmel bir fikir veya uygulamayı geliştirmek;
* Mevcut web tabanlı sistemlerinizi IPTV ortamına entegre etmek (örneğin VoIP)

Pek zor görünmüyor değil mi? O halde başlayabiliriz.

Size lazım olanlar şunlardır:

* Bir TV
* Bir IP set üstü kutusu
* Multicast yetenekli bir router
* Bir web sunucusu
* Bir video sunucusu
* 2 adet PLC adaptörü
* Örnek video malzemesi

Bu rehberde, işe yarayacak fakat fiyatı sizi üzmeyecek malzemelerden yararlanacak, mümkün oldukça bedava açık kaynak yazılımları kullanacağız. Yine mümkün oldukça açık standartlara uyacağız. HTML ekranlarımız ve menülerimiz PHP, Perl, Python + MySQL kullanan bir Apache web sunucusunda yer alırken video kodlamamız basit MPEG-2 transport stream’inde paketlenmiş MPEG-4 H.264 AVC cinsinden olacak. Videomuzu VLC ve Helix Sunucusuyla stream edeceğiz.

Haliyle, bunlardan herhangi birini yine aynı işi yapan başka bir ürünle değiştirebilirsiniz; örneğin, MPEG-4/Apache/PHP/MySQL yerine WM9/IIS/.Net/SQL Sunucusu kullanmak gibi.

1. Kit için yeni bir yuva bulmak
Ne mutlu size ki, o yepyeni, pırıl pırıl IPTV sisteminiz hiç de o kadar çok yer gerektirmeyecektir. İki PC (web sunucusu ile video sunucusu) bir masanın altına, sunucu odasına, olmadı merdiven altına yerleştirilebilir. PLC adaptörü kullanacağınız için ayak altında kablo kalabalığına da ihtiyacınız olmayacak. Başlıca yer ihtiyacınız, yaptığınız işin sonucunu TV’de izlemek için, artık resepsiyona mı koyarsınız, ofisinizdeki kanapenin karşısına mı koyarsınız, bir TV sehpasını veya masasını yerleştireceğiniz yerdir.

2. Set üstü kutusunu doğru seçmek
Sisteminizi kurarken vermeniz gereken en kritik karar hangi IP set üstü kutusunu kullanacağınıza ilişkin karardır çünkü bunların hepsi farklı yazılımlar kullanır ve farklı yetenekler taşır. Ancak, yine hepsi TV’ye standart scart kablosu veya RCA tipi fişlerle bağlanır ve standart çözünürlükte PAL/NTSC formatlarında görüntü verir. Set üstü kutularının web tabanlı bir kontrol paneline sahip olması tercih edilebilirse de bunların birçoğunda marka mülkiyetli konfigürasyon ekranları bulunur ya da bildiğimiz telnet kullanılır. Firmware yazılımlarını üst versiyonlara yükseltmenin en iyi yolu SolarWinds gibi markaların sağladığı karşı uç TFTP sunucusu üzerinden gitmektir.

En popüler yazılım seçeneği gömülü bir web tarayıcısıdır. IE, Firefox, Opera veya Safari gibi PC web tarayıcıları ne iş görüyorsa bunlar da sizin için aynı işi görürler. Geliştirici arabirimi olarak sıklıkla HTML/Javascript veya diğer mark-up dilleri kullanılır. Günümüzde IP set üstü kutularında kullanılan gömülü istemci yazılımı programlarının başlıcaları Fresco/Galio (Ant Plc’den), Opera, Escape/Evo (Espial’den) ve Myrio’dur (Espial’den türetme). Bunları küçük web tarayıcı birimler olarak düşünebilirsiniz.

Dünyanın dörtbir yanında IP set üstü kutusu üreten birçok imalatçı vardır. Complete Media Systems, Amino, Kreatel (artık Motorola oldu), Vidanti, Tilgin (önceleri i3 Micro idi), ADB Global ve Netgem bunlardan sadece birkaçıdır. Bu imalatçıların çoğu 1 ilâ 10 adet gibi miktarlarda satış yapmaya hayır demezler. Ama yine de çoğu kez set üstü kutunuzu Garland Partners gibi bir ana distribütör kanalıyla satın almak daha iyidir. Fiyatlar farklılık gösterebilir fakat uzaktan kumanda ve/veya klavye dahil, bir set üstü kutu için ödeyeceğiniz miktar 100-250 sterlin arasında olacaktır.

Bu rehberde Ant Galio 2.0. ile çalışan CMS 1080 (Complete Media Systems ürünü) modelini kullanacağız. Kutu hem H.264 AVC hem de Windows Media videosunu destekleyebilmektedir. Biz H.264 AVC kullanacağız.

3. Şebekeyi kurmak
IPTV, IP şebekesinde çalışır. Dolayısıyla evinizde veya işyerinizde mevcut Ethernet şebekesinde de çalışacaktır. Büyük bir olasılıkla, masa üstü bilgisayarınızın bağlı olduğu bir router veya anahtar zaten mevcuttur. Ama yine de TV’niz için yeni baştan ayrı bir şebeke kurmak en iyisidir zira burada söz konusu olacak veri trafiği yükü, internet ve/veya LAN bağlantıları için tasarlanmış normal veri şebekelerindekinden çok daha fazladır.

Multicast’i desteklediği sürece her router’ı veya anhtarı kullanabilirsiniz. Çarşıdan veya internetten satın alacağınız 50-200 sterlinlik her ürün işinizi görür. Ambalajın yan tarafına veya imalatçının verdiği broşür vb’ne bakarak seçtiğiniz ürünün multicast’i kendi içindeki yazılımla (IGMP vb) destekleyip desteklemediğini kontrol edin. Normal 100 Mbit’lik Ethernet işinizi görür ama mümkünse Gigabit Ethernet kullanın.

Bütün ekranları ve videoyu tek bir sunucudan çalıştırıyorsanız (örneğin, dizüstü bilgisayarda demo) basit bir crossover kablosu bile yeterli olur. Alış ne kadar iyi olursa olsun, videoyu kablosuz bağlantı üzerinden iletmeyin. Böyle yaparsanız, HTML ekranları ve menüler normal çalışabilir fakat sıkıştırılmış videoya gelince iş değişir çünkü işlemci bu yükün altından kolay kolay kalkamaz.

IP set üstü kutusu dediğimiz şey şebekedeki diğer istemci cihazlardan farklı değildir. Set üstü kutu IP şebekesine bağlandığında, masa üstü bilgisayara nasıl bir IP adresi atanıyorsa kutuya da yine DHCP tarafından bir IP adresi atanır (bu adres sabit de olabilir). Eğer router’ınız DHCP sunucusu olarak görev yapmıyorsa, şebeke ağ geçidiniz yoksa, ya da crossover kablonuz sorun yaratıyorsa, web sunucusu olarak kullandığınız bilgisayarınıza internetten bedava bir DHCP sunucusu indirerek meseleyi halledebilirsiniz.

Kablosuz ağınız yoksa elektrik tesisatını sinyal iletişim ağı olarak kullanmaya yarayan adaptörlerden kullanarak her yerden kablo geçirme derdinden kurtulursunuz. Genellikle ikişer ikişer satılan bu adaptörleri çarşıdan, internet servis sağlayıcınızdan, veya internetten 100-200 sterline satın alabilirsiniz. Birinci adaptör router’a yakın bir elektrik prizine, ikincisi ise set üstü kutusuna yakın bir elektrik prizine takılmalıdır. Normal 5. kategori kablonuzu da bu adaptörlerin üzerindeki Ethernet soketlerine takacaksınız.

4. Televizyon yayınını stream etmek
IPTV sisteminizde simülasyonunu yapacağınız ilk şey frekans ayarı yapılarak alınan televizyon yayınıdır. Bu iki şekilde yapılabilir. Bunlardan birincisi kolay, ikincisi ise ya zor ya da pahalıdır. Unicast çok verimsiz olduğundan IPTV yayınının IP şebekesi üzerinden 7/24 multicast olarak yayımlanması gerekiyor olsun. TV yayınını video sunucumuzdan stream edeceğiz.

Amacımız her kanal için, önceden kaydedilmiş, sürekli tekrarlanan, 5 dakikalık bir video klipi bir multicast IP adresine yayımlamak olsun. Bunun için bedava VLC oynatıcısını ya da Pixstream tarafından yaratılan, sektörde standart haline gelmiş WinSend’i kullanabiliriz. Yayımlayacağımız klip ideal olarak önceden MPEG-4 H.264 AVC ile kodlanmış ve bir MPEG-2 transport stream’ine formatlanmış olmalıdır. Ancak, VLC İsviçre asker çakısı gibi her işe yaradığından hemen hemen her video dosyasını dönüştürerek açıp bir yandan yayımlarken bir yandan da kodlayabiliriz. Şimdi video dosyanızı açın ve VLC’deki gelişmiş seçenekleri kullanarak çıkışı UDP olarak şebekeye stream edin. Bunu yaparken 235.5.5.5 gibi rastgele seçilmiş bir adres ve yine rastgele seçilmiş bir port (örneğin 10201) kullanacaksınız.

Stream’in doğru çıkış yapıp yapmadığını test etmek için o şebekedeki stream’i bir başka şebeke veya bilgisayardan bir başka VLC ile açıp bakabilirsiniz. Ne kadar kanal lazımsa bu işlemi her biri için tekrarlayın. Kanallarda yayın varsa, set üstü kutusu aynı VLC gibi multicast stream’ine ayarlanabilecektir.

IP şebekesinde TV yayını yapmanın (Freeview gibi) daha gelişmiş yolu bir DVB alıcısından (bir TV kartı, örneğin Hauppage tarafından imal edilenler gibi) alınan MPEG-2 videoyu multicast formatına dönüştürmektir. Bu işleme IP kapsülleme deniyor. Yayın yapmanın zor ve pahalı yollarına gelince, zor yol imalatçının yazılım geliştirme kitini kullanarak kendi kapsülleme programınızı yazmak, pahalı yol ise bunun için donanım (Exterity, Anevia, vb) satın almaktır.

5. VoD içeriği hazırlamak
Şebekenize DVD kalitesinde video yapmak iki ayrı bölümde gerçekleşir: birincisi video dosyalarını doğru formata sokmak, ikincisi ise bu dosyaları bir video sunucusundan stream edecek şekilde düzenlemek. İşin kötü tarafı şu ki, ticari bir uygulamada olan biteni aynen simüle etmek için kullanabileceğiniz ücretsiz veya açık VoD kaynağı yoktur.

Video malzemenizin aynen multicast video gibi önceden kodlanması gerekir. Elecard, MainConcept, Cyberlink ve Nero gibi firmaların yazılım kodlayıcıları çoğu formattaki (MPG, AVI, MOV, vb) videoları kolayca sıkıştırarak MPEG 4 H.264 AVC’ye dönüştürür. Fakat bunların şebekede yayımlanabilmeleri için ayrıca bir MPEG-2 transport stream’ine kapsüllenmesi gerekir. Ücretsiz bir açık kaynak programı olan Media Coder bu konuda mükemmel sonuçlar vermektedir.

Video pek kaprislidir. HTTP gibi tipik web protokollerinin aksine sıkı sıkıya kontrol edilmesi gerekir. IP şebekeleri için VCR’lerdekilere (video kaset kayıt cihazı) benzeyen kontroller sağlamak amacıyla RTP (gerçek zamanlı protokol) ve RTSP (gerçek zamanlı streaming protokolü) dizayn edilmiştir. Ticari VoD sunucularının tümünde olmasa bile çoğunda kalitesi garantili video sunmak için bu teknolojiler kullanılır. Set üstü kutu imalatçılarından birçoğu videonun Apache gibi bir web sunucusundan direkt olarak stream edilebilmesi için cihazlarını HTTP kullanarak VCR’lerdekilere benzeyen özellikleri simüle edebilecek şekilde uyarlamışlardır. Biz burada .mpg uzantılı dosyaları stream etmek için bu iki protokolün bir kombinasyonunu kullanacağız.

IPTV şebekemizden istek üzerine video (VoD) sunmak için başlıca seçeneklerimiz açık kaynaklı Helix Sunucusu ile Darwin Streaming Sunucusudur. Bunların ikisi de Windows işletimli fakat Linux’ta da çalışabilen cihazlardır. Ayrıca yine her iki işletim sisteminde de çalışabilen Elecard RTSP sunucusu deneme versiyonu var. Sizin şebekeniz Windows Media kullanacak şekilde kurulmuşsa, ücretsiz Windows Media Sunucusu kullanan bir Windows Sunucusu PC’den unicast ve/veya multicast video yayınını gayet güzel ve kolayca yapabilirsiniz.

Video dosyalarının, ön kodlama yapıldıktan sonra depolama klasörü olarak belirlenen video sunucusundaki dizine yerleştirilmeleri ve web sunucusunda tahsis edilen Apache web dizinine kopyalanmaları gerekir. RTSP sunucularının hemen hemen hepsinde web tabanlı bir konfigürasyon paneli bulunur. Bu sunucular stream edilecek her dosyayı tek tek indeksler/adlandırırlar. Bu işlemler yapıldıktan sonra bunlara VLC’de bir şebeke stream’i açarak sunucunun RTSP kapasitesini test edin. Herhangi bir sorun varsa giderin. Artık IP set üstü kutunuz tümleşik API’ını (uygulama programlama arabirimi) kullanarak bu dosyaları oynatabilecektir.

6. Ekranlar ve menüler oluşturmak
TV ekranında görünecek menüler normal web sayfalarında olduğu gibi, aynı standart araçlar (Dreamweaver, Photoshop, vb) kullanılarak HTML, CSS ve Javascript ile oluşturulur. Cihazın içindeki yazılım IE, Firefox, Opera veya Safari gibi sıradan bir web tarayıcısı olup, oluşturduğunuz web sayfalarını scart kablosu üzerinden ekrana yükler (OSD). Cihazların çoğu, açık standartları ve RSS ve AJAX gibi günümüz teknolojilerini tamamen destekler. Bazılarında Macromedia Flash 6 oynatıcı da vardır. Yapılan, aynen normal web geliştirmede olduğu gibi, tarayıcı ekranını önce yazmak sonra da tazelemektir.

IP set üstü kutusu çalışmaya başlayıp DHCP kanalıyla bir IP adresi aldığında, aynen bir PC web tarayıcısının (örneğin, IE, Firefox) varsayılan bir ana sayfa istemesi gibi, bir web sunucusundan bir web sayfasının "başlangıç" adresini (URL) ister. IPTV için ekranlar oluşturmak bir intranet sitesi kurmakla neredeyse aynıdır. Aradaki tek fark HTML ve Javascript’in içinde set üstü kutusuna özgü ve sadece onun anlayabileceği ve uygulayabileceği yazılım kodlarının yer almasıdır (örneğin, multicast stream’lerini bulmak veya RTSP komutları vermek gibi).

Her set üstü kutusunun donanımı farklıdır; dolayısıyla her cihaz modeli için cihazın imalatçısından alınması gereken farklı bir Javascript API’si vardır. Video, sayfadaki herhangi bir görüntü gibi gösterilebilir, boyutlandırılabilir ve normal Javascript fonksiyonlarıyla üzerinde çalışılabilir. Set üstü kutusunu satın aldığınızda içine yazılım uygulamaları (hatta uzaktan kumandadaki geri dön ve ekranı tazele komutları) yüklenmiş değildir. Bu yüzden, oluşturmanız gereken ilk uygulama kurduğunuz sistemde gezinebilmenizi ve video stream’lerini izleyebilmenizi sağlayacak bir elektronik program rehberi (EPG) olacaktır.

Photoshop’ta ekran provaları hazırlarken, standart çözünürlüklü PAL TV ekranının "güvenli alan" denilen kısım dikkate alınmadan 720 piksele 576 piksel boyutlarında olduğu unutulmamalıdır. Renkler çok daha ilkel ve renk kaymaları bir masa üstü tarayıcısındakinden çok daha fazladır. Mevcut tek giriş (input) cihazı masa üstü klavyesindekine benzer tuş kodları olan bir uzaktan kumandadır.

Menü ve ekran görüntüleri için HTML kullanmak, herhangi bir web sayfasında olduğu gibi sunucu tarafı süreçlerinin kullanılmasıyla içeriğin dinamik olarak oluşturulabileceği anlamına gelir. TV ekranına ne gönderirseniz ekranda o görünür; yani her tür web tabanlı sistemi yeni IPTV şebekenize entegre edebilirsiniz – Asterisk internet telefonu santralı, Jabber IM sunucusu, çok oyunculu oyun sunucuları, kendi web uygulamanız, veya harici bir XML API gibi.

7. Gösteri vakti!
Şebekenizi kurduktan sonra menüler ve ekranlar oluşturmak, ve video sunucunuza TV’de oynatılacak video içerikleri ilave etmek artık size kalmıştır. Prodüksiyon usulleri web sitelerindekilerle tamamen aynıdır; aradaki yegâne fark televizyona özgü işlev ve kullanılabilirlik konularıdır. Birkaç gün veya birkaç hafta içinde bir bakacaksınız ki elinizde artık her istediğinizi yapabileceğiniz koskoca bir TV şebekesi var – aynen her istediğinizi yapabileceğiniz web siteniz gibi.

Kurduğunuz sistem için "budur" dediğinizde, patronu, mesai arkadaşını, hanımı, kız arkadaşı, erkek arkadaşı, veya meraklı kankayı ekranın karşısına oturtup gururlu bir sırıtışla o uzaktan kumandanın tuşlarında gezinme vakti gelmiş demektir.

KAYNAK : http://www.iptv.org.tr

Fikrin rütbesi yoktur.
İfadeleri İptal Et?
  
Konuyu Okuyanlar: 1 Ziyaretçi