Help us shape the future of Go! Take the 2026 Go Developer Survey

mediabrowser

package
v0.3.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 3, 2026 License: GPL-3.0 Imports: 39 Imported by: 0

Documentation

Overview

Personalized home rows are extra CollectionFolders on this engine. Jellyfin Web and jellyfin-androidtv turn each user view into a "Recently Added in {name}" / "Latest in {name}" shelf from /Items/Latest, in view order, with no client sort. Swiftfin, Findroid, Streamyfin and JellyCon open a view with SortBy=SortName; these folders still return rank order. Infuse on Jellyfin calls /Items/Latest per view after /UserViews. The Emby SDK sample browses /Items?ParentId. Continue Watching and Up Next stay on their own routes. See the owner Apps pages for the on/count/kind controls. Plex does not use this path.

Package mediabrowser implements the Jellyfin and Emby protocol surfaces.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PublicRoutes

func PublicRoutes(r *route.Router, info PublicInfo) error

PublicRoutes registers connection endpoints that do not require a grant. A user picker is intentionally not exposed until the host can supply its authorized list of visible viewers.

func StripPrefix

func StripPrefix(prefix string, next http.Handler) http.Handler

StripPrefix accepts the optional protocol prefix while preserving the rest of the request for the router. It does not mutate the incoming request.

Types

type Emby

type Emby struct{ MachineID string }

Emby shares the MediaBrowser engine but has a separate identity and surface.

func (Emby) Describe

func (Emby) Describe() frontend.Descriptor

func (Emby) Mount

func (f Emby) Mount(ctx context.Context, host frontend.Host) (frontend.Instance, error)

func (Emby) ValidateSettings

func (Emby) ValidateSettings(s frontend.Settings) error

type Jellyfin

type Jellyfin struct{ MachineID string }

Jellyfin provides the native Jellyfin API on an independent surface.

func (Jellyfin) Describe

func (Jellyfin) Describe() frontend.Descriptor

func (Jellyfin) Mount

func (f Jellyfin) Mount(ctx context.Context, host frontend.Host) (frontend.Instance, error)

func (Jellyfin) ValidateSettings

func (Jellyfin) ValidateSettings(s frontend.Settings) error

type PublicInfo

type PublicInfo struct {
	ID, ServerName, LocalAddress, Version, ProductName string
}

PublicInfo is supplied by the host, so the server identity remains stable across restarts and is distinct for each protocol surface.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL