Passer au contenu principal
Owncat cautions you
Cette page n'est pas répertoriée. Les moteurs de recherche ne l'indexeront pas, et seuls les utilisateurs ayant un lien direct peuvent y accéder.

Tous les visionneurs rencontrent des mises en mémoire tampon

Lorsque chaque visionneur est en train de mettre en mémoire tampon, le problème est presque toujours du côté du serveur ou de la diffusion plutôt qu'avec la connexion de chaque visionneur. Suivez les étapes ci-dessous dans l'ordre.

Après avoir lu ci-dessous, vous pourriez également trouver des conseils utiles en consultant le Guide de dépannage OBS, même si vous n'utilisez pas OBS.

Check Stream Performance

Il n'y a aucun intérêt à diffuser si personne ne peut le regarder. The Stream Performance page in the admin, at /admin/stream-health, gives you an overview of some important metrics that may give you an idea if what you’re offering your viewers is leading to a good experience.

L'écran de performance de flux dans l'admin, avec des graphiques pour le temps de téléchargement du segment vidéo, la vitesse du réseau du lecteur, les erreurs et les changements de qualité, ainsi que la latence du spectateur

The page charts four things: Video Segment Download, Player Network Speed, Errors and Quality Changes, and Viewer Latency.

Voir des erreurs, de faibles vitesses réseau et des temps de téléchargement excessifs pour votre contenu peut signifier que vous devez ajouter des qualités vidéo supplémentaires pour améliorer les performances de lecture pour les spectateurs à bande passante faible, sur des réseaux mobiles ou pour d'autres facteurs.

Si vous voyez sur cette page que des personnes rencontrent des problèmes lors de la lecture de votre flux, vous pouvez vouloir dépanne.

Note: Only some players report detailed playback metrics themselves, mostly web browsers running the Owncast web interface.

Server-observed playback metrics require Owncast v0.3.0

For players that do not self-report, such as VLC, mpv, Safari and ffmpeg, Owncast records the download speed and duration of video segments it serves, as observed by the server. This only works when Owncast serves the video itself. If your segments are hosted on S3 storage, viewers download them from there and these players are not represented in the metrics.

Analyze your stream with the HLS Analyzer

Visitez HLS Analyzer pour aider à résoudre les problèmes. Saisissez votre URL de flux lorsque cela est demandé, c'est <yourserver>/hls/stream.m3u8. Appuyez sur Analyser .m3u8.

Prenez note des valeurs suivantes :

Téléchargement de segment (sec) : Le temps qu'il a fallu (en secondes) pour télécharger un segment de vidéo. S'il faut plus de temps pour télécharger un segment de vidéo que la durée de chaque segment, vous aurez un buffering.

Buffer du lecteur (sec) : La quantité de vidéo lisible (en secondes) disponible. Si cela atteint zéro, vous aurez un buffering.

Interruption (sec) : Le temps pendant lequel le lecteur n'avait pas de vidéo disponible et est passé en buffering.

Vérifiez l'utilisation du matériel de votre serveur Owncast

Visitez la page d'utilisation du matériel dans l'administration pour voir comment les ressources de votre serveur fonctionnent.

La page d'information sur le matériel dans l'administration, affichant des jauges d'utilisation de CPU, de mémoire et de disque avec un graphique d'utilisation dans le temps

Si votre CPU est saturé sur votre serveur Owncast, les spectateurs verront des mises en mémoire tampon, car le serveur ne peut plus suivre. Si c'est ce que vous ressentez, la première étape est de résoudre l'utilisation excessive du matériel.

Commencez par votre logiciel de diffusion

Diffusez votre stream de manière fiable

Assurez-vous que votre ordinateur de diffusion diffuse de la vidéo en direct de manière fiable. Si votre propre ordinateur ou connexion réseau a du mal à envoyer la vidéo sur Internet, alors les spectateurs seront bloqués dans un état de mise en mémoire tampon. Réduisez le débit binaire, la résolution et/ou la fréquence d'images dans votre logiciel de diffusion sur l'appareil de diffusion si nécessaire.

