Skip to content

Releases: yellkell/frameplayer

FramePlayer 0.3.0-alpha.16

Choose a tag to compare

@github-actions github-actions released this 15 Oct 17:32

FramePlayer for the Steam Frame: a native VR video player.

Install it on the Frame from Desktop Mode at https://yellkell.com/frame
(Install Frame Tools), with no PC or Developer Mode needed. If you have
0.3.0-alpha.5 or later, it also comes through Settings → Updates.

What's new since 0.3.0-alpha.15:

  • "Hardware decoder busy" no longer sticks. When the hardware decoder
    failed on a video, FramePlayer could keep hold of it, so every later
    video, even local files, played in software and stuttered until a
    restart. A video now always gives the decoder back when it closes,
    including when you switch to another video while one is playing.
  • Videos played from a NAS (SMB) are closed on the NAS when you close
    them. They used to stay open there until FramePlayer quit, which could
    keep watched files locked (a Windows share won't delete or rename an
    open file).
  • If a video still ends up decoding in software, the log says why and
    whether FramePlayer itself holds the hardware decoder, so a report
    with the log tells the whole story.

Tested on a Frame: 4K H.264 from an SMB share with 120 one-minute skips,
and 30 switches between 4K and 8K videos while playing, local and over
SMB, all on the hardware decoder.

Also since 0.3.0-alpha.11: subtitles are drawn again, movies start flat
(with a default format for videos nothing identifies), Blu-ray rips
decode, sources can be locked with a PIN, playback from a NAS (SMB) no
longer freezes after a few minutes, and passthrough videos from a feed
stay passthrough when reopened from the Library.

The controller pictures are renders of Valve's controller models and are
not covered by FramePlayer's MIT / Apache-2.0 licence; see licenses/.

Full Changelog: v0.3.0-alpha.15...v0.3.0-alpha.16

FramePlayer 0.3.0-alpha.15

Choose a tag to compare

@github-actions github-actions released this 14 Oct 22:45

FramePlayer for the Steam Frame: a native VR video player.

Install it on the Frame from Desktop Mode at https://yellkell.com/frame
(Install Frame Tools), with no PC or Developer Mode needed. If you have
0.3.0-alpha.5 or later, it also comes through Settings → Updates.

What's new since 0.3.0-alpha.14:

  • Passthrough videos from a DeoVR or HereSphere feed play right when you
    open them from the Library or Home (recently watched, continue
    watching), not only from the source's own list. They used to come up
    as a flat side-by-side screen: the packed passthrough mask showed red
    in the corners, and moving yourself up, down or forward did nothing.
    Any feed video that declares its format (fisheye, 180°, 360°) keeps it
    when reopened from the library.

Also since 0.3.0-alpha.11: subtitles are drawn again, movies start flat
(with a default format for videos nothing identifies), Blu-ray rips
decode, sources can be locked with a PIN, and playback from a NAS (SMB)
no longer freezes after a few minutes.

The controller pictures are renders of Valve's controller models and are
not covered by FramePlayer's MIT / Apache-2.0 licence; see licenses/.

v0.3.0-alpha.14

Choose a tag to compare

@github-actions github-actions released this 14 Oct 14:04
0ce2abb

v0.3.0-alpha.13

Choose a tag to compare

@github-actions github-actions released this 13 Oct 19:57
bc20856

v0.3.0-alpha.12

Choose a tag to compare

@github-actions github-actions released this 13 Oct 01:55
0b64e6e

FramePlayer 0.3.0-alpha.9

Choose a tag to compare

@github-actions github-actions released this 12 Oct 11:44

FramePlayer for the Steam Frame: a native VR video player.

Install it on the Frame from Desktop Mode at https://yellkell.com/frame
(Install Frame Tools), with no PC or Developer Mode needed. If you have
0.3.0-alpha.5 or later, it also comes through Settings → Updates.

What's new since 0.3.0-alpha.8:

  • The keyboard has a symbols page. The new #+= key next to shift swaps
    the letters for every symbol (! # $ % ^ * ( ) + = [ ] { } \ | ; ' " , < > ~
    and the rest), and abc swaps back. Shift only ever uppercased letters, so
    passwords with those symbols couldn't be typed before.

The controller pictures are renders of Valve's controller models and are
not covered by FramePlayer's MIT / Apache-2.0 licence; see licenses/.

