This article covers navigation of the Parsec app for Linux (Ubuntu 18.04), advanced configuration file, advanced installation with command line options, service and proxy settings, and Parsec on headless systems with virtual displays.
Table of contents
Navigation
Configuration file
Command line installation and configuration
File locations
Use system proxy
Other distros
Navigation
Overview
The Parsec interface while logged in is composed of:
- A set of tabs in the left which take you to different parts of the app: Computers, Settings, Friends, Help, and Log out
- A text field which lets you paste share links or peer IDs to join computers at the bottom right
- Your Parsec name and ID at the top right
Computers
The 'Computers' tab displays computers your Parsec account is logged in to, and computers that are shared with you via Friends, Guest Access, and/or Team computers. Please note, for computers to show up in this tab, the computers must support hosting, and have 'Hosting' enabled in the settings. Linux does not support hosting at this time and any computers on this operating system will not be listed.
The computers list refreshes automatically, although it can also be refreshed manually by clicking 'Reload'. You can right-click any computer in the list to get its peer ID, which can be entered in the text field at the bottom-right.
Settings
The 'Settings' tab contains a tab for each of the following categories of settings: Client, Network, Hotkeys, Gamepad, and Account. Additionally, the build number and build release date can be found by hovering your mouse above the build number at the top right.
Client
When the 'Settings' cog is clicked, you'll land on the 'Client' tab. This is where you can adjust settings related to how Parsec works when you're connecting to a host as a client. The following settings can be configured here:
- Overlay - Display the Parsec button and overlay while connected.
- Overlay Warnings - Display network and hardware performance warnings in the client overlay.
- Swap Command and Ctrl for MacOS - When connecting to a MacOS host from a non-MacOS client, or connecting to a Windows host from a MacOS client, swap the functionality of the Ctrl and Command/Windows keys for easier hotkey actions.
- Window Mode - Switch to fullscreen mode or remain in windowed mode when connecting to the host.
- Renderer - Graphics API used for application rendering. Restart required.
- You are able to choose between OpenGL and Vulkan (Experimental). Options may vary depending on your OS version and hardware
- VSync - VSync increases latency, but eliminates screen tearing. Restart required.
- Decoder - Select which decoder Parsec should use. Hardware decoding decreases latency and resource consumption. Only set to Software for compatibility reasons.
- You are able to choose between Hardware, Software and sometimes specific vendors like NVIDIA. This depends on your hardware
- H.265 (HEVC) - Attempt to stream using the next-generation H.265 video codec, falling back to H.264 if both computers don't support it. Turning this on may ignore the Decoder setting above.
- Immersive Mode - Pass certain hotkeys (such as Alt+Tab) to the host and lock the mouse to the Parsec window.
- You are able to choose whether you want to affect the Keyboard, Mouse, or Both
- The Parsec window must be active for input to be passed to the host correctly
Network
The 'Network' tab is where you can adjust network related settings. These settings affect how the Parsec app handles connecting between machines, and performance characteristics related to network conditions or the audio codec. These settings can be changed:
- Client Port - The port the client will use when connecting to a host. Set to 0 to use a pseudorandom default. Must be greater than 1024 and less than 65535. Restart required.
- This setting is useful when you plan to manually port forward the client side. We recommend using 9000 for the client port, but anything can be used
- UPnP - UPnP increases the chance of successful peer-to-peer connections. Restart required.
- The Parsec app leverages UPnP "hole punching" to open a listener port for the inbound session packets
- Congestion Algorithm - Behavior when network conditions deteriorate or increasing bitrate begins getting throttled. Don't change this unless you are having network problems. This setting is most important on the host.
- Audio Codec - Stream audio using Opus for high quality compressed audio (default) or, select uncompressed audio (on host and client) when quality is important and host bandwidth is not limited. Both codecs use 48.000KHz/2-channel audio. Restart required.
Hotkeys
Hotkeys can be used when connected to a host computer. The following hotkeys and actions can be configured here:
- Disconnect - End an active client connection. System quit keys will also work, such as Alt+F4 or Command+Q.
- Menu - Open the overlay menu during an active client connection.
- Chat - Open the chat box during an active client connection.
- Switch Display - Cycle through remote displays.
- Add Screen - Create an additional window to view multiple monitors on the host at once.
- Send CTRL+ALT+DEL - Send CTRL+ALT+DEL to the host.
- Window Mode - Toggle between windowed and fullscreen mode.
- Immersive Mode - Toggle immersive mode during a client connection.
- Ignore Hotkey - Prevent this hotkey from being passed to the host during a client connection. Useful for your Discord push-to-talk hotkey.
- Detach Mouse - Free the mouse cursor from the Parsec client window. The cursor will re-attach on the next click.
Gamepad
If you are using a game controller such as a Dualshock 4 or Xbox 360 gamepad, its mappings can be adjusted on the 'Gamepad' tab.
- Reset will reset any manual changes made to the mapping of the current controller
- Show Raw Data will display all the raw information we see for this controller. This is useful for checking whether a specific button can be mapped at all on Parsec
- Map lets you switch what button on your controller will represent the given button on Parsec
- Unmap lets you completely remove a specific button map
Account
Clicking the account tab will use your default web browser to open your Account page.
Friends
When you click the 'Friends' icon, you can see your list of friends, send, accept or decline friend requests, or change the default permissions when your friends connect to your computer. Friends will see your computer on their 'Computers' tab, where they can click 'Connect' to connect to your computer. Access to the Friends list can be disabled via the Teams admin portal, if you are a Teams or Enterprise customer.
- Add Friend - Lets you search for the name and/or Parsec ID of a friend, and send a friend request
- View Friend Requests - Shows incoming and outgoing friend requests. You can accept or decline requests sent to you, or cancel requests sent to others
- Friend settings - Clicking an existing friend will let you change the default permissions they receive upon joining a computer in the 'Computers' tab. You can also unfriend them from here. These permissions can be configured, which will apply to Windows and macOS computers on your account that support hosting
- Gamepad Control
- Keyboard Control
- Mouse Control
- Can connect without your approval (careful!) - Be careful if you decide to enable this setting, as the selected friend will be able to connect to your computer without requiring your approval before establishing a session. For example, if you are away from your host computer and a friend with this permission clicks 'Connect' on your computer, they will immediately see and/or be able to control your desktop, whether you want them to or not
Help
The 'Help' menu is helpful when trying to find information about Parsec, submit a support case, or troubleshoot issues. The following options are available through the 'Help' menu:
- Help - Uses your default browser to open our Knowledge Base
- Support Ticket or Discord - If you are a Parsec for Teams customer, you will see 'Support Ticket', which will take you to a website where you can submit a support request. Otherwise, you will see 'Discord', which will take you to our community Discord server
- Console - The console is useful for troubleshooting issues with Parsec. Similar to tailing a log file on Linux, our console will display session information as it sees in the log file. The console output does not persist if you restart the Parsec app. More information is available in our page for Stream Overlay, Stats, and Logging
- Log File - This will open your log file in a text editor. This is an easy way to find and copy the log file, which would behoove you (and us, frankly) to include in your support case :). The path to the file is
~/.parsec/log.txt
Log out
The 'Log out' icon can be used to close the Parsec application, or log out.
Configuration file
You can access the configuration file going into Parsec's settings, scrolling to the bottom and clicking "edit the configuration file directly". The order in which the key/value pairs are written in the config file does not matter. These are available on all platforms, except Android.
Alternatively, you can find config.txt at the path ~/.parsec/config.txt
. You can see a list of the available configuration options here.
Command line installation and configuration
We do not support command line options for the Linux installer.
File locations
These are the folder locations used by the app.
/usr/bin/parsecd
- The Parsec app file~/.parsec
- User data folder
Use system proxy
Some companies put a proxy server between computers and the network. That's not a problem for Parsec. You can tell Parsec to use specific proxy settings advanced configurations. Refer to the section about app_proxy
in Parsec's article about advanced configuration.
Other distros
Parsec officially supports Ubuntu 18.04 LTS Desktop. It will also probably work on other Debian Distros, but we haven't tested this thoroughly and do not officially support it. If the .deb package does not work on your distribution, you should be able to convert it to a .rpm using "Alien".
Here is a list of dependencies that Parsec depends on besides the C/C++ standard library;
- libasound.so.2
- libcrypto.so.1.1 or 1.0.0 or 3
- libssl1.1 or 1.0.0 or 3
- libudev.so.1
- libX11.so.6 (We are X11-based, but will run on XWayland)
- libXi.so.6
- libXcursor.so.1
- libGL.so.1
- libXrandr.so.2
- libavutil.so.56
- libavcodec.so.58