protonscr

HEVC (H.265) Encoding not available on Steam for Linux?

steamopen Streaming
ValveSoftware/steam-for-linux#8731 · opened 2022-08-10 by falk4243 · updated 2024-05-03 · 3 comments · github
Ffalk4243 2022-08-10 github

Your system information

  • Steam client version (build number or date): 1659369000 (regular and flatpak version)
  • Distribution (e.g. Ubuntu): Debian testing
  • Opted into Steam client beta?: No (doesn't help)
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

HEVC (H.265) should be shown in the streaming stats when selecting the option in the mobile client, but only AVC (H.264) encoding seems to be available. HEVC encoding is supported by the system and works with Sunshine for example. It is a much better option for many AMD cards (where H.264 seems to have been an afterthought) and with the recently added VAAPI support (#4890) should run efficiently even at UHD.

Steps for reproducing this issue:

  1. Enable HEVC streaming in the setting on Steam Play for Android or iOS.
  2. Start the Steam Remote Play session from the device.
  3. Take a look at the streaming stats.
Sskipperro 2022-10-02 github

Oh yes, it would make my day if H.265 was supported for Remote Play from Ubuntu-PC to Ubuntu-PC or Steam Link.

SSaltyBet 2023-01-08 github

Some more info, I tested the following:

  • Host:
    • PC.
    • Windows 10.
    • Latest Stable Steam Client.
    • Hardware Encoding Enabled.
  • Client 1:
    • Android phone.
    • Latest Stable Steam Link App.
    • Hardware Decoding Enabled.
    • HEVC Video Enabled.
  • Client 2
    • Steam Deck.
    • Latest Stable SteamOS.
    • Latest Stable Steam Client.
    • Hardware Decoding Enabled.
    • No visible option to enable HEVC Video.

Results:

  • Scenario 1 (Host <---> Client 1):

    • Host Hardware Encoding working and shows HEVC in Performance Overlay.
    • Client Hardware Decoding working, shows Android texture hardware decoding in Performance Overlay.
  • Scenario 2 (Host <---> Client 2):

    • Host Hardware Encoding working but shows H264 in Performance Overlay.
    • Client Hardware Decoding not working, shows libavcodec Software Decoding in Performance Overlay.

For Scenario 2, decoding step, there might be a bug at play (maybe related to [#903](https://github.com/ValveSoftware/SteamOS/issues/903)); other than, omitting the HEVC option on the regular Steam Client makes no sense; VALVE should fix this.

Mmiroslavjurkech 2024-04-24 github

I want to add my update. I use Arch Linux as a server and Steam Deck as client. And I rebuilt libva-mesa-driver and lib32-libva-mesa-driver without support for h264enc. I wanted to know if this forces Linux Steam client on the desktop (server) to chose HEVC.

It did not. instead software libx264 is run. For AMD cards I would really prefer HEVC if it is possible. As latency is better with software encoder compared to hardware one with AMD cards with h264. But then it is eating up my CPU. HEVC is much better for AMD cards.

Please Valve make this happen. :pray:

Upstream links