Video Streaming nedir?
Streaming İngilizce kökenli bir kelimedir. Türkçe bir karşılık bulmak gerekirse akış denebilir. Bu streaming kelimesinin en çok kullanıldığı alanlardan biri de video streaming konusudur.Yani video akışı. Streaming teknolojisinin gelmesi ile birlikte eksiden çok uzun süren video oynatma süreleri kısa sürelere inmiş ve video linkinin yeraldığı imgeye tıklamak usulüyle 3 veya 4 saniye içinde video bilgisayarınız üzerinde oynamaya başlamaktadır.
Streaming Teknolojisinin Çalışma Mantığı:
Elimizde 10 MB lık bir video dosyası olduğunu düşünelim. Bu video görüntüsünü internetteki web sitemizden diğerleriyle paylaşmak isteyelim. Bu durumda eski klasik yöntemde bu dosyayı orjinal haliyle bir web sayfası içinde download edilebilecek şekilde link vererek internetten yaınlıyorduk. Bu videoyu izlemek isteyen ise dosyayı önce bilgisayarına indirmek zorundaydı. İndirme tamamlandıktan sonra ise bilgisayarındaki normal bir dosyayı açar gibi açarak izleyebiliyordu.
Streaming teknolojisinin gelmesi ile birlikte artık bazı video oynatıcılar (Flash Player, Real Player, Quciktime Player ve Windows Media Player) artık video dosyalarını stremaing teknolojisini destekleyecek formata dönüştürüp bu şekild einternetten yayınlamaya başladılar. Örneğin Flash Video lar için flv uzantısı, Real Player için rm uzantısı gibi. Video dosyasını bu formata dönüştürüken kullanıcı dosya üzerinde değişik ayarları seçebilir hale geldi. Eski örneğe dönersek elimizdeki 10 MB lık video dosyasını flash video streamin teknolojisini destekleyen flv formatona dönüştürüken bu videonun çözünürlüğünü, hangi Kbps hızında yayının akmasını istediğimizi ayarlayabiliyoruz. Bu şekilde 10 MB lık dosya hard diskte kapladığı alan olarak da daha da düşebilmektedir.
Bu formata dönüştükten sonra yaptığımız ise bu streaming formatındaki video dosyasını internetten yayınlamaktır. Bu noktada da iki türlü davranılabilir. Linkin verildiği web sayfası içine bu dosyayı oynatacak media player entegre edilebilir. Bu şekilde video web sayfası üzerinde küçük bir ekranda oynamaya başlar. Aynen Youtube da olduğu gibi. Ya da sadece video dosyasının linki verilir. O linki tıklayan ziyaretçinin bilgisayarında o video streaming dosyasını oynatabilecek bir video player yüklü ise o program otomatik olarak çalışır ve programın açıldığı pencerede video oynamaya başlar.
Neden kısa bir sürede video oynamaya başlar derseniz streaming teknolojisi akış teknolojisi oarak çalıştığı için tüm video dosyasını küçük küçük paketçiklere böler. Bu paketçikler sırasıyla bir nehir gibi istekte bulunan bilgisayara akmaya başlar. İlk gelen paketler buffer denilen (hafıza deposu da denilebilir) yerde bekletilir. Burada 8 veya 10 saniyelik video akışı toplandıktan sonra video player gelen video akışını oynatmaya başlar. Video player bir yandan bufferda depolanan paketleri saniye bazlı tüketmeye devam ederken bir yandan da arka planda internetten buffer alanına sonraki video paketleri gelmeye devam etmektedir. Bir anlamda eş zamanlı olarak bilgisayarın video player oynatıcısına yeni video paketleri gelmekte ve oynatmak üzere gelen video paketlerinden sırası gelenler ise gösterime girmek üzere bufferdan alınmaktadır. Düzgün bir video oynatımının olması için ise bu geliş ve gidiş hızlarının birbirine eşit olması istenir. Geliş hızından kastımız ise internetteki video dosyasını tıkladığımız vakit oradaki server bilgisayarın bu video paketlerini gönderdiği hızdır. Tabi burada internete bağlandığımız hızın yeterli düzeyde olduğunu varsayıyoruz. Aksi takdirde server bize saniye 512 Kbps lık bilgi gönderirken bizim internete bağlanma hızımız 256 Kbps ise bu durumda video geliş hızımız 256 Kbps demektir. Video gidiş hızı olarak kastetiğimiz ise video streaming dossının hangi hızda stream teknolojisine dönüştürüldüğüdür. Eğer izlediğimiz dosya 512 Kbps hızında stream formatına dönüştürülmüşse video oynatıcı program saniyede 512 Kbps lık paketleri işler. Geliş ve gidiş hızı birbirine eşitse pek bir problem çıkmaz. Buffer mantığı internette tıkanma veya bir problem yaşanması durumunda video oynatıcı programın kesilmeden devam etmesi için ona bir tolerans aralığı tanır. Bu tolerans aralığı 8 veya 10 saniyelik bufferda depolanmış hazırda bulunan video dosyasının ilgili bölümüdür. Diyelim ki ilk 30 saniye işler yolunda gitti. Bu esnada bufferda 30 ile 38 saniyeleri arasındaki video parçası bulunmakta. 30 ve 34 nolu saniyelr arasınd ainternette bir tıkanma oldu ve serverdan hiç paket alamadınız. Bu durumda player bu 4 saniyede bufferdaki paketleri kullandı ve depoda sadece 4 saniyelik video paketi kaldı. 35inci saniye ile birlikte bufferdan paketleri almaya başladığı an bufferin giriş kapısından 39uncu saniyeden sonraki videolar girmeye başlar. Bu şekilde video akışı kesilmeksizin devam eder. Bu tıkanma durumumun tam terside gerçekleşebilir. Videonuz 400 Kbps hızında oynarken sizin internete bağlanma ve internetten video paketlerini alma hızınız 1 Mbps hızında olabilir. Bu durumda buffer hemen dolar ve gelen yeni paketler üst bir depoda tutulur. Buffer boşaldıkça bu depodan gerekli paketler alınır. Kullanıcı isterse bu video dosyasını izlemeden de bilgisayarına sonradan izlemek amaçlı indirebilir. Gerekli olan video stremaing dosyasının (yani flv) yerini bulmak ve o linki tıkllayarak bilgisayarına "Save As" şeklinde kaydetmesidir. Bu tarz olan streaming şekline web video streaming denir.
Son olarak anlatacağım streaming şekli ise bir öncekine göre daha profesyonel olan ve bu iş için tasarlanmış olan media streaming serverlar üzerinden yapılan video yayınlarıdır. Bu streaming şeklinde video dosyası streaming formatında server tarafından yayın olarak internete salınır. Dosyayı stream formata dönüştürüp kaydetmek gibi bir şey söz konusu değildir. Stream serverlar kendi üzerlerinde yüklü olan video dosyalarını istek yapan bilgisayaralara belli stream formatında göndermektedirler. Avantajları ise şu şekildedir:
İstek yapan her bir bilgisayara onun desteklediği hızda yayın verebilir. Örneğin 256 Kbps hızında internete bağlanan bilgisayara yayının 256 Kbps hızınd gönderir. 512 Kbps hızdakine ise 512 Kbps hızında.
İstek yapan bilgisayar videonun istediği bölümünü izleyebilir. Bunun için de tüm videonun akmasını beklmesine gerek kalmaz. Oynatıcı üzerinden izlemek istediği süreye gidip orayı tıklaması yeterlidir. Stream server o istenilen andaki videoyu bilgisayara göndermeye başlar. Bu şekilde her kullanıcı istediği bölümü izleyebilmektedir. Önceki versiyonda ise izlemek istediğiniz ana kadar tüm paketlerin akması gerekiyordu.
Şimdilik anlatacaklarım bu kadar. Umarım yardımcı olabilmişimdir.