2012-10-06 16 views
5

Hem 192 kbps hızında, hem de mp3 veya mp3 akışı yapabilen bir IceCast2 sunucusu kurdum. html olarak Yeni bir şarkı, Chrome ve Firefox'ta ses html5 etiketini kullanmaya başladığında akışlı müzik çalma durur

kullandığım:
<audio controls autoplay> 
    <source src="http://site.com:8000/mount1.ogg" type="audio/ogg"> 
    <source src="http://site.com:8000/mount2.mp3" type="audio/mp3"> 
    Your browser does not support the audio element. 
</audio> 

Fakat Chrome 22'de

/Firefox 13 yeni şarkı başlar her zaman, oyuncu oynatmayı durdurur. IE10'da herhangi bir sorun olmadan oynamaya devam ediyor. Bunun, IE'nin mp3 kullanıyorken Chrome ve Firefox'un ogg kaynağını kullanmasıyla ilgili bir şey olabileceğini düşünüyorum. Görünüşe göre Opera 12'de 192 kbps çalınırken (müzik duyuluyormuş gibi geliyor), 128'e geçtim ve akıcı bir şekilde çalıştı.

Bunun için bir çözüm bilen var mı?

Yardımlarınız için teşekkürler!

+1

'Bitmiş' için bekleyen bir olay dinleyicisine bakıyorsunuz Bu oldukça kullanışlıdır: [html5 sesin durumu] (http://html5doctor.com/html5-audio-the-state-of-play/# events), İlk parça bittiğinde bir sonraki parçayı her zaman tetikleyebilirsiniz – Eruant

+0

Bağlantı için teşekkürler, bu çok güzel: http://jplayer.org/HTML5.Media.Event.Inspector/ –

cevap

4

Birisi daha iyi bir yanıt verene kadar bunu geçici bir hack olarak yayınlayın.

Chrome MEDIA_ERR_DECODE'da oynatma durduğunda atılır, Firefox'ta ise herhangi bir hata olmadan durur.

Ben currentSrc için src değiştirdi ve daha sonra onerror ve onended olay play() denilen, ama ses bazen oyun devam etmeden önce kesilir. Daha iyi bir yol olmalı. Sen benim Kodunuzdaki gördüğüm tek sorun^yukarıda da belirtildiği gibi çok şey yapmak zorunda değilsiniz

/* jQuery - run on document ready */ 
$(function() 
{ 
    var audioElement = $('#audioPlayer')[0]; 

    audioElement.onended = audioElement.onerror = function() 
    { 
     audioElement.src = audioElement.currentSrc; 
     audioElement.play(); 
    }; 
}); 
+1

Răzvan: Hiç akıntının neden bunu yaptığını öğrendin mi? Aynı problemi yaşıyorum, ve eğer sorun genel olarak .ogg akışlarında olsaydı, bulduğum iki SO sorudan daha iyi bir şekilde belgelenirdi. – Dmitri

+0

@Dmitri: Yeni bir şey bulamadım. Çalıştığım tarayıcılarda html5 sesiyle ilgili olarak uygulanmakta olanlarla ilgili olduğunu varsayıyorum. Bu saldırı beni kurtardı –

+0

. Chrome'da nasıl düzeltileceğini anladım. Flash tabanlı oyuncu arıyordum ama çoğu çalışmıyor. – JavaDev

-1

u sadece oto oyun yazdı olmasıdır. Bunu yapmak zorundasın autoplay = true;

İlgili konular