Theora 1.1 Duyuruldu

Başlatan fortran, 09 Ekim 2009 - 21:57:40

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

fortran


Video sıkıştırma teknolojisi Theora 1.0 sürümünün çıkmasından bir yıl sonra Xiph, Theora 1.1 sürümünü duyurdu. Theora 1.1 sadece, Theora kodlama ve çözme işlemleri için yayınlandı, Theora'nın temelinde herhangi bir değişiklik yapmıyor. Mevcut Theora videoları, yeni sürüm çözücü ile de çalışabiliyor. Theora kodlayıcısı, Theora içeriklerini oynatabilen mevcut oynatıcılar için, bit veri akış erişimleri oluşturuyor.

Theora 1.1, kodlayıcı tarafında ki değişikliklerini çok geniş tutmuş. Bu yazıda, kullanıcılara ve HTML5 görüntü desteğine Theora'yı eklemek isteyen web geliştiricilerine, yeni sürüm hakkında bilgi vermeye çalışacağız. Theora web geliştiricileri için önemli bir teknoloji. Zira, W3C prosedürlerine uyan, tek video çözümleyici teknolojisi.

Bu sürümdeki önemli değişiklikleri listelersek:

    * Theora 1.0'daki görüntü kalitesi artırılmış.
    * Yayın akışı üzerindeki hız kontrolü iyileştirilmiş.
    * Kodlayıcıya, az bir bant genişliğine ihtiyaç duyarak hız kontrollü videolar oluşturabilen bir "ikili geçiş" modu eklenmiş.
    * Kodlama sırasında, işlemci kullanımı azaltılmış.
    * Çözücü performansı arttırılmış.

Artan Görüntü Kalitesi

Theora 1.0 kullanıcılarının en çok belirttiği konulardan birisi, oluşturulan videonun bulanık görünmesi idi. Theora 1.1'deki iyileştirme, Xiph geliştiricilerinden birisi olan MONTY tarafından sağlanmış.





Bu iyileştirme, yazı çerçevelerinde ise çok daha iyi görünüyor. Mozilla Firefox 3.5'in tanıtım videolarından alınmış bir görüntü. Yukarıdaki ilk ekran görüntüsü, 1.0 ile kodlanmış ve 9 MB boyutunda bir videodan. Hemen altındaki ise 1.1 ile kodlanmış ve 8.2 MB boyutunda videodan. Sadece yazı kenarlarındaki yumuşaklık artmakla kalmamış, özellikle adamın yüzü ve saçındaki grenlenmelerde de azalma olmuş.





Mozilla Firefox'un tanıtım videosundan alınan ve çok büyütülmüş iki kareden, yeni sürümün özellikle ayrıntılardaki kalite farkını daha net görebilirsiniz.

Videonun özgün boyutu 17 MB. Theora'nın yaptığı değişiklik ile boyut yaklaşık 9.9 MB'ye kadar düştü. Görüldüğü gibi aradaki fark çok fazla.

Hatırlatalım ki, aynı videoda, görüntü kalitesini iyileştirmekten bahsediyoruz. Bunun iki anlamı var: Aynı dosya boyutunda çok daha kaliteli görüntüye sahip videolar ya da aynı görüntü kalitesine sahip çok daha küçük boyutlu videolar yapabileceksiniz.

Yayın Akışında Daha İyi Hız Kontrolü

Bu değişikleri açıklamadan önce, "Değişken veri akışı (VBR)" ve "Sabit veri akışı (CBR)" ile kodlanmış videolar arasındaki farkı açıklamakta fayda var.

Değişken veri akışı ile kodlanmış videolarda, veri miktarı, artabilmek için iki kare arasındaki farka ihtiyaç duyar. Bu, fazla hareket içermeyen bir sahneden, hareketli bir sahneye geçişlerde olur. 40 Kb/sn'den 400 Kb/sn'ye gibi değişikleri kolaylıkla görebilirsiniz.

Sabit veri akışında ise, veri miktarı kareler arasında belirlenmiş maksimum değere kadar değişebilir. Burada, eğer düşük bir değer belirlenmiş ise ve bir kareden diğerine geçiş, belirtilmiş değerden daha fazla veri istiyorsa, maksimum değerin içerisinde kalabilmek için bazı şeyleri feda etmeniz gerekir. Bunu sağlamak içinse, çözümleyici, ya görüntü kalitesini azaltmak ya da bazı kareleri atlamak zorunda kalır.

Bu da bizi basit  bir kurala götürüyor: Mümkün olan en iyi kaliteyi istiyorsan, değişken veri akışı kodlamasını kullanmalısın. Bu da demek oluyor ki, videonuzu kodlarken, veri akışı (60 Kb/sn, 200 Kb/sn.) yerine, kalite ayarlarını (0-99, düşük/orta/yüksek, 1-10) kullanmanız gerekiyor. İnternet'teki birçok kullanımda VBR ile kodlanmış videolar iyi sonuç verirler. Çünkü çoğu kullanıcı, mevcut konumlarında, videolar için geniş tampon bellekler kullanabilirler. Bu yüzden veri akışındaki değişimlerden fazla etkilenmezler.

Ancak bazı durumlarda sabit veri akışı çok önemlidir. Bunlar:

   1. Çok sayıda istemcisi bulunan, HTTP üzerinde az gecikmeli canlı yayınlar
   2. Geniş tampon belleğin kullanımına müsaade edilmeyen ağlarda, büyük boyutlarda video dosya akışı
   3. Fazla işlemci kullanan, büyük veri paket akışları

