Featured image of post How to Set up Bazzite for TV Gaming

How to Set up Bazzite for TV Gaming

With Linux lacking HDMI 2.1 support, getting your games onto a 4K TV over HDMI can be troublesome.

HDMI Drama

You have a large, 4K TV with 120Hz, High Dynamic Range (HDR), and variable Refresh Rate (VRR) capabilities, and you want to use it to play your Steam games. Awesome! It’s not as straightforward as you might think. đŸ˜©

The issue arises from Linux lacking support for HDMI 2.1. For more information, see The HDMI Forum rejected AMD’s open source HDMI 2.1 implementation

Fortunately, some Nvidia GPUs have HDMI 2.1 support built into their drivers, which can alleviate this problem. However, AMD GPUs do not offer this feature. Switching to Windows instead of Linux is also an option if HDMI 2.1 is a must have for your setup.

If you’re looking to use full-featured HDMI 2.1 on Linux, you’ll need an Nvidia GPU. However, Nvidia GPUs may not work perfectly with Bazzite or Linux 100%. That’s improving over time. If your Nvidia GPU works for you already, then you’re good!

I have an AMD GPU, so I’m limited, and frankly, this is a Linux gotcha that I’m not happy about and borderline ready to switch to Windows over.

On the bright side, if your TV doesn’t support HDMI 2.1, or you don’t care about 120Hz VRR, you won’t encounter any issues related to this feature. Go play some games. 🎼

đŸ‘Ÿ I built a Bazzite Steam Box for TV gaming and it works great! Check out my build.

Equipment Check

  • If you want 4K at 120Hz with VRR and HDR, make sure your TV supports these things. Check your TV’s manual.
  • Put the TV input you are using in “Game Mode” or “PC Mode.”
  • Turn on AMD FreeSync if your TV and GPU supports it.

Explore Your Video Options

Now that you know your TV’s capabilities and have things hooked up to the right port with the correct HDMI cable, it’s time to pick your video settings based on what your TV can do.

HDMI 1.4 & 2.0

Plug in the cable and go. Linux can handle what your TV supports.

HDMI 2.1

  • Linux doesn’t support HDMI 2.1, so you have to compromise
  • Use Ultra High Speed (UHS) HDMI cables for 4K 120hz gaming (Just “High Speed” isn’t good enough.)
  • Use an HDMI 2.1 compatible port on the TV (not all of them are sometimes)
  • 4k up to 120hz allows VRR, but only 8-bit color
  • 1440p up to 120Hz allows VRR, but only 8-bit color
  • 1080p up to 120Hz allows VRR, HDR, and up to 12-bit color

(You may have HDR enabled, but 8-bit color does not support HDR.)

These variations worked on my LG C1 OLED. They may not work for your TV. You may have to drop the resolution or the refresh rate to 60Hz to get a stable image.

Display Port 1.4 -> HDMI 2.1 adaptor

There is a way around the Linux HDMI 2.1 limitation. You can use an active Display Port 1.4 to HDMI 2.1 adaptor. This one by Cablematters works.

  • Will do 4K @ 120hz HDR
  • No VRR, but will have 10 or 12-bit RGB color

Photo of the adaptor

⭐ There is a way to get 4K 120hz, 10-bit color, HDR and VRR working with this adaptor, but it’s a bit of a hack and may not work for everyone. It may be worth a try.

I wrote about how to do it: Get HDMI 2.1 in Bazzite (mostly).

Pick Your Preference

I think until Bazzite/Linux gets an update to have better HDMI 2.1 support, your options for 4K or 1440p at 120Hz output is to choose between these options:

Prioritize Resolution and VRR, but low color depth

đŸ“ș Use HDMI. Set your system resolution to 4k or 1440p at 120Hz, and VRR.

This will cause a color depth drop, so no HDR, but you will have smooth motion. This is pushing HDMI supported bandwidth limits, so you may get graphic artifacts or a flickering screen. TV compatibility will vary and you may not be able to go past 60Hz to get a stable picture.