Notez les images perdues et investigatez ce qui cause ces pertes. Est-ce votre CPU ou GPU local ? Est-ce votre réseau local ? Ou est-ce le serveur Owncast qui les perd à cause de l'utilisation du matériel ?

Si, par exemple, votre GPU sur votre ordinateur de diffusion est à pleine capacité, alors il ne peut pas suivre le rendu des images. Si vous utilisez OBS, un moyen de déterminer cela est de regarder les "Statistiques" dans l'application et de voir si vous rencontrez des "Retards de rendu".

Correspondance de la qualité vidéo

Une optimisation facile de l'utilisation du CPU est de s'assurer que votre vidéo entrante correspond à votre qualité de sortie maximale.

Le débit binaire, la résolution et la qualité d'image les plus élevés que vous avez configurés dans Owncast pour offrir à vos spectateurs devraient correspondre à ce que vous envoyez à Owncast dans votre logiciel de diffusion afin de réduire la quantité de travail supplémentaire que le CPU doit effectuer. Commencez par votre qualité la plus élevée correspondant à votre logiciel de diffusion, puis avancez à partir de là. Des qualités inférieures, bien sûr, devraient être proposées aux personnes ayant des connexions réseau plus lentes ou étant géographiquement éloignées.

Augmentez votre tampon de latence

Augmenter les paramètres de votre tampon de latence commencera l'utilisateur plus loin derrière le direct, mais donnera au client plus de vidéos lisibles avant qu'il ne soit bloqué en attendant le direct. Moins de latence est moins efficace et est plus susceptible de créer des mises en mémoire tampon. Vous devrez vérifier à l'aide de HLS Analyzer après avoir augmenté la valeur de votre tampon de latence pour voir si cela a réduit certains avertissements.

You can change this value in the admin under Configuration > Video. Latency and video quality changes take effect on your next stream, so restart your stream after changing them.

Inconvénient: Augmenter votre latence rend plus difficile l'interaction en direct avec les visionneurs car le délai entre le moment où vous effectuez une action et le moment où ils la voient augmente.

Réduisez la qualité de votre vidéo

Une vidéo de qualité supérieure signifie des tailles de vidéo plus importantes qui prennent plus de temps à télécharger.

Comme cité dans le Wiki d'OBS:

> C'est une erreur très courante que font les nouveaux streamers. Les streamers ont tendance à utiliser autant de bitrate qu'ils ont en upload, sans tenir compte de la manière dont cela pourrait affecter leurs spectateurs. Bien sûr, nous comprenons que vous voulez que votre stream ait l'air bien. Augmenter votre bitrate est un moyen simple d'y parvenir, mais cela doit être raisonnable. >

Au final, bien que votre stream 1080p 60fps 9mb/s puisse avoir l'air glorieux, et que 3 personnes puissent le regarder sans problème, soit votre fournisseur de stream, soit le reste de vos téléspectateurs pourrait très bien avoir des problèmes.

Réduisez le bitrate et le framerate de vos variantes de sortie vidéo dans Owncast, puis faites correspondre votre qualité la plus élevée à ce que vous envoyez dans votre logiciel de diffusion.

Plus chaque segment de vidéo est grand, plus il faut de temps pour télécharger. Donc, en général, si vous diminuez la qualité de votre vidéo (en bitrate et/ou en résolution), vous êtes susceptible de diminuer le temps nécessaire au téléchargement, réduisant donc la probabilité de mise en mémoire tampon pour votre audience.

Lorsque vous diminuez le framerate et/ou le bitrate sur votre serveur, vous devez également diminuer ce que vous envoyez à Owncast dans votre logiciel de diffusion. Cela aide parce que:**

  1. Cela diminue la quantité de trafic réseau que votre connexion Internet utilise, réduisant le risque que votre upload devienne un goulot d'étranglement lors de la diffusion.
  2. Cela réduit la quantité de données qui sont ingérées dans Owncast.
  3. Moins il y a de travail de conversation qui doit avoir lieu dans Owncast, plus les choses avancent rapidement.

Inconvénient : Réduire votre framerate et/ou votre bitrate peut diminuer de manière notable la qualité de votre stream pour certains contenus.

