Parsec App for Windows

This article covers navigation of the Parsec app for Windows, our portable app for Windows, 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
Portable app
Configuration file
Command line installation and configuration
Registry configuration
System service
Use system proxy
Virtual displays

 

Overview

parsec_interface_overview.png

The Parsec interface while logged in is composed of:

  1. A set of tabs in the left which take you to different parts of the app: Computers, Arcade, Settings, Friends, Help, and Log out
  2. A list of users currently connected to this machine, at the bottom left
    • Hover over the profile picture to see the network latency between this computer and that user
    • Click the profile picture to add and remove input permissions or kick the user
    • The three icons next to each user blink different colors depending on whether they are using the mouse, keyboard or controller
      • Green: Has permission, and is interacting currently
      • White: Has permission, and isn't interacting
      • Gray: Does not have permission, and isn't interacting
      • Red: Does not have permission, and is trying to interact (the input is ignored)
  3. A text field which lets you paste share links or peer IDs to join computers at the bottom right
  4. Your Parsec name and ID at the top right

Computers

computers_tab.png

The 'Computers' tab displays your current computer, 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 support hosting, and have 'Hosting' enabled in the settings.

The computers list refreshes automatically, although it can also be refreshed manually by clicking 'Reload'. You can click 'Share' to get a share link for your current computer. You can also right-click any computer in the list to get its peer ID. Both the share link and peer ID can be entered in text field at the bottom right.

Arcade

arcade_tab.png

The 'Arcade' tab displays ongoing gaming sessions, which you can join. Alternatively, you're able to host a gaming session from this tab, allowing people to connect to your computer for co-op gaming sessions. To host a gaming session, you'll need to have 'Hosting' enabled on your local computer. 

As a host in 'Arcade' mode, you'll be able to create a private or public lobby, invite users to your gaming session, control client input permissions, and kick users. Similar to the 'Computers' tab, the list of available sessions is refreshed automatically, although you can refresh the page manually by pressing 'Reload'.

Access to the Arcade can be disabled, via the Teams admin portal, if you are a Teams or Enterprise customer.

Settings

The 'Settings' tab contains a tab for each of the following categories of settings: Client, Host, Approved Apps, 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

settings_tab_client.png

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:

  • Enhanced Pen - Enable enhanced pen functionality while connected, such as tilt, rotation, and pressure. NOTE: This will enable Windows Ink mode on the host.
    • This setting requires a Warp or Teams subscription to be visible
  • 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. Direct3D 11 is preferred. Restart required.
    • You are able to choose between OpenGL, Direct3D 9, Direct3D 11, Direct3D 12 (Beta) 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.
  • 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 KeyboardMouse, or Both
    • The Parsec window must be active for input to be passed to the host correctly
  • 10-Bit Color (Experimental) - Attempt to stream using high bit depth (10-bit). This allows for minimally better color accuracy at the cost of latency and network bandwidth. This setting will only be effective when HEVC is enabled. Turning this on may ignore the Decoder setting above.

Host

settings_tab_hosting.png