FramePlayer 0.3.0-alpha.11

Choose a tag to compare

@github-actions github-actions released this 12 Oct 14:23

FramePlayer for the Steam Frame: a native VR video player.

Install it on the Frame from Desktop Mode at https://yellkell.com/frame
(Install Frame Tools), with no PC or Developer Mode needed. If you have
0.3.0-alpha.5 or later, it also comes through Settings → Updates.

What's new since 0.3.0-alpha.10:

  • Sorting when browsing a source (an SMB share on a NAS, a folder on the
    Frame, WebDAV, DLNA...): Name, Newest, Oldest, Largest or Smallest.
    Folders stay on top and your choice is remembered. Each file now shows
    its date next to its size, and the folder's counts show beside the sort
    options. Thanks to the tester who asked for it.

Also in 0.3.0-alpha.10: picking another video while one is playing no
longer leaves the new one stuttering with "Hardware decoder busy".

The controller pictures are renders of Valve's controller models and are
not covered by FramePlayer's MIT / Apache-2.0 licence; see licenses/.

FramePlayer 0.3.0-alpha.10

Choose a tag to compare

@github-actions github-actions released this 12 Oct 12:02

FramePlayer for the Steam Frame: a native VR video player.

Install it on the Frame from Desktop Mode at https://yellkell.com/frame
(Install Frame Tools), with no PC or Developer Mode needed. If you have
0.3.0-alpha.5 or later, it also comes through Settings → Updates.

What's new since 0.3.0-alpha.9:

  • Picking another video while one is playing no longer leaves the new one
    stuttering with "Hardware decoder busy". The new video used to open while
    the old one still held the Frame's hardware decoder, so it often fell back
    to slow software decoding. FramePlayer now closes the playing video first
    (its position is saved as usual).

