2013-06-08 2 views
13

Wir arbeiten an einem Projekt auf wavestack.com und haben es mit einem Problem zu tun, das uns die Arbeit schwer macht.Nur Chrome wird geladen 6 HTML5-Audio-Tags

Unsere Seite soll viele Audio-Tags gleichzeitig von einer Streaming-Quelle laden. Sie können das Konzept in dem folgenden Link überprüfen:

http://wavestack.com/songs/nTNonwsCSg932CtzPLk1FA==

Das Problem kommt, wenn wir versuchen, mehr als 6 Titel in der gleichen Zeit zu laden, wie in dem folgenden Link dargestellt:

http://wavestack.com/songs/hp7G8CSsg45t3fV5YNeqbQ==

Diese Seite funktioniert gut auf Firefox und IE10, aber nicht in CHROME.

Wir bemerken auch etwas neugierig:

ich drucke in der Konsole, um den Wert eines Zählers, der erhöht, wenn ein Audio-Tag das Ereignis „canplaythtough“ Brände, Wir bekommen insgesamt 6, wenn es 7 sein soll. Das Seltsame ist, dass, wenn Sie einen Breakpoint bei Zeile 472 setzen (wie im angehängten Bild gezeigt) und dann wieder 7 Treffer

Schluss damit CHROME ist nicht das Laden von mehr als 6 Tracks gleichzeitig, aber es ist seltsam, wenn Sie einen Breakpoint in den casplaythrough-Handler setzen.

Danke, bitte Hilfe!

+0

Was haben Sie am Ende getan? Ich stehe derzeit vor einem ähnlichen Problem. – skybondsor

Antwort

2

Standardmäßig können Sie in Chrome fünf oder sechs Dateien gleichzeitig herunterladen, da dies in den meisten Windows-Installationen der Standardwert ist. Wenn Sie mehr als fünf Dateien herunterladen müssen, platziert Chrome einige der Zieldateien in einer Warteschlange und lädt sie dann herunter, sobald einer der fünf Bereiche verfügbar ist. In Chrome können Sie die Anzahl der gleichzeitigen Downloads in der Anwendung selbst nicht ändern. Durch Bearbeiten der Windows-Registrierung können Sie jedoch die Anzahl der gleichzeitigen Downloads in Chrome oder einem anderen Webbrowser auf eine von Ihnen ausgewählte Nummer festlegen. Lesen

More @ehow.com

Lösung: Ein Trick können Sie mit der Anzahl der gleichzeitigen conncetions erhöhen ist Ihre Video-Dateien von einer anderen Sub-Domain zu hosten. Diese werden als separate Anfragen behandelt, wobei jede Domain auf das gleichzeitige Maximum beschränkt ist.

0

Für die Zukunft:

Es ist ein schlechte Praxis, sie alle zur gleichen Zeit zu laden, weil die Menschen mit langsamen Internet-Geschwindigkeiten nicht in der Lage sein, Ihre Website überhaupt zu benutzen. Alle Downloads machen jeden Download sehr langsam.

Es ist besser, ein Audio-Element dynamisch mit Javascript zu erstellen.

3

Ich denke, dieses Problem kann behoben werden, indem Attribut preload von Audio-Tag zu Metadaten.

4

Stellen Sie die Vorspannung Attribut von Audio (und Video) Tags wie folgt aus: <audio controls preload="none">

Auf diese Weise Mediendateien werden nicht beim Laden der Seite herunterladen (man denke über mobile Leistung vor allem). Wenn ein Benutzer auf Play klickt, wird die relevante Datei wie gewohnt heruntergeladen.

0

Einfachste Möglichkeit, alle Audio-Tags auf Ihrer HTML-Seite zu laden, verwenden Sie async.

<audio async preload src="hit1.mp3"></audio>

Ich arbeite an einer Web-Anwendung (Spiel), so ist dies eine durchaus vernünftige Lösung für mich.

Verwandte Themen