P6: remote video and audio play through the proxy
- The media proxy streams ranged requests from the origin (passing the range on, never caching), downloads and caches whole files otherwise, and serves cached files with range support. A PeerTube video is never fetched whole for one viewer, and clients still never contact the remote host. - PeerTube's fragmented MP4 files inside an HLS entry are read as variants, so HLS-only instances play too. - A remote Video or Audio post becomes one playable Mastodon attachment: the best MP4 up to 720p that carries both sound and picture, with its poster and duration; the card is kept only when nothing is playable. - nginx: /media/proxy/ with proxy_buffering off and a 600 s read timeout (applied on the box, with a backup). Checked live: a GoToSocial image through the proxy answers 206 with exactly the asked range when streamed, 200 when cached, and 206 with the right Content-Range from the cache. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012CzABvBkbcFqoHdmi8b9WB
This commit is contained in:
1 parent
6f1ab0073c
commit
f9658a8e7a
10 files changed
+193
-22
No files matched your search
+6
-4
@@ -465,11 +465,13 @@ it, raw where it doesn't.
|
||||
- otherwise the server reads the page (owner decision 1): public posts only, 0–60 s after arrival, cached per address
|
||||
for 7 days across the whole server, `Federation:FetchLinkPreviews` to switch it off. Checked live against a
|
||||
GoToSocial profile page.
|
||||
- **Media:**
|
||||
- video playback through the proxy (Range requests, HLS playlist rewriting, the poster), with a `video` card;
|
||||
- **Media** (done in v1.14.0 except where noted):
|
||||
- video playback through the proxy: range requests streamed from the origin, the poster, a playable attachment picked
|
||||
from MP4 or fragmented MP4 files (HLS playlists are not rewritten; not needed while PeerTube publishes the files);
|
||||
- audio attachments;
|
||||
- an article reader view;
|
||||
- JPEG/PNG renditions kept for Pixelfed.
|
||||
- JPEG/PNG for Pixelfed: uploads were already re-encoded to JPEG, PNG or GIF;
|
||||
- an article reader view: the data is in `Status.privapub` (title, excerpt, cover, full HTML in `content`); the view
|
||||
itself belongs to the client.
|
||||
|
||||
#### P7 Threads, communities and the social graph
|
||||
- **Thread backfill:**
|
||||
|
||||
Reference in new issue
Block a user