Also in 0.3.0-alpha.9: the keyboard has a symbols page (the #+= key) with
! # $ % ( ) [ ] { } and every other symbol, for passwords.

The controller pictures are renders of Valve's controller models and are
not covered by FramePlayer's MIT / Apache-2.0 licence; see licenses/.

Chromium XR for Steam Frame 157.0.8085.0 (test build 11)

Choose a tag to compare

Chromium with immersive WebXR for the Steam Frame, built from chromium/main
2255089d4176 with the patches listed below. Unofficial and experimental;
based on saphid/chromium-webxr-steam-frame.

Install or update it on the Frame from Desktop Mode at https://yellkell.com/frame
(Install Frame Tools), with no PC or Developer Mode needed.

New since test build 10:

  • YouTube's 360° and VR180 videos play in VR. A VR button appears in the
    player on those videos and opens a VR view that looks and works like
    FramePlayer: its control bar and adjust panel (format, position with height
    and forward, picture; saved per video), controller lasers to click and drag,
    grip to move a panel, grip + trigger to drag the picture, and FramePlayer's
    buttons (A / D-pad down play and pause, B leaves). Desktop YouTube sends 360°
    at up to 4K and VR180 as one eye, so the picture is flat and a little soft.
  • YouTube uses VP9 instead of AV1: 4K60 plays smoothly.
  • Fix: VP9 video no longer uses the Frame's hardware decoder (patch 0018).
    Closing a VP9 video (a new video, an ad ending) could crash the Frame's
    video firmware, and once left the system unstable until a restart. VP9 now
    decodes in software, which keeps up with 4K60. Seeking in hardware-decoded
    video (H.264, HEVC) no longer restarts the decoder.
  • Leaving a WebXR session goes straight back to the page instead of showing
    nothing for 10 seconds.

From test build 10:

  • VR video players show your Steam Frame controllers instead of generic hands.
  • Controllers stay steady when you open the Steam menu; DeoVR's web player
    opens in VR.

Same browser as test build 10 otherwise: thumbstick scrolling, controller
vibration, hardware VR video (8K HEVC), MSE, WebCodecs; no DRM (Widevine), no
WebXR layers, no camera hand tracking on the Frame.

Logs: ~/.local/state/chromium-xr-frame/. To start on another page, put its
address in ~/.config/chromium-xr-frame/home-url.

The Steam Frame controller models (frame-models/) are Valve's, from SteamVR,
converted for WebXR pages by FramePlayer's tools/webxr/frame-models. The VR
view's fonts are Inter (SIL OFL) and Phosphor icons (MIT), licences in
frame-browsing/fonts/.

ChromiumXR-Frame-arm64.zip: sha256 fdd9288104f927361a29245d0a6209990da86a1dd300925974e159fef468a787, 236855295 bytes.

patches:
ef3383c4170318d289d820b2a1fca9b76c79e8e9de31d280f1a3b05f5ceae6a7  0001-Linux-sandbox-broker-answers-for-the-bare-proc-self-.patch
9307ac4cd25814fa0f987fa5cc7ca2cbd9c51b6f7c040cae0052b9afd3dee994  0002-vr-let-SteamVR-s-runtime-read-the-XR-process-s-own-p.patch
81f20a624342a6b9608291f1ea809bf518885473ba0c09eefff402367f6ac5f9  0003-sandbox-allow-getsockopt-SO_PEERCRED-in-the-XR-proce.patch
5cc9a29d039fee650a754b2255127037ec5fa774b99307575c0b6ee4eb985bce  0004-vr-expose-Steam-Frame-controllers-to-WebXR.patch
4ead74d77145edb660f5cd5b48e275fef430b30ba4b91f4e8e6c0dbc3b938b98  0005-xr-don-t-discard-the-shared-buffer-s-depth-stencil-on.patch
4a6305062bfe91a1efd8bd39f039962ce6627af1dc039028f9002dcb260774df  0006-vr-Quest-compatible-Steam-Frame-gamepad.patch
a6cab2719e4a2b460bc66c37019904c73f6044c509a99b0435a2c3bf49420698  0008-xr-controller-vibration-through-OpenXR-haptics.patch
e610c618eacdd1ceb7744cc08c7dc118ffce953b08488885ac44bba9edd74602  0009-xr-Linux-OpenXR-draws-pages-at-their-own-framebuffer.patch
892cfe18bc76ca589a439f18bd828303c244b31ef55a4dee860e8dc10f8b0274  0010-xr-antialiasing-for-Linux-OpenXR-pages.patch
d6e79bea3f3b485cdf7c0142a8233d278ee15fa12ff285a1b0bb2a1e43515633  0011-xr-Linux-OpenXR-doesn-t-wait-for-the-GPU-each-frame.patch
5b518ac5ffc0ae80acf13959bb38ffd5b53b08954425d2da1ea2f65a5b6f4dfb  0012-xr-softer-controller-vibration.patch
9fff20f1226c77099e585a220e3b01c4b5c5405b4b6d86eb8be50fbc7f5f7b40  0013-xr-2x-antialiasing-for-WebXR-on-Linux-arm64.patch
3b1c6b47bdaa459fea7d52ca6acab8bbdea0f65167a26049b71e628af0987d10  0014-media-V4L2-hardware-video-decode-for-WebXR-on-the-Steam-Frame.patch
cddaa8bf91135a34c1c496bc54d6c06cfc13a3a6ef98e825826b6f5580ad0c0e  0015-gamepad-hapticActuators-and-pulse-for-WebXR-controllers.patch
f2b1db5bb9dc75b7ee0ea4545f6b7c2eab626976f134ff362d7911caf678cbfa  0016-xr-short-controller-taps-strong-enough-to-feel.patch
a431365dda2d132725193eaa391e01814863314bf14f2700621905276ab7aa2b  0017-xr-keep-WebXR-controllers-steady-through-the-Steam-menu.patch
7e0f1903d946aae776b0f57124092a57956528bd0f65094e26f7e6edadd4b815  0018-media-iris-VP9-in-software-and-seeks-that-keep-the-decoder.patch

Chromium XR for Steam Frame 157.0.8085.0 (test build 9)

Choose a tag to compare

Chromium with immersive WebXR for the Steam Frame, built from chromium/main
2255089d4176 with the patches listed below. Unofficial and experimental;
based on saphid/chromium-webxr-steam-frame.

Install or update it on the Frame from Desktop Mode at https://yellkell.com/frame
(Install Frame Tools), with no PC or Developer Mode needed.

New since test build 8:

  • Controllers stay steady when you open the Steam menu. SteamVR briefly lets go
    of the controllers when a VR session starts and when its menu opens, and the
    browser used to make them vanish and reappear to the page. VR video players
    then drew a second set of hands or controllers, and pausing a video and
    opening the Steam menu could leave broken, frozen models across your view.
  • DeoVR's web player (deovr.com) opens in VR. It only offered "open in the
    DeoVR app" before, because it didn't recognise the browser as a headset. It
    now also shows the Steam Frame's controllers instead of generic hands (the
    Frame has no camera hand tracking).