The 'Host' tab is where you can adjust feature and functionality availability. These settings affect the options and performance characteristics when a client connects to your host computer. These settings are only available on Windows 8.1 or newer, which support hosting. The following settings can be configured here:

  • Hosting Enabled - Allow connections to this computer.
  • Host Name - The name of your computer. Leave blank to use the hostname.
  • Resolution - Automatically adjust the host resolution only when the computer owner connects.
    • Keep Host Resolution will maintain whichever resolution the host display had when the owner first connected
    • Use Client Resolution will attempt to use the owner's client display resolution. If Windows does not support that resolution for this display, it'll try the closest one available
    • You can also choose from a handful of specific resolutions, which will take effect if Windows is able to change that display to it
    • When all clients disconnect, Parsec will always revert the display resolution back to what it saw before the owner connected. The exception for this is if Parsec crashes, is forcibly closed, or the computer shuts down unexpectedly before it can do so
  • Bandwidth Limit - The maximum bandwidth used by Parsec, split between all connected guests.
  • Virtual Displays (Beta) - Add additional displays to the host during owner connections. This feature requires the Virtual Display Driver.
    • This setting requires a Warp or Teams subscription to be visible
    • The required Virtual Display Driver can be obtained by using the download link inside the settings in the app, below the setting
    • If people are connected to this machine when this setting is changed, they must all leave, then rejoin for this setting to apply
  • Privacy Mode - While virtual monitors are enabled, shut off all physical displays connected to the host. The host computer will be automatically locked after the last guest disconnects. This feature requires the Parsec Virtual Display Driver and at least one virtual display enabled.
    • This setting requires a Warp or Teams subscription to be visible
    • The required Virtual Display Driver can be obtained by using the download link inside the settings in the app, below the setting
    • If people are connected to this machine when this setting is changed, they must all leave, then rejoin for this setting to apply
  • Fallback to Virtual Display - Adds a single virtual display if no other displays are present. This feature requires the Parsec Virtual Display Driver.
    • Unlike other settings related to virtual displays, this one is available for free consumers
    • The required Virtual Display Driver can be obtained by using the download link inside the settings in the app, below the setting
  • FPS - Video stream frames per second. WARNING: Setting this above 60 may cause instability on some devices. If set too high, Parsec may attempt to revert to a safe resolution.
    • If an owner is connecting, this setting will attempt to change the host display's refresh rate to match this setting, if the host display supports it. If not, the display needs to be manually set to the refresh rate for this to actually take any noticeable effect on the stream
  • Idle Kick Timer - The number of minutes after which an idle client is kicked. Idle time is the time since the last button, keyboard, or pen input. The minimum time is 5 minutes, 0 is off.
  • Exclusive Input Mode - Only one guest can control the mouse at a time. The host will always be able to take control from guests by moving their mouse.
    • If people are connected to this machine when this setting is changed, they must all leave, then rejoin for this setting to apply
  • Display - Select which monitor Parsec should capture.
  • Audio - Select which audio device Parsec should capture.
    • If people are connected to this machine when this setting is changed, they must all leave, then rejoin for this setting to apply
    • If the current audio device disappears while connected, Parsec will cleanly switch to the default device in Windows
  • Echo Cancelling - Prevents echo while using certain apps on the host computer. Restart required for switching to or from "New".
  • Echo Selection - The selected app to be excluded from the client audio.
    • This option is only visible if Echo Cancelling is set to "New"
  • Virtual Gamepad Type - The virtual gamepad type assigned to guests when connected. Restart required.
    • You can choose between Xbox 360 and Dualshock 4. Xbox 360 is recommended
    • DS4 touchpad support requires ViGEm 1.17 or newer. Motion movement is not passed by Parsec
  • Quality - "Lowest Latency" prioritizes low input delay, "Highest Quality" prioritizes image quality. Prioritizing image quality may add significant latency and is best used on modern, high end GPUs.

Approved Apps

settings_tab_approved_apps.png

Approved apps allows the person who is hosting to choose the games or applications that guests can see and interact with. If a person is connected to your computer and the active window is not one of the whitelisted apps, they will not be able to interact with the host computer. 'Approved Apps' is disabled by default. 

Network

settings_tab_network.png

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
  • Host Start Port - The first port the host will try to use when accepting guests. 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 host side. We recommend using 8000 for the host port, but anything can be used
    • Parsec will increment the given port for each additional client that joins the stream. If you are manually port forwarding, you should also port forward these additional ports if it is crucial that multiple clients be able to join. For example, with a start port of "8000", also port forward "8001", "8002", up to the expected maximum client amount
  • 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

settings_tab_hotkeys.png

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.
    • This setting requires a Warp or Teams subscription to show up
  • Enhanced Pen - Toggle Enhanced Pen mode, useful for apps that don't function properly with Windows Ink.
    • This setting requires a Warp or Teams subscription to show up
  • 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.
  • Accept All - As a host, accept all waiting guests.
  • Kick All - As a host, kick all connected guests.

Gamepad

settings_tab_gamepad.png

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

settings_tab_account.png

Clicking the account tab will use your default web browser to open your Account page.

