2011-06-04 37 views
9

Bir jPlayer (jquery kullanarak HTML5 şarkı çalarım) var ve bir şarkının xx sn. Ancak problem, önce XX saniye tamponunu tamponlamak ve daha sonra bant genişliği israfı olan oynamaya başlamak zorunda olmasıdır. Neden tamponlama işlemini XX saniye içinde başlatmıyor?jPlayer'da gereksiz arabelleklemeden nasıl sakınır

$("#jquery_jplayer_1").jPlayer({ 
     ready: function() { 
      $(this).jPlayer("setMedia", { 
      mp3: playList[0], 
      volume: CUR_VOL 
      }).jPlayer("play", 251); 
     }, 
     swfPath: "js", 
     supplied: "mp3", 
     errorAlerts: false 
     }); 

DÜZENLEME

Ben ilk XX saniye ara belleğe önlemek için bir cevap istedi: Burada

i kullanmak koddur.

+0

Bunu küçük bir arabellek alarak önleyebilirsiniz (flaş sınırlaması olup olmadığını bilmiyorum). Bir süre önce demad sitesinde bir video üzerinde çalıştım ve küçük bir arabellek, düşük hızlı bağlantılarda sorunlara neden olabileceğinden, arabellek boyutu için doğru dengeyi bulmak için iyi bir test yapmak zorundaydı. – Augusto

+0

Hangi özniteliği kullanmalıyım? Belgelere baktım ve arabellek değerlerini ayarlamak için herhangi bir seçenek bulamadım. – footy

+0

Üzgünüz, özel bir video oynatıcı hazırladığımız için jplayer'da ne kullanacağım konusunda hiçbir fikrim yok. Sadece sizi olası bir çözüme yönlendirmeye çalışıyordum. – Augusto

cevap

6

Arabelleği doldurması gereken flash polyfill. HTML5 <audio>'u desteklemeyen eski tarayıcılar, bu sorundan muzdarip olurlar; bunun yerine, jPlayer flash yedeklemesi bunun yerine kullanılır.

Web sunucunuz bir akış aramak için desteklemelidir.

this jPlayer Google Group tamponlama hakkında soru ve arayan ve Accept-Ranges başlıklar hakkında bir tartışma için Seeking through a streamed MP3 file with HTML5 <audio> tag & https://groups.google.com/forum/#!topic/jplayer/irSrmN0aUSU bakınız.

Düzeltme: Bu soruna biraz kazık yaptım & hellip; yine de üzgünüm hala bir cevabım yok.

İlk olarak, jPlayer Development Guide, .mp3 files and the Accept-Ranges header ile ilgili ayrıntıları verir. Chrome'u kullanırsanız, Kabul Etme Aralıkları isteğini ve yanıt üstbilgisini gerçekten görebilirsiniz. F12 tuşlarına basarsanız ve sekmesini seçin. .mp3 dosyasına tıkladığınızda, başlıkları inceleyebilirsiniz. İyi haber şu ki, sunucunuz Accept-Ranges üstbilgisini destekliyor gibi görünüyor. Ancak, bazen neden önce indirme işleminin tamponlanması gerektiğini açıklamıyor.

Flash desteği ve tek bir .mp3 olmak üzere basit demo ile başlamanız gerektiğini düşünüyorum. Çalma listeniz rastgele oluşturulur, bu nedenle sorunun sadece belirli dosyalar için olup olmadığını belirlemek zordur. Ayrıca, sorunu teşhis etmede yardımcı olabilecek jPlayer için ayrıntılı istatistikler veren jPlayer Inspector'u kullandım.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
    <title>Test</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js" type="text/javascript"></script> 
    <script src="jQuery.jPlayer.2.0.0/jquery.jplayer.min.js" type="text/javascript"></script> 
    <script src="jQuery.jPlayer.2.0.0/jquery.jplayer.inspector.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
     $(function(){ 
      $('#jplayer').jPlayer({ 
       ready: function() { 
        $(this).jPlayer('setMedia', { 
         mp3: 'mp3/example.mp3' 
        }); 
       }, 
       swfPath: 'not_a_valid_directory', 
       solution: 'html, flash', 
       supplied: 'mp3' 
      }); 

      $('#jplayer_inspector').jPlayerInspector({jPlayer:$('#jplayer')}); 

      $('#seeker').click(function() { 
       $('#jplayer').jPlayer('play', 20); 
       return false; 
      }); 
     }); 
    </script> 
</head> 
<body> 
<div id="jplayer"></div> 
<a href="#" id="seeker">Play 20s from start</a> 
<div id="jplayer_inspector"></div> 
</body> 
</html> 

Ayrıca içerecek şekilde yukarıdaki demo kodunu değiştirmek olabilir:

swfPath: 'jQuery.jPlayer.2.0.0', 
solution: 'flash, html', 

JPlayer yapıcı varsayılan oyuncu olmak için Flash zorlamak.

+0

Merhaba, eski bir tarayıcı kullanmıyorum. En son Chrome/Opera/IE bunların hepsini arabelleğe alır. Lütfen herhangi bir tarayıcıda www.uttarakhandradio.com adresinde konuşlandırılan oynatıcımı kontrol edin ... hala arabellek ... biraz yeni ve öğreniyor, böylece sunucumun bu arabelleğe almayı destekleyip desteklemediğini nasıl kontrol edeceğim? Stream-mümkün doğru olması gereken bir mp3 dosyası kullanıyorum? – footy

+0

Sitenize bir göz atacağım. – andyb

+0

teşekkürler. Bunu yapar mısın lütfen? cheers :) – footy

İlgili konular