Skip to content

Incremental sync treats a newly added Jellyfin movie version as standalone “Other” media #35

Description

@Parzival3971

Description

I use Infuse's Library Mode with a Jellyfin server and InfuseSync enabled.

When a generated 1080p version is added to an existing 2160p Jellyfin movie,
InfuseSync's incremental sync adds the new file to Infuse's “Other” category.

The version relationship is also partially recognised: when I navigate to the
main movie entry, “Select Version” appears and both versions are available.
However, the 1080p version remains duplicated as a standalone “Other” item in
the Library Mode index.

When InfuseSync is disabled and Library Mode performs its normal Jellyfin scan,
the same files are detected correctly without the duplicate “Other” entry.

Environment

  • Jellyfin: 10.11.11
  • InfuseSync: 1.5.2
  • Infuse: 8.4.8
  • Infuse connection mode: Library Mode
  • Device: iPhone 17 Pro
  • Operating system: iOS 26.5.2
  • Jellyfin library type: Movies
  • Firecore diagnostic code: A1SA6

This issue and diagnostic code have also been submitted to the main Infuse
support team by email.

Reproduction steps

  1. Start with an existing 2160p movie in Jellyfin.
  2. Confirm that Jellyfin identifies it correctly as a movie.
  3. Generate or copy a 1080p version into the same movie directory.
  4. Run a Jellyfin library refresh.
  5. Confirm that Jellyfin groups the 2160p and 1080p files as versions of the
    same movie.
  6. Allow Infuse to perform an incremental Library Mode sync with InfuseSync
    enabled.
  7. Open the Infuse library.
  8. Navigate to the main movie entry and confirm that “Select Version” is
    available.
  9. Check the “Other” category in Infuse.

Actual result

The main movie has a working “Select Version” option, but the newly generated
1080p version also appears as a separate item under “Other”.

This results in the secondary version being represented twice:

  1. Correctly as a selectable version of the main movie.
  2. Incorrectly as standalone “Other” media.

Expected result

The existing movie should be updated to contain both the 2160p and 1080p media
sources. The generated 1080p file should not also appear as a standalone item
under “Other”.

Control test

  1. Disable InfuseSync.
  2. Refresh/rescan the Jellyfin connection in Infuse Library Mode.
  3. Infuse detects the same files correctly as versions of one movie, without
    creating the additional “Other” entry.

This suggests the Jellyfin library structure and filenames are valid, and that
the duplicate “Other” entry is specific to the InfuseSync incremental update
path.

Example layout

Replace this section with an actual affected movie if required:

Movies/
└── Example Movie (2025)/
├── Example Movie (2025) - 2160p.mkv
└── Example Movie (2025) - 1080p.mkv

Jellyfin displays these as a single movie with two media sources.

Possible cause

This is a hypothesis based on the observed behaviour.

Jellyfin represents an alternate video version using Video.PrimaryVersionId.
InfuseSync may be returning both:

  • The primary movie update containing the grouped media sources.
  • The changed alternate-version item as a separate standalone video.

That would explain why “Select Version” works while the alternate also appears
under “Other”.

Potential areas to inspect:

  • LibrarySyncManager.ItemUpdated
  • InfuseSyncService.GetUserItems
  • Handling of Video.PrimaryVersionId
  • Deduplication or canonicalisation of primary and alternate-version updates

An alternate video with PrimaryVersionId may need to be resolved to its
primary movie before the incremental update is stored or returned. The
standalone alternate DTO should not be returned separately when its primary
movie already contains it as a media source.

Diagnostics

Firecore diagnostic code: A1SA6

The diagnostic was generated around the time the issue was reproduced and has
already been provided to the main Infuse support team by email.

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