The quality and performance of a Parsec stream is very dependent on the network and hardware of the host and the people joining the stream. This article goes over checking Parsec's latency info and console log for information on why the stream is performing poorly, and some tips to fix it depending on what Parsec shows.
Checking overlay warnings
The person that is connected to a computer is able to see warnings when Parsec detects that the stream is not acting well.
- Red encoding warning (The host is using software encoding): This will pop up whenever the host computer cannot start the stream with a fast hardware encoder, and Parsec had to use a lower performance software encoder. To resolve this, check our separate guide about the software encoding warning
- Yellow network warning (You are having network performance issues): This will show up whenever Parsec notices significant packet loss and network congestion. It is possible that simply lowering the bandwidth limit in the host computer's Parsec settings, or switching to 5ghz Wi-Fi or ethernet resolves the issue. If it does not, refer to the other tips given by this guide in the "Checking network reliability" part further below
- Yellow hardware warning (The host's resolution or FPS is too high for your hardware to keep up): This will show up whenever Parsec sees that the client computer's latency (the "decode" latency) is way too high, where it is not able to keep up with the stream in time. Check the "Checking overlay latencies" part of this guide to learn more about how to resolve this
Checking overlay latencies
Put a very visually active game or video on the host, then press Ctrl+Shift+M on the guest to see the information below.
Decode and Encode is the time the device takes to handle a single frame. Decode is the guest device, and encode is the host device. High numbers can mean major issues to the stream. When streaming 60fps, you don't want to go above 15ms. At 30fps the threshold is 32ms.
What to do if the decode or encode latencies are too high?
In general, lowering the resolution and FPS of the host will reduce the latency. However, you should also keep in mind the following things:
- If the guest is joining via the browser, you may notice Decode says N/A. The web client does not have access to low-level hardware optimizations or hardware decoding, if you're having issues with the web app, you should download the native app for your system
- If the guest's overlay says Software next to the latencies, Parsec isn't using the hardware decoder which results in much worse decoder latency. There's a setting in the overlay itself and Parsec's settings to change the decoder to something else, but if the guest's hardware is too old, they might be unable to use a hardware decoder at all. In that case you'll want to lower the resolution and FPS on the host to compensate for it
- If the host has an AMD card, AMD is usually known for having worse encode than NVIDIA and even Intel. You should be fine at low resolutions. If all guests support H.265 and have it turned on, you may see better performance than with it off
- In case of high encode latency, you may see a difference from tweaking between fullscreen and windowed, or windowed borderless. Some Vulkan games' windowed borderless mode still act just like fullscreen, so make sure to try the actual windowed mode
- If the host happens to have experimented around with advanced settings in Settings > Host > Edit the configuration file, remove them and restart Parsec. They can easily worsen the experience if not carefully configured
- Some NVIDIA users on Windows have reported issues with the newer drivers, causing unusually higher encoder latency, latency spikes and significant capture issues. Consider trying an older driver version like 472.12 if your version is newer. You can find older drivers in NVIDIA's Advanced Driver Search page
- If the host has a G-Sync monitor, try to disable G-Sync and check if the encode latency improves
- Generally keep in mind your computer's power saving options. Windows, Intel, NVIDIA and AMD all tend to have their own settings for saving battery on laptops that can impact the stream. In some cases you may want to plug in a cable for your laptop to perform the best
- Hosts on NVIDIA may get better encode latency by setting Parsec to maximum performance in the NVIDIA Control Panel. Make sure to restart the computer to properly apply the change
- (For paid users) Having 4:4:4 color accuracy activated may increase the load considerably in some cases. Turn off 4:4:4 and check if the stream has improved. Check the guest requirements section here for more info
Network is the ping between the guest and host. The more latency you have, the more time it takes for you to press a button and see it on the host. Below 30ms is good, and below 60ms is still fine for most people. If this number is constantly varying a lot, it's also a sign the connection isn't reliable.
What to do if the network latency is too high?
- Both sides should use an Ethernet cable or ensure you're using 5ghz Wi-Fi. Avoid signal boosters, Ethernet over power line or mesh Wi-Fi systems. Move closer to your Wi-Fi if possible. If you're using Wi-Fi and you can at least test an ethernet cable for a moment, try it out and see if your situation improves
- VPNs can introduce additional latency and should be avoided if possible
- You may be physically too far away from each other. Parsec unfortunately isn't able to break the laws of physics yet
- If you're not physically too far away, the route being taken by your connections may be currently poor. This is unfortunately basically out of your control. Or, either side's connection may be poor in other ways that are covered in the network reliability part of this article, below. Note that Parsec is peer-to-peer, so your connection isn't going through Parsec's servers, it's entirely up to the guest and host's connection
Checking network reliability
Don't disregard this if you think your internet is fine. To check, start hosting, and put a very visually active game or video on the host for a few minutes, then access the console on the host and look at the N:0/0/0 numbers.
Ideally this should be very close to 0/0/0. If the numbers are incrementing by hundreds in minutes, the connection between the guest and host is getting affected by packet loss. Parsec will lower the quality for any increase to compensate, but you'll also lag if it increases a lot. If you're just getting intermittent stutters, the number may increase in the time frame of the stutter too.
What to do if the N: numbers are too high?
Check the following things on both the host and guest devices:
- These numbers can generate false positives if the decode or encode latency is over the recommended threshold, make sure you checked that's not the case in the previous section about latencies
- Both sides should use an Ethernet cable or ensure you're using 5ghz Wi-Fi. Avoid signal boosters, Ethernet over power line or mesh Wi-Fi systems. Move closer to your Wi-Fi if possible. If you're using Wi-Fi and you can at least test an ethernet cable for a moment, try it out and see if your situation improves
- Do a bufflerbloat test on both devices, which will show whether your connection is reliable enough for low latency gaming
- If you get a poor result for low latency gaming, consider looking into setting up SQM on your router, or get a new router. If you have QoS on your router, it may or may not improve bufferbloat, you'll want to test the before and after
- Some routers have defective Intel puma chips that don't handle intensive network tasks very well and often cause severe stream issues. Search on TechInfoDepot for your modem/router. If yours has the defective chip, you should look into replacing it. There's also an alternative test for Puma on DSLReports
- Try restarting the routers on both sides
- Make sure that the bandwidth limit in the host settings isn't too much for this connection. Experiment reducing the bandwidth to 3 Mbps, and if the issues seem to have disappeared, keep upping it and testing how much the connection can handle
- If anyone has internet speeds slower than the recommended by Parsec, you'll likely have issues as a result. The host needs at least 10mbps upload and 2mbps download per guest. The client needs at least 2mbps upload and 10mbps download
- Beware of other apps or devices on your network that might be making use of your internet or system resources in a way that affects Parsec
- Windows Update's Delivery Optimization which can cause micro stutters every few seconds. To disable that, go to Settings > Update & Security > Advanced options > Delivery Optimization > Disable "Allow downloads from other PCs".
- On macOS machines, AWDL (Apple Wireless Direct Link) locks the Wi-Fi radio for small intervals for communicating between Apple devices with stuff like AirDrop, GameKit and AirPlay. This can have a surprisingly big negative impact on the stream. To resolve this, you can attempt to set your Wi-Fi network to use channels 6, 44 and 149, or alternatively, use a script that actively disables Apple Wireless Direct Link
- "Network optimizer" programs like Lenovo Vantage may cause intermittent stutters. If you have one of those, try uninstalling them
- Other programs like HP Smart have also been reported by users as causing stutters
- Turn off any energy-saving features built into your network adapter. On Windows, open Device Manager > Network adapters > [Your network adapter (e.g. Realtek PCIe GbE Family Controller)] > Advanced and turn off settings like Green Ethernet, Energy-Efficient Ethernet and Power Saving Mode
- If the host happens to have experimented around with advanced settings in Settings > Host > Edit the configuration file, remove them and restart Parsec. They can easily worsen the experience if not carefully configured
- The connection on either side might just be poor, or the connection route being taken is currently poor. Note that Parsec is peer-to-peer, so your connection isn't going through Parsec's servers, it's entirely up to the guest and host's connection
- If you're connecting PCs on the same house with ethernet cables, it should be flawless. If it isn't, something is faulty, be it the cables, the router, switches you have, or the PC. Experiment with different PCs in the house, remove switches, try out the same ethernet cable on different PCs to check if the cables may be faulty. Ideally, while testing, keep it as 'PC <-> cable <-> router <-> cable <-> PC'
Other things to consider if the console log and latencies seem fine
- If everyone is looking at the action from Parsec (the host isn't looking at the original screen or you're on a cloud PC), it's possible the game itself is lagging. If no one can check the actual screen, use tools to monitor the FPS and general performance of the game
- If the stream is stuttering somewhat, try turning on V-sync in Parsec's client settings and restart Parsec. People usually associate V-sync with preventing screen tearing, but on Parsec it can noticeably improve the delivery of frames in other big ways. If you don't notice an improvement, keep it off for saving some latency
- If the host and guest have differing refresh rates, it might result in what looks like stutter. Consider tweaking the refresh rate if you suspect that's the case
- Guests can try out a different renderer in Settings > Client > Renderer. Most Windows guests will have a better time with DirectX, and Intel HD Graphics 4000 and older do not support OpenGL well
- If you're getting underwhelming quality at high bitrates, and you happen to have H265 on, try turning it off
- If you feel way more latency than you get by combining the decode + encode + network from the overlay, your guest device could be at fault in ways that even decode won't tell you. Try being a guest in different devices to check this, confirming that your latencies and console log are still good. If you have a Raspberry Pi, make sure it has a proper power supply, isn't throttling and use the "Performance" CPU governor on all cores