Skip to content

Commit

Permalink
Revert "Wiki additions & cleanup/fixing (alvr-org#1465)"
Browse files Browse the repository at this point in the history
This reverts commit 3298450.
  • Loading branch information
Vixea committed Feb 18, 2023
1 parent 3298450 commit abf50cc
Show file tree
Hide file tree
Showing 8 changed files with 78 additions and 98 deletions.
2 changes: 0 additions & 2 deletions wiki/ALVR-Checklist.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# ALVR Checklist before posting a new Issue

## Hardware Requirements

* [ ] Intel Core i5-4590/AMD FX 8350 equivalent or better
Expand Down
2 changes: 0 additions & 2 deletions wiki/ALVR-client-and-server-on-separate-networks.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# ALVR client and server on separate networks

# ALVR v14 and Above

Here are explained two methods to connect PC and headset remotely, port-forwarding and ZeroTier. The primary purpose of this is connecting the headset to a Cloud PC (like ShadowPC).
Expand Down
88 changes: 0 additions & 88 deletions wiki/Configuration-Information-and-Recommendations.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# Information and Recommendations

# PC
- A high-end PC is a requirement; ALVR is not a cheap alternative to a PCVR HMD
- ALVR resolution configuration and SteamVR multi-sampling may be used to influence quality in favor of performance or vice-versa
Expand Down Expand Up @@ -54,89 +52,3 @@ https://imaginevr.home.blog/author/imaginevrresearch/

