A geração de miniaturas ocupa o armazenamento da aplicação porque o servidor cria muitas imagens derivadas e guarda-as numa localização de metadados ou de cache com permissões de escrita.
Uma biblioteca multimédia pode manter vídeos com vários terabytes num conjunto de discos HDD, enquanto o contentor associa a configuração, os metadados e a cache a um SSD ou volume de arranque muito mais pequeno. As imagens de capítulos, pré-visualizações de trickplay, cartazes, imagens de fundo e ficheiros temporários de extração aumentam com o tempo de funcionamento da biblioteca e as definições de geração, e não apenas com o tamanho dos ficheiros de origem. A solução segura começa por identificar o tipo e o caminho exatos das imagens derivadas antes de eliminar qualquer elemento que a base de dados ainda espere encontrar.
Localize o diretório que está realmente a aumentar
Meça separadamente os diretórios de configuração, cache, metadados, transcodificação e temporários da aplicação multimédia. Ordene os subdiretórios pelo tamanho alocado e pela hora da modificação mais recente enquanto é executada uma tarefa de miniaturas.
A extração de imagens de capítulos é explicitamente descrita pelas cadeias da interface do Jellyfin como lenta, exigente em recursos e potencialmente capaz de necessitar de vários gigabytes de espaço.
Confirme se o crescimento ocorre no bind mount do anfitrião, num volume nomeado ou na camada gravável do contentor. Se a camada do contentor estiver a crescer, corrija a persistência antes de limpar; caso contrário, o espaço pode desaparecer da vista da aplicação, mas continuar a consumir o armazenamento do sistema Docker.
Identifique a funcionalidade de imagens que criou os ficheiros
Separe os cartazes e as imagens de fundo normais das imagens de capítulos, pré-visualizações de trickplay, miniaturas de pré-visualização de vídeo, marcadores de introdução e imagens geradas por plugins. Cada funcionalidade tem um acionador e uma regra de retenção diferentes.
O trickplay cria amostras visuais repetidas ao longo da linha temporal de um vídeo para que os clientes possam mostrar pré-visualizações durante a navegação. As grelhas de imagens resultantes dependem sobretudo da duração total, do intervalo de amostragem, da resolução, da qualidade e da disposição dos mosaicos, e não tanto de a origem ser 1080p ou 4K.
Execute manualmente uma tarefa agendada enquanto observa o diretório de destino. Relacione os novos nomes de ficheiro e as entradas da base de dados com a funcionalidade que os produziu. Não desative todos os fornecedores de metadados quando apenas uma tarefa de pré-visualização é responsável pelo problema.
Verifique o intervalo, a resolução, a qualidade e o âmbito da biblioteca
Registe a largura das miniaturas, o intervalo de amostragem, a qualidade JPEG ou WebP, as dimensões dos mosaicos, o número de threads e as bibliotecas incluídas na geração. Intervalos mais curtos e imagens maiores criam mais píxeis armazenados por hora de vídeo.
A geração também pode reiniciar depois de uma alteração de definições ou de uma atualização. Um problema do Jellyfin descreve utilizadores que não conseguiram impedir o regresso de dados de trickplay gerados anteriormente porque desativar a funcionalidade não limpou o resultado existente.
Altere uma única definição numa pequena biblioteca de teste e compare os bytes gerados por hora de conteúdo multimédia. Utilize essa proporção medida para estimar a biblioteca completa antes de iniciar outra tarefa de extração integral.
| Alteração da definição | Efeito provável no armazenamento | Compromisso |
|---|---|---|
| Intervalo de amostragem mais longo | Menos imagens | Pré-visualizações de navegação menos precisas |
| Largura das miniaturas mais pequena | Ficheiros mais pequenos | Imagens de pré-visualização na TV menos nítidas |
| Qualidade de imagem mais baixa | Ficheiros mais pequenos | Mais artefactos de compressão |
| Âmbito da biblioteca mais restrito | Menos armazenamento total | Sem pré-visualizações para as bibliotecas excluídas |
Escolha definições adequadas aos ecrãs reais dos clientes e ao comportamento de navegação, em vez de gerar a imagem derivada da mais alta qualidade para todos os títulos.
Procure conjuntos de miniaturas obsoletos ou órfãos
Compare os itens multimédia ativos com os diretórios gerados depois de os ficheiros serem substituídos, renomeados, movidos ou removidos. Os conjuntos de pré-visualizações antigos podem permanecer quando o novo ficheiro recebe um ID de item ou um nome de saída diferente.
Um relatório do Jellyfin mostra que as imagens de trickplay desatualizadas armazenadas junto dos conteúdos multimédia não foram eliminadas quando foram geradas pré-visualizações de substituição, deixando dados de trickplay obsoletos junto do conjunto atual.
Utilize primeiro a tarefa de limpeza suportada pela aplicação e confirme que existe uma cópia de segurança da base de dados de metadados. Se for necessário remover ficheiros manualmente, teste primeiro um item órfão e atualize-o antes de eliminar árvores de diretórios grandes cujas referências sejam desconhecidas.
Verifique se as imagens devem ficar no armazenamento da aplicação ou junto dos conteúdos multimédia
Alguns servidores multimédia podem guardar imagens ou dados de trickplay junto da biblioteca, enquanto outros mantêm as imagens derivadas associadas à base de dados dentro dos metadados da aplicação. Mover a localização altera a cópia de segurança, as permissões, a migração e o comportamento dos conteúdos multimédia em modo só de leitura.
Guardar pré-visualizações junto dos conteúdos multimédia pode melhorar a portabilidade durante migrações, mas também pode multiplicar os ficheiros pequenos numa partilha HDD de grande dimensão e exigir acesso de escrita à biblioteca. Um problema de migração do Jellyfin mostra que os ficheiros de trickplay armazenados localmente podem não ser transferidos corretamente entre instâncias.
Mantenha as imagens derivadas associadas à base de dados e as imagens derivadas com elevada frequência de alteração num volume da aplicação dimensionado de forma deliberada, salvo se a aplicação suportar totalmente imagens locais portáteis. Mantenha a partilha multimédia em modo só de leitura quando o acesso de escrita não for necessário para a disposição escolhida.
Mova o volume da aplicação sem separar o estado da base de dados
Se as definições forem razoáveis, mas o volume da aplicação tiver capacidade insuficiente, pare o servidor multimédia e mova as unidades completas de configuração, metadados e cache de acordo com o design dos mounts persistentes do contentor. Preserve o proprietário, as ACL, os ficheiros da base de dados e as ligações simbólicas.
O artigo da ZimaSpace sobre volumes SSD para aplicações com metadados e miniaturas explica por que motivo estas cargas de trabalho com ficheiros pequenos beneficiam de armazenamento rápido, enquanto os conteúdos multimédia de origem de grandes dimensões podem permanecer em HDD.
Não mova apenas a maior pasta de imagens deixando os caminhos da base de dados para trás, salvo se a aplicação suportar essa separação. Inicie a instância migrada de forma isolada e confirme que as miniaturas antigas são apresentadas corretamente antes de gerar novas.
Limpe em segurança e estabeleça uma linha de base de crescimento
Coloque as tarefas de miniaturas em pausa, faça uma cópia de segurança da base de dados da aplicação e registe a contagem atual de ficheiros e os bytes por tipo de imagem derivada. Remova apenas resultados confirmadamente obsoletos ou utilize os controlos suportados pela aplicação para eliminar e regenerar.
Um SSD cheio pode afetar mais do que as miniaturas. Um problema do Jellyfin associa um SSD esgotado a suspeitas de danos na base de dados e a uma vista incompleta da biblioteca, mostrando por que motivo a falta de espaço livre pode pôr em risco o estado da aplicação.
Depois da limpeza, execute a geração numa biblioteca, meça o crescimento diário e configure alertas antes de o volume da aplicação atingir o respetivo limite de reserva. A reparação está concluída quando as pré-visualizações esperadas funcionam, os dados obsoletos deixam de regressar e o crescimento do armazenamento corresponde ao intervalo, à resolução, à qualidade e ao âmbito da biblioteca escolhidos.
Suporte e Dicas
Mais para Ler

O Plex pode partilhar uma GPU com outro contentor Docker?
O Plex e outro contentor conseguem frequentemente aceder à mesma GPU, mas é necessário testar o suporte dos controladores, o mapeamento de dispositivos, a...

Como saber se um erro do Plex vem do cliente ou do servidor
Reproduza o mesmo item noutro cliente, compare o percurso da sessão e, em seguida, recolha provas do servidor apenas depois de o âmbito lhe...

Como configurar a cache do Plex e o armazenamento temporário de transcodificação
Proteja o estado persistente do Plex enquanto coloca os ficheiros temporários de transcodificação num armazenamento local adequado e, em seguida, verifique a limpeza, o...

