Visualización virtual de parsec independiente
Crear pantalla virtual hasta 4K@240Hz
Este proyecto proporciona una solución independiente para crear pantallas virtuales en un host de Windows utilizando el controlador de pantalla virtual Parsec (VDD), independiente de la aplicación ParSEC .
El PARSEC VDD permite pantallas virtuales en los sistemas Windows 10+, una característica disponible para los equipos de Parsec y los clientes de Warp. Con VDD, los usuarios pueden agregar hasta tres pantallas virtuales a una máquina host a la que se conectan, ideales para configuraciones donde los monitores físicos pueden no estar disponibles o cuando las pantallas adicionales son beneficiosas.
Construido por Parsec, el VDD aprovecha la API IDDCX (controlador de pantalla indirecta) para generar pantallas virtuales con soporte para altas resoluciones y tasas de actualización, incluidas hasta 4K y 240 Hz. Esta capacidad lo convierte en una herramienta versátil para juegos, transmisión o trabajo remoto, lo que permite a los usuarios simular múltiples pantallas para una experiencia visual mejorada y flexible.
Parsecvdisplay es un administrador de visualización virtual integral para Parsec VDD, construido con C# y WPF. La aplicación proporciona una interfaz intuitiva para administrar pantallas virtuales, mostrando el número de pantallas activas y permitiendo a los usuarios agregar o eliminar pantallas virtuales específicas. También admite características como cambiar la resolución de la pantalla, capturar capturas de pantalla y más, lo que lo convierte en una herramienta versátil para la gestión de visualización flexible.
Echa un vistazo a los lanzamientos para descargarlo.
Parsec VDD está diseñado para funcionar con la sesión de conexión del cliente Parsec. Cuando el usuario se conecta al host, la aplicación comenzará a controlar el controlador, envía códigos de control IO y obtiene el resultado. Al agregar una pantalla virtual, obtendrá su índice que se use para desconectar, el número máximo de pantallas podría agregarse hasta 16 por adaptador. Debe hacer ping al conductor periódicamente para mantener vidas pantallas adicionales, de lo contrario, todos se desencadenarán después de un segundo. No hay una forma directa de manipular pantallas agregadas, debe llamar a la API de pantalla WIN32 para cambiar su modo de visualización (consulte la fuente de PARSECVDISPLAY).
diagrama de flujo LR
A (aplicación)
B (VDD)
A <---> | ioctl | B
A ..-> | ping | B
B --- x (display1)
B --- y (display2)
B --- z (display3)
Winapi -> | manipular | incógnita
CargandoLa API de Core está diseñada como encabezado C/C ++ único que se puede agregar a cualquier proyecto, Core/Parsec-VDD.H
También hay un programa de demostración simple, Core/VDD-Demo.cc
Debe instalar el controlador para que funcionen.
Versión | OS mínimo | Iddcx | Notas |
---|---|---|---|
parsec-vdd-0.38 | Windows 10 1607 | 1.0 | Obsoleto, puede bloquearse al azar. |
parsec-vdd-0.41 | Windows 10 19h2 | 1.4 | Estable. |
parsec-vdd-0.45 | Windows 10 21h2 | 1.5 | Mejor color de transmisión, pero puede que no funcione en algunas ventanas. |
Todos ellos también trabajan en Windows Server 2019 o superior.
Puede descomponer (usando 7Z) la configuración del controlador anterior para obtener los archivos del controlador y la CLI nefconw
.
vdd-0.45/ |__ nefconw.exe |__ driver/ |__ mm.cat |__ mm.dll |__ mm.inf
Método de línea de comandos para instalar el controlador usando nefconw
(Admin Requerido):
start /wait .nefconw.exe --remove-device-node --hardware-id RootParsecVDA --class-guid "4D36E968-E325-11CE-BFC1-08002BE10318" start /wait .nefconw.exe --create-device-node --class-name Display --class-guid "4D36E968-E325-11CE-BFC1-08002BE10318" --hardware-id RootParsecVDA start /wait .nefconw.exe --install-driver --inf-path ".drivermm.inf"
Además, puede ejecutar la configuración del controlador en modo silencioso para instalarlo rápidamente.
.parsec-vdd-0.45.0.0.exe /S
Esta lista muestra las limitaciones conocidas de Parsec VDD.
Parsec VDD no admite HDR en sus pantallas (ver el EDID a continuación). Teóricamente, puede desbloquear el soporte editando el EDID, luego agregando metadatos HDR y configurando la profundidad de 10 bits+. Desafortunadamente, no puede flashear su firmware como un dispositivo físico o modificar el valor de registro.
Todos los IDD tienen su propio bloque EDID fijo dentro del binario del controlador para inicializar las especificaciones del monitor. Entonces, la solución es modificar este bloque en el DLL del controlador (MM.DLL), luego reinstalarlo con nefconw
CLI (ver arriba).
Antes de conectarse, la pantalla virtual se ve en el registro HKEY_LOCAL_MACHINESOFTWAREParsecvdd
para resoluciones preestablecidas adicionales. Actualmente esto admite un máximo de 5 valores.
SOFTWAREParsecvdd key: 0 -> 5 | (width, height, hz)
Para desbloquear este límite, debe parchear el controlador DLL de la misma manera que anteriormente, pero 5 es suficiente para uso personal.
Esta es una lista de problemas conocidos cuando se trabaja con Parsec VDD independiente.
Si ha habilitado el "modo de privacidad" en la configuración de host de Parsec, desactíelo y borre las configaciones de visualización conectada en la siguiente ruta del registro.
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlGraphicsDriversConnectivity
Esta opción hace que su pantalla principal se apague cuando se agregan pantallas virtuales, lo que dificulta encender la pantalla e interrumpir la sesión de escritorio remota.
La siguiente tabla muestra una comparación con otros proyectos populares de controladores indirectos.
Proyecto | Versión iddcx | Firmado | Juego de azar | HDR | H-Cursor | Ajustable | Controlador |
---|---|---|---|---|---|---|---|
usbmmidd_v2 | ✅ | ||||||
Idsmpledriver | 1.2 | ||||||
Rustdeskidddriver | 1.2 | ||||||
Virtual-Display-Driver (HDR) | 1.10 | ✅ | |||||
virtual-muestra-RS | 1.5 | #81 | ✅ | ✅ | |||
parsec-vdd | 1.5 | ✅ | ✅ | ✅ | ? | ✅ |
✅ - Soporte completo ,? - Soporte limitado
Firmado significa que los archivos del controlador tienen una firma digital válida. H-Cursor significa soporte de cursor de hardware, sin él obtendrá doble cursor en algunas aplicaciones de escritorio remotas. Tweakable es la capacidad de personalizar los modos de visualización. Visite versiones MSDN IDDCX para verificar la versión mínima de Windows compatible.
Todos los siguientes modos de visualización están configurados por predeterminado del controlador.
Resolución | Nombre común | Relación de aspecto | Tasas de actualización (Hz) |
---|---|---|---|
4096 x 2160 | DCI 4K | 1.90: 1 (256: 135) | 24/30/60/144/240 |
3840 x 2160 | 4K UHD | 16: 9 | 24/30/60/144/240 |
3840 x 1600 | Ultrawide | 24:10 | 24/30/60/144/240 |
3840 x 1080 | Ultrawide | 32: 9 (2x 16: 9 FHD) | 24/30/60/144/240 |
3440 x 1440 | 21.5: 9 (43:18) | 24/30/60/144/240 | |
3240 x 2160 | 3: 2 | 60 | |
3200 x 1800 | 3k | 16: 9 | 24/30/60/144/240 |
3000 x 2000 | 3: 2 | 60 | |
2880 x 1800 | 2.8k | 16:10 | 60 |
2880 x 1620 | 2.8k | 16: 9 | 24/30/60/144/240 |
2736 x 1824 | 60 | ||
2560 x 1600 | 2k | 16:10 | 24/30/60/144/240 |
2560 x 1440 | 2k | 16: 9 | 24/30/60/144/240 |
2560 x 1080 | Ultrawide | 21: 9 | 24/30/60/144/240 |
2496 x 1664 | 60 | ||
2256 x 1504 | 60 | ||
2048 x 1152 | 60/144/240 | ||
1920 x 1200 | FHD | 16:10 | 60/144/240 |
1920 x 1080 | FHD | 16: 9 | 24/30/60/144/240 |
1800 x 1200 | FHD | 3: 2 | 60 |
1680 x 1050 | HD+ | 16:10 | 60/144/240 |
1600 x 1200 | HD+ | 4: 3 | 24/30/60/144/240 |
1600 x 900 | HD+ | 16: 9 | 60/144/240 |
1440 x 900 | HD | 16:10 | 60/144/240 |
1366 x 768 | 60/144/240 | ||
1280 x 800 | HD | 16:10 | 60/144/240 |
1280 x 720 | HD | 16: 9 | 60/144/240 |
Notas:
GPUS bajos, por ejemplo, GTX 1650 puede ser molesto cuando se transmite con DCI 4K.
Todas las resoluciones son compatibles con tasas de actualización de 60 Hz.
Nombre: Parsec Virtual Display Adapter
ID de hardware: RootParsecVDA
Adaptador GUID: {00b41627-04c4-429e-a26e-0265cf50c8fa}
Clase GUID: {4d36e968-e325-11ce-bfc1-08002be10318}
ID: PSCCDD0
Nombre: ParsecVDA
Edid:
00 FF FF FF FF FF FF 00 42 63 D0 CD ED 5F 84 00 11 1E 01 04 A5 35 1E 78 3B 57 E0 A5 54 4F 9D 26 12 50 54 27 CF 00 71 4F 81 80 81 40 81 C0 81 00 95 00 B3 00 01 01 86 6F 80 A0 70 38 40 40 30 20 35 00 E0 0E 11 00 00 1A 00 00 00 FD 00 30 A5 C1 C1 29 01 0A 20 20 20 20 20 20 00 00 00 FC 00 50 61 72 73 65 63 56 44 41 0A 20 20 20 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 C6 02 03 10 00 4B 90 05 04 03 02 01 11 12 13 14 1F 8A 4D 80 A0 70 38 2C 40 30 20 35 00 E0 0E 11 00 00 1A FE 5B 80 A0 70 38 35 40 30 20 35 00 E0 0E 11 00 00 1A FC 7E 80 88 70 38 12 40 18 20 35 00 E0 0E 11 00 00 1E A4 9C 80 A0 70 38 59 40 30 20 35 00 E0 0E 11 00 00 1A 02 3A 80 18 71 38 2D 40 58 2C 45 00 E0 0E 11 00 00 1E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 A6
Visite http://www.edidreader.com/ para verlo en línea o usar una herramienta avanzada AW Edid Editor