Some points came from [FingrMastr](https://github.com/FingrMastr)

# Linux
## Encoder requirements

ALVR uses FFmpeg for all encoders (except AMF), so you will need to make sure the encoder of your choice works with FFmpeg.
Always consult Log tab in dashboard, it will tell you the reason why an encoder failed to initialize.

### VAAPI (AMD/Intel GPUs)

Requires *libva* and appropriate driver for your GPU. Check codec support with `vainfo`:

```sh
$ vainfo 130 ↵ !10090
Trying display: wayland
vainfo: VA-API version: 1.16 (libva 2.16.0)
vainfo: Driver version: Mesa Gallium driver 23.0.0-devel for Radeon RX 7900 XTX (gfx1100, LLVM 16.0.0, DRM 3.49, 6.1.1-zen1-1-zen)
vainfo: Supported profile and entrypoints
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileAV1Profile0 : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
```

*VAProfileH264High, VAProfileHEVCMain, VAProfileHEVCMain10* encoders (VAEntrypointEncSlice) required. If you don't see those
in your output, your driver install is incorrect or your distribution decided to build *mesa* without non-free codecs.

**Test ffmpeg commands**

```sh
# H264
ffmpeg -vaapi_device /dev/dri/renderD128 -f lavfi -i testsrc -t 30 -vf 'format=nv12,hwupload' -c:v h264_vaapi vaapi-h264.mp4

# HEVC
ffmpeg -vaapi_device /dev/dri/renderD128 -f lavfi -i testsrc -t 30 -vf 'format=nv12,hwupload' -c:v hevc_vaapi vaapi-hevc.mp4
```

### AMF (AMD GPUs)

AMF requires proprietary Vulkan driver amd-pro. Troubleshooting AMF installation on your system is out of scope here, but you
can use [amf-test](https://github.com/nowrep/amf-test-linux). HEVC is only supported on RDNA and newer GPUs.

Make sure amf-test succeeds before you try to get it working with ALVR.
You will need to tell ALVR where to find amd-pro driver, edit your SteamVR launch command (change the path as appropriate
for your system):

env ALVR_AMF_ICD=/path/to/amd_pro_icd64.json %command%

ALVR should now be able to use AMF.

### NVENC (NVidia)

Requires *libcuda*.

**Test ffmpeg commands**

```sh
# H264
ffmpeg -f lavfi -i testsrc -t 30 -vf 'format=nv12,hwupload' -c:v h264_nvenc nvenc-h264.mp4

# HEVC
ffmpeg -f lavfi -i testsrc -t 30 -vf 'format=nv12,hwupload' -c:v hevc_nvenc nvenc-hevc.mp4
```

### Software (all GPUs)

Software encoder is mainly used as a fallback and as such should work on all GPUs without any requirements.
Only H264 encoding is currently supported.

## Legacy Reprojection
SteamVR by default will still use async reprojection for all games, which can cause issues such as:
- Ghosting
- Jumpy framerate
- Jittery movement
- General unsmoothness
And all other sorts of issues. Turning on Legacy Reprojection in the per game video settings inside SteamVR will effectively disable
any reprojection making the experience far better.
76 changes: 76 additions & 0 deletions wiki/Linux-encoders-requirements.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# Linux encoders requirements

ALVR uses FFmpeg for all encoders (except AMF), so you will need to make sure the encoder of your choice works with FFmpeg.
Always consult Log tab in dashboard, it will tell you the reason why an encoder failed to initialize.

## VAAPI (AMD/Intel GPUs)

Requires *libva* and appropriate driver for your GPU. Check codec support with `vainfo`:

```sh
$ vainfo 130 ↵ !10090
Trying display: wayland
vainfo: VA-API version: 1.16 (libva 2.16.0)
vainfo: Driver version: Mesa Gallium driver 23.0.0-devel for Radeon RX 7900 XTX (gfx1100, LLVM 16.0.0, DRM 3.49, 6.1.1-zen1-1-zen)
vainfo: Supported profile and entrypoints
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileAV1Profile0 : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
```

*VAProfileH264High, VAProfileHEVCMain, VAProfileHEVCMain10* encoders (VAEntrypointEncSlice) required. If you don't see those
in your output, your driver install is incorrect or your distribution decided to build *mesa* without non-free codecs.

**Test ffmpeg commands**

```sh
# H264
ffmpeg -vaapi_device /dev/dri/renderD128 -f lavfi -i testsrc -t 30 -vf 'format=nv12,hwupload' -c:v h264_vaapi vaapi-h264.mp4

# HEVC
ffmpeg -vaapi_device /dev/dri/renderD128 -f lavfi -i testsrc -t 30 -vf 'format=nv12,hwupload' -c:v hevc_vaapi vaapi-hevc.mp4
```

## AMF (AMD GPUs)

AMF requires proprietary Vulkan driver amd-pro. Troubleshooting AMF installation on your system is out of scope here, but you
can use [amf-test](https://github.com/nowrep/amf-test-linux). HEVC is only supported on RDNA and newer GPUs.

Make sure amf-test succeeds before you try to get it working with ALVR.
You will need to tell ALVR where to find amd-pro driver, edit your SteamVR launch command (change the path as appropriate
for your system):

env ALVR_AMF_ICD=/path/to/amd_pro_icd64.json %command%

ALVR should now be able to use AMF.

## NVENC (NVidia)

Requires *libcuda*.

**Test ffmpeg commands**

```sh
# H264
ffmpeg -f lavfi -i testsrc -t 30 -vf 'format=nv12,hwupload' -c:v h264_nvenc nvenc-h264.mp4

# HEVC
ffmpeg -f lavfi -i testsrc -t 30 -vf 'format=nv12,hwupload' -c:v hevc_nvenc nvenc-hevc.mp4
```

## Software (all GPUs)

Software encoder is mainly used as a fallback and as such should work on all GPUs without any requirements.
Only H264 encoding is currently supported.
2 changes: 0 additions & 2 deletions wiki/Real-time-video-upscaling-experiments.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# Real time video upscaling experiments

# Why?

The Quest can display a resolution close to 4k. Rendering a game, encoding and decoding these kinds of resolutions is very taxing on both the PC and the Quest. So usually a lower resolution image displayed on the Quest.
Expand Down
2 changes: 0 additions & 2 deletions wiki/Troubleshooting.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# Issues running and connecting to ALVR

Troubleshooting (for ALVR 14.0.0 and later)
===

Expand Down
2 changes: 1 addition & 1 deletion wiki/Use-ALVR-through-a-USB-connection.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# ALVR wired setup (ALVR over USB)
# Using ALVR through a USB connection

## ALVR Configuration

Expand Down
2 changes: 1 addition & 1 deletion wiki/_Sidebar.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,4 @@

* [Linux support](https://github.com/alvr-org/ALVR/wiki/Linux-Support-development-progress)

* [Real time video upscaling experiments](https://github.com/alvr-org/ALVR/wiki/Real-time-video-upscaling-experiments)
* [Real time video upscaling experiments](https://github.com/alvr-org/ALVR/wiki/Why?)

0 comments on commit abf50cc

Please sign in to comment.