Prioritize Resolution and color depth, but no VRR

đŸ“ș Use the Display Port -> HDMI adaptor. Set your system resolution to 4k or 1440p and turn on HDR. You can do 120Hz, but VRR won’t be an option.

This will allow for a 10 or 12 bit color depth. Lock your games to a specific frame rate and target that with graphics settings to keep motion smooth.

Prioritize High color depth and VRR, but lower resolution

đŸ“ș Use HDMI. Set your system resolution to 1080p with 120Hz, enable HDR and VRR. This allows for 10/12 bit color depth.

This option is the most stable and has the best compatibility.

Photo of VRR info Photo of VRR info

Photo of VRR info Photo of VRR info

🏆 The solution I’m picking for my LG C1 is 1080p at 120Hz with VRR (AMD FreeSync), HDR, and 12-bit color. Since I’m running at a lower resolution, I’m able to max out graphics settings in games and still have a high frame rate. To me this is a good compromise.

Photo of VRR info

Set up Steam

With Steam, you want to set the system resolution as the base resolution and then have individual games set their graphics to match. Some games may need to drop their rendering resolution so you can get decent frame rates, but the output resolution should match your system’s resolution. Let Steam scale up the image instead of your TV.

  • Open the Steam Menu and go to Graphics settings.
  • Set the screen resolution and the HDR and VRR preferences you decided on above.
  • Launch a game and go to graphics/display settings
  • In the game settings pick your chosen resolution
  • Set the refresh rate to match the option you picked above
  • Run in a Window mode (not fullscreen)

Bonus Tips

Here are a few more things I had to deal with when setting up Bazzite on my 4k TV and how I fixed them.

Color banding

Photo of color banding Photo of smooth color transitions

Use “Force Composite” in the Developer Settings to help with color banding. It won’t fix color banding caused by a low, 8-bit color depth.

Photo of settings Photo of developer settings

(In Steam’s Settings, there is a toggle to enable Developer Settings. Then Developer Settings will be at the bottom of the list in the Steam Menu)

Graphical Glitches

If your graphics have glitches or static, and these things don’t show up in screen shots, you are having issues with your HDMI cable or TV. You may be out of your TV’s specs or exceeding HDMI max bandwidth. Use an Ultra High Speed (UHS) HDMI cable or turn off HDR, VRR. You may need to lower your system resolution and see if it goes away then.

HDR Issues

If a game won’t allow HDR to be enabled, make sure it is enabled before you launch the game.

If a game forces HDR and you want to stop it, use an older Proton version like 7.0-6 or turn off HDR before launching the game.

Remember: HDR has a minimum requirement of a 10-bit color depth. 10-bit color can have a range of Chroma Subsampling (e.g., 4:4:4, 4:2:2, 4:2:0).

VRR Issues

On OLED displays, with VRR on, moving the cursor in menus (especially the Steam menus) will cause a faint flicker of the screen. The only fix for this is to turn off VRR here.

Game Graphics Mode Locked

If a game has certain graphics settings locked by default because it thinks Bazzite is a Steam Deck, this can be bypassed by using the launch option SteamDeck=0 %command%

BIOS

Hit the “Delete” key on boot up until the BIOS screen shows up. Then change these settings.

Enable D.O.C.P.

D.O.C.P. - Enable Profile #1 — it allows the RAM to operate at its advertised speed.

If You Have an AMD GPU and CPU

Enable Smart Access Memory (SMR) and you’ll get a 5-10% boost in performance!

Look for “Set Resize BAR” and set to “On”. (On Asus motherboards, it may be under Advanced -> Advanced/PCI Subsystem Settings -> Above 4G Encoding enabled -> Resize Bar Support to Auto)

Built with Hugo
Theme Stack designed by Jimmy and modified by Josh Nichols.