HTTP üzerinde düşük gecikmeli canlı yayınlarda, ani veri akışı gerçekleştiğinde olacakları fark etmek önemlidir. HTTP, TCP üzerinde çalışır. TCP, bant genişliğini artırmak için, bir süre bağlantıyı bekletir (bu süre, çok uzun bir zaman olmasa da, düşük gecikmeli uygulamaları etkileyecek kadar uzundur. Bu yüzden düşük gecikmeli uygulamalar TCP kullanmazlar. Ancak burada konumuz, HTTP üzerinden video aktarımı). Eğer büyük miktarda veri varsa, TCP penceresinin açılması uzun zaman alıyorsa, sunucu, büyük veri paketleri göndermeye çalışıyor demektir (bu arada sunucuya birçok istemcinin de bağlı olduğunu unutmayın). Bunun için sunucu, her istemci için daha fazla miktarda bellek ayırmak zorunda kalacak. Bunun sonucunda da, ya bellek yetersizliğinden ya da bağlantı zaman aşımından istemcinin artık bir şekilde erişilemez olduğunu varsayarak bağlantıları kapatmaya başlayacaktır. Bağlantının ayarlanıp, düşük hızda açılarak, işlemlerin yeniden başlatılması ise daha kötüdür. Kullanıcılar, video aktarımlarını kapatıp, yeniden başlatmak ya da hep birlikte çalışmayı bırakmaları gerekir. Peki, çözüm? TCP penceresi açılmasına ve her kullanıcı için geniş veri paketlerine ihtiyaç duymayan sabit veri akışı kullanmak.

Theora 1.0'da akış hızı kontrollü kodlama modu çok çok bozuktu. Bu iki şekilde kendini gösteriyordu:

   1. Kullanıcılar, canlı aktarımlarını problemli olarak yapıyorlardı.
   2. Akış hızı kontrol ayarlarını kullanan kullanıcılar, Theora genel kalitesini, diğer çözümleyici kaliteleri ile kıyaslayıp, sonucun daha kötü olduğunu görüyorlardı.

İlk madde gayet açık. Bozuktu ve onarılmalıydı, onarıldı da. Yeni çözümleyici; veri akış hızını sürdürmek, yayında kaliteyi değiştirmek ve kare atlamak konularında iyi iş çıkarıyor. Hatta, bant genişliği kurallarını bozarak, kaliteyi bozmadan veri akış hızında çok az dalgalanma sağlayan "soft-target" modu geliyor.

Yeni sürüme, kullanıcıların çok faydalı bulacağı bir özellik eklenmiş. Artık, maksimum veri akış hızı belirtirken, beraberinde minimum kalite tabanı da belirlenebiliyor. Bunun sonucu olarak çözümleyici, düşük kaliteli ve bulanık kareler oluşturmak yerine, kare atlama yapıyor.

İkinci madde ise, Theora 1.0'ın kötü hız akış kontrolü sonucunda ortaya çıkıyor. Kullanıcılar genelde, kalite modu yerine, sabit veri akış hızı modunu kullanıyorlar. Sonuçları da çözümleyici problemi yerine, dosya biçiminin bir yansıması olarak görüyorlar. Umarız ki, yani çözümleyici ile çok daha güzel sonuçlara ulaşabilecekler.

Kodlayıcıya "İkili Geçiş" Modu

Mevcut olan tek-geçiş akış hız kontrollü çözücüde yapılan değişikliklerin yanı sıra, 1.1'e bir de ikili-geçiş çözümleme seçeneği eklenmiş. Bu da demek oluyor ki; eğer bir dosyanın algoritma yapısını değiştiriyorsanız, isterseniz, bir dosya içinde uyumlu bir veri akış hızı oluşturabilirsiniz. Çözücü, akış içerisinde, bir çeşit öngörü ile, verileri daha etkin bir şekilde dağıtabiliyor. Xiph'ten MONTY, tek-geçiş ve ikili-geçiş kullanımında kaliteyi gösteren bir grafik hazırlamış:



Grafik, bir videonun (Matrix film klibi) 300 Kb/sn veri akış hızında, tek-geçişli (soft-target) kodlama ile varsayılan çift-geçişli kodlama kalitelerini rakamsal olarak gösteriyor. Tek-geçişli kodlama, sonraki kareler için bir planlama yapmadığından, değişken bir kalite eğrisi çiziyor.

Kodlama Sırasında Azalan İşlemci Kullanımı

Canlı yayın akışı yapanlar, özellikle fazla hareketin bulunduğu karelerde, işlemci kullanımını gösteren uzun barlar görmüşlerdir. Bu çözüldü. Uygun seviyedeki işlemci kullanımı artık, tek-geçişli kodlama ile yapılmış canlı yayın akışı videolarını oluşturmayı daha kolaylaştırıyor.

1.1 sürümünde çözücü performansı artırılmış. Çözücünün performansı elbette oynatılacak videoya göre değişiklikler gösterir. Ancak kullanıcılar, genel anlamda, libtheora 1.0 sürümüne göre 1,5-2 katı hızlanmış olduğunu belirtiyorlar.

Bu sürüm, bir kütüphane sürümü. Kendisi başlı başına bir ürün değil, ancak diğer ürünlerin muhteviyatında bulunabilecek bir sürüm. Önümüzdeki gün ve haftalarda, Theora 1.1'i bir parçası olarak kullanan diğer ürünleri de göreceğiz.

Kaynak: Hacks Mozilla

ozgurlukicin.com
Özgür yazılım dergisi: eniXma