56 votes

Pourquoi le comportement de mise en mémoire tampon/chargement de YouTube est-il si horrible dans Chrome ?

Je souffre de ce problème depuis des mois, voire des années, et je n'ai toujours pas la moindre idée de la cause.

Disons que j'ouvre une vidéo sur YouTube dans Chrome, par exemple Réflexions de Jamie Hyneman sur la conception et la fabrication avec la CAO le lecteur arrêtera instantanément la lecture après la publicité et commencera à mettre en mémoire tampon. Une fois qu'il a 10 secondes en mémoire tampon, il continue la lecture et s'arrête à nouveau après avoir joué les 10 secondes.

Dans de tels cas, Google recommande de mettre la vidéo en pause et d'attendre qu'elle soit entièrement mise en mémoire tampon, mais lorsque je mets la vidéo en pause, elle n'est jamais entièrement mise en mémoire tampon. Au mieux, elle chargera quelques secondes de vidéo, puis s'arrêtera complètement.

En revanche, lorsque j'ouvre la même vidéo dans Firefox au même moment, non seulement la lecture se fait parfaitement bien, mais si je mets la vidéo en pause, elle se met entièrement en mémoire tampon. Voici une comparaison :

Voici la vidéo dans Chrome. Je l'ai ouverte et mise en pause à la marque 0:05 et l'ai laissée charger pendant environ une minute. Nous pouvons voir le résultat dans la barre de défilement :
YouTube video in Chrome

Voici la même vidéo après la même période dans Firefox :
YouTube video in Firefox

Quelques minutes plus tard, la vidéo est entièrement mise en mémoire tampon dans Firefox, tandis que la situation est inchangée dans Chrome.

Dans cette situation, les deux navigateurs utilisaient le lecteur Flash (évidemment, Chrome utilise son implémentation intégrée).

Quelle est la cause de ce comportement et comment puis-je le corriger ?

48voto

diegogs Points 624

Dernièrement, j'ai à nouveau rencontré des problèmes de chargement de vidéo, même après avoir appliqué ce que j'ai suggéré dans ma réponse initiale.

Lecture du tableau de bord

D'après ce que j'ai compris, le problème sous-jacent est l'implémentation de YouTube de Streaming dynamique adaptatif sur HTTP . D'après ce que je peux dire, il y a à la fois des implémentations côté serveur et côté client. L'article de Wikipedia lié ci-dessus dit :

YouTube de Google a expérimenté la prise en charge de MPEG-DASH du côté serveur. Google Chrome le prend en charge du côté client. Cependant, la mise en œuvre de cette fonctionnalité a entraîné une forte dégradation de la lecture des vidéos en raison de divers bogues, comme le fait que les options de qualité vidéo sont aléatoirement grisées et non sélectionnables sans plusieurs rafraîchissements de la page.

Ce qui sonne très familier.

Solution

L'approche actuellement très populaire pour résoudre ce problème est d'utiliser la fonction YouTubeCenter qui est disponible pour une grande variété de navigateurs .

Il vous permet de désactiver la lecture du Dash mais aussi des notes :

Veuillez noter qu'en désactivant la lecture en mode Dash, les formats 480p et 1080p ne seront pas disponibles. Ceci est dû à une modification récente de YouTube.

Désactiver la lecture du Dash

Pour désactiver la lecture du Dash, il suffit d'ouvrir le menu des paramètres :

enter image description here

Et décochez la case correspondante sur la page du lecteur :

enter image description here

Le résultat sera que les vidéos se chargeront aussi vite que possible et complètement.

Veuillez noter YouTubeCenter supprime les publicités par défaut. Si vous souhaitez soutenir vos chaînes YouTube préférées, pensez à désactiver cette fonction.


Réponse originale :

Désactiver le plugin Flash interne de Chrome

Il semble que ce soit encore un cas de débogage de canard en caoutchouc...

Après avoir publié cet article, j'ai pensé que je devrais probablement vérifier si je peux simplement désactiver le lecteur Flash intégré dans Chrome et voir si cela a un effet. La procédure est décrite dans le Aide sur Adobe Flash Player .

  1. Saisissez le installateur de la dernière version de Flash Player d'Adobe et l'installer.

  2. Aller à chrome://plugins/ .

  3. Cliquez sur le bouton Détails pour développer les détails sur les plugins individuels :

    Chrome Plug-ins manager

  4. Il devrait y avoir 2 entrées pour l'Adobe Flash Player. L'une est la version intégrée dans Chrome, l'autre est l'installation normale. Désactivez la version intégrée.

    Internal Flash Player plug-in

    Vous reconnaîtrez facilement l'interne, car il se trouve dans l'onglet PepperFlash dans le répertoire d'installation de Chrome.

  5. Maintenant, le comportement de la mise en cache devrait être identique à celui observé dans Firefox.

Veuillez noter que la désactivation de la version intégrée de Flash est généralement déconseillée.

Utilisation de l'extension SmartVideo

Alex a fait remarquer une extension appelée SmartVideo . Cette extension vous permet de mieux contrôler le comportement de mise en mémoire tampon de Chrome.

Je l'ai testé pendant un certain temps et je suis assez satisfait des résultats. En particulier l'option Veillez à ce que les vidéos soient mises en mémoire tampon même si elles sont en pause. affecte le comportement indésirable comme indiqué dans ma question.

Elle présente plusieurs avantages par rapport à la désactivation de PepperFlash. Tout d'abord, elle offre un certain nombre d'options auxquelles je n'avais même pas pensé auparavant. Comme empêcher YouTube de lire automatiquement les vidéos.

L'utilisation de PepperFlash est également un avantage lorsque vous utilisez plusieurs moniteurs. Si vous avez une vidéo en plein écran sur un écran et une autre fenêtre Chrome sur le second, le fait de mettre l'accent sur la seconde fenêtre Chrome permet de conserver la vidéo en plein écran au premier plan. En revanche, si vous utilisez le lecteur Flash externe, la mise au point sur la deuxième fenêtre Chrome fera apparaître la barre des tâches devant la vidéo en plein écran.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X