Skip to content

Enhanced Metadata Enrichment, Stream Quality Analysis, and VOD/Series Clustering #483

@jojo141185

Description

@jojo141185

Is your feature request related to a problem? Please describe.
Currently, resolve_series and resolve_vod retrieve metadata (IMDb ID, cover, plot, claimed quality, trailer links, etc.) and store it in the local database. However, this metadata provided by the IPTV providers is often incomplete, inaccurate, or poorly maintained.

Additionally, multiple streams for the same content (e.g., different resolutions or backup streams) currently appear as separate, unconnected entries, making it difficult to automatically select the best version or handle failovers.

Describe the solution you'd like
I propose an enhancement to the metadata handling and API output logic consisting of three parts:

1. Metadata Enrichment & Quality Verification

  • Fill Gaps: Utilize the (newly implemented) Multi-source metadata resolver to fill missing metadata fields in the local database where provider data is lacking.
  • Analyze Quality: Implement a process (e.g., using ffprobe headers) to analyze the actual stream quality (resolution, codecs, bitrate) and update the local database with these technical details, rather than relying solely on the provider's labels.

2. API Clustering

  • Grouping: Modify the API output to cluster identical VOD or Series entries based on their unique identifiers (IMDb ID or TMDB ID).
  • Instead of listing the same movie or series three times (e.g., once for 1080p, once for 720p, once from a backup server), the API should present one "Master" entry containing a list of available stream variants from all available sources (providers, m3u, local).

3. Intelligent Selection & Fallback

  • Selection Rules: Enable the client/proxy to select the specific stream from the cluster based on rules, such as "Best Quality" (highest resolution/bitrate determined in step 1).
  • Fallback: Implement a fallback mechanism similar to the logic proposed for Live Streams in Issue Channel Fallback implementation #191. If the "Best Quality" stream fails, the system should automatically switch to the next available stream within the cluster.

4. Web UI Management & Manual Overrides
Since automated detection and matching are not always 100% accurate, a manual editor in the Web UI is required to fine-tune the results. This should allow users to:

  • Correct Matches: Manually assign or fix the IMDb/TMDB ID if the automatic recognition assigns the wrong content.
  • Edit Quality: Manually override the detected quality tags (e.g., if ffprobe fails or yields incorrect data).
  • Manage Priority: Manually adjust the fallback order/prioritization of the streams within a cluster (e.g., defining which specific stream is the primary source and which are backups), overriding the automatic "Best Quality" rule if necessary.

Additional context
This feature builds upon the optimized stream selection and fallback logic discussed in #191 but applies it to VOD and Series content to ensure a more reliable and high-quality viewing experience.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions