La génération des miniatures remplit le stockage de l’application, car le serveur crée de nombreuses images dérivées et les enregistre dans un chemin de métadonnées ou de cache accessible en écriture.
Une bibliothèque multimédia peut conserver des vidéos de plusieurs téraoctets sur un pool de disques durs, tandis que son conteneur associe la configuration, les métadonnées et le cache à un SSD ou un volume de démarrage beaucoup plus petit. Les images de chapitres, les aperçus de navigation, les affiches, les arrière-plans et les fichiers d’extraction temporaires augmentent avec la durée d’utilisation de la bibliothèque et les paramètres de génération, plutôt qu’en fonction de la seule taille des fichiers sources. La solution sûre consiste à identifier précisément le type et le chemin des fichiers dérivés avant de supprimer quoi que ce soit dont la base de données a encore besoin.
Localisez le répertoire qui augmente réellement
Mesurez séparément les répertoires de configuration, de cache, de métadonnées, de transcodage et de fichiers temporaires de l’application multimédia. Triez les sous-répertoires par taille allouée et par date de modification récente pendant l’exécution d’une tâche de génération de miniatures.
L’extraction des images de chapitres est explicitement décrite par les chaînes d’interface de Jellyfin comme lente, exigeante en ressources et susceptible de nécessiter plusieurs gigaoctets d’espace.
Vérifiez si l’espace occupé augmente dans le point de montage de l’hôte, dans un volume nommé ou dans la couche accessible en écriture du conteneur. Si la couche du conteneur augmente, corrigez la persistance avant le nettoyage ; sinon, l’espace peut disparaître de la vue de l’application tout en continuant à consommer le stockage système de Docker.
Identifiez la fonctionnalité d’image qui a créé les fichiers
Faites la distinction entre les affiches et arrière-plans ordinaires, les images de chapitres, les aperçus de navigation, les miniatures d’aperçu vidéo, les marqueurs d’introduction et les illustrations générées par les extensions. Chaque fonctionnalité possède son propre déclencheur et sa propre règle de conservation.
La fonction d’aperçu de navigation crée des échantillons visuels répétés sur la timeline d’une vidéo afin que les clients puissent afficher des aperçus pendant le déplacement. Les grilles d’images produites dépendent principalement de la durée totale, de l’intervalle d’échantillonnage, de la résolution, de la qualité et de la disposition des vignettes, plutôt que du fait que la source soit en 1080p ou en 4K.
Exécutez manuellement une tâche planifiée tout en surveillant le répertoire cible. Faites correspondre les nouveaux noms de fichiers et les entrées de la base de données à la fonctionnalité qui les a produits. Ne désactivez pas tous les fournisseurs de métadonnées lorsqu’une seule tâche d’aperçu est responsable du problème.
Vérifiez l’intervalle, la résolution, la qualité et le périmètre de la bibliothèque
Notez la largeur des miniatures, l’intervalle d’échantillonnage, la qualité JPEG ou WebP, les dimensions des vignettes, le nombre de threads et les bibliothèques incluses dans la génération. Des intervalles plus courts et des images plus grandes créent davantage de pixels stockés par heure de vidéo.
La génération peut également redémarrer après une modification des paramètres ou une mise à niveau. Un problème Jellyfin décrit des utilisateurs qui ne parvenaient pas à empêcher le retour des données d’aperçu de navigation déjà générées, car la désactivation de la fonctionnalité n’avait pas nettoyé les fichiers existants.
Modifiez un seul paramètre sur une petite bibliothèque de test et comparez le nombre d’octets générés par heure de contenu multimédia. Utilisez ce ratio mesuré pour estimer l’ensemble de la bibliothèque avant de lancer une nouvelle tâche d’extraction complète.
| Modification du paramètre | Effet probable sur le stockage | Compromis |
|---|---|---|
| Intervalle d’échantillonnage plus long | Moins d’images | Aperçus de déplacement moins précis |
| Largeur de miniature réduite | Fichiers plus petits | Aperçus moins nets sur téléviseur |
| Qualité d’image réduite | Fichiers plus petits | Davantage d’artefacts de compression |
| Périmètre de bibliothèque réduit | Moins de stockage total | Aucun aperçu pour les bibliothèques exclues |
Choisissez des paramètres adaptés aux écrans et au comportement de navigation réels des clients, plutôt que de générer le dérivé de la plus haute qualité pour chaque titre.
Recherchez les ensembles de miniatures obsolètes ou orphelins
Comparez les éléments multimédias actifs aux répertoires générés après le remplacement, le renommage, le déplacement ou la suppression de fichiers. D’anciens ensembles d’aperçus peuvent rester présents lorsque le nouveau fichier reçoit un identifiant d’élément ou un nom de sortie différent.
Un rapport Jellyfin montre que d’anciennes images d’aperçu de navigation stockées à côté des fichiers multimédias n’ont pas été supprimées lors de la génération de nouveaux aperçus, laissant des données d’aperçu de navigation obsolètes à côté de l’ensemble actuel.
Utilisez d’abord la tâche de nettoyage prise en charge par l’application et vérifiez que la base de données des métadonnées a été sauvegardée. Si une suppression manuelle est nécessaire, testez-la sur un élément orphelin et actualisez-le avant de supprimer de grandes arborescences dont les références sont inconnues.
Vérifiez si les images doivent être stockées dans l’application ou à côté des fichiers multimédias
Certains serveurs multimédias peuvent enregistrer les illustrations ou les données d’aperçu de navigation à côté de la bibliothèque, tandis que d’autres conservent les fichiers dérivés liés à la base de données dans les métadonnées de l’application. Le déplacement de cet emplacement modifie la sauvegarde, les autorisations, la migration et le comportement d’une bibliothèque en lecture seule.
Enregistrer les aperçus à côté des fichiers multimédias peut faciliter la portabilité lors des migrations, mais cela peut aussi multiplier les petits fichiers sur un partage volumineux hébergé sur disque dur et nécessiter un accès en écriture à la bibliothèque. Un problème de migration Jellyfin montre que les fichiers d’aperçu de navigation stockés localement peuvent ne pas être transférés correctement entre les instances.
Conservez les dérivés liés à la base de données et ceux générés fréquemment sur un volume d’application dimensionné à cet effet, sauf si l’application prend entièrement en charge les images locales portables. Gardez le partage multimédia en lecture seule lorsqu’un accès en écriture n’est pas nécessaire pour la disposition choisie.
Déplacez le volume de l’application sans dissocier l’état de sa base de données
Si les paramètres sont raisonnables mais que le volume de l’application est sous-dimensionné, arrêtez le serveur multimédia et déplacez l’ensemble de la configuration, des métadonnées et des unités de cache conformément à la conception des points de montage persistants du conteneur. Préservez les propriétaires, les ACL, les fichiers de base de données et les liens symboliques.
L’article de ZimaSpace consacré aux volumes d’application SSD pour les métadonnées et les miniatures explique pourquoi ces charges composées de petits fichiers bénéficient d’un stockage rapide, tandis que les fichiers multimédias sources volumineux peuvent rester sur des disques durs.
Ne déplacez pas uniquement le plus grand répertoire d’images en laissant les chemins de la base de données à leur emplacement, sauf si l’application prend en charge cette séparation. Démarrez l’instance migrée de manière isolée et vérifiez que les anciennes miniatures s’affichent correctement avant d’en générer de nouvelles.
Nettoyez en toute sécurité et établissez une référence de croissance
Mettez les tâches de génération de miniatures en pause, sauvegardez la base de données de l’application et notez le nombre actuel de fichiers ainsi que leur taille en octets pour chaque type de dérivé. Supprimez uniquement les fichiers obsolètes confirmés ou utilisez les commandes de suppression et de régénération prises en charge par l’application.
Un SSD rempli peut affecter bien plus que les miniatures. Un problème Jellyfin associe un SSD saturé à des dommages présumés de la base de données et à une vue incomplète de la bibliothèque, montrant pourquoi l’épuisement de l’espace libre peut menacer l’état de l’application.
Après le nettoyage, exécutez la génération sur une seule bibliothèque, mesurez la croissance quotidienne et configurez des alertes avant que le volume de l’application n’atteigne son seuil de réserve. La réparation est terminée lorsque les aperçus attendus fonctionnent, que les données obsolètes ne réapparaissent plus et que la croissance du stockage correspond à l’intervalle, à la résolution, à la qualité et au périmètre de bibliothèque choisis.
Assistance et conseils
Plus à lire

Plex peut-il partager un GPU avec un autre conteneur Docker ?
Plex et un autre conteneur peuvent souvent accéder au même GPU, mais vous devez tester la prise en charge des pilotes, le mappage des...

Comment déterminer si une erreur Plex vient du client ou du serveur
Reproduisez le même élément sur un autre client, comparez le chemin de session, puis recueillez les preuves côté serveur uniquement après que la portée...

Comment configurer le cache de Plex et le stockage temporaire du transcodage
Protégez l’état persistant de Plex en plaçant les fichiers temporaires de transcodage sur un stockage local adapté, puis vérifiez le nettoyage, l’espace libre et...