Same browser as test build 8 otherwise: thumbstick scrolling, controller
vibration, hardware VR video (8K HEVC), MSE, WebCodecs; no DRM (Widevine), no
WebXR layers, no camera hand tracking on the Frame.

Logs: ~/.local/state/chromium-xr-frame/. To start on another page, put its
address in ~/.config/chromium-xr-frame/home-url.

The Steam Frame controller models (frame-models/) are Valve's, from SteamVR,
converted for WebXR pages by FramePlayer's tools/webxr/frame-models.

ChromiumXR-Frame-arm64.zip: sha256 be5aba6da13e6a0f074b0b909ca8381b68b69f6ec86a7abd2e0b43a2d28ed0b9, 236461903 bytes.

patches:
ef3383c4170318d289d820b2a1fca9b76c79e8e9de31d280f1a3b05f5ceae6a7  0001-Linux-sandbox-broker-answers-for-the-bare-proc-self-.patch
9307ac4cd25814fa0f987fa5cc7ca2cbd9c51b6f7c040cae0052b9afd3dee994  0002-vr-let-SteamVR-s-runtime-read-the-XR-process-s-own-p.patch
81f20a624342a6b9608291f1ea809bf518885473ba0c09eefff402367f6ac5f9  0003-sandbox-allow-getsockopt-SO_PEERCRED-in-the-XR-proce.patch
5cc9a29d039fee650a754b2255127037ec5fa774b99307575c0b6ee4eb985bce  0004-vr-expose-Steam-Frame-controllers-to-WebXR.patch
4ead74d77145edb660f5cd5b48e275fef430b30ba4b91f4e8e6c0dbc3b938b98  0005-xr-don-t-discard-the-shared-buffer-s-depth-stencil-on.patch
4a6305062bfe91a1efd8bd39f039962ce6627af1dc039028f9002dcb260774df  0006-vr-Quest-compatible-Steam-Frame-gamepad.patch
a6cab2719e4a2b460bc66c37019904c73f6044c509a99b0435a2c3bf49420698  0008-xr-controller-vibration-through-OpenXR-haptics.patch
e610c618eacdd1ceb7744cc08c7dc118ffce953b08488885ac44bba9edd74602  0009-xr-Linux-OpenXR-draws-pages-at-their-own-framebuffer.patch
892cfe18bc76ca589a439f18bd828303c244b31ef55a4dee860e8dc10f8b0274  0010-xr-antialiasing-for-Linux-OpenXR-pages.patch
d6e79bea3f3b485cdf7c0142a8233d278ee15fa12ff285a1b0bb2a1e43515633  0011-xr-Linux-OpenXR-doesn-t-wait-for-the-GPU-each-frame.patch
5b518ac5ffc0ae80acf13959bb38ffd5b53b08954425d2da1ea2f65a5b6f4dfb  0012-xr-softer-controller-vibration.patch
9fff20f1226c77099e585a220e3b01c4b5c5405b4b6d86eb8be50fbc7f5f7b40  0013-xr-2x-antialiasing-for-WebXR-on-Linux-arm64.patch
3b1c6b47bdaa459fea7d52ca6acab8bbdea0f65167a26049b71e628af0987d10  0014-media-V4L2-hardware-video-decode-for-WebXR-on-the-Steam-Frame.patch
cddaa8bf91135a34c1c496bc54d6c06cfc13a3a6ef98e825826b6f5580ad0c0e  0015-gamepad-hapticActuators-and-pulse-for-WebXR-controllers.patch
f2b1db5bb9dc75b7ee0ea4545f6b7c2eab626976f134ff362d7911caf678cbfa  0016-xr-short-controller-taps-strong-enough-to-feel.patch
a431365dda2d132725193eaa391e01814863314bf14f2700621905276ab7aa2b  0017-xr-keep-WebXR-controllers-steady-through-the-Steam-menu.patch