- NICE DCV Product Codes and Features
- Connect to a specific DCV session
- Adapting the DCV Web Client default resolution
- Disable NICE DCV Authentication on Windows
- Enabling the Grip Bar in Full-Screen Mode
- How to increase image quality forcing YUV444 or YUV420 lossless updates
- Force YUV444 colorspace for video content
- Force YUV colorspace for lossless updates
- Check supported display resolutions
- Windows DCV session with different users as owners
- Embed inside an iFrame
- Disable clipboard copy or paste for all users
- Disable screenshot
NICE DCV Product Codes and Features
Here you can find an overview of NICE DCV Product Codes and Features.
Any suggestions or questions reach out to us! Location of NICE DCV Logfiles
Connect to a specific DCV session
When running multiple DCV sessions on one server you can specify in the DCV client to which session you would like to connect to by adding “#session_name” – e.g. #session3 in the example below:
This also is possible in the DCV web client by specifying the session name in the URL like e.g. https://dcv.ni-sp.com#session3.
Adapting the DCV Web Client default resolution
The default maximum remote desktop resolution for the DCV WebClient is set to (1920, 1080). This can be adapted by setting the parameter “web-client-max-head-resolution
“.
On a Windows DCV server you can set the registry key HKEY_USERS\S-1-5-18\Software\GSettings\com\nicesoftware\dcv\display\web-client-max-head-resolution
to the desired maximum resolution.
Disable NICE DCV Authentication on Windows
To disable the NICE DCV authentication on Windows you can follow these steps:
- Open the Windows Registry Editor.
- Navigate to the
HKEY_USERS/S-1-5-18/Software/GSettings/com/nicesoftware/dcv/security/
and select theauthentication
parameter. If there is no authentication parameter in the registry key, create one
a. In the left-hand pane, open the context (right-click) menu for the authentication key and choose New, string value.
b. For Name, type authentication and press Enter. - Open the authentication parameter. For Value data, enter either system or none.
- Choose OK and close the Windows Registry Editor.
- Restart the DCV Server
Enabling the Grip Bar in Full-Screen Mode
When you have enabled full-screen mode in the NICE DCV client you can move to the upper screen area to trigger showing the menu bar. In case this automatic behaviour does not fit your use case you can click the pin to the right of the dotted bar (“…”) and the grip bar is stuck. You can then also move it to the place where it works best for you. Screenshots are below with pin open in the first screenshot:
Locked grip bar after clicking the pin and moved to another location:
How to increase image quality forcing YUV444 or YUV420 lossless updates
In some cases high fidelity of images is needed like in movie editing where chroma artifacts introduced by the H264 stream can be an issue. In this case the colorspace can be changed for better image quality while increasing the network usage.
Force YUV444 colorspace for video content
Tradeoff: improve the overall quality, but increase the network usage.
To enable this on the Windows client there are two options:
- Launch the client from the command line and set the option –enable-yuv444-decoding=true, for example with the command:C:\WINDOWS\system32>”C:\Program Files (x86)\NICE\DCV\Client\bin\dcvviewer.exe” –enable-yuv444-decoding=true
- Set the EnableYUV444Decoding=true setting in the connection file [options] section. For example, add this configuration to the connection file:[options] EnableYUV444Decoding=true
It is not possible to set this option on the web client.
Force YUV colorspace for lossless updates
Tradeoff: reduce flickering, but lossless updates will not have the exact RGB values of the server source.
To enable this on the Windows client:
- Launch the client from the command line and set the option –enable-lossless-yuv-decoding=true, for example with the command:C:\WINDOWS\system32>”C:\Program Files (x86)\NICE\DCV\Client\bin\dcvviewer.exe” –enable-lossless-yuv-decoding=true
- Set the EnableLosslessYUVDecoding=true setting in the connection file [options] section. For example, add this configuration to the connection file:[options] EnableLosslessYUVDecoding=true
It is not possible to set this option on the web client.
Check supported display resolutions
On Windows, you can use the following command from a PowerShell terminal to get the list of supported resolutions:
PS C:\> foreach ($video in Get-WmiObject -Class CIM_VideoControllerResolution) { Write-Host $video }
....
\\EC2AMAZ-PDQBG1E\root\cimv2:CIM_VideoControllerResolution.SettingID="1920 x 1080 x 4294967296 colors @ 59 Hertz“
\\EC2AMAZ-PDQBG1E\root\cimv2:CIM_VideoControllerResolution.SettingID="1920 x 1200 x 4294967296 colors @ 59 Hertz“
\\EC2AMAZ-PDQBG1E\root\cimv2:CIM_VideoControllerResolution.SettingID="1920 x 1440 x 4294967296 colors @ 59 Hertz“
\\EC2AMAZ-PDQBG1E\root\cimv2:CIM_VideoControllerResolution.SettingID="2048 x 1536 x 4294967296 colors @ 59 Hertz“
\\EC2AMAZ-PDQBG1E\root\cimv2:CIM_VideoControllerResolution.SettingID="2560 x 1440 x 4294967296 colors @ 59 Hertz“
\\EC2AMAZ-PDQBG1E\root\cimv2:CIM_VideoControllerResolution.SettingID="2560 x 1600 x 4294967296 colors @ 59 Hertz“
\\EC2AMAZ-PDQBG1E\root\cimv2:CIM_VideoControllerResolution.SettingID="3840 x 2160 x 4294967296 colors @ 60 Hertz“
\\EC2AMAZ-PDQBG1E\root\cimv2:CIM_VideoControllerResolution.SettingID="4096 x 2160 x 4294967296 colors @ 60 Hertz“
Windows DCV session with different users as owners
DCV on Windows by default starts one session, this session has an “owner”.
The default owner proposed at installation time is Administrator, but you can change it, see:
By default, only the owner can connect to that session. If you want multiple users to be able to connect to the session, you have to change the DCV session permissions:
https://docs.aws.amazon.com/en_us/dcv/latest/adminguide/security-authorization.html
If for instance, you set a permission file that says that user1, user2 and user3 are authorized to connect, any of those users can connect to the session.
If instead you want that user1, user2, user3 can all start a session, but once the session is started only the same user that started the session can connect, then you need to use a session broker like EnginFrame/Neutro to dynamically manage sessions.
Embed inside an iFrame
DCV by default does not allow it to be embedded inside an iFrame to avoid Clickjacking attacks.
However there are use cases where we want to intentionally remove this limitation to allow us to use DCV inside another Web Application. This is controlled by two HTTP headers:
- https://www.owasp.org/index.php/Clickjacking_Defense_Cheat_Sheet#Defending_with_X-Frame-Options_Response_Headers
- https://www.owasp.org/index.php/Content_Security_Policy_Cheat_Sheet#Preventing_Clickjacking
To use DCV inside an iFrame you must change two settings:
- web-x-frame-options
- web-extra-http-headers
The first one sets the X-Frame-Options value, the allowed values are: “DENY”, “SAMEORIGIN” and “ALLOW-FROM <uri>”
The default is DENY. Chrome and Safari do not support the “ALLOW-FROM <uri>” value (https://bugs.chromium.org/p/chromium/issues/detail?id=129139) so in that case you must also set the second option to set the Content-Security-Policy header, for this you use the setting web-extra-http-headers, which allows to specify an array of extra headers to be added to the HTTP/HTTPS headers. The array should be filled with pairs like: [(‘header_name’,’header_content’)]. Multiple headers can be added. For instance, if the website answers to the address https://myportal.com and you want to stream DCV inside an iframe, you should use the following configuration:
Windows: HKEY_USERS/S-1-5-18/Software/GSettings/com/nicesoftware/dcv/connectivity
web-x-frame-options ALLOW-FROM https://myportal.com
web-extra-http-headers [("Watchcloud", "Production Engine"), ("Content-Security-Policy", "frame-ancestors https://*.myportal.com https://myportal.com")]
Disable clipboard copy or paste for all users
To deny the clipboard usage for all users of all sessions you have to add these rows to the default permissions file (C:\Program Files\NICE\DCV\Server\conf\default.perm
):
[permissions]
%any% deny clipboard-copy clipboard-paste
Disable screenshot
Regarding the screenshot feature we have “disable-screenshot” setting on the client side to disable it. For now we don’t have any feature server-side.
On the client side there are 2 ways to disable the screenshot feature:
- Launch the client with the –disable-screenshot command line parameter
- Create a dcv connection file and add the following
[options]
disablescreenshot=true
You have to add the --disable-screenshot
parameter to dcvviewer.exe command line.