Friends

friends_tab.png

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

friends_add.png

  • View Friend Requests - Shows incoming and outgoing friend requests. You can accept or decline requests sent to you, or cancel requests sent to others

friends_requests.png

  • 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: 
    • Gamepad Control (enabled by default)
    • 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

friends_settings.png

Help

help_icon.png

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

help_tab_console.png

  • 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 depends on if you chose 'Per User' or 'Shared' during the installation process:
    • Per User installation: %appdata%\Parsec\log.txt
    • Shared installation: %programdata%\Parsec\log.txt

Log out

quit_tab.png

The 'Log out' icon can be used to close the Parsec application, or log out.

 

Portable app

If you need to install Parsec on a Windows machine and you don't have administrator privileges, you can get a portable version from the downloads page. The portable version will give you a zip containing the 32-bit version of Parsec that you can extract anywhere and run. It works great if you just need to join a computer!

download_portable.png

If you need to connect to multiple desktops from a single Windows computer, you can leverage the portable app in tandem with the local app to connect to multiple hosts simultaneously.

 

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.

advanced_config.png

Alternatively, you can find config.txt at the following path (these can be pasted in your file explorer address bar):

  • Per User installation: %appdata%\Parsec\config.txt
  • Shared installation: %programdata%\parsec\config.txt

You can see a list of the available configuration options here.

 

Command line installation and configuration

Using the Parsec installer with specific command line flags will allow you to automatically configure the Parsec app during install. You must run the installer as an administrator. On completion of the command, an authentication file will appear in C:\ProgramData\Parsec\user.bin, and an install log will appear in C:\Program Files\Parsec\log.txt.

General Command Line Flags

/silent - The installer does not display any UI and completes without user interaction. Parsec will also run silently after installation if /norun is not present.

/norun - Do not run Parsec after installation.

/nocleanuser - Do not clean the user's asset directory (App Data or Program Data) on installation.

/shared - Specify a shared installation that uses Program Data as the asset directory and allows access from the Windows login screen.

/vdd - Option to install the Parsec Virtual Display Driver. This will silently install the Virtual Display Driver with the Parsec application.

Provision Team Computers - Required Flags

/team_id=[string] - Team ID. Implies /silent if both this and team_computer_key are set.

/team_computer_key=[string] - Team Computer Key. Implies /silent if both this and team_id are set.

Team Computers - Optional Flags

/api_host=[string] - Specify Parsec backend host for a Teams Computer request.

/guest_access=[0|1] - Allow users with guest access tokens to connect to this computer 1 or 0 (defaults to 0).

/user_id=[number] - Team member's Parsec User ID (defaults to none).

/team_group_id=[number] - Team member's Team Group ID (defaults to none).

/team_app_rule_id=[string] - ID of the App Rule that should be applied to this computer.

/user_email=[string] - Team member's email address (defaults to none).

Examples for provisioning a team computer

