Elimina le barre nere delle miniature di YouTube

I thumbnail di YouTube sono stati migliorati un po’ di tempo fa rimuovendo le barre nere, se presenti.

Tuttavia, questi persistono nei thumbnail di molti video. Si può affrontare anche questo?

3 Mi Piace

La modifica specifica riguardante le barre nere è dovuta all’utilizzo dell’immagine maxresdefault invece di hqdefault. Tuttavia, non tutti i video hanno una miniatura ad alta risoluzione, quindi in quei casi, utilizziamo l’immagine opengraph, che è equivalente a hqdefault.

Quella dimensione dell’immagine ha un rapporto d’aspetto diverso e include barre nere. Ma in entrambi i casi, abbiamo il rapporto d’aspetto fisso a 16:9, quindi le barre nere non dovrebbero essere visibili durante la visualizzazione del player.

Ecco un esempio di un video che non ha un’immagine ad alta risoluzione e utilizza questo per la miniatura.

Puoi condividere alcuni esempi in cui questo sta accadendo?

3 Mi Piace

Certamente, grazie per il tuo interesse.

Ecco un paio di video che ora hanno un bell’aspetto nell’embed, ma mostrano barre nere nelle miniature (e nell’anteprima):

og:image è:


come hai giustamente sottolineato… ha barre nere.

E

og:image è:


come hai giustamente sottolineato… ha barre nere…

NB Ecco un “buon caso”:

og:image in questo caso è molto più grande:


Attualmente sto utilizzando il mio plugin Topic List Previews Sidecar per rigenerare le miniature ritagliandole utilizzando le override personalizzate del plugin:

… ma un modo automatizzato per farlo nel core sarebbe fantastico, dato che è molto fastidioso doverlo fare semi-manualmente.

La sfida è identificare quali immagini possono essere ritagliate?

È solo una questione di forzare il 16:9 se si scopre che l’immagine di YouTube è 4:3 o inferiore a una certa risoluzione (il che significa che deve avere barre nere?).

Immagino che ciò possa significare che optimize image riceva un flag per indicare che si tratta di YouTube?

Mi sembra strano che YouTube non standardizzi le miniature in 16:9?! Forse mi sfugge qualcosa…

Grazie per avermi illuminato sulla differenza di dimensioni!

Penso di aver capito cosa intendi ora, ma l’elaborazione delle immagini sul core non si adatta veramente al nostro caso d’uso. Non memorizziamo le miniature per questi embed, le recuperiamo direttamente da YouTube quando ne abbiamo bisogno.

Detto questo, identificare quali immagini devono essere ritagliate non dovrebbe essere così difficile. Puoi guardare l’URL per questo:

https://img.youtube.com/vi/dsVAzSG6SbM/hqdefault.jpg

maxresdefault

  • È sempre 16:9.
  • È la risoluzione più alta.
  • Non sempre disponibile.

hqdefault

  • È sempre 4:3.
  • Se il video originale è 16:9, aggiunge barre nere.

mqdefault

  • È sempre 16:9.
  • Ha una risoluzione ancora inferiore rispetto a hqdefault.

Sebbene un po’ strano, sono prevedibili. La mia ipotesi è che il formato 4:3 sia una dimensione legacy che utilizzano ancora per ragioni di compatibilità.

Per visualizzare immagini 16:9, è semplice come correggere il rapporto d’aspetto. Se hai bisogno di altri rapporti d’aspetto, penso che dovresti essere in grado di passare un flag e compensare la scala con CSS.

È vero che l’anteprima del composer può essere migliorata, ma ciò potrebbe essere fatto con un approccio simile a quello descritto sopra.

L’unico caso limite che posso vedere con questo approccio riguarda i video verticali con miniature a bassa risoluzione. In tal caso, le barre nere non vengono mostrate. :man_shrugging:

2 Mi Piace

Ma core crea e memorizza le proprie miniature derivate a varie risoluzioni come parte del processo di pubblicazione della cottura?

È qui che vengono mantenute le barre nere.

Bingo!

Ma in ogni caso, sono informazioni molto utili che potrei essere in grado di utilizzare per migliorare il mio plugin. Grazie mille!

È molto più semplice che chiedere a GPT-4 Vision se ci sono barre nere o usare ImageMagick per rilevarle.

1 Mi Piace

Grazie alla tua intuizione ho aggiornato Topic List Previews con una soluzione molto più semplice che non deve essere attivata poiché ritaglierà solo se l’immagine è una miniatura legacy 4:3 di YouTube.

Forse questo è abbastanza generale da essere utile al core?

2 Mi Piace