

OdinOnDemand (OOD) adds several forms of multimedia to Valheim that allow players to watch YouTube and direct video files on an in-game screen. Create your own cinema! The mod also contains a boombox that can either play direct audio files, or SoundCloud links (with availability) - and all of this is multiplayer compatible and seemingly relatively low-impact.
YouTube Server Setup Tutorial Video
These first releases can be considered betas as it has not been extensively tested. Please report any issues on the GitHub tracker.
Installation of the plugin is fairly straightforward, just install into Bepinex/plugins or use r2modman. It must be installed on both server and client.
See NodeJS Server Installation for YouTube functionality.
In game, place down a cinema screen or boombox. Every player costs 2 bronze currently. Interact with it to open the GUI.
For cinema screens, you must have either a direct link to a remote or local video file of a compatible codec or have the yt-dlp nodejs server installed and config enabled to support Youtube links. In which case, you may use youtube/youtu.be links to watch Youtube videos and shorts. YouTube is not enabled by default.
For boomboxes, you must have a direct link to a remote or local audio file of a compatible codec or use a soundcloud.com link. Through testing I've noticed some SoundCloud songs are unavailable. I think it depends on the artist and how they upload/license their art.
Local files are not synced over multiplayer.
Put the link into the input field and click set to set a file. Control playback with play, pause, and stop. Press "Pickup" to remove the mediaplayer and refund materials. Control individual player's volume with "+" and "-" and toggle mute with the "M" button on the overflow menu. ">" to track forward.
In the mod settings you can control master volume. This will affect every screen/boombox.
All set file/play/pause/stop commands should be synced for multiplayer through RPC events. Volume and tracking are client sided. Tracking will de-sync. Screens do not currently check for sync or update to currently playing videos when connecting/loading new mediaplayers.
Setup of YouTube functionality is a little more involved. I am currently working on an alternative that does not involve hosting an external server.
Build by DanAugust Last picture is with backlight setting turned off.