Casting
Cast music, radio and video to Sonos, Chromecast, DLNA and AirPlay.
Sonos
Multi-room. Pick rooms and set each room's volume in the Sonos Rooms window, before or during a cast. The first room is the group coordinator. Audio only.
Chromecast
Audio and video. Plex, Jellyfin, Emby and local video cast to Chromecast TVs.
DLNA / UPnP
Audio and video to DLNA TVs and renderers.
AirPlay
Audio to AirPlay devices.
What you can cast
- Local files, Plex, Jellyfin, Emby and Navidrome/Subsonic tracks, and internet radio.
- Video from local files, Plex, Jellyfin and Emby, to Chromecast and DLNA TVs. Sonos is audio-only.
- Sonos content filtering skips lossless formats Sonos can't play.
Sonos and Chromecast fetch and decode the file themselves, so processing done inside NullPlayer never reaches them. That includes the equalizer window, SRS and Reference Tuning. EQ Cast is the way to cast with an EQ curve.
Video casting
Video casts to Chromecast and DLNA TVs. Sonos and AirPlay are audio only.
- Sources: local video files, and movies and shows from Plex, Jellyfin and Emby.
- Local files are served to the TV from NullPlayer's built-in media server on port 8765. If the NullPlayer app is open it may already be using that port, so quit it before casting from the command line.
- From the command line:
--filecasts a local video, and--movie,--showand--episodecast from Plex, Jellyfin and Emby. Video always needs--cast. - Ending: Chromecast stops and closes the cast session when the video ends. DLNA devices don't report the end of a stream reliably, so press
qin the CLI to stop. - In the CLI during a video cast,
Spacepauses and resumes,→and←seek, andqstops casting.
nullplayer --cli --source plex --library Movies --movie "Alien: Romulus" --cast "Living Room TV" --cast-type chromecast
nullplayer --cli --source jellyfin --library "TV Shows" --show "Alien: Earth" --episode "Neverland" --season 1 --number 1 --cast "Samsung QN90BA 75" --cast-type dlna
EQ Cast
EQ Cast applies a track's EQ profile before casting. It renders the track with its profile into a new file and casts that file instead of the original, to Sonos or Chromecast.
- Assign EQ profiles to the tracks, albums or artists you want to cast.
- Turn on Output ▸ EQ Cast ▸ Enabled and choose a folder for the rendered files. Don't pick a folder your library watches, or the renders are imported as duplicates.
- Start a cast from the Output menu as usual.
The first track starts once it's rendered, with a progress bar at the top of the main window. The next three tracks render in the background while you listen.
- Works with local files and Plex, Jellyfin, Emby and Navidrome/Subsonic tracks. Radio, cue-sheet tracks, video, sources with more than two channels, and tracks with no profile are cast as the original file.
- Only the profile is rendered. The equalizer window, SRS, Reference Tuning and play speed aren't applied.
- Renders are 16-bit and every render is a full copy of the track. Output ▸ EQ Cast shows the cache size, and Delete Cache… clears it.
See the signal chain for where it sits in the audio path.
Casting from the command line
nullplayer --cli casts without opening the app window. Use --cast with the device name and --cast-type sonos, chromecast or dlna.
nullplayer --cli --source plex --playlist "Recently Added" --cast "Living Room,Kitchen,Office" --cast-type sonos
nullplayer --cli --file "/path/to/video.mkv" --cast "Samsung QN90BA 75" --cast-type dlna
--list-devices prints the device names on your network. See Command line for the full list of options.