Ağ etkileşimi için geliştirmeler

Flash Player 10.1 ve AIR 2.5 tüm platformlarda ağ en iyileştirme için dairesel arabelleğe alma ve akıllı aramanın da dahil olduğu yeni bir özellikler kümesi sunar.

Dairesel arabelleğe alma

Mobil aygıtlarda medya içeriği yüklerken, bir masaüstü bilgisayardan asla beklemeyeceğiniz sorunlarla karşılaşabilirsiniz. Örneğin, disk alanı veya belleğiniz dolabilir. Video yüklerken, Flash Player 10.1 ve AIR 2.5'in masaüstü sürümü FLV dosyasının (veya MP4 dosyasının) tamamını indirir ve önbelleğe alır. Sonra çalışma zamanı, videoyu o önbellek dosyasından oynatır. Disk alanının dolması olağan değildir. Böyle bir durum gerçekleşirse, masaüstü çalışma zamanı, videonun oynatılmasını durdurur.

Bir mobil aygıtın disk alanının dolması daha kolaydır. Aygıtın disk alanı dolarsa, çalışma zamanı, masaüstü çalışma zamanındaki olduğu gibi oynatmayı durdurmaz. Onun yerine çalışma zamanı, önbellek dosyasına dosyanın başından itibaren yeniden yazarak onu yeniden kullanmaya başlar. Kullanıcı videoyu izlemeye devam edebilir. Kullanıcı videonun üzerine yazılan kısmında dosyanın başı hariç arama yapamaz. Dairesel arabelleğe alma varsayılan olarak başlatılmaz. Bu oynatma sırasında ve ayrıca film disk alanından veya RAM'den daha büyükse oynatmanın başından başlatılabilir. Çalışma zamanının dairesel arabelleğe almayı kullanabilmesi için en az 4 MB RAM veya 20 MB disk alanına ihtiyacı vardır.

Not: Aygıt yeterli disk alanına sahipse, çalışma zamanının mobil sürümü masaüstü sürümüyle aynı davranışı sergiler. Şunu aklınızda tutun ki, cihaz bir diske sahip değilse veya disk doluysa RAM'deki arabellek bir geri dönüş olarak kullanılır. Derleme zamanında arabellek dosyasının ve RAM arabelleğinin boyutu için bir kısıtlama ayarlanabilir. Bazı MP4 dosyaları oynatmanın başlatılmasından önce dosyanın tümünün indirilmesini gerektiren bir yapıya sahiptir. Çalışma zamanı bu dosyaları algılar, yeterli disk alanı yoksa indirmeyi önler ve MP4 dosyası oynatılamaz. O dosyaların indirilmesini istememek en iyisi olabilir.

Bir geliştirici olarak, aramanın yalnızca önbelleğe alınmış akışın sınırları dahilinde çalıştığını aklınızda tutun. Bazen uzaklık aralığın dışında olduğunda NetStream.seek() başarısız olur ve bu durumda NetStream.Seek.InvalidTime olayı gönderilir.

Akıllı arama

Not: Akıllı arama özelliği Adobe® Flash® Media Server 3.5.3 gerektirir.

Flash Player 10.1 ve AIR 2.5, kullanıcının duraksız video oynatılırken yaşadığı deneyimi iyileştirilen akıllı arama adlı yeni bir davranış sunar. Kullanıcı arabellek sınırları dahilinde bir hedefi ararsa, çalışma zamanı anında aramayı sağlamak için arabelleği yeniden kullanır. Çalışma zamanının önceki sürümlerinde, arabellek yeniden kullanılmıyordu. Örneğin, kullanıcı bir akış sunucusu üzerinden video oynatıyorsa, arabellek süresi 20 saniyeye ayarlıysa ( NetStream.bufferTime ve kullanıcı 10 saniye ileriyi aratmayı denediyse, çalışma zamanı zaten yüklü olan 10 saniyeyi yeniden kullanmak yerine arabellek verisinin tamamını atmıyordu. Bu davranış çalışma zamanını sunucudan çok daha sıkça yeni veri istemeye zorluyordu ve yavaş bağlantılarda zayıf oynatma performansına sebep oluyordu.

Aşağıdaki şekilde, çalışma zamanının eski sürümünde ara belleğin nasıl davrandığı gösterilmektedir. bufferTime özelliği önceden yüklenecek saniye sayısını belirler, böylece bağlantı kesilirse arabellek, video durdurulmadan kullanılabilir.

Akıllı arama özelliğinden önce arabellek davranışı

Akıllı arama özelliğiyle çalışma zamanı şimdi kullanıcı videoyu temizlerken anında geri veya ileri arama sağlamak için arabelleği kullanır. Aşağıdaki şekilde yeni davranış gösterilmektedir:

Akıllı arama özelliği ile ileri arama

Akıllı arama özelliği ile geri arama

Akıllı arama, kullanıcı ileri veya geri arama yaptığında arabelleği yeniden kullanır, böylece oynatma deneyimi daha hızlı ve düzgün olur. Bu yeni davranışın faydalarından biri video yayıncıları için bant genişliği tasarrufudur. Ancak arama arabellek sınırlarının dışındaysa, standart davranış gerçekleşir ve çalışma zamanı sunucudan yeni veri ister.

Not: Bu davranış aşamalı video indirmeye uygulanmaz.

Akıllı aramayı kullanmak için, NetStream.inBufferSeek öğesini true değerine ayarlayın.