Chrome stellt beim Herunterladen von MP4-Videos (~ 34 MB) viel zu viele Anfragen (~ 22000).

8

Wir hosten einige Videodateien (mp4) auf unserer Website.

Alle Dateien werden in Google Chrome viel zu langsam geladen, in FF ist alles in Ordnung.
Ich habe das Herunterladen einer Datei mit einer Größe von 34 MB getestet (ich habe die Datei über einen direkten Link geöffnet). Die Ergebnisse sind:

  • Chrome hat ~ 22000 (!) Anfragen gestellt, 982 MB übertragen.
  • Firefox hat nur 5 Anfragen gestellt.

Als Server verwenden wir Nginx mit Standardeinstellungen (in Bezug auf die Bereitstellung von Videodateien).

Hier erfolgt die Interaktion (die ersten fünf Anfragen) zwischen Chrome und dem Server. Nur Range, Content-Length, Content-Rangeinklusive Header.
(<- Header von Chrome gesendet, <- einer vom Server gesendet):

> Initial request for file, usual GET  
< Content-Length:35690389  
< Content-Type:video/mp4  

Then a bunch of similar requests, on which the server responded with 206 status code:  
---  
> Range:bytes=0-  
< Content-Length:35690389  
< Content-Range:bytes 0-35690388/35690389  
---   
> Range:bytes=29100305-  
< Content-Length:6590084  
< Content-Range:bytes 29100305-35690388/35690389  
---  
> Range:bytes=35566374-   
< Content-Length:124015  
< Content-Range:bytes 35566374-35690388/35690389  
---  
> Range:bytes=32-  
< Content-Length:35690357  
< Content-Range:bytes 32-35690388/35690389  

Es sieht so aus, als würde Chrome einige Header, die vom Server gesendet werden (z. B. Range), falsch verstehen und dieselben Dateien mehrmals herunterladen.

Was könnte das Problem verursachen? Irgendwelche Ideen?

Vasily
quelle

Antworten:

3

Das Problem wurde durch Videodateien verursacht (nämlich durch den verwendeten Konverter).
Die Dateien, die das Problem verursacht haben, wurden mit Format Factory v2.6 konvertiert .
Nach dem Upgrade auf v3.7 und dem erneuten Konvertieren verschwand das Problem.

Was Chrome dazu bringt, beim Abspielen solcher Videos so viele Anfragen zu stellen, ist noch unbekannt ...

Vasily
quelle
Haben Sie den Autor des Konverters nach der Ursache gefragt?
Vladislav Rastrusny
1
@VladislavRastrusny Nein, habe ich nicht. Die Version, die das Problem verursacht hat, ist sehr veraltet, wenn ich es sogar ab 2010 richtig gemacht habe.
Vasily
Aha. Nun, ich denke, sie würden gerne etwas über das Problem erfahren. Zumindest wenn es noch nicht in ihrem Changelog ist.
Vladislav Rastrusny
Wir haben ähnliche Probleme mit unseren MP4-Dateien, die länger als 1 Stunde oder größer als 700 MB sind. Wir rendern es mit Adobe Premiere. Ich fand, dass das erneute Rendern mit ffmpeg hilft: ffmpeg -i input.mp4 -vcodec copy -acodec copy out.mp4 -movflags + faststart
LLAlive