The Virtual Display Driver supports flexible resolution and refresh rate configuration through two complementary systems: manual resolution definitions and global refresh rates.
Manual Resolution Configuration
Define specific resolutions with individual refresh rates in the <resolutions> section:
< resolutions >
< resolution >
< width > 1920 </ width >
< height > 1080 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
< resolution >
< width > 2560 </ width >
< height > 1440 </ height >
< refresh_rate > 144 </ refresh_rate >
</ resolution >
< resolution >
< width > 3840 </ width >
< height > 2160 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
</ resolutions >
Resolution Parameters
Horizontal resolution in pixels. Valid range: 640 - 7680 pixelsCommon values:
1920 (Full HD)
2560 (QHD)
3840 (4K UHD)
7680 (8K UHD)
Vertical resolution in pixels. Valid range: 480 - 4320 pixelsCommon values:
1080 (Full HD)
1440 (QHD)
2160 (4K UHD)
4320 (8K UHD)
Refresh rate in Hz for this specific resolution. Common values: 24, 30, 50, 60, 90, 120, 144, 165, 240
Global Refresh Rates
Global refresh rates are applied to all defined resolutions, creating additional mode combinations:
< global >
< g_refresh_rate > 60 </ g_refresh_rate >
< g_refresh_rate > 90 </ g_refresh_rate >
< g_refresh_rate > 120 </ g_refresh_rate >
< g_refresh_rate > 144 </ g_refresh_rate >
< g_refresh_rate > 165 </ g_refresh_rate >
< g_refresh_rate > 240 </ g_refresh_rate >
</ global >
Global refresh rate to apply across all resolutions. Can be specified multiple times. Valid range: 24 - 240 Hz
How Global Refresh Rates Work
Global refresh rates create additional display modes. For example:
Configuration:
< global >
< g_refresh_rate > 60 </ g_refresh_rate >
< g_refresh_rate > 120 </ g_refresh_rate >
</ global >
< resolutions >
< resolution >
< width > 1920 </ width >
< height > 1080 </ height >
< refresh_rate > 144 </ refresh_rate >
</ resolution >
</ resolutions >
Results in these available modes:
1920x1080 @ 60 Hz (from global)
1920x1080 @ 120 Hz (from global)
1920x1080 @ 144 Hz (from manual resolution)
Global refresh rates are combined with manual resolutions, giving you flexibility without repeating resolution definitions.
Standard Resolution Presets
Gaming Configurations
1080p Gaming
1440p Gaming
4K Gaming
< global >
< g_refresh_rate > 60 </ g_refresh_rate >
< g_refresh_rate > 144 </ g_refresh_rate >
< g_refresh_rate > 240 </ g_refresh_rate >
</ global >
< resolutions >
< resolution >
< width > 1920 </ width >
< height > 1080 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
</ resolutions >
Provides 1080p at 60Hz, 144Hz, and 240Hz for competitive gaming. < global >
< g_refresh_rate > 60 </ g_refresh_rate >
< g_refresh_rate > 120 </ g_refresh_rate >
< g_refresh_rate > 165 </ g_refresh_rate >
</ global >
< resolutions >
< resolution >
< width > 2560 </ width >
< height > 1440 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
</ resolutions >
Balanced configuration for high-refresh 1440p gaming. < global >
< g_refresh_rate > 60 </ g_refresh_rate >
< g_refresh_rate > 120 </ g_refresh_rate >
</ global >
< resolutions >
< resolution >
< width > 3840 </ width >
< height > 2160 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
</ resolutions >
4K resolution with 60Hz and 120Hz options.
Content Creation Configurations
Video Production
Broadcasting
< resolutions >
< resolution >
< width > 1920 </ width >
< height > 1080 </ height >
< refresh_rate > 24 </ refresh_rate >
</ resolution >
< resolution >
< width > 1920 </ width >
< height > 1080 </ height >
< refresh_rate > 30 </ refresh_rate >
</ resolution >
< resolution >
< width > 3840 </ width >
< height > 2160 </ height >
< refresh_rate > 24 </ refresh_rate >
</ resolution >
< resolution >
< width > 3840 </ width >
< height > 2160 </ height >
< refresh_rate > 30 </ refresh_rate >
</ resolution >
</ resolutions >
Standard framerates for video production (24fps, 30fps). < resolutions >
< resolution >
< width > 1920 </ width >
< height > 1080 </ height >
< refresh_rate > 50 </ refresh_rate >
</ resolution >
< resolution >
< width > 1920 </ width >
< height > 1080 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
< resolution >
< width > 3840 </ width >
< height > 2160 </ height >
< refresh_rate > 50 </ refresh_rate >
</ resolution >
< resolution >
< width > 3840 </ width >
< height > 2160 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
</ resolutions >
PAL (50Hz) and NTSC (60Hz) broadcast standards.
Multi-Resolution Setup
Provide multiple resolutions for maximum flexibility:
< global >
< g_refresh_rate > 60 </ g_refresh_rate >
< g_refresh_rate > 120 </ g_refresh_rate >
</ global >
< resolutions >
<!-- Full HD -->
< resolution >
< width > 1920 </ width >
< height > 1080 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
<!-- QHD -->
< resolution >
< width > 2560 </ width >
< height > 1440 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
<!-- 4K UHD -->
< resolution >
< width > 3840 </ width >
< height > 2160 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
<!-- Ultrawide -->
< resolution >
< width > 3440 </ width >
< height > 1440 </ height >
< refresh_rate > 60 </ refresh_rate >
</ resolution >
</ resolutions >
Fractional Refresh Rates
For video production, fractional refresh rates are important:
<!-- These are defined in monitor_profile.xml -->
< MonitorMode >
< Width > 1920 </ Width >
< Height > 1080 </ Height >
< RefreshRate > 59.940 </ RefreshRate >
< RefreshRateMultiplier > 999 </ RefreshRateMultiplier >
< NominalRefreshRate > 60 </ NominalRefreshRate >
</ MonitorMode >
Fractional refresh rates (23.976, 29.970, 59.940) are specified in monitor_profile.xml when using the EDID integration system. See EDID Integration .
Auto Resolution System
The driver includes an automatic resolution system that can generate modes from EDID data:
< auto_resolutions >
< enabled > false </ enabled >
< source_priority > manual </ source_priority >
< edid_mode_filtering >
< min_refresh_rate > 24 </ min_refresh_rate >
< max_refresh_rate > 240 </ max_refresh_rate >
< exclude_fractional_rates > false </ exclude_fractional_rates >
< min_resolution_width > 640 </ min_resolution_width >
< min_resolution_height > 480 </ min_resolution_height >
< max_resolution_width > 7680 </ max_resolution_width >
< max_resolution_height > 4320 </ max_resolution_height >
</ edid_mode_filtering >
< preferred_mode >
< use_edid_preferred > false </ use_edid_preferred >
< fallback_width > 1920 </ fallback_width >
< fallback_height > 1080 </ fallback_height >
< fallback_refresh > 60 </ fallback_refresh >
</ preferred_mode >
</ auto_resolutions >
Auto Resolution Parameters
Enable automatic resolution generation from EDID data.
auto_resolutions.source_priority
Priority for resolution sources. Valid values:
manual - Use only manually defined resolutions
edid - Generate resolutions from EDID data
both - Combine manual and EDID resolutions
edid_mode_filtering.min_refresh_rate
Minimum refresh rate to include from EDID (Hz).
edid_mode_filtering.max_refresh_rate
Maximum refresh rate to include from EDID (Hz).
edid_mode_filtering.exclude_fractional_rates
Exclude fractional refresh rates (23.976, 29.970, 59.940) from EDID modes.
preferred_mode.use_edid_preferred
Use the preferred mode from EDID data instead of the fallback values.
The auto resolution system is disabled by default. Most users should define resolutions manually for predictable behavior.
Resolution Limits
The driver enforces these limits:
Parameter Minimum Maximum Width 640 px 7680 px (8K) Height 480 px 4320 px (8K) Refresh Rate 24 Hz 240 Hz Total Modes 1 System-dependent
While the driver supports up to 8K resolutions, actual limits depend on your GPU capabilities and available bandwidth.
Troubleshooting
Resolution not appearing in Windows
Possible causes:
Invalid resolution dimensions
Refresh rate out of range
XML syntax error
Solution: Check driver logs for validation errors and verify XML syntax.
High refresh rates not working
Possible causes:
GPU limitations
Display bandwidth constraints
Incorrect configuration
Solution: Reduce resolution or refresh rate. Check GPU capabilities.
Too many resolution options
Possible causes:
Multiple global refresh rates creating many combinations
Solution: Reduce number of global refresh rates or use fewer manual resolutions.
Best Practices
Start with common resolutions
Begin with 1920x1080 and 3840x2160 at 60Hz for broad compatibility.
Add global refresh rates sparingly
Each global refresh rate multiplies the number of available modes.
Test each configuration
Verify new resolutions work before adding more.
Match your use case
Gaming needs high refresh rates; video production needs specific framerates.
EDID Integration Advanced resolution configuration via EDID
HDR Configuration HDR settings for high-quality displays