Framerate

Diminuer le framerate de votre vidéo est souvent un moyen facile de réduire la mise en mémoire tampon. FPS signifie "frames per second" (images par seconde), donc si vous réduisez le framerate de votre vidéo de 60fps à 30fps, il y a littéralement deux fois moins d'images de vidéo à télécharger pour vos spectateurs, réduisant ainsi la quantité de données vidéo de moitié.

Inconvénient : Réduire le framerate peut visiblement diminuer la qualité de votre stream pour certains contenus.

Utilisez un stockage externe

Si le problème principal est que votre serveur n'est pas capable de gérer votre nombre de spectateurs, vous pouvez profiter des fournisseurs de stockage d'objets tiers, afin que vos spectateurs téléchargent la vidéo depuis là plutôt que depuis votre serveur. Owncast still serves the master playlist, the APIs and chat itself, but the variant playlists and video segments, which make up almost all of the bandwidth, are offloaded to the storage provider.

Cela vous permet de générer la vidéo sur votre serveur Owncast, mais de la servir depuis un fournisseur qui a une bande passante et une capacité illimitées à un coût faible.

With this setup you don't need extra CPU or a more powerful server in order to support more viewers, as the heavy video traffic no longer comes from your server.

En savoir plus sur la configuration du stockage externe avec Owncast.

Utilisez un CDN

Pour soutenir un plus grand nombre de personnes à travers le monde, un CDN (réseau de distribution de contenu) est généralement la prochaine étape. Placer un CDN devant votre vidéo permet à votre vidéo d'être distribuée par des serveurs géographiquement plus proches du spectateur.

En savoir plus sur l'utilisation d'un CDN avec Owncast.

Passez à un serveur plus centralement situé ou hébergé par un fournisseur plus rapide

Vous aurez peut-être plus de chance d'exécuter Owncast sur un serveur qui pourrait être plus centralement situé géographiquement ou qui a une connexion au monde plus rapide. Si votre serveur est physiquement éloigné de vous (pour diffuser) et de vos spectateurs (pour consommer la vidéo), vous n'êtes peut-être pas dans la configuration la plus optimale.

Si vous rencontrez des téléchargements lents vers un stockage externe

Si vous utilisez un stockage externe, assurez-vous de pouvoir télécharger sur ce service de stockage assez rapidement. Sinon, le retard dans l'arrivée de vos fichiers chez le fournisseur de stockage que tout le monde utilise pour visionner la vidéo provoquera des mises en mémoire tampon.

Si vous avez une connexion de téléchargement lente, ou si vous téléchargez sur un service de stockage externe qui est trop éloigné, ou qui n'est pas optimisé pour des téléchargements rapides, vous pourriez rencontrer un problème où il faut trop de temps pour télécharger les segments vidéo, ce qui signifie qu'ils ne seront finalement pas disponibles assez rapidement pour être utilisés.

  1. Déterminez s'il existe un autre point de terminaison pour votre service de stockage qui pourrait être géographiquement plus proche de vous.
  2. Utilisez un service de stockage qui est aussi proche (physiquement et logiquement) de l'emplacement de votre instance Owncast. Par exemple, si vous êtes sur une machine AWS, utilisez un seau S3 dans la même région. Si vous êtes sur Digital Ocean, essayez DO Spaces. Mais peut-être ne pas utiliser DO Spaces si vous êtes sur une machine Linode, utilisez plutôt Linode Object Storage. Exécutez owncast avec --enableVerboseLogging pour voir si vous recevez des avertissements de téléchargement lent.
  3. Essayez d'augmenter votre vitesse de téléchargement auprès de votre fournisseur de serveur.
  4. Découvrez si votre service de stockage propose quelque chose comme l'Accélération de Transfert d'AWS pour (possiblement) essayer d'augmenter la vitesse des téléchargements.
  5. Réduisez la qualité de votre vidéo afin que les segments vidéo soient plus petits et prennent moins de temps à télécharger.

Improve this page

See something missing or incorrect? Edit the English version of this page or help improve translations.

Contributors to this documentation