Storing multiple versions of the same file alongside each other
Storing multiple versions
The Sonarr team has begin investigating how different versions of a series could be stored alongside one another in the same directory. This ticket is to track the epic of work, including exploring UI/UX implementations, and required engineering changes.
To manage noise, we are limiting who can comment/reply in this thread, but we will track work to be done and communicate progress.
Goals
- Support multiple "tracks" of qualities that can be upgraded along side one another in the same directory. An example might be someone looking to store a higher quality version alongside a lower quality version to reduce the need to transcode.
- Create a user-friendly interface to make it easy to manage multiple copies, ensuring the feature is either opt-in, or easy for new or novice users to understand.
- Ensure backwards compatibility of existing setups, in that single-qualities libraries will not be impacted, with the hope that no data migration will be needed.
- Design systems that will hopefully translate to other companion platforms.
Non-Goals
- This is to support multiple qualities within the same library and in the same directory, and is not intended to manage media stored in separate directories. The recommended approach for this is still to manage multiple Sonarr instances.
TODO
(work in progress)
- UI: Handle partial completion of different qualities everywhere download or completion status is shown.
- UI: Provide easy-to-understand messaging and controls for setting up cutoffs, if changes are required.
- UI: Ensure search results that display info or recommended actions accommodate multiple qualities.
- UI: Provide informational messaging when qualities contradict or overlap each other.
- Core: Update database schema to support unique sets of files per episode instead of a single episode.
- Core: Update rules for processing when searching and manually adding.
Challenges
- Handle files/series moved to different directories
- Handle manually added qualities to an existing title, where multiple qualities may not be set up correctly (e.g., do we auto-detect the new additional quality?)
- Handle file naming conflicts where quality/media is missing from the filename (where ambiguous qualities exist)
- Explore and consider the impact to tags, particularly where they are used to obtain custom qualities, like HDR. Tags are particularly challenging because they are ranked based on priority, not mutually exclusive. It may be that we need to make tags per series and per quality going forward.
UX explorations
Working proposal
Concept: using labels input to select multiple qualities on a per-series basis

Concept: warning notice when qualities overlap in a potentially destructive, non-intuitive, or undesirable way

Rejected ideas
Nested groups/sections of qualities inside a dedicated multi-quality profile Ultimately this idea was rejected because it is confusing to build UI for, and requires a major overhaul to (and introduces some fragility into) quality profiles IA.

Ranked groups showing capped qualities, enforcing that no quality may overlap another Rejected for the same reasons as above

Source: Sonarr/Sonarr