2016-06-02 5 views
0

Ich habe einen Online-Audio-Player. Es ist in Ordnung, aber es dauert zu viel Zeit, um das Audio auf langsamem Internet zu spielen. Kann ich hier etwas tun, um dieses Problem zu beheben?Load Audio in meiner Zeit in HTML 5 mit Javascript

kann ich irgendeine Ladezeit einstellen? Wie zuerst lädt das Audio zuerst 10 Sekunden. Wenn die ersten 10 Sekunden geladen sind, beginnt der Spieler zu spielen. Während es die ersten 10 Sekunden in dieser Zeit spielt, lädt der Player die nächsten 10 Sekunden. Kann ich es schaffen?

var audio = new Audio(); 
audio.src ="dir/music.mp3"; 
audio.loop = true; 
audio.autoplay = true; 

es ist mein aktueller Code. Bitte hilf mir. Danke

+0

Bieten Sie eine Low-Bitrate-Version der Musik an. Sie können die Ladezeit schätzen, indem Sie eine Dummy-Datei über XHR laden und Bytes/Zeit messen. Unterhalb eines vordefinierten Schwellenwerts werden die Quellen auf Versionen mit niedriger Bitrate gestellt. – K3N

Antwort

0

Ich denke, dein bester Weg wird sein, eine niedrigere Qualität. MP3-Datei (192 kbps) zu haben? Sie sind nie sicher, dass die nächsten 10 Sekunden geladen werden, sobald Sie die ersten 10 Sekunden gespielt haben.

+0

, aber es ist eine mp3-Audio-Song-Wiedergabe-Website, so kann keine Datei niedriger Qualität verwenden. und eine Datei sollte 23 oder mehr Minuten –

+0

Wie lang ist das Lied? Vielleicht kannst du einen 30min Song in 1min Stücke schneiden und eine Playlist erstellen? .mp3 hat verschiedene Qualitäten, wie 192kbps oder 320kbps (und alles dazwischen und vorher) Und 192kbps ist immer noch akzeptabel für eine solche Website, können Sie einen Download-Button für hohe Qualität hinzufügen, wie Sie möchten. –

+0

die Länge des Songs kann 3 oder mor Minute wie 4 oder 5 Minuten .. –

0

Der Browser entscheidet, wie viel er laden wird. Sie können dies wie folgt machen: Erzwingen Sie dem Browser, Audio abzuspielen, sobald der HTML-Code vollständig geladen ist.

window.onload = function() { 
     document.getElementById("my_audio").play(); 
    } 

Aber langsame Verbindung ist nicht nur Feind. Wenn der Browser/PC langsam ist, kann es länger dauern, da das Audio geladen und dekodiert werden muss. Am besten verwenden Sie Audio mit geringerer Qualität. So kann es schneller geladen und verarbeitet werden. Wenn Sie HTML5-Audio-Tags verwenden, stellen Sie sicher, dass preload = "auto" verwendet wird.

<audio preload="auto"> 

Um die erweiterten Audio Sachen machen Sie niedriges Niveau Audio-Frameworks und so weiter verwenden mußten, um mehr Kontrolle darüber zu haben, wie die Dinge funktionieren.

Auch. Wav ist viel schneller Decodierung als MP3.

+0

WAV ist auch etwa x10 größer als mp3. das Entschlüsseln von MP3 heute sogar auf langsamen CPUs ist keine große Leistung. – K3N

+0

Ich hatte eine wirklich nervige Verzögerung in der Musik, als ich MP3 in meinem Phaser-Spiel benutzte, mit wav war es in Ordnung. Die Dekodierung wirkte sich sogar auf meine mehr oder weniger hochwertige Hardware aus. Vielleicht war der Decoder der einzige Grund. Ich weiß es nicht. –