mirror of
https://github.com/FauxxYT/StreamXR.git
synced 2026-10-22 17:01:03 +02:00
61 lines
4.1 KiB
Markdown
61 lines
4.1 KiB
Markdown
# Known issues and open questions
|
|
|
|
Things that are known not to work, haven't been verified, or were tried and dropped.
|
|
Planned features are in the [features/](features/) folder; limits of the approach (DRM, WebXR
|
|
permissions, Firefox) are in [ARCHITECTURE.md](../ARCHITECTURE.md#known-limits).
|
|
|
|
## Not verified yet
|
|
|
|
- **Signed-in Home feeds** other than the main one, History, Playlists, Watch later and
|
|
Liked videos (those were verified in 0.35) (`youtube-home.js`).
|
|
- **Live chat typing (0.81.0)**: sending a message was checked from the console (text only);
|
|
in the headset, check typing, Send / Enter, a channel emoji in a message (sent by its id, as
|
|
YouTube's client does), and a chat you can't type in (YouTube's reason should show instead
|
|
of the field: that shape wasn't seen yet).
|
|
- **Live chat (0.79.0)**: written from probes of real chats (text messages, the welcome notice,
|
|
emojis, banners) and, for what didn't show up during the probes, from the shapes YouTube
|
|
is known to send: **Super Chats, Super Stickers, memberships and gifted memberships, the
|
|
owner / moderator / member badges, deletions, pinned messages** (`youtube-chat.js`). Check
|
|
them on a busy stream. (The README's "How you can help" asks users to report them.)
|
|
- **Chat replays (0.87.0)**: work in the headset (plays along, pauses, seeks). Untried: an ad
|
|
during a replay (its time could count as a seek and reload the chat). With YouTube's chat
|
|
hidden the replay is still found (probe 11); if its chat frame were ever missing, there's no
|
|
pop-out replay page to fall back on (HTTP 400), so it would end in "Couldn't load the chat".
|
|
|
|
## Known quirks
|
|
|
|
- **Captions on 180°/360° need improvement** (the maintainer, 0.77.1: "good enough for now"): they
|
|
sit 22° below the horizon and glide after your view once you look 25° aside
|
|
(`captions-overlay.js` `headAnchor`, `SETTINGS`). Ideas to try: a placement setting (height,
|
|
distance, size), following on a slower curve or only after a pause, pinning them to the
|
|
video's front like the pause symbol, a fade while they move.
|
|
- **No controller vibration** (0.73.1): Chrome gives the Steam Frame's controllers no
|
|
vibration API (docs/hardware.md), so the Vibration switch is greyed out with a note.
|
|
- **Glass popups blur only the video** (seen by the maintainer in 0.67.2): the glass reads the
|
|
video's own picture (the renderer's `backdrop()`, `panel-pass.js`), so a floating menu,
|
|
the dialog or the search suggestions show the blurred video even where they stand in
|
|
front of the controls panel or a side panel, not the buttons and panels behind them.
|
|
Possible fix, put off by the maintainer: while a popup or dialog is open, copy the finished
|
|
view (each eye, after everything else is drawn) into a texture with mipmaps and let the
|
|
popup's glass blur that instead (`blitFramebuffer` from the layer's framebuffer, which
|
|
may be multisampled; check the browser allows it). Costs a full-view copy and blur each
|
|
frame, only while a popup is open.
|
|
|
|
- A channel's **Featured** tab is missing for channels you subscribe to unless the creator
|
|
set a "featured video for returning subscribers". That's YouTube's behaviour.
|
|
- The Channel header's subscribed state can be wrong for a channel whose Home tab features
|
|
other channels; it's only used when the watch page doesn't say.
|
|
- Text matching assumes **English** YouTube: some readers recognise YouTube's own words
|
|
(the "All" chip, "Joined", an ad's "1 of 2", the Jump ahead pill). This is about what YouTube writes;
|
|
StreamXR's own words follow the interface language (Settings → Language).
|
|
- Replies to replies (YouTube's newer nested comment threads) aren't shown; one level is.
|
|
|
|
## Tried and dropped
|
|
|
|
- **A sphere distance for 180° / 360°** (like the cinema screen's Distance slider): spheres
|
|
are drawn "at infinity" (rotation only), and in 180° it glitched instead of moving.
|
|
- **Detecting VR180 by the frame's shape**: VR180 streams are often 16:9 below 2160p; the
|
|
player's VR180 flag is used instead.
|
|
- **Clicking YouTube's Skip ad button from a script**: YouTube ignores anything but a real
|
|
click, hence the separate Skip Helper extension.
|