jellyfin-integration

Integrate Jellyfin servers for music and video playback, browsing, and scrobbling.

108|9|Updated Jan 16, 2026
One-click install
npx skills add https://github.com/ad-repo/nullplayer --skill jellyfin-integration
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: jellyfin-integration
Source: https://github.com/ad-repo/nullplayer/tree/main/skills/jellyfin-integration
Command: npx skills add https://github.com/ad-repo/nullplayer --skill jellyfin-integration

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Jellyfin integration enables a unified client experience for music and video, providing server connectivity, authentication, streaming, and activity reporting across Jellyfin media servers.

Core Features & Use Cases

  • Domain models (JellyfinModels.swift), HTTP client (JellyfinServerClient.swift), and manager (JellyfinManager.swift) to connect, cache, and convert tracks for playback.
  • Playback reporters for audio and video (JellyfinPlaybackReporter.swift, JellyfinVideoPlaybackReporter.swift) to keep now playing status and timelines synchronized.
  • UI integration (JellyfinLinkSheet.swift) for adding and managing Jellyfin servers, plus library browsing and casting support.
  • Authentication and streaming: standard headers, token handling, and streaming endpoints for both music and video media.
  • Scrobbling and timing rules: mirrors Subsonic-like behavior with 50% or 4-minute thresholds and 90% threshold for video.
  • Library and casting integration with support for multiple libraries and devices.

Quick Start

Connect to your Jellyfin server and start streaming and scrobbling from NullPlayer.

Frequently Asked Questions about jellyfin-integration

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I integrate Jellyfin server streaming and scrobbling into my client app?

Jellyfin integration provides HTTP client connectivity, authentication, and playback reporting models to enable server streaming and scrobbling. You use built-in domain models and managers to connect, cache, and convert media for playback.

What are the scrobbling thresholds for Jellyfin playback reporting?

Jellyfin playback scrobbling mirrors Subsonic-like behavior with a 50% or 4-minute threshold for audio, and a 90% threshold for video. Reporters synchronize now playing status and timelines based on these timing rules.

Does Jellyfin integration support both music and video media types?

Jellyfin integration supports streaming, library browsing, and scrobbling for both music and video media types. It applies separate playback reporters for audio and video to keep timelines synchronized across devices.

How do I handle authentication tokens when connecting to a Jellyfin server?

Jellyfin integration handles authentication using standard headers and token management within its HTTP client and manager components. You configure these details during server setup to maintain secure streaming endpoints.

Can I browse multiple Jellyfin libraries and cast to different devices?

Jellyfin integration supports browsing multiple libraries and casting to various devices through its UI components and manager. You can add and manage servers to access diverse media types across connected hardware.

What components are needed to build a Jellyfin streaming client?

Building a Jellyfin streaming client requires domain models, an HTTP server client, a media manager, playback reporters, and UI link sheets. These components handle connectivity, caching, format conversion, and activity reporting.