Feature Request: Optional external metadata provider for high-quality posters and banners
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
Línea de trabajo
No se nombran archivos, pruebas ni puntos de entrada. Empieza por rastrear cómo proporcionan actualmente las extensiones el artwork y los metadatos, y después revisa los requisitos propuestos de selección de proveedores, matching y almacenamiento en caché local. El trabajo debería incluir un diseño de integración definido y la validación de la resolución opcional mediante AniList/TMDB, sin alterar los metadatos de las extensiones ni la reproducción.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Describe your suggested feature
Summary
Add an optional metadata resolver that can retrieve posters, banners, backgrounds, and additional metadata from external services (such as AniList for anime or TMDB for movies/TV) instead of relying exclusively on the images provided by extensions.
Motivation
Many extensions scrape websites that only expose small thumbnail images (300–500 px). These thumbnails look acceptable in grids but become heavily pixelated when displayed in CloudStream's featured hero carousel.
Since CloudStream simply displays the image URL returned by the extension, the application has no way to improve image quality.
Instead of requiring every extension to provide high-resolution artwork, CloudStream could optionally resolve metadata from dedicated metadata providers.
Proposed Architecture
Extension
↓
title
year
type
↓
Metadata Resolver (optional)
↓
AniList / TMDB / other providers
↓
poster
banner
background
logo
description (optional)
genres (optional)
The extension would still provide the playable content.
CloudStream would only replace (or supplement) the visual metadata.
Benefits
-
High-resolution artwork across all providers.
-
Consistent UI regardless of extension quality.
-
Less work for extension developers.
-
Better-looking featured carousel.
-
Future support for additional assets such as banners, logos, and fanart.
Optional Behavior
This feature should be configurable.
For example:
Metadata source
-
Extension (default)
-
AniList
-
TMDB
-
Automatic
Users who prefer the extension's metadata could keep the current behavior.
Caching
Resolved metadata should be cached locally.
Possible cache key:
title
year
type
or, when available,
provider ID
This would avoid repeated API requests.
Matching
Matching would naturally be the most difficult part.
Possible matching strategy:
-
exact title
-
alternative titles
-
release year
-
media type
-
fuzzy matching as fallback
Since this would only affect artwork, an occasional mismatch would be far less critical than playback errors.
Why this should not be implemented inside extensions
Every extension currently has to solve the same problem independently.
Moving artwork resolution into CloudStream would:
-
reduce duplicated work
-
improve consistency
-
allow future metadata providers without modifying existing extensions
Other details
This is not intended to replace extension metadata.
It would simply be an optional enhancement for users who prefer higher-quality artwork, especially on large displays such as Android TV or tablets, where low-resolution thumbnails become very noticeable.
Acknowledgements
- My suggestion is NOT about adding a new provider
- I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open issue.
- Lenguaje dominante
- Kotlin
- Estrellas
- 10.8k
- Forks
- 1.1k
- Merge medio
- 3 d 3 h
- PR fusionados (30 d)
- 23
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de recloudstream/cloudstream
-
Add new fonts for subtitlesAbiertoenhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
recloudstream/cloudstream#3100 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
recloudstream/cloudstream#2639 · 1 comentario · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
enhancement potential extension
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
recloudstream/cloudstream#3232 ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
recloudstream/cloudstream#3231 · 2 comentarios · 3 reacciones ·
Los mantenedores suelen responder en 1 día
-
Home, UI, Download, ExtentionAbiertoenhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
recloudstream/cloudstream#3230 · 3 comentarios · 5 reacciones ·
Los mantenedores suelen responder en 1 día
Todos los issues de recloudstream/cloudstream
Issues similares
-
kotlin-sdk-server iOS SupportAbiertoenhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
modelcontextprotocol/kotlin-sdk#1088 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
openwallet-foundation/multipaz#2040 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
ohs-foundation/kotlin-fhir#143 ·
-
Feature request
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
keiyoushi/extensions-source#19546 ·
Los mantenedores suelen responder en 1 día
-
bug triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
d4rken-org/sdmaid-se#2820 ·
Los mantenedores suelen responder en 1 día