All of these examples will provision a team computer, but with different settings:

  • Not assigned to any user or group: To silently install Parsec as a shared installation with a specific Team ID and Team Computer Key, the command below is used. This will not automatically assign it to any user, but you can do that separately later in the Teams panel. Replace the example team and computer key with the ones for your team, also given in the Teams panel
    ./parsec-windows.exe /shared /team_id=1a2b3c /team_computer_key=4d5e6f
  • Assigned to a user: To also assign the computer to a specific user while provisioning, add user_id or user_email. The user ID is the number in their username (e.g. for Username#123456, the ID is 123456). If an email is given and it does not match an existing team member, the computer will be automatically assigned to them once a matching email joins the team.
    ./parsec-windows.exe /user_id=123456 /shared /team_id=1a2b3c /team_computer_key=4d5e6f
    ./parsec-windows.exe /user_email=example@email.com /shared /team_id=1a2b3c /team_computer_key=4d5e6f
  • Assigned to a group: To assign the computer to a group, team_group_id is added, with the group ID from the Teams panel's Group Management section
    ./parsec-windows.exe /team_group_id=1234 /shared /team_id=1a2b3c /team_computer_key=4d5e6f
  • With guest access enabled: To enable Guest Access while provisioning, guest_access=1 is added. In the example below a team group is also assigned at the same time
    ./parsec-windows.exe /guest_access=1 /team_group_id=1234 /shared /team_id=1a2b3c /team_computer_key=4d5e6f

How the Parsec user is displayed depending on what is assigned

If the machine is successfully created with no assigned user or group, or it is reserved to a future user with an email, or it is assigned to a group, you will see the computer's current hostname followed by a #0.

hostname.png

If the machine is assigned to an existing user, it will display that user's name and ID.

user.png

 

Registry configuration

You can apply configuration policies to the Parsec app via the Windows Registry. Configuration policies applied via the Registry will override any user configuration done in the Parsec 'Settings' tab, and the configuration file (config.txt). Create a String Value named "Configuration" in the HKEY_LOCAL_MACHINE\SOFTWARE\Parsec Registry Key. You may need to create that file if you haven't done so in the past.

The value data will be based on the configuration options you select, the configuration values should be colon(:) delimited. The example below sets the connection to use a maximum of 15Mbps and disables 'Arcade' and 'Friends' features. Note that setting this does not disable the Arcade or Friends list functionality at a tenant level, but rather disables those features on the computer the policy was configured on.

registry_editor_configuration.png

You can also add these Windows Registry settings by creating a .reg file, with the contents like this.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Parsec]

"Configuration"="encoder_bitrate=15:app_arcade=0:app_friends=0"

In order for the configuration policy to apply with either method, the Parsec app must be restarted. You can validate the policy by viewing the settings section of the Parsec app.

To make your life easier, here are a few settings you may be interested in. For more, check our list of all advanced configuration settings.

encoder_bitrate=15 - Set the connection bandwidth limit to 15Mbps.

app_host=0 - Disable hosting on a computer.

server_max_clients=1 - Set the maximum concurrent connections on this computer to 1.

host_name="This_is_the_computer_name" - Set the Parsec computer name.

network_server_start_port=8000 - Set the first UDP port the Parsec app will try to use when a connection to this computer is attempted.

 

System service

The Parsec service lets Parsec restart itself with administrator privileges in order to pass inputs and capture anything with elevated permissions, such as the task manager, Windows' lock screen, User Access Control (UAC) and any programs running as admin.

Without it, in some cases, the people connected might not be able to control anything, some applications might not show up in 'Arcade' and 'Approved apps', and Parsec might fail to capture the display and disconnect people with error 14003.

Checking if Parsec service is configured correctly

On the host, press Ctrl+Shift+Esc to open task manager, and find both parsecd.exe and pservice.exe in the 'Details' tab.

task_manager.png

Both should be there, running with the username SYSTEM. If that's not the case for you, do the steps below to fix it.

Set Parsec service to run automatically

  • Press Windows key + R, type services.msc and press 'Enter' key
  • Find Parsec, and double-click it (can't find it? If you're using portable Parsec, run it as admin instead. If not, reinstall Parsec)
  • Set Startup type to 'Automatic'
  • Click the Start button. If the button is grayed out, you should instead click 'Stop' then 'Start'
  • Click 'OK' to close

parsec_service_properties.png

  • Right-click Parsec in the tray bar and click 'Restart'

restart_parsec.png

Set Parsec service to run as System account

  • Follow steps 1 and 2 above
  • Click 'Log On' tab
  • Select 'Local System account' radio button

local_system_radio_button.png

  • Click 'OK'
  • Right click the 'Parsec' service
  • Click 'Restart'
  • Right-click Parsec in the tray bar and click 'Restart'

restart_parsec.png

 

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.

 

Virtual displays

If your organization is running headless computers, virtual machines, or require physical displays to be inactive during a Parsec session for increased privacy we recommend leveraging the Parsec Virtual Display Driver. This driver lets you add up to 3 additional virtual displays to the host while connecting to a machine you own through Parsec. Additionally, the physical display(s) can be disabled during the session by using the Privacy Mode setting, increasing session security. See our Virtual Displays technical reference for additional information.