9001 / 9001/copyparty

Web Presentation API media playing on 2nd screens

Open
#1,042 1 comment 1 reaction 1 assignee Claimed by @9001 View on GitHub
enhancement
Dominant language
Python
Stars
46.7k
Forks
1.9k
Avg merge
9d 2h
Merged PRs (30d)
4

Description

**is your feature request related to a problem? Please describe.**

I have lots of Chromecast devices in my home, and it would be sweet to be able to use copyparty to play media on them.

**Describe the idea / solution you'd like**

The web's [Presentation API](https://developer.chrome.com/blog/present-web-pages-to-secondary-attached-displays) effectively lets a web page "send"/cast a URL to secondary screens, that they then present. Media files in copyparty could show a cast button that would initiate the flow. Copyparty would fire off a presentation API request, to open a copyparty instance which is open to that media file, ideally playing full screen.

Further embellishment is that it would be nice to have some control over the media playback from copyparty. Presentation API opens a communication channel that could be used for seek, pause/play, etc (optional, may in fact somewhat work out of box because of existing Media Session API use???).

I don't know what we would do for auth. A one-time token would kind of be ideal for this use case, granting access to specific bits of media.

**Describe any alternatives you've considered**

Currently using upnp servers / control-points (gerbera, bubbleupnp) instead.

Contributor guide

Open the contributing guide

Research direction

The issue mentions adding a cast button for media files using the Presentation API. Look at the frontend code handling media playback, likely in JavaScript files for the web interface. Research how copyparty serves media URLs and consider authentication via one-time tokens. Check existing Media Session API usage. The goal is to initiate a presentation request to a secondary screen with playback controls.

Written by the indexing model from the issue text.

Assessment

Tech stack
css, html, javascript
Domain
api, frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.