You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

3772 lines
301 KiB
HTML

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<style>
body {
overflow-y:scroll;
line-height:150%;
}
a {
color:#555555;
}
a:hover {
color:#000000;
}
</style>
<html>
<head>
<title>Glenwing's Guide to Display Cables / Adapters (v2)</title>
<script src="../jquery-3.2.0.min.js"></script>
</head>
<body>
<div style="font-family:'Arial'; font-size:14px;">
<div style="display:none;" hidden>Glenwing's Guide to Display Cables / Adapters (v2)<br /></div>
<div style="display:none;" hidden>
<br />...<br />...<br />...<br />...<br />...<br />...<br />...<br />...<br />
Last Revision: 2.2.0 (2017-03-20)<br /><br />
(If you can see this message without needing to examine the page source, then something somewhere has gone terribly wrong)<br /><br />
BEHOLD,<br />
the terrible programming of the one known as GLENWING, first of his name, bane of the spammers,<br />
champion of thinking, denizen of the Internet (with a capital I), and a Senior Moderator of the<br />
LINUS TECH TIPS forum (his lair lies herein: https://linustechtips.com/main/profile/2466-glenwing/<br /><br />
Venture with caution, and remember monsieur: your hand at the level of your eyes! If you can see this<br />
message, it is not yet too late for you to heed this warning! Madness descends on all those who attempt<br />
to read his writings and decipher his codes.<br /><br />
Seek not logic, nor efficiency, nor sensible style, nor comments or documentation of any kind (mostly<br />
because the forum strips all comments when posting), lest you end up ALT-F4-ing in a fit of rage and<br />
losing the contents of your other tabs, causing an infinite loop of frustration:<br />
(while (Frustration > 0) { Frustration++; });<br /><br />
The lines ahead contain only darkness and confusion. It is not for the timid, nor for anyone hoping to<br />
easily understand what's even going on in this thing.<br /><br />
Continue reading at your own peril!<br /><br />
--- YE BE WARN'D ---<br /><br />
(verbal warning only; no warning points assigned)
</div>
<!-------------------------------- HTML BACKEND -------------------------------->
<!-------------------------------- TABLES -------------------------------->
<div hidden>
<!-- DVI TABLE -->
<div id="DVI_TABLE">
<div style="overflow-x:auto;">
<table style="color:#000000; border: 1px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; text-align:center; font-weight:bold; white-space:nowrap;">
DVI Type
</td>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; font-weight:bold; white-space:nowrap;">
<div>Single-Link</div>
<div>DVI-D / DVI-I</div>
</td>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; font-weight:bold; white-space:nowrap;">
<div>Dual-Link</div>
<div>DVI-D / DVI-I</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; text-align:center; white-space:nowrap;">
<div><strong>Max. Bandwidth</strong></div>
<div>(Max. Data Rate)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; white-space:nowrap;">
<div><strong>4.95 Gbit/s</strong></div>
<div>(3.96 Gbit/s)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; white-space:nowrap;">
<div><strong>9.90 Gbit/s</strong></div>
<div>(7.92 Gbit/s)</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>2K</strong></div>
<div align="left">1920 × 1080 (16:9)</div>
<div align="left">1920 × 1200 (16:10)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>60 Hz</div>
<div>60 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>144 Hz</div>
<div>120 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>2.5K</strong></div>
<div align="left">2560 × 1080 (≈21:9)</div>
<div align="left">2560 × 1440 (16:9)</div>
<div align="left">2560 × 1600 (16:10)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>50 Hz</div>
<div>30 Hz</div>
<div>30 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>100 Hz</div>
<div>75 Hz</div>
<div>60 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>3.5K</strong></div>
<div align="left">3440 × 1440 (≈21:9)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>30 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>60 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>4K</strong></div>
<div align="left">3840 × 1600 (≈21:9)</div>
<div align="left">3840 × 2160 (16:9)</div>
<div align="left">4096 × 2160 (≈19:10)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>24 Hz</div>
<div>-</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>50 Hz</div>
<div>30 Hz</div>
<div>30 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>5K</strong></div>
<div align="left">5120 × 2160 (≈21:9)</div>
<div align="left">5120 × 2880 (16:9)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>-</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>24 Hz</div>
<div>-</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>8K</strong></div>
<div align="left">7680 × 4320 (16:9)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>-</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; max-width:1px;" colspan="255">
<div align='left' style='font-size:12px'>
<i>Only the highest common / standard frequencies are listed (24&nbsp;/ 30&nbsp;/ 50&nbsp;/ 60&nbsp;/ 75&nbsp;/ 85&nbsp;/ 100&nbsp;/ 120&nbsp;/ 144&nbsp;/ 180&nbsp;/ 200&nbsp;/ 240&nbsp;Hz, or higher multiples of 60). This table is not meant to list the absolute limits down to the very last Hz.</i><br /><br />
<i>Uncompressed 24&nbsp;bit/px RGB color and CVT-R2 timing are assumed on this table. Color depth greater than 24&nbsp;bit/px, YC<sub>B</sub>C<sub>R</sub> color model, and chroma subsampling are not supported on DVI.</i>
</div>
</td>
</tr>
</table>
</div>
</div>
<!-- HDMI TABLE -->
<div id="HDMI_TABLE">
<div style="overflow-x:auto;">
<table style="color:#000000; border: 1px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; text-align:center; font-weight:bold;">HDMI Version</td>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; font-weight:bold;">1.01.2</td>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; font-weight:bold;">1.31.4</td>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; font-weight:bold;">2.0</td>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; font-weight:bold;">2.1</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; text-align:center; white-space:nowrap;">
<div><strong>Max. Bandwidth</strong></div>
<div>(Max. Data Rate)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; white-space:nowrap;">
<div><strong>4.95 Gbit/s</strong></div>
<div>(3.96 Gbit/s)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; white-space:nowrap;">
<div><strong>10.20 Gbit/s</strong></div>
<div>(8.16 Gbit/s)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; white-space:nowrap;">
<div><strong>18.00 Gbit/s</strong></div>
<div>(14.40 Gbit/s)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; white-space:nowrap;">
<div><strong>48.00 Gbit/s</strong></div>
<div>(42.67 Gbit/s)</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>2K</strong></div>
<div align="left">1920 × 1080 (16:9)</div>
<div align="left">1920 × 1200 (16:10)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>60 Hz</div>
<div>60 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>144 Hz</div>
<div>120 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>240 Hz</div>
<div>200 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>540 Hz</div>
<div>540 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>2.5K</strong></div>
<div align="left">2560 × 1080 (≈21:9)</div>
<div align="left">2560 × 1440 (16:9)</div>
<div align="left">2560 × 1600 (16:10)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>50 Hz</div>
<div>30 Hz</div>
<div>30 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>100 Hz</div>
<div>85 Hz</div>
<div>75 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>180 Hz</div>
<div>144 Hz</div>
<div>120 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>480 Hz</div>
<div>360 Hz</div>
<div>300 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>3.5K</strong></div>
<div align="left">3440 × 1440 (≈21:9)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>30 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>60 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>100 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>300 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>4K</strong></div>
<div align="left">3840 × 1600 (≈21:9)</div>
<div align="left">3840 × 2160 (16:9)</div>
<div align="left">4096 × 2160 (≈19:10)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>24 Hz</div>
<div>-</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>50 Hz</div>
<div>30 Hz</div>
<div>30 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>85 Hz</div>
<div>60 Hz</div>
<div>60 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>240 Hz</div>
<div>180 Hz</div>
<div>180 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>5K</strong></div>
<div align="left">5120 × 2160 (≈21:9)</div>
<div align="left">5120 × 2880 (16:9)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>-</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>24 Hz</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>50 Hz</div>
<div>30 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>144 Hz</div>
<div>100 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>8K</strong></div>
<div align="left">7680 × 4320 (16:9)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>50 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; max-width:1px;" colspan="255">
<div align='left' style='font-size:12px'>
<i>Only the highest common / standard frequencies are listed (24&nbsp;/ 30&nbsp;/ 50&nbsp;/ 60&nbsp;/ 75&nbsp;/ 85&nbsp;/ 100&nbsp;/ 120&nbsp;/ 144&nbsp;/ 180&nbsp;/ 200&nbsp;/ 240&nbsp;Hz, or higher multiples of 60). This table is not meant to list the absolute limits down to the very last Hz.</i><br /><br />
<i>Uncompressed 24 bit/px RGB color and CVT-R2 timing are assumed on this table. Maximum frequency may be lower than what is listed when using 30 bit/px color depth or greater. Maximum frequency may be higher than what is listed when using compression (such as DSC) or YC<sub>B</sub>C<sub>R</sub> color with chroma subsampling.</i><br /><br />
<i>HDMI 2.1 uses DSC 1.2 compression to achieve higher display modes such as 7680&nbsp;×&nbsp;4320 at 60&nbsp;Hz with RGB or YC<sub>B</sub>C<sub>R</sub> 4:4:4 color.</i>
</div>
</td>
</tr>
</table>
</div>
</div>
<!-- DP TABLE -->
<div id="DP_TABLE">
<div style="overflow-x:auto;">
<table style="color:#000000; border: 1px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; text-align:center; font-weight:bold;"><strong>DisplayPort Version</strong></td>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; font-weight:bold;">1.01.1</td>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; font-weight:bold;">1.2</td>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; font-weight:bold;">1.31.4</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; text-align:center; white-space:nowrap;">
<div align="center"><strong>Max. Bandwidth</strong></div>
<div align="center">(Max. Data Rate)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; white-space:nowrap;">
<div><strong>10.80 Gbit/s</strong></div>
<div>(8.64 Gbit/s)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; white-space:nowrap;">
<div><strong>21.60 Gbit/s</strong></div>
<div>(17.28 Gbit/s)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center; white-space:nowrap;">
<div><strong>32.40 Gbit/s</strong></div>
<div>(25.92 Gbit/s)</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>2K</strong></div>
<div align="left">1920 × 1080 (16:9)</div>
<div align="left">1920 × 1200 (16:10)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>144 Hz</div>
<div>120 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>240 Hz</div>
<div>240 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>360 Hz</div>
<div>360 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>2.5K</strong></div>
<div align="left">2560 × 1080 (≈21:9)</div>
<div align="left">2560 × 1440 (16:9)</div>
<div align="left">2560 × 1600 (16:10)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>100 Hz</div>
<div>85 Hz</div>
<div>75 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>200 Hz</div>
<div>144 Hz</div>
<div>144 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>300 Hz</div>
<div>240 Hz</div>
<div>200 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>3.5K</strong></div>
<div align="left">3440 × 1440 (≈21:9)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>60 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>120 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>180 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>4K</strong></div>
<div align="left">3840 × 1600 (≈21:9)</div>
<div align="left">3840 × 2160 (16:9)</div>
<div align="left">4096 × 2160 (≈19:10)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>50 Hz</div>
<div>30 Hz</div>
<div>30 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>100 Hz</div>
<div>75 Hz</div>
<div>75 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>144 Hz</div>
<div>120 Hz</div>
<div>100 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>5K</strong></div>
<div align="left">5120 × 2160 (≈21:9)</div>
<div align="left">5120 × 2880 (16:9)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>30 Hz</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>60 Hz</div>
<div>30 Hz</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>85 Hz</div>
<div>60 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; min-width:160px; max-width:160px; white-space:nowrap;">
<div align="center"><strong>8K</strong></div>
<div align="left">7680 × 4320 (16:9)</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>-</div>
</td>
<td style="background-color:#ffffff; border: 1px solid #000000; padding:8px; min-width:100px; max-width:120px; text-align:center;">
<div>&nbsp;</div>
<div>30 Hz</div>
</td>
</tr>
<tr>
<td style="background-color:#d9d9d9; border: 1px solid #000000; padding:8px; max-width:1px;" colspan="255">
<div align='left' style='font-size:12px'>
<i>Only the highest common / standard frequencies are listed (24&nbsp;/ 30&nbsp;/ 50&nbsp;/ 60&nbsp;/ 75&nbsp;/ 85&nbsp;/ 100&nbsp;/ 120&nbsp;/ 144&nbsp;/ 180&nbsp;/ 200&nbsp;/ 240&nbsp;Hz, or higher multiples of 60). This table is not meant to list the absolute limits down to the very last Hz.</i><br /><br />
<i>Uncompressed 24 bit/px RGB color and CVT-R2 timing are assumed on this table. Maximum frequency may be lower than what is listed when using 30 bit/px color depth or greater. Maximum frequency may be higher than what is listed when using compression (such as DSC) or YC<sub>B</sub>C<sub>R</sub> color with chroma subsampling.</i><br /><br />
<i>DisplayPort 1.4 uses DSC 1.2 compression to achieve higher display modes such as 7680&nbsp;×&nbsp;4320 at 60&nbsp;Hz with RGB or YC<sub>B</sub>C<sub>R</sub> 4:4:4 color.</i>
</div>
</td>
</tr>
</table>
</div>
</div>
<!-- DVI-D VS DVI-I IMAGE TABLE -->
<div id="DVI_TYPE_TABLE">
<table border="0" align="center">
<tr>
<td style="padding:4px;"><div align="center"><img src="https://linustechtips.com/main/uploads/monthly_2017_01/large.58849223ce79a_NewDL-DVI-D.jpg.5576f79a7412c2a269ae2435dee8c466.jpg" /></div></td>
<td style="padding:4px;"><div align="center"><img src="https://linustechtips.com/main/uploads/monthly_2017_01/large.5884922367b58_NewDL-DVI-I.jpg.8fcdc30ec28fb5d26cd907e0237be077.jpg" /></div></td>
</tr>
<tr>
<td style="padding:4px;"><div align="center" style="font-size:18px; white-space:nowrap;"><strong>DL-DVI-D</strong></div></td>
<td style="padding:4px;"><div align="center" style="font-size:18px; white-space:nowrap;"><strong>DL-DVI-I</strong></div></td>
</tr>
</table>
</div>
<!-- CVT FORMULA TABLE -->
<div id="CVT_FORMULA">
<div style="overflow-x:scroll; overflow:auto;">
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr><td style="text-align:left; padding:4px; font-weight:bold;" colspan="255">Constants:</td></tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">V<span style="font-size:12px"><sub>MIN</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVT_VMIN_CONST">0.00055</span>&nbsp;seconds</td>
</tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">D<span style="font-size:12px"><sub>MIN</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;">0.2 (Minimum value of D. If the D formula is less than 0.2, use 0.2 for D instead)</td>
</tr>
</table>
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr><td style="text-align:left; padding:4px; font-weight:bold;" colspan="255">Input Variables:</td></tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">H</td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVT_H_CONST">4,096</span>&nbsp;pixels</td>
</tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">V</td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVT_V_CONST">2,560</span>&nbsp;pixels</td>
</tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">F</td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVT_F_CONST">240</span>&nbsp;Hz</td>
</tr>
</table>
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr><td style="text-align:left; padding:4px; font-weight:bold;" colspan=255>Formulas:</td></tr>
<tr>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-left:12px;">D</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">=</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">0.3&nbsp;&nbsp;</td>
<td style="text-align:center; valign:center; padding:4px; padding-bottom:0px;">3,000&nbsp;&nbsp;[&nbsp;(&nbsp;<sup>1</sup><sub>F</sub>&nbsp;)&nbsp;&nbsp;V<span style="font-size:12px"><sub>MIN</sub></span>&nbsp;]</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-left:12px;">=</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">0.3&nbsp;&nbsp;</td>
<td style="text-align:center; valign:center; padding:4px; padding-bottom:0px;">3,000&nbsp;&nbsp;[&nbsp;(&nbsp;<sup>1</sup><sub><span id="CVT_D_F_plugin">240</span></sub>&nbsp;)&nbsp;&nbsp;<span id="CVT_D_VMIN_plugin">0.00055</span>&nbsp;]</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-left:12px;">=</td>
<td rowspan="3" style="text-align:left; valign:center; padding:4px;"><span id="CVT_D_RESULT">0.296</span></td>
</tr>
<tr>
<td style="text-align:center; valign:center;"><hr /></td>
<td style="text-align:center; valign:center;"><hr /></td>
</tr>
<tr>
<td style="padding:4px; text-align:center; padding-top:0px;">V + 3</td>
<td style="padding:4px; text-align:center; padding-top:0px;"><span id="CVT_D_V+3_plugin">2,563</span></td>
</tr>
<tr><td>&nbsp;</td></tr>
</table>
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-left:12px;">H<span style="font-size:12px"><sub>BLANK</sub></span></td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-right:12px;">=</td>
<td style="text-align:center; valign:center; padding:4px; padding-bottom:0px;">H&nbsp;&nbsp;D</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-right:12px; padding-left:12px;">=</td>
<td style="text-align:center; valign:center; padding:4px; padding-bottom:0px;"><span id="CVT_HBLANK_H_plugin">4,096</span>&nbsp;&nbsp;<span id="CVT_HBLANK_D_plugin1">0.296</span></td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-left:12px;">=</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">(&nbsp;<span id="CVT_HBLANK_RESULT">1,720.3</span>&nbsp;)&darr;<sub>16</sub></td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">=</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;"><span id="CVT_HBLANK_RND">1,712</span>&nbsp;pixels</td>
</tr>
<tr>
<td style="text-align:center; valign:center;"><hr /></td>
<td style="text-align:center; valign:center;"><hr /></td>
</tr>
<tr>
<td style="padding:4px; text-align:center; padding-top:0px;">1&nbsp;&nbsp;D</td>
<td style="padding:4px; text-align:center; padding-top:0px;">1&nbsp;&nbsp;<span id="CVT_HBLANK_D_plugin2">0.296</span></td>
</tr>
<tr><td>&nbsp;</td></tr>
</table>
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-left:12px;">V<span style="font-size:12px"><sub>BLANK</sub></span></td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-right:12px;">=</td>
<td style="text-align:center; valign:center; padding:4px; padding-bottom:0px;">(V&nbsp;+&nbsp;3)&nbsp;&nbsp;V<span style="font-size:12px"><sub>MIN</sub></span></td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">&nbsp;+&nbsp;4</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-right:12px;">=</td>
<td style="text-align:center; valign:center; padding:4px; padding-bottom:0px;"><span id="CVT_VBLANK_V+3_plugin">2,563</span>&nbsp;&nbsp;<span id="CVT_VBLANK_VMIN_plugin1">0.00055</span></td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">&nbsp;+&nbsp;4</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">=</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">(&nbsp;<span id="CVT_VBLANK_RESULT">393.765</span>&nbsp;)&darr;</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">=</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;"><span id="CVT_VBLANK_RND">393</span>&nbsp;pixels</td>
</tr>
<tr>
<td style="text-align:center; valign:center;"><hr /></td>
<td style="text-align:center; valign:center;"><hr /></td>
</tr>
<tr>
<td style="padding:4px; text-align:center; padding-top:0px;">(&nbsp;<sup>1</sup><sub>F</sub>&nbsp;)&nbsp;&nbsp;V<span style="font-size:12px"><sub>MIN</sub></span></td>
<td style="padding:4px; text-align:center; padding-top:0px;">(&nbsp;<sup>1</sup><sub><span id="CVT_VBLANK_F_plugin">240</span></sub>&nbsp;)&nbsp;&nbsp;<span id="CVT_VBLANK_VMIN_plugin2">0.00055</span></td>
</tr>
<tr><td>&nbsp;</td></tr>
</table>
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px">
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">H<span style="font-size:12px"><sub>EFFECTIVE</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:center; padding:4px;">H&nbsp;+&nbsp;H<span style="font-size:12px"><sub>BLANK</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVT_HEFF_H_plugin">4,096</span>&nbsp;+&nbsp;<span id="CVT_HEFF_HBLANK_plugin">1,712</span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVT_HEFF_RESULT">5,808</span>&nbsp;pixels</td>
</tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">V<span style="font-size:12px"><sub>EFFECTIVE</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:center; padding:4px;">V&nbsp;+&nbsp;V<span style="font-size:12px"><sub>BLANK</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVT_VEFF_V_plugin">2,560</span>&nbsp;+&nbsp;<span id="CVT_VEFF_VBLANK_plugin">393</span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVT_VEFF_RESULT">2,953</span>&nbsp;pixels</td>
</tr>
</table>
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px">
<tr><td>&nbsp;</td></tr>
<tr><td style="text-align:left;" colspan="255">Results can be checked against the official VESA CVT 1.2 spreadsheet, here:<br /><a class="ipsAttachLink" href="//linustechtips.com/main/applications/core/interface/file/attachment.php?id=238288">VESA CVT 1.2 Timing Generator.xlsx</a></td></tr>
<tr><td>&nbsp;</td></tr>
</table>
</div>
</div>
<!-- CVT-RB FORMULA TABLE -->
<div id="CVTRB_FORMULA">
<div style="overflow-x:scroll; overflow:auto;">
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr><td style="text-align:left; padding:4px; font-weight:bold;" colspan="255">Constants:</td></tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">V<span style="font-size:12px"><sub>MIN</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVTRB_VMIN_CONST">0.00046</span>&nbsp;seconds</td>
</tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">H<span style="font-size:12px"><sub>BLANK</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVTRB_HBLANK_CONST">80</span>&nbsp;pixels</td>
</tr>
</table>
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr><td style="text-align:left; padding:4px; font-weight:bold;" colspan="255">Input Variables:</td></tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">H</td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVTRB_H_CONST">4,096</span>&nbsp;pixels</td>
</tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">V</td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVTRB_V_CONST">2,560</span>&nbsp;pixels</td>
</tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">F</td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVTRB_F_CONST">240</span>&nbsp;Hz</td>
</tr>
</table>
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px;">
<tr><td style="text-align:left; padding:4px; font-weight:bold;" colspan=255>Formulas:</td></tr>
<tr>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-left:12px;">V<span style="font-size:12px"><sub>BLANK</sub></span></td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-right:12px;">=</td>
<td style="text-align:center; valign:center; padding:4px; padding-bottom:0px;">V&nbsp;&nbsp;V<span style="font-size:12px"><sub>MIN</sub></span></td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-right:12px; padding-left:12px;">=</td>
<td style="text-align:center; valign:center; padding:4px; padding-bottom:0px;"><span id="CVTRB_VBLANK_V_plugin">2,560</span>&nbsp;&nbsp;<span id="CVTRB_VBLANK_VMIN_plugin1">0.00046</span></td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px; padding-left:12px;">=</td>
<td rowspan="3" id="CVT_RB_CELL_V_BLANK_RAW" style="text-align:center; valign:center; padding:4px;">(&nbsp;<span id="CVTRB_VBLANK_RESULT">317.7</span>&nbsp;)&uarr;</td>
<td rowspan="3" style="text-align:center; valign:center; padding:4px;">=</td>
<td rowspan="3" id="CVT_RB_CELL_V_BLANK_RND" style="text-align:center; valign:center; padding:4px;"><span id="CVTRB_VBLANK_RND">318</span>&nbsp;pixels</td>
</tr>
<tr>
<td style="text-align:center; valign:center;"><hr /></td>
<td style="text-align:center; valign:center;"><hr /></td>
</tr>
<tr>
<td style="padding:4px; text-align:center; padding-top:0px;">(&nbsp;<sup>1</sup><sub>F</sub>&nbsp;)&nbsp;&nbsp;V<span style="font-size:12px"><sub>MIN</sub></span></td>
<td style="padding:4px; text-align:center; padding-top:0px;">(&nbsp;<sup>1</sup><sub><span id="CVTRB_VBLANK_F_plugin">240</span></sub>&nbsp;)&nbsp;&nbsp;<span id="CVTRB_VBLANK_VMIN_plugin2">0.00046</span></td>
</tr>
<tr><td>&nbsp;</td></tr>
</table>
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px">
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">H<span style="font-size:12px"><sub>EFFECTIVE</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:center; padding:4px;">H + H<span style="font-size:12px"><sub>BLANK</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVTRB_HEFF_H_plugin">4,096</span>&nbsp;+&nbsp;<span id="CVTRB_HEFF_HBLANK_plugin">80</span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVTRB_HEFF_RESULT">4,176</span>&nbsp;pixels</td>
</tr>
<tr>
<td style="text-align:left; padding:4px; padding-left:12px;">V<span style="font-size:12px"><sub>EFFECTIVE</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:center; padding:4px;">V + V<span style="font-size:12px"><sub>BLANK</sub></span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVTRB_VEFF_V_plugin">2,560</span>&nbsp;+&nbsp;<span id="CVTRB_VEFF_VBLANK_plugin">318</span></td>
<td style="text-align:center; padding:4px;">=</td>
<td style="text-align:left; padding:4px;"><span id="CVTRB_VEFF_RESULT">2,878</span>&nbsp;pixels</td>
</tr>
</table>
<table style="border: 0px solid #000000; border-collapse:collapse; line-height:120%; font-family: Arial; font-size: 14px">
<tr><td>&nbsp;</td></tr>
<tr><td style="text-align:left;" colspan="255">Results can be checked against the official VESA CVT 1.2 spreadsheet, here:<br /><a class="ipsAttachLink" href="//linustechtips.com/main/applications/core/interface/file/attachment.php?id=238288">VESA CVT 1.2 Timing Generator.xlsx</a></td></tr>
<tr><td>&nbsp;</td></tr>
</table>
</div>
</div>
</div>
<!-------------------------------- ARTICLES -------------------------------->
<div hidden>
<!-- Anything to DisplayPort -->
<div id="ANY_TO_DP">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
Options for Connecting to a Display's DisplayPort Input Port
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?input=DP">Link</a>]</td>
</tr></table>
<br />
It is generally very difficult to connect to a monitor's DisplayPort input if you don't have a native DisplayPort output available from your computer/source device. There is no way to do this without an active adapter, and these adapters tend to be finicky and unreliable. If you don't have a native DisplayPort output on your device, consider trying to connect to a different type of port on the display. Active adapters to a DisplayPort input should only be considered as a last resort, if the display has no other available ports to connect to.<br /><br />
If you absolutely need to connect to a monitor's DisplayPort input from a non-DP output, then the following options are available:
<ul>
<li>HDMI to DisplayPort active adapter</li>
<li>DVI to DisplayPort active adapter</li>
</ul><br />
Neither of these options are really preferable over the other (both are finicky and unreliable), but HDMI to DisplayPort active adapters are slightly more common. Switch the dropdown menus at the top of this page to either of those combinations to see more detailed information and (possibly) recommendations for that particular combination.<br /><br />
DisplayPort-to-DVI or DisplayPort-to-HDMI passive adapters will <strong>NOT</strong> work for this configuration. These adapters only work from DisplayPort <strong>output</strong> to DVI/HDMI <strong>input</strong>, not in the reverse configuration.
</div>
<!-- Anything to HDMI -->
<div id="ANY_TO_HDMI">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
Options for Connecting to a Display's HDMI Input Port
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?input=HDMI">Link</a>]</td>
</tr></table>
<br />
If you need to connect to a display's HDMI input, then the following options are available (in order of preference):
<ul>
<li>DVI to HDMI passive adapter</li>
<li>DisplayPort to HDMI passive adapter</li>
<li>VGA to HDMI active adapter</li>
</ul><br />
DVI to HDMI passive adapters and DisplayPort to HDMI passive adapters are both equally preferable. Both are inexpensive, will support inline audio (yes, DVI to HDMI passive adapters will support inline audio), and provide image quality identical to native HDMI without any added latency. If you do not have a DVI or DisplayPort output available, you can use a VGA to HDMI active adapter, but the image quality will only be equivalent to VGA, and inline audio will not be supported (though some adapters support audio over a separate cable).<br /><br />
Switch the dropdown menus at the top of this page to any of those combinations to see more detailed information and (possibly) recommendations for that particular combination.
</div>
<!-- Anything to DVI -->
<div id="ANY_TO_DVI">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
Options for Connecting to a Display's DVI Input Port
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?input=DVI">Link</a>]</td>
</tr></table>
<br />
<strong>Single-Link DVI</strong> provides enough bandwidth for 1920×1200 at 60&nbsp;Hz or 2560×1600 at 30&nbsp;Hz. Video formats which require more bandwidth than those (such as 1920×1080 at 144&nbsp;Hz or 2560×1600 at 60&nbsp;Hz) will require <strong>Dual-Link DVI</strong>.<br /><br />
If you need to connect to a display's DVI input, and the bandwidth of <strong>Single-Link DVI</strong> is enough for your display, then the following options are available (in order of preference):
<ul>
<li>HDMI to DVI passive adapter</li>
<li>DisplayPort to DVI passive adapter</li>
<li>DisplayPort to (Single-Link) DVI active adapter (required for 3+ monitors on some older graphics cards)</li>
<li>VGA to DVI-I passive adapter (<strong>ONLY</strong> if the display has a <strong>DVI-I</strong> port; <u>this is very unusual</u>)</li>
<li>VGA to DVI-D active adapter</li>
</ul>
If the extra bandwidth of <strong>Dual-Link DVI</strong> is required, then only one option is available:
<ul>
<li>DisplayPort to Dual-Link DVI active adapter</li>
</ul><br />
HDMI to DVI passive adapters and DisplayPort to DVI passive adapters are both equally preferable. Both are inexpensive and provide image quality identical to native DVI without any added latency. These adapters only provide a <strong>Single-Link DVI</strong> connection, and will not work for video formats requiring more bandwidth than 1920×1200 at 60&nbsp;Hz or equivalent. Inline audio is generally not supported through these adapters, but it depends on the display.<br /><br />
VGA to DVI adapters (passive or active) will only provide image quality equivalent to native VGA.<br /><br />
For DisplayPort to Dual-Link DVI conversion, keep in mind that even most DisplayPort to DVI active adapters are still <strong>Single-Link only</strong>. These are common because older graphics cards required active adapters for multi-monitor configurations beyond two screens. So not just any DP-to-DVI active adapter will work, it <strong>must</strong> be clearly identified as a Dual-Link DVI adapter, with support for up to 1920×1080 at 120/144&nbsp;Hz or 2560×1440/2560×1600 at 60&nbsp;Hz.<br /><br />
Switch the dropdown menus at the top of this page to any of those combinations to see more detailed information and (possibly) recommendations for that particular combination.
</div>
<!-- Anything to VGA -->
<div id="ANY_TO_VGA">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
Options for Connecting to a Display's VGA Input Port
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?input=VGA">Link</a>]</td>
</tr></table>
<br />
If you need to connect to a display's VGA input, then the following options are available (in order of preference):<br />
<ul>
<li>DVI-I to VGA passive adapter (<strong>ONLY</strong> if the source device has a <strong>DVI-I</strong> port (shown below); this will not work in a DVI-D port)</li>
<li>DisplayPort to VGA active adapter</li>
<li>HDMI to VGA active adapter</li>
<li>DVI-D to VGA active adapter</li>
</ul><br />
<div id="ANY_TO_VGA_identifierContainer"></div>
<script>document.getElementById("ANY_TO_VGA_identifierContainer").innerHTML = document.getElementById("DVI_TYPE_TABLE").innerHTML;</script>
<br />
DVI-I is a type of DVI + VGA combo port. A passive DVI-I to VGA adapter provides access to the VGA section of the port, and therefore is equivalent to a native VGA connection. Graphics cards and motherboards which do not have native VGA capability will not have DVI-I ports, and so these adapters will not work with those devices.<br /><br />
If your graphics card/motherboard does not have a DVI-I port, then the next best option is a DisplayPort to VGA active adapter. These are inexpensive, reliable, and compact, and they are often mistaken as passive adapters. Passive DisplayPort to VGA adapters do not exist, but active DP to VGA adapters are very good.<br /><br />
HDMI to VGA active adapters are usually larger, less reliable, and may require a power cable or USB for power. They are usually slightly more expensive than DisplayPort to VGA active adapters.<br /><br />
DVI-D to VGA active adapters are no better or worse than HDMI to VGA active adapters, but they are much more difficult to find since historically most graphics cards have been equipped with DVI-I ports and shipped with a DVI-I to VGA passive adapter included, which has resulted in very low demand for DVI-D to VGA conversion devices.<br /><br />
Switch the dropdown menus at the top of this page to any of those combinations to see more detailed information and (possibly) recommendations for that particular combination.
</div>
<!-- DisplayPort to DisplayPort -->
<div id="DP_TO_DP">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
DisplayPort
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=DP">Link</a>]</td>
</tr></table>
<br />
<div align="center" id="DP_TO_DP_inlineTable">&nbsp;</div>
<script>document.getElementById("DP_TO_DP_inlineTable").innerHTML = document.getElementById("DP_TABLE").innerHTML</script>
<br />
<strong>Does Mini DisplayPort have different capabilities or compatibility?</strong><br /><br />
<div style="padding-left:20px;">
Mini DisplayPort (mDP) is just a different shape connector. It is functionally identical to a full-size DisplayPort connector, there is no difference in capability, feature support, or compatibility with devices or adapters (other than the difference in physical shape). DisplayPort-to-mDP passive adapters can be freely used to connect devices with a DisplayPort plug to an mDP port instead (or vice versa) without any effect on the operation or compatibility of the devices. DisplayPort and Mini DisplayPort are completely interchangeable.<br /><br />
</div>
<strong>How does the image quality of DisplayPort compare with DVI and HDMI?</strong><br /><br />
<div style="padding-left:20px;">
The image quality of DisplayPort is identical to DVI and HDMI when set to the same image settings.<br /><br />
DisplayPort and HDMI do support a wider range of possible settings compared to DVI, but this does not affect anything on displays which don't take advantage of those extra capabilities. DVI supports up to 24&nbsp;bit/px color depth (16.7 million colors), which is what most computer monitors and TVs run at. DisplayPort and HDMI are capable of higher color depth than 24&nbsp;bit/px (like 30&nbsp;bit/px or 1.07 billion colors) while DVI isn't, but this does not make them any better at displaying 24&nbsp;bit/px color than DVI, so it is irrelevant on most standard displays.<br /><br />
Unless your display has capabilities that are beyond what DVI supports, there will be no advantage to using DP or HDMI instead of DVI.<br /><br />
</div>
<strong>Do DisplayPort cables affect image quality?</strong><br /><br />
<div style="padding-left:20px;">
No, DisplayPort cables do not affect image quality. DisplayPort transmits data in a digital format, which means that the electrical signals do not represent the image data directly; distortion in the signal will <strong>not</strong> lead to distortion in the image, so it does not actually matter whether the signal is protected from interference or not. The "cable quality" or "signal strength" are irrelevant to the appearance of the image. Features such as "gold-plated connectors" or "high-quality shielding" are superfluous and do not affect the image quality.<br /><br />
</div>
<strong>Do DisplayPort cables affect the maximum resolution / refresh frequency that I can get?</strong><br /><br />
<div style="padding-left:20px;">
It has been known to happen with very poor quality uncertified cables, but this is uncommon. Poor quality cables may prevent high resolutions and refresh frequencies from being used, but besides that, DisplayPort cables will not limit the resolution or refresh frequency, and you do not need to worry about purchasing "DisplayPort&nbsp;1.1" cables or "DisplayPort&nbsp;1.2" cables. DisplayPort cables do not have "versions", there is only "the standard DisplayPort cable". Any certified DisplayPort cable, which has gone through VESA's certification process, will handle the full bandwidth of the latest DisplayPort standard (32&nbsp;Gbit/s in version 1.4, at the time of writing).<br /><br />
</div>
<strong>Do DisplayPort cables have versions?</strong><br /><br />
<div style="padding-left:20px;">
No, DisplayPort cables do not have versions. While there are several different versions of the DisplayPort standard, all versions use the same cable. Only DisplayPort <b>devices</b> (graphics cards, monitors, etc.) have a version, which is determined by the control chip inside the device. Cables themselves do not have a version. There is only "the standard DisplayPort cable". There is no such thing as a "DisplayPort&nbsp;1.2 cable" or a "DisplayPort&nbsp;1.4 cable". Just be sure to purchase a certified DisplayPort cable, not an off-brand one. Please see <a href="https://www.displayport.org/cables/how-to-choose-a-displayport-cable-and-not-get-a-bad-one/">this article</a> on the official DisplayPort website for their statement on the topic.<br /><br />
</div>
<strong>Do I need a special DisplayPort cable for FreeSync, HDR, or anything else?</strong><br /><br />
<div style="padding-left:20px;">
No, any feature of DisplayPort will work over any DisplayPort cable. The cable does not need to "support" a certain feature for it to work.
</div>
</div>
<!-- DisplayPort to HDMI -->
<div id="DP_TO_HDMI">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
DisplayPort Source to HDMI Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=DP&input=HDMI">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
DisplayPort Source to HDMI Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#B7E1CD; vertical-align:top; max-width:300px; border:1px solid #000000;">
Yes
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Inline audio supported?
</td>
<td style="padding:8px; text-align:left; background-color:#B7E1CD; vertical-align:top; max-width:300px; border:1px solid #000000;">
Yes
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Image Quality:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to HDMI
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Maximum Resolution / Frequency:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to HDMI, version dependent on source and adapter (see article below)<br /><br /><a id="DP_TO_HDMI_LINK" href='javascript:void(0);' onclick="toggleTable('HDMI', 'DP_TO_HDMI'); Configurator();">Show HDMI Limits</a>
</td>
</tr>
</table>
</div>
<div id="DP_TO_HDMI_CONTAINER" align="center">&nbsp;</div>
<div style="padding-left:20px;">
A passive adapter <strong>can</strong> be used to connect a DisplayPort output to an HDMI input. Inline audio <strong>does</strong> work through DisplayPort to HDMI adapters.<br /><br />
Not all DisplayPort to HDMI passive adapters are the same, there are several types:
<ul>
<li style="line-height:140%">A Type 1 passive adapter can output up to a 165&nbsp;MHz HDMI&nbsp;1.2 signal (sufficient for 1080p 60&nbsp;Hz)<br /></li>
<li style="padding-top:10px; line-height:140%">A Type 2 passive adapter can output up to a 300&nbsp;MHz HDMI&nbsp;1.4 signal (sufficient for 1080p 120&nbsp;Hz or 4K 30&nbsp;Hz); this requires DisplayPort&nbsp;1.2 for full bandwidth<br /></li>
<li style="padding-top:10px; line-height:140%">A Type 3* passive adapter can output up to a 600&nbsp;MHz HDMI&nbsp;2.0 signal (sufficient for 1080p 240&nbsp;Hz or 4K 60&nbsp;Hz); this requires DisplayPort&nbsp;1.3 for full bandwidth<br /></li>
</ul>
Adapters are generally not labeled as "Type 1" or "Type 2" etc. by retailers, so to identify them you will need to examine the product description. Type 1 adapters will usually be listed as being limited to 1920×1080 or 1920×1200, while Type 2 adapters will support up to 4K 30&nbsp;Hz. Type 3 adapters should support up to 4K 60&nbsp;Hz, but there are currently none available on the market yet. Type 2 adapters are generally the same price as Type 1 adapters and are compatible with all DisplayPort devices, so there is no reason to purchase a new Type 1 adapter; even if you only need an adapter for 1080p 60&nbsp;Hz now, the extra capability of a Type 2 adapter may prove useful in the future.<br /><br />
Using a DisplayPort to HDMI passive adapter does not provide any special advantages over a straight HDMI to HDMI connection. No advantages are carried over from DisplayPort, it is no different than a straight HDMI connection.<br /><br />
Type 2 DisplayPort to HDMI passive adapter (option 1):&nbsp;<a href="https://www.amazon.com/dp/B01GW8DZV4?m=A3HIHADV23VGU1">Amazon US</a><br />
Type 2 DisplayPort to HDMI passive adapter (option 2):&nbsp;<a href="https://www.amazon.com/aLLreLi-DisplayPort-Adapter-Gold-Plated-Connector/dp/B00ZA067MA/">Amazon US</a><br />
Type 2 Mini DisplayPort to HDMI passive adapter:&nbsp;<a href="https://www.amazon.com/aLLreLi-4Kx2K-Displayport-Female-Adapter/dp/B00ZC8MLY8/">Amazon US</a><br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
Conversion from DisplayPort&nbsp;1.2 to HDMI&nbsp;2.0 or from DisplayPort&nbsp;1.1 to HDMI&nbsp;1.4 requires an active adapter.<br /><br />
DisplayPort&nbsp;1.2 to HDMI&nbsp;2.0 active adapter (option 1):&nbsp;<a href="https://www.amazon.com/Plugable-DisplayPort-Supports-displays-3840x2160/dp/B00S0C7QO8/">AmazonUS</a><br />
DisplayPort&nbsp;1.2 to HDMI&nbsp;2.0 active adapter (option 2):&nbsp;<a href="https://www.amazon.com/Club3D-Displayport-1-2-HDMI-CAC-1070/dp/B017BQ8I54/">Amazon US</a><br />
Mini DisplayPort&nbsp;1.2 to HDMI&nbsp;2.0 active adapter (option 1):&nbsp;<a href="https://www.amazon.com/Plugable-DisplayPort-Supports-displays-3840x2160/dp/B00S0BWR2K/">Amazon US</a><br />
Mini DisplayPort&nbsp;1.2 to HDMI&nbsp;2.0 active adapter (option 2):&nbsp;<a href="https://www.amazon.com/Club3D-Displayport-1-2-HDMI-CAC-1070/dp/B017BQCUGW/">Amazon US</a><br />
</div>
<hr>
* This is a tentative name; VESA has not mentioned any official designation for these adapters yet, but it has been confirmed that Type 2 adapters do not support more than 300 MHz HDMI signals even from DisplayPort 1.3/1.4 outputs.<br /><br />
<strong>Note 1:</strong> Resolution and refresh frequency limitations on active adapters are subject to each individual product's limitations. Read the product description.<br /><br />
<strong>Note 2:</strong> Mini DisplayPort is functionally identical to DisplayPort, the only difference is the physical shape. DisplayPort to Mini DisplayPort adapters can be used freely without affecting the operation or compatibility of other devices in any way.
</div>
<!-- DisplayPort to DVI -->
<div id="DP_TO_DVI">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
DisplayPort Source to DVI Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=DP&input=DVI">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
DisplayPort Source to DVI Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#B7E1CD; vertical-align:top; max-width:300px; border:1px solid #000000;">
Yes
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Inline audio supported?
</td>
<td style="padding:8px; text-align:left; background-color:#F4C7C3; vertical-align:top; max-width:300px; border:1px solid #000000;">
No
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Image Quality:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to DVI
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Maximum Resolution / Frequency:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to Single-Link DVI<br /><br /><a id="DP_TO_DVI_LINK" href='javascript:void(0);' onclick="toggleTable('DVI', 'DP_TO_DVI'); Configurator();">Show DVI Limits</a>
</td>
</tr>
</table>
</div>
<div id="DP_TO_DVI_CONTAINER" align="center">&nbsp;</div>
<div style="padding-left:20px;">
A passive adapter can be used to connect a DisplayPort output to a DVI input. This is equivalent to a <strong>Single-Link DVI-D</strong> connection. Inline audio is not supported. These adapters can still be used to connect to monitors that have Dual-Link DVI ports, but the connection will be limited to the capabilities of Single-Link DVI as outlined in the table above (click "Snow DVI Limits").<br /><br />
<strong>All DisplayPort to DVI passive adapters are <u>Single-Link only</u></strong>. DisplayPort to Dual-Link DVI passive adapters <strong>do not exist</strong>. Although most DisplayPort to DVI passive adapters are advertised as "Dual-Link" and may appear to have "Dual-Link" connectors on them, please be warned that these are fake. The extra pins on these DVI connectors are dummy pins which are not connected to anything, and the adapter will still only function as a Single-Link DVI adapter. It is physically impossible to create a passive DisplayPort to Dual-Link DVI adapter due to an insufficient number of pins on the DisplayPort connector.<br /><br />
</div>
<strong>Active Adapters (Single-Link DVI)</strong><br /><br />
<div style="padding-left:20px;">
Inexpensive DisplayPort to <strong>Single-Link DVI</strong> active adapters exist. These are intended for multi-monitor configurations on graphics cards which do not support more than two monitors through DVI / HDMI (including DisplayPort to DVI / HDMI passive adapters). The graphics cards subject to this restriction are listed after the next section. Generally speaking, any inexpensive DisplayPort to DVI active adapter is <strong><u>Single-Link-only</u></strong>. As with passive adapters, these may appear to have "Dual-Link" connectors on them and may be advertised as "Dual-Link", so it is advised to read the description carefully to look for the maximum resolution and refresh frequency that the adapter claims to support. Single-Link DVI adapters will be limited to 1920×1200&nbsp;@&nbsp;60&nbsp;Hz or 2560×1600&nbsp;@&nbsp;30&nbsp;Hz.<br /><br />
DisplayPort to Single-Link DVI active adapter:&nbsp;<a href="https://www.amazon.com/gofanco-DisplayPort-Converter-UltraHD-Monitors/dp/B00OQQ2HDC/">Amazon US</a><br /><br />
</div>
<strong>Active Adapters (Dual-Link DVI)</strong><br /><br />
<div style="padding-left:20px;">
A more complex active adapter is required to convert DisplayPort to a full <strong>Dual-Link DVI</strong> connection. Please note that DisplayPort to Dual-Link DVI active adapters are expensive and generally unreliable, so these should only be considered as a last resort. Even if your monitor has a Dual-Link DVI port, it is usually not necessary to have a Dual-Link DVI connection. Passive and active DisplayPort to Single-Link DVI adapters still function in Dual-Link DVI ports. Dual-Link DVI active adapters should avoided unless the monitor's specifications exceed the limits of Single-Link DVI (listed in the table below).<br /><br />
DisplayPort to Dual-Link DVI active adapter (option 1):&nbsp;<a href="https://www.amazon.com/Accell-B087B-002B-UltraAV-DisplayPort-Dual-Link/dp/B002ISVI3U/">Amazon US</a><br />
DisplayPort to Dual-Link DVI active adapter (option 2):&nbsp;<a href="https://www.amazon.com/StarTech-com-DisplayPort-Active-Adapter-Converter/dp/B00A493CNY/">Amazon US</a><br />
Mini DisplayPort to Dual-Link DVI active adapter (option 1):&nbsp;<a href="https://www.amazon.com/Accell-B087B-002B-UltraAV-DisplayPort-Dual-Link/dp/B0030XMREG/">Amazon US</a><br />
Mini DisplayPort to Dual-Link DVI active adapter (option 2):&nbsp;<a href="https://www.amazon.com/StarTech-com-MDP2DVID-DisplayPort-Dual-Link-Powered/dp/B004I6L6DW/">Amazon US</a><br /><br />
</div>
<hr>
<strong>Note 1:</strong> Resolution and refresh frequency limitations on active adapters are subject to each individual product's limitations. Read the product description.<br /><br />
<strong>Note 2:</strong> Any DVI-D device or cable will also work in a DVI-I port. If your display has a DVI-I port, you do not need to search specifically for a "DisplayPort to DVI-I" adapter.<br /><br />
<strong>Note 3:</strong> Mini DisplayPort is functionally identical to DisplayPort, the only difference is the physical shape. DisplayPort to Mini DisplayPort adapters can be used freely without affecting the operation or compatibility of other devices in any way.
</div>
<!-- DisplayPort to VGA -->
<div id="DP_TO_VGA">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
DisplayPort Source to VGA Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=DP&input=VGA">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
DisplayPort Source to VGA Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#F4C7C3; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
No
</td>
</tr>
</table>
</div>
<br />
<div style="padding-left:20px;">
Passive DisplayPort to VGA adapters do not actually exist, but active DisplayPort to VGA adapters are inexpensive and require no additional power, so they are often mistaken as passive adapters.<br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
DisplayPort to VGA active adapters are inexpensive and reliable, and require no additional power connectors. If your graphics card has no native VGA or DVI-I output, then DisplayPort to VGA is the preferred way of connecting to a VGA display, generally more preferred than an HDMI to VGA or DVI-D to VGA active adapter. Since DisplayPort to VGA adapters perform active conversion, they will also work in newer graphics cards without native VGA support, such as the AMD Radeon R9 290X or NVIDIA GeForce GTX 1080 or newer.<br /><br />
DisplayPort to VGA active adapters are often mistaken as passive adapters because of their low cost and size and lack of external power, but all DisplayPort to VGA adapters are active adapters.<br />
<img src="http://puu.sh/twjbO/cb38e38dde.jpg" /><br />
Yes, even this is an active adapter, not a passive adapter.<br /><br />
DisplayPort to VGA active adapter:&nbsp;<a href="https://www.amazon.com/Rankie-Plated-DisplayPort-Adapter-Converter/dp/B00Z08TZNU/">Amazon US</a><br /><br />
</div>
<hr>
<strong>Note 1:</strong> Resolution and refresh frequency limitations on active adapters are subject to each individual product's limitations. Read the product description.<br /><br />
<strong>Note 2:</strong> Mini DisplayPort is functionally identical to DisplayPort, the only difference is the physical shape. DisplayPort to Mini DisplayPort adapters can be used freely without affecting the operation or compatibility of other devices in any way.
</div>
<!-- HDMI to DisplayPort -->
<div id="HDMI_TO_DP">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
HDMI Source to DisplayPort Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=HDMI&input=DP">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
HDMI Source to DisplayPort Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#F4C7C3; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
No
</td>
</tr>
</table>
</div>
<br />
<div style="padding-left:20px;">
An HDMI output <strong>CANNOT</strong> be connected to a DisplayPort input with a passive adapter. Passive DisplayPort to HDMI cables/adapters will only function from DisplayPort <strong>output</strong> to HDMI <strong>input</strong>, not the other way around.<br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
Conversion from HDMI to DisplayPort requires an active adapter. Please note that these adapters are very unreliable and should only be considered as a last resort. Most HDMI to DisplayPort active adapters do not support the newest HDCP protocols and so they will not work with modern game consoles. I am not aware of any HDMI&nbsp;2.0+ to DisplayPort&nbsp;1.2+ active adapters at this time.<br /><br />
HDMI&nbsp;1.4 to DisplayPort&nbsp;1.1 active adapter (option 1):&nbsp;<a href="https://www.amazon.com/StarTech-com-HDMI-DisplayPort-Converter-Adapter/dp/B0144NS4Z6/">Amazon US</a><br />
HDMI&nbsp;1.4 to DisplayPort&nbsp;1.1 active adapter (option 2):&nbsp;<a href="https://www.amazon.com/gofanco-HDMI-DisplayPort-Converter-Power/dp/B01BXMOREI/">Amazon US</a><br />
HDMI&nbsp;1.4 to DisplayPort&nbsp;1.1 active adapter (option 3):&nbsp;<a href="https://www.amazon.com/SIIG-DisplayPort-Active-Adapter-CE-H22A11-S1/dp/B00TCUY2AI/">Amazon US</a><br />
HDMI&nbsp;1.2 to DisplayPort&nbsp;1.1 active adapter (option 4; advertises HDCP support):&nbsp;<a href="https://www.amazon.com/StarTech-com-HDMI-DisplayPort-Converter-Adapter/dp/B004I6IYSM/">Amazon US</a><br /><br />
</div>
<hr>
<strong>Note 1:</strong> Resolution and refresh frequency limitations on active adapters are subject to each individual product's limitations. Read the product description.<br /><br />
<strong>Note 2:</strong> Mini DisplayPort is functionally identical to DisplayPort, the only difference is the physical shape. DisplayPort to Mini DisplayPort adapters can be used freely without affecting the operation or compatibility of other devices in any way.
</div>
<!-- HDMI to HDMI -->
<div id="HDMI_TO_HDMI">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
HDMI
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=HDMI">Link</a>]</td>
</tr></table>
<br />
<div align="center" id="HDMI_TO_HDMI_inlineTable">&nbsp;</div>
<script>document.getElementById("HDMI_TO_HDMI_inlineTable").innerHTML = document.getElementById("HDMI_TABLE").innerHTML</script>
<br />
<strong>How does the image quality of HDMI compare with DisplayPort and DVI?</strong><br /><br />
<div style="padding-left:20px;">
The image quality of HDMI is identical to DisplayPort and DVI when set to the same image settings.<br /><br />
HDMI and DisplayPort do support a wider range of possible settings compared to DVI, but this does not affect anything on displays which don't take advantage of those extra capabilities. DVI supports up to 24&nbsp;bit/px color depth (16.7 million colors), which is what most computer monitors and TVs run at. DisplayPort and HDMI are capable of higher color depth than 24&nbsp;bit/px (like 30&nbsp;bit/px or 1.07 billion colors) while DVI isn't, but this does not make them any better at displaying 24&nbsp;bit/px color than DVI, so it is irrelevant on most standard displays.<br /><br />
Unless your display has capabilities that are beyond what DVI supports, there will be no advantage to using DP or HDMI instead of DVI.<br /><br />
</div>
<strong>Do HDMI cables affect image quality?</strong><br /><br />
<div style="padding-left:20px;">
No, HDMI cables do not affect image quality. HDMI transmits data in a digital format, which means that the electrical signals do not represent the image data directly; distortion in the signal will <strong>not</strong> lead to distortion in the image, so it does not actually matter whether the signal is protected from interference or not. The "cable quality" or "signal strength" are irrelevant to the appearance of the image. Features such as "gold-plated connectors" or "high-quality shielding" are superfluous and do not affect the image quality.<br /><br />
</div>
<strong>Do HDMI cables have versions?</strong><br /><br />
<div style="padding-left:20px;">
No, HDMI cables do not have versions. In fact, advertising a cable as an "HDMI&nbsp;1.4 cable" or "HDMI&nbsp;2.0 cable" or "HDMI&nbsp;2.0 compliant" (etc.) has been banned by the HDMI Licensing authority since 2009 and is a violation of the licensing agreement that cable manufacturers and vendors must sign with them in order to legally use the HDMI logo and trademarks. Unfortunately HDMI Licensing does not actively enforce this, since it would involve quite a considerable legal campaign at this point. Nonetheless, the creators of the HDMI specification have specifically prohibited classifying HDMI cables by their "HDMI version", because this is not actually a property that cables have in the first place.<br /><br />
</div>
<strong>So does that mean all HDMI cables are the same?</strong><br /><br />
<div style="padding-left:20px;">
No. There are several different "levels" or "categories" of HDMI cables, rated by maximum bandwidth. <i>This is not the same as an "HDMI version"</i>. HDMI version and feature support are not affected by cables. Even a Standard Speed HDMI cable can support an HDMI&nbsp;2.0 or HDMI&nbsp;2.1 connection between devices, and while the maximum bandwidth may be limited (the full 48.0&nbsp;Gbit/s of HDMI&nbsp;2.1 will not be available, for example), all other version-specific features such as HDR and VRR will still work. Using a so-called "HDMI&nbsp;1.4 cable" (a High Speed HDMI cable) between two HDMI&nbsp;2.0 devices will not "downgrade the connection to HDMI&nbsp;1.4" and prevent all HDMI 2.0 features from working as some people believe; the <u>only</u> feature that is affected by the cable (besides inline Ethernet) is the maximum bandwidth, which is why cables are rated by bandwidth, and not by "HDMI version".<br /><br />
<div align="center" style="overflow-x:auto;">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:150%;">
<tr>
<td colspan="3" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
HDMI Cable Categories
</td>
</tr>
<tr>
<td style="padding:8px; text-align:center; background-color:#D9D9D9; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
<strong>Certification Name</strong>
</td>
<td style="padding:8px; text-align:center; background-color:#D9D9D9; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
<strong>Tested up to...</strong>
</td>
<td style="padding:8px; text-align:center; background-color:#D9D9D9; vertical-align:middle; max-width:240px; border:1px solid #000000; white-space:nowrap;">
<strong>Equivalent to (approx.)...</strong>
</td>
</tr>
<tr>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000;">
Category 1 ("Standard&nbsp;Speed")
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
2.25 Gbit/s<br />(75 MHz clock)
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:240px; border:1px solid #000000; white-space:nowrap;">
1280 × 720 at 60 Hz<br />
1920 × 1080 at 30 Hz
</td>
</tr>
<tr>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000;">
Category 2 ("High&nbsp;Speed")
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
10.2 Gbit/s<br />(340 MHz clock)
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:240px; border:1px solid #000000; white-space:nowrap;">
1920 × 1080 at 144 Hz<br />
2560 × 1440 at 75 Hz<br />
3840 × 2160 at 30 Hz<br />
</td>
</tr>
<tr>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000;">
"Premium High Speed"
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
18.0 Gbit/s<br />(600 MHz clock)
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:240px; border:1px solid #000000; white-space:nowrap;">
1920 × 1080 at 240 Hz<br />
2560 × 1440 at 144 Hz<br />
3840 × 2160 at 60 Hz<br />
5120 × 2880 at 30 Hz<br />
</td>
</tr>
<tr>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000;">
48G
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
48.0 Gbit/s<br />(1.2 GHz clock)
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:240px; border:1px solid #000000;">
<span style="white-space:nowrap;">
2560 × 1440 at 360 Hz<br />
3840 × 2160 at 180 Hz<br />
5120 × 2880 at 100 Hz<br />
7680 × 4320 at 50 Hz<br />
</span>
(HDMI&nbsp;2.1 uses compression to achieve higher modes like 8K&nbsp;60&nbsp;Hz)
</td>
</tr>
</table>
</div><br />
While it is tempting to call High Speed HDMI cables "HDMI&nbsp;1.4 cables", Premium High Speed cables "HDMI&nbsp;2.0 cables", and 48G cables "HDMI 2.1 cables" because the ratings of those cables match the maximum bandwidth limits set by those HDMI versions, this should be avoided for the reasons explained above. HDMI versions define more than just bandwidth limits, and calling a High Speed HDMI cable an "HDMI&nbsp;1.4 cable" implies that it is necessary in order to use HDMI&nbsp;1.4 features, but this is not the case. You only need it to use the 10.2&nbsp;Gbit/s bandwidth introduced by HDMI&nbsp;1.3/1.4, not for the other features. For this reason HDMI cables are simply rated by bandwidth, not by "HDMI version".<br /><br />
Also note that the certifications do not actually tell you anything about the maximum bandwidth of the cable, except that it is <i>at least</i> the listed amount. A High Speed certification simply means the cable was tested at 10.2&nbsp;Gbit/s and functioned properly at that speed. The maximum bandwidth that the cable can handle could actually be anything above that, be it 10.3&nbsp;Gbit/s, 20&nbsp;Gbit/s, or 100&nbsp;Gbit/s. Of course, you might think "if it could handle all the way up to the next tier of certification, it would just be rated at that tier instead!"; well, yes you'd think so, but unfortunately that isn't always the case, as explained in the next section.<br /><br />
</div>
<strong>High Speed HDMI Cables and HDMI&nbsp;2.0</strong><br /><br />
<div style="padding-left:20px;">
Some people say that High Speed HDMI cables (rated for 10.2&nbsp;Gbit/s) will still work for full HDMI&nbsp;2.0 bandwidth (18.0&nbsp;Gbit/s), while some say you need a Premium High Speed HDMI cable (rated for 18.0&nbsp;Gbit/s). Indeed it turns out many (but not all) High Speed HDMI cables <i>do work</i> for full HDMI&nbsp;2.0 bandwidth, so a Premium High Speed HDMI cable is not necessarily required. The story behind this is somewhat more complicated than most people realize.<br /><br />
When HDMI&nbsp;2.0 was first released, there were only two certification levels for HDMI cables, the same ones established back in HDMI&nbsp;1.3:
<ul>
<li>Category 1 ("Standard Speed") HDMI cables, which are tested to work at up to 2.25&nbsp;Gbit/s</li>
<li>Category 2 ("High Speed") HDMI cables, which are tested to work at up to 10.2&nbsp;Gbit/s</li>
</ul>
The Premium High Speed HDMI certification did not exist at that time. Contrary to what some people believe, the HDMI&nbsp;2.0 specification does not contain any kind of "HDMI&nbsp;2.0 compliance test" for cables. No changes to the cable testing procedures or the requirements for passing the certification were made compared to HDMI&nbsp;1.3/1.4.<br /><br />
For the next two years following the release of HDMI&nbsp;2.0, the HDMI Consortium insisted that cables which had passed the High Speed certification would be sufficient for the increased 18.0&nbsp;Gbit/s bandwidth introduced in HDMI&nbsp;2.0, and no higher levels of certification were introduced. During this time, a vast number of HDMI cables were manufactured which were capable of handling full HDMI&nbsp;2.0 bandwidth (18.0&nbsp;Gbit/s), but only received a High-Speed certification, the highest certification available at the time. Due to this, there are a large number of High Speed HDMI cables which <i>do work</i> at full 18.0&nbsp;Gbit/s HDMI&nbsp;2.0 bandwidth, despite not having the Premium High Speed certification. Most of these cables were never resubmitted for certification under the new certification tier once it was released, or if they were, they were sold again as a different product.<br /><br />
Many existing High Speed HDMI cables (manufactured long before HDMI&nbsp;2.0) also worked fine with the increased data rates, but despite the HDMI Consortium's initial claims not <i>all</i> certified High Speed HDMI cables could handle it. Finally, after numerous complaints and reports during the two years following the release of HDMI&nbsp;2.0, the HDMI Consortium revised their position on the matter and released a third cable certification tier, Premium High Speed HDMI, which actually tests cables for proper operation at 18.0&nbsp;Gbit/s.<br /><br />
<div style="border:1px #000000 solid; background-color:RGBA(128,128,128,0.1); font-family:'Courier New'; padding:4px;">
HDMI Licensing acknowledges the issue of some "high speed" cable not quite being up to the task of actually handling the full 2.0 bandwidth, saying:<br /><br />
"Although many current High Speed HDMI Cables in the market will perform as originally expected (and support 18Gbps), some unanticipated technical characteristics of some compliant High Speed HDMI Cables that affect performance at higher speeds have been found. These cables are compliant with the Category 2 HDMI Cable requirements and perform successfully at 10.2Gbps, but may fail at 18 Gbps."
</div><br />
So while many High Speed HDMI cables will handle the full 18.0&nbsp;Gbit/s bandwidth of HDMI&nbsp;2.0, it is not guaranteed, while a "Premium High Speed" HDMI cable has been tested to definitely work.<br /><br />
For a more in-depth explanations, I recommend reading these articles:<br />
<a href="http://www.bluejeanscable.com/articles/note-about-hdmi-2.htm">http://www.bluejeanscable.com/articles/note-about-hdmi-2.htm</a><br />
<a href="http://www.bluejeanscable.com/articles/premium-hdmi-cable.htm">http://www.bluejeanscable.com/articles/premium-hdmi-cable.htm</a>
<br /><br />
</div>
<strong>Is HDMI limited to 60&nbsp;Hz?</strong><br /><br />
<div style="padding-left:20px;">
No, it is not. No version of HDMI has <i>ever</i> been limited to 60&nbsp;Hz. Even HDMI&nbsp;1.0 was capable of supporting 120&nbsp;Hz at lower resolutions like 720p. HDMI&nbsp;1.3 added enough bandwidth to handle 144&nbsp;Hz at 1080p, and HDMI&nbsp;2.0 added enough to handle 144&nbsp;Hz at 1440p.<br /><br />
Some 120+&nbsp;Hz 1080p monitors will not accept signals above 60&nbsp;Hz over HDMI (such as the ASUS VG248QE or BenQ XL2411Z), but that is just a limitation of those particular products, and other monitors <i>do</i> accept 1080p&nbsp;144&nbsp;Hz signals over HDMI&nbsp;1.4 without any modification or overclocking such as the ViewSonic XG2401. HDMI as a whole does not, and has never had, a 60&nbsp;Hz limit.<br /><br />
A lot of confusing language is used when discussing connection interfaces (DVI, HDMI, etc.) which leads to these misconceptions. For example, maximum limits are often expressed as "HDMI&nbsp;1.0 has a maximum limit of 1080p&nbsp;60&nbsp;Hz". But this does not mean HDMI&nbsp;1.0 can't go higher than 60&nbsp;Hz, and can't go higher than 1080p. It just can't go higher with both at the same time. Connection interfaces don't have maximum resolutions or maximum refresh frequencies. They have a maximum bandwidth, which is the combination of resolution and frequency (among other things). HDMI&nbsp;1.3 increased the maximum bandwidth to just over double that of HDMI&nbsp;1.01.2, allowing for up to 144&nbsp;Hz at 1080p.<br /><br />
Some will argue <i>"The extra bandwidth in HDMI&nbsp;1.3 is only for 3D; it can't be used for 1080p 120+&nbsp;Hz; Support for 120+&nbsp;Hz at 1080p wasn't added until HDMI&nbsp;1.4b/2.0".</i> This is not really correct, and is based on a misunderstanding of what the word "support" means. HDMI does not need to have special "support" for any particular resolution or refresh frequency. Any resolution/frequency combination that falls within the bandwidth limit is allowed:<br /><br />
<div style="border:1px #000000 solid; background-color:RGBA(128,128,128,0.1); font-family:'Courier New'; padding:4px;">
<i>[Excerpt from page 84 of the HDMI Specification version 1.3a]</i><br /><br />
<strong>6.1 Overview</strong><br /><br />
HDMI allows any video format timing to be transmitted and displayed. To maximize interoperability between products, common DTV formats have been defined. [...] HDMI also allows vendor-specific formats to be used.<br /><br />
[...]<br /><br />
<strong>6.2 Video Format Support</strong><br /><br />
In order to provide maximum compatibility between video Sources and Sinks, specific minimum requirements have been specified for Sources and Sinks.
</div><br />
A "video format" in this context is any combination of resolution, refresh frequency, etc, such as "1920 × 1080 at 120&nbsp;Hz". HDMI allows <strong>any</strong> video format to be displayed, including custom formats that the monitor manufacturer may define at their discretion (within the allowed bandwidth of course).<br /><br />
Also note that under the "Video Format Support" heading, it does not say (as a lot of people might expect it to) "here is the master list of everything HDMI can do, if it's not listed here then HDMI can't do it" or something like that. The "video format support" section just adds <i>supporting material</i> for some specific formats, for standardization and compatibility purposes. This is what the HDMI specification means by the word "support"; it does not mean "capability". When the HDMI&nbsp;1.4b specification "added support" for 1080p 120&nbsp;Hz, it does not mean "added the capability" to run 1080p 120&nbsp;Hz, as if it wasn't possible until that point. It just means it has added some supporting material to the specification for standardization purposes.<br /><br />
As another example, one of the features of HDMI&nbsp;2.0 was that it "added support for 21:9 aspect ratio". This does not mean "added the capability to run at 21:9", and it does not mean previous versions were not capable of transmitting 21:9 images, and in fact the majority of 21:9 monitors (at the time of writing) use HDMI&nbsp;1.4a. The monitor manufacturers simply defined their own "vendor-specific formats" such as 2560×1080, programmed them into the monitor, and it works just fine, and is completely by-the-book. The "21:9 support" added in HDMI&nbsp;2.0 is not <i>necessary</i> to display 21:9 images, it's just helpful for some behind-the-scenes standardization purposes that consumers generally don't even need to worry about.<br /><br />
So even though "support" for 1080p 120&nbsp;Hz was not added until HDMI&nbsp;1.4b, manufacturers have still been free to implement 1080p 120+&nbsp;Hz over HDMI since version 1.3, and indeed some manufacturers have done this (for example with the ViewSonic XG2401 mentioned earlier, or the Seiki SE50UY04, which both have HDMI&nbsp;1.4a ports but accept 1080p 144/120&nbsp;Hz signals).<br /><br />
</div>
<strong>HDMI&nbsp;2.1 Notes</strong><br /><br />
<div style="padding-left:20px;">
The new HDMI&nbsp;2.1 version has recently (at the time of writing anyway) been announced. It increases the maximum transmission bandwidth to 48.0&nbsp;Gbit/s. New "48G" HDMI cables will be required to take advantage of the higher data rate, but other features of HDMI&nbsp;2.1 that are unrelated to bandwidth (such as dynamic HDR metadata or Game Mode VRR) will not require new cables.<br /><br />
What can be done with 48&nbsp;Gbit/s bandwidth? Some people say 8K 60&nbsp;Hz 4:4:4 uncompressed is possible, based on some quick math: 60&nbsp;frame/s × (7680&nbsp;×&nbsp;4320)&nbsp;px/frame × 24&nbsp;bit/px = 47,775,744,000&nbsp;bit/s, or 47.8&nbsp;Gbit/s, which does seem to fit (barely) within 48.0&nbsp;Gbit/s. However, this is incorrect as it is missing two things.<br /><br />
First, 48.0&nbsp;Gbit/s is the <i>transmission bandwidth</i> of HDMI&nbsp;2.1, not the data rate. The maximum data rate will be some fraction of the bandwidth, the exact numbers depending on the encoding scheme being used. Previous versions of HDMI used 8b/10b encoding, where the maximum data rate was 80% (8/10ths) of the bandwidth; for example, HDMI&nbsp;2.0 with a bandwidth of 18.0&nbsp;Gbit/s had a maximum data rate of 14.4&nbsp;Gbit/s. HDMI&nbsp;2.1 uses 16b/18b encoding, which gives it a maximum data rate of 42.<span style="text-decoration:overline">66</span>&nbsp;Gbit/s.<br /><br />
That alone is enough to show that HDMI&nbsp;2.1 isn't capable of 8K 60&nbsp;Hz uncompressed, since the 47.8&nbsp;Gbit/s data rate required is more than what HDMI&nbsp;2.1 provides. However, that isn't all; data rate required is actually greater than 47.8&nbsp;Gbit/s, because that calculation doesn't take timing format into account.<br /><br>
Timing format (such as CVT, CVT-RB, or CVT-R2) slightly increases the data rate required for a video signal. Displays need small pauses in the data stream between frames (known as blanking intervals), so in order to keep the framerate the same, during the time the data stream is active, it needs to be sent at a slightly higher rate than if it were being sent continuously. As such, the cabling system needs to be able to handle this slightly higher data rate. CVT-R2 is currently the most efficient standardized timing format. The overhead introduced by blanking scales with framerate since more frames means more blanking intervals. If you include overhead for CVT-R2 timing, 8K 60&nbsp;Hz with 24&nbsp;bit/px color would require 49.7&nbsp;Gbit/s, not 47.8.<br /><br />
So yes HDMI&nbsp;2.1 <strong>does</strong> need to use compression to achieve 8K 60&nbsp;Hz with 4:4:4 color, both in theory and in practice. According to the HDMI consortium, HDMI&nbsp;2.1 implements VESA's DSC&nbsp;1.2 compression algorithm for display modes beyond 8K with 4:2:0 color. DSC is claimed to be "visually lossless" (meaning yes it's lossy, but very unlikely to be noticeable), with near-zero latency and low cost/complexity, although no actual implementations of DSC have been seen in the market yet so no consumer testing has been done.
</div>
</div>
<!-- HDMI to DVI -->
<div id="HDMI_TO_DVI">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
HDMI Source to DVI Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=HDMI&input=DVI">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
HDMI Source to DVI Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#B7E1CD; vertical-align:top; max-width:300px; border:1px solid #000000;">
Yes
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Inline audio supported?
</td>
<td style="padding:8px; text-align:left; background-color:#F4C7C3; vertical-align:top; max-width:300px; border:1px solid #000000;">
Not usually (depends on the display)
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Image Quality:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to DVI
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Maximum Resolution / Frequency:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to Single-Link DVI<br /><br /><a id="HDMI_TO_DVI_LINK" href='javascript:void(0);' onclick="toggleTable('DVI', 'HDMI_TO_DVI'); Configurator();">Show DVI Limits</a>
</td>
</tr>
</table>
</div>
<div id="HDMI_TO_DVI_CONTAINER" align="center">&nbsp;</div>
<div style="padding-left:20px;">
A passive adapter can be used to connect an HDMI output to a DVI input. This is equivalent to a native <strong>Single-Link DVI-D</strong> connection. Inline audio is not supported. These adapters can still be used to connect to monitors that have Dual-Link DVI ports, but the connection will be limited to the capabilities of Single-Link DVI as outlined in the table below.<br /><br />
<strong>All HDMI to DVI passive adapters are <u>Single-Link only</u></strong>. HDMI to Dual-Link DVI passive adapters <strong>do not exist</strong>. Although most HDMI to DVI passive adapters are advertised as "Dual-Link" and may appear to have "Dual-Link" connectors on them, please be warned that these are fake. The extra pins on these DVI connectors are dummy pins which are not connected to anything, and the adapter will still only function as a Single-Link DVI adapter. It is physically impossible to create a passive HDMI to Dual-Link DVI adapter due to an insufficient number of pins on the HDMI connector.<br /><br />
Since HDMI is only capable of passively adapting to Single-Link DVI-D (and not DVI-I), this means it is not possible to make a chain of adapters from HDMI&nbsp;&nbsp;DVI&nbsp;&nbsp;VGA. Passive DVI to VGA adapters are not supported on all DVI ports, they only work in special DVI&nbsp;+&nbsp;VGA combo ports called <strong>DVI-I</strong>. An HDMI to DVI passive adapter only provides a standard DVI-D port, not DVI-I.<br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
An active adapter would be required to convert HDMI output to a full Dual-Link DVI signal, but at the time of writing I am not aware of any such adapters existing.<br /><br />
</div>
<hr>
<strong>Note 1:</strong> Any DVI-D device or cable will also work in a DVI-I port. If your display has a DVI-I port, you do not need to search specifically for an "HDMI to DVI-I" adapter.
</div>
<!-- HDMI to VGA -->
<div id="HDMI_TO_VGA">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
HDMI Source to VGA Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=HDMI&input=VGA">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
HDMI Source to VGA Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#F4C7C3; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
No
</td>
</tr>
</table>
</div>
<br />
<div style="padding-left:20px;">
It is not possible to connect HDMI output to VGA input with a passive adapter.<br /><br />
It is also not possible to create a chain of adapters from HDMI&nbsp;&nbsp;DVI&nbsp;&nbsp;VGA. Passive DVI to VGA adapters do not work in all DVI ports. They only work in special DVI + VGA combo ports called <strong>DVI-I</strong>. HDMI only supports passive adapters to DVI-D, not to DVI-I.<br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
Conversion from HDMI to VGA requires an active adapter. HDMI to VGA active adapters are fairly inexpensive and generally reliable.<br /><br />
HDMI to VGA active adapter (option 1; use with VGA cable):&nbsp;<a href="https://www.amazon.com/Rankie-Gold-Plated-Active-Adapter-Converter/dp/B00ZMV7RL2/">Amazon US</a><br />
HDMI to VGA active adapter (option 2; use with HDMI cable):&nbsp;<a href="https://www.amazon.com/gp/product/B01GFMW91E/">Amazon US</a>
</div>
</div>
<!-- DVI to DisplayPort -->
<div id="DVI_TO_DP">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
DVI Source to DisplayPort Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=DVI&input=DP">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
DVI Source to DisplayPort Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#F4C7C3; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
No
</td>
</tr>
</table>
</div>
<br />
<div style="padding-left:20px;">
A DVI output <strong>CANNOT</strong> be connected to a DisplayPort input with a passive adapter. Passive DisplayPort to DVI cables/adapters will only function from DisplayPort <strong>output</strong> to DVI <strong>input</strong>, not the other way around.<br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
Conversion from DVI to DisplayPort requires an active adapter.<br /><br />
Single-Link DVI-D to DisplayPort&nbsp;1.1 active adapter (option 1):&nbsp;<a href="https://www.amazon.com/SIIG-DisplayPort-Converter-Audio-CB-DP0J11-S1/dp/B007XQQ92M/">Amazon US</a><br />
Single-Link DVI-D to DisplayPort&nbsp;1.1 active adapter (option 2):&nbsp;<a href="https://www.amazon.com/dp/B01IPYTFQM">Amazon US</a><br />
Single-Link DVI-D to Mini DisplayPort&nbsp;1.1 active adapter:&nbsp;<a href="https://www.amazon.com/SIIG-DisplayPort-Converter-Audio-CB-DP0J11-S1/dp/B007VPFUA2/">Amazon US</a><br /><br />
</div>
<hr>
<strong>Note 1:</strong> Resolution and refresh frequency limitations on active adapters are subject to each individual product's limitations. Read the product description.<br /><br />
<strong>Note 2:</strong> Any DVI-D device or cable will also work in a DVI-I port. If your graphics card has a DVI-I port, you do not need to search specifically for a "DVI-I to DisplayPort" active adapter.<br /><br />
<strong>Note 3:</strong> Mini DisplayPort is functionally identical to DisplayPort, the only difference is the physical shape. DisplayPort to Mini DisplayPort adapters can be used freely without affecting the operation or compatibility of other devices in any way.
</div>
<!-- DVI to HDMI -->
<div id="DVI_TO_HDMI">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
DVI Source to HDMI Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=DVI&input=HDMI">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
DVI Source to HDMI Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#B7E1CD; vertical-align:top; max-width:300px; border:1px solid #000000;">
Yes
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Inline audio supported?
</td>
<td style="padding:8px; text-align:left; background-color:#B7E1CD; vertical-align:top; max-width:300px; border:1px solid #000000;">
Yes
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Image Quality:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to HDMI
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Maximum Resolution / Frequency:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to HDMI, version dependent on source HDMI version; see article below)<br /><br /><a id="DVI_TO_HDMI_LINK" href='javascript:void(0);' onclick="toggleTable('HDMI', 'DVI_TO_HDMI'); Configurator();">Show HDMI Limits</a>
</td>
</tr>
</table>
</div>
<div id="DVI_TO_HDMI_CONTAINER" align="center">&nbsp;</div>
<div style="padding-left:20px;">
A passive adapter can be used to connect a DVI output to an HDMI input. It does not matter what type of DVI port is used (DVI-D, DVI-I, Single/Dual-Link, etc.), they will all function identically in this configuration.<br /><br />
This is equivalent to a native <strong>HDMI</strong> connection. The HDMI version is the same as whatever version is supported by the graphics card. This does mean the full feature set and bandwidth of HDMI is available in this configuration, including inline audio, YC<sub>B</sub>C<sub>R</sub> and chroma subsampling, and possibly even HDMI&nbsp;2.0 data rates if the graphics card supports HDMI&nbsp;2.0 (however, most DVI to HDMI cables/adapters will not be able to achieve this since they were not designed to handle such high data rates; most DVI to HDMI passive adapters will be limited to HDMI&nbsp;1.4 bandwidth). <strong>Yes, this configuration is equivalent to using a native HDMI to HDMI connection in all respects, it is the same as if you were connecting from a built-in HDMI port on the graphics card</strong>. It is <strong>NOT</strong> strictly limited to the capabilities of Single-Link DVI or Dual-Link DVI.<br /><br />
However, please note that this information does not apply to the reverse configuration (HDMI output to DVI input). Adapter compatibility and rules are <strong>not</strong> symmetric. Please switch the Input/Output selections to see that configuration.<br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
To my knowledge, there are no active adapters available for converting DVI to HDMI. However, there is almost no situation in which such an adapter would be helpful. As long as the graphics card supports HDMI&nbsp;1.3 or above, a passive DVI to HDMI adapter will be equivalent to a native HDMI&nbsp;1.3 connection, which provides roughly the same bandwidth as Dual-Link DVI, and if the graphics card supports HDMI&nbsp;2.0 or above, then a passive DVI to HDMI adapter will provide much higher bandwidth than an active Dual-Link DVI to HDMI adapter could, with better reliability and much lower cost.<br /><br />
</div>
<hr>
<strong>Note 1:</strong> Any DVI-D device or cable will also work in a DVI-I port. If your graphics card has a DVI-I port, you do not need to search specifically for a "DVI-I to HDMI" adapter.
</div>
<!-- DVI to DVI-->
<div id="DVI_TO_DVI">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
DVI
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=DVI">Link</a>]</td>
</tr></table>
<br />
<div align="center" id="DVI_TO_DVI_inlineTable">&nbsp;</div>
<script>document.getElementById("DVI_TO_DVI_inlineTable").innerHTML = document.getElementById("DVI_TABLE").innerHTML</script>
<br />
<div id="DVI_TO_DVI_identifierContainer"></div>
<script>document.getElementById("DVI_TO_DVI_identifierContainer").innerHTML = document.getElementById("DVI_TYPE_TABLE").innerHTML;</script>
<br />
<strong>What's the difference between DVI-D and DVI-I?</strong><br /><br />
<div style="padding-left:20px;">
DVI-I is a DVI + VGA combo port. It does everything a regular DVI port (DVI-D) does, but also supports DVI-to-VGA passive adapters. DVI-D ports do <strong>not</strong> support these adapters.<br /><br />
Besides VGA adapter compatibility, DVI-D and DVI-I are exactly the same, so if you are not using a VGA adapter then there is no difference between them. Any other cable or device that works in a DVI-I port will also function identically in a DVI-D port, and vice versa.<br /><br />
</div>
<strong>What's the difference between Single-Link DVI and Dual-Link DVI?</strong><br /><br />
<div style="padding-left:20px;">
Single-Link DVI only has half as many data wires, so only half as much data can be transmitted per second. This does not affect image quality, but does result in a lower maximum limit on the resolution / refresh frequency (refer to the table above).<br /><br />
Generally only Dual-Link DVI ports are actually used in devices in the real world, since Dual-Link DVI ports can operate in either Dual-Link or Single-Link mode for compatibility with any device. While there are some devices with Single-Link DVI ports, no one makes devices with <i>dedicated</i> Single-Link DVI ports (i.e. with the center pins blocked); even when Single-Link DVI ports are used (which is somewhat common on lower-end monitors, like standard 1080p 60&nbsp;Hz) the center pins are left unblocked so that Dual-Link DVI cables are still compatible.<br /><br />
Most Single-Link DVI connections come from adapters. HDMI-to-DVI and DisplayPort-to-DVI passive adapters for example only provide Single-Link DVI connections, since HDMI and DP only have enough pins to form one DVI data link, not two. These adapters will still function in Dual-Link DVI ports, but will be limited to the bandwidth of Single-Link DVI.<br /><br />
</div>
<strong>What kind of DVI cable do I need?</strong><br /><br />
<div style="padding-left:20px;">
If you are connecting two DVI devices together, a standard <strong>Dual-Link DVI-D</strong> cable will work between any two types of DVI ports. It doesn't matter whether they are DVI-D, DVI-I, Single-Link, or Dual-Link.<br /><br />
</div>
<strong>How does the image quality of DVI compare with DisplayPort and HDMI?</strong><br /><br />
<div style="padding-left:20px;">
DVI lacks most of the ancillary features that HDMI and DisplayPort have (such as inline audio, HDR, or FreeSync), but picture-wise there will be no visual difference between any of these three interfaces on most displays.<br /><br />
DVI supports up to a maximum color depth of 24&nbsp;bit/px (16.7 million colors) and enough video bandwidth for 1920×1080 at 144&nbsp;Hz or 2560×1600 at 60&nbsp;Hz. Most displays do not exceed these limits, and so on these displays DVI provides an identical image to HDMI or DisplayPort. HDMI and DisplayPort are only necessary for monitors which exceed those specs, such as 4K 60&nbsp;Hz monitors, or monitors with 30&nbsp;bit/px color depth (1.07 billion colors), in which case DVI cannot be used.<br /><br />
</div>
<strong>Isn't DVI limited to 2560×1600?</strong><br /><br />
<div style="padding-left:20px;">
No, DVI does not have any inherent limit on resolution. Any combination of resolution and refresh frequency is allowed as long as it fits within DVI's maximum bandwidth. Refer to the table above for some valid combinations.<br /><br />
Sometimes, specific products (such as a certain graphics card or monitor) may be limited to 2560×1600 over DVI, but that is a limitation of that particular product, not DVI as a whole. Sometimes, this is a software restriction which may be updated over time or overridden with custom resolutions. Even more often (especially with graphics card spec sheets) the supposed "2560×1600" maximum is simply incorrect, and was written into the spec sheet because 2560×1600 was the highest resolution available at the time and the manufacturer wanted to reassure people that the graphics card would support those monitors, when in reality it can go even higher. For example, the NVIDIA GeForce GTX 580 lists a maximum resolution of 2560×1600 over DVI, but can be used with 4K monitors at 30&nbsp;Hz without issue.
</div>
</div>
<!-- DVI to VGA -->
<div id="DVI_TO_VGA">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
DVI Source to VGA Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=DVI&input=VGA">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
DVI Source to VGA Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#FCE8B2; vertical-align:top; max-width:300px; border:1px solid #000000;">
Yes (DVI-I) / No (DVI-D)
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Inline audio supported?
</td>
<td style="padding:8px; text-align:left; background-color:#B7E1CD; vertical-align:top; max-width:300px; border:1px solid #000000;">
No
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Image Quality:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to VGA
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Maximum Resolution / Frequency:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to VGA
</td>
</tr>
</table>
</div>
<br />
<div id="DVI_TO_VGA_identifierContainer"></div>
<script>document.getElementById("DVI_TO_VGA_identifierContainer").innerHTML = document.getElementById("DVI_TYPE_TABLE").innerHTML;</script>
<br />
<div style="padding-left:20px;">
A passive adapter can be used to connect a DVI output to a VGA input. <strong>These adapters will only work in special DVI + VGA combo ports called <u>DVI-I</u></strong>. They will <strong>NOT</strong> work in a standard DVI-D port.<br /><br />
Using a passive DVI to VGA adapter is equivalent to a native VGA connection.<br /><br />
DVI to VGA passive adapter:&nbsp;<a href="https://www.amazon.com/5-Pin-DVI-15-Pin-VGA-Adapter/dp/B0026JMO16/">Amazon US</a><br />
DVI to VGA passive adapter:&nbsp;<a href="https://www.amazon.com/StarTech-DVI-Cable-Adapter-DVIVGAMF/dp/B000067SOH/">Amazon US</a><br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
If your computer only has a DVI-D port available (not DVI-I), then a DVI-D to VGA active adapter is required.<br /><br />
DVI-D to VGA active adapter:&nbsp;<a href="https://www.amazon.com/gofanco-Active-DVI-D-Converter-Black/dp/B01FL7H7HA/">Amazon US</a>
</div>
</div>
<!-- VGA to DisplayPort -->
<div id="VGA_TO_DP">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
VGA Source to DP Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=VGA&input=DP">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
VGA Source to DisplayPort Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#F4C7C3; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
No
</td>
</tr>
</table>
</div>
<br />
<div style="padding-left:20px;">
It is not possible to connect VGA output to DisplayPort input with a passive adapter.<br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
An active adapter would be required to convert VGA to DisplayPort, but at the time of writing I am not aware of any such adapters existing.
</div>
</div>
<!-- VGA to HDMI -->
<div id="VGA_TO_HDMI">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
VGA Source to HDMI Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=VGA&input=HDMI">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
VGA Source to HDMI Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#F4C7C3; vertical-align:top; min-width: 150px; max-width:300px; border:1px solid #000000;">
No
</td>
</tr>
</table>
</div>
<br />
<div style="padding-left:20px;">
It is not possible to connect VGA output to HDMI input with a passive adapter.<br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
Conversion from VGA to HDMI requires an active adapter.<br /><br />
VGA to HDMI active adapter (option 1; video + audio):&nbsp;<a href="https://www.amazon.com/Costech-Converter-monitors-displayers-Computer/dp/B00Y3IGB62/">Amazon US</a><br />
VGA to HDMI active adapter (option 2; video only):&nbsp;<a href="https://www.amazon.com/gp/product/B00IDFGK1W/">Amazon US</a>
</div>
</div>
<!-- VGA to DVI -->
<div id="VGA_TO_DVI">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
VGA Source to DVI Display
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=VGA&input=DVI">Link</a>]</td>
</tr></table>
<br />
<strong>Passive Adapters</strong><br /><br />
<div align="center">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="2" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
VGA Source to DVI Display
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Possible with a passive adapter?
</td>
<td style="padding:8px; text-align:left; background-color:#FCE8B2; vertical-align:top; max-width:300px; border:1px solid #000000;">
Yes (DVI-I) / No (DVI-D)
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Inline audio supported?
</td>
<td style="padding:8px; text-align:left; background-color:#B7E1CD; vertical-align:top; max-width:300px; border:1px solid #000000;">
No
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Image Quality:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to VGA
</td>
</tr>
<tr>
<td style="padding:8px; font-weight:bold; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Maximum Resolution / Frequency:
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:top; max-width:300px; border:1px solid #000000;">
Equivalent to VGA
</td>
</tr>
</table>
</div>
<br />
<div id="VGA_TO_DVI_identifierContainer"></div>
<script>document.getElementById("VGA_TO_DVI_identifierContainer").innerHTML = document.getElementById("DVI_TYPE_TABLE").innerHTML;</script>
<br />
<div style="padding-left:20px;">
A passive adapter can be used to connect VGA output to DVI input <strong>only if the DVI input is a <u>DVI-I</u> port</strong> (this is very uncommon). Most displays have DVI-D input ports, not DVI-I. Passive DVI to VGA adapters will not work in DVI-D ports.<br /><br />
Using a passive DVI to VGA adapter is equivalent to a native VGA connection from the graphics card.<br /><br />
DVI to VGA passive adapter:&nbsp;<a href="https://www.amazon.com/5-Pin-DVI-15-Pin-VGA-Adapter/dp/B0026JMO16/">Amazon US</a><br />
DVI to VGA passive adapter:&nbsp;<a href="https://www.amazon.com/StarTech-DVI-Cable-Adapter-DVIVGAMF/dp/B000067SOH/">Amazon US</a><br /><br />
</div>
<strong>Active Adapters</strong><br /><br />
<div style="padding-left:20px;">
Conversion from VGA to DVI-D would require an active adapter, but I'm not aware of any such adapters existing at the time of writing.
</div>
</div>
<!-- VGA to VGA -->
<div id="VGA_TO_VGA">
<table style="width:100%; table-layout:fixed; border-collapse:collapse; border:0px #000000 solid;"><tr>
<td style="width:40px; min-width:40px; max-width:40px;"></td>
<td style="text-align:center; font-size:18px; font-weight:bold;">
VGA
</td>
<td style="width:40px; min-width:40px; max-width:40px; text-align:right; vertical-align:top;">[<a href=".?output=VGA">Link</a>]</td>
</tr></table>
<br />
<strong>What is the maximum resolution / refresh frequency of VGA?</strong><br /><br />
<div style="padding-left:20px;">
VGA does not have any defined limits. Its capabilities are dependent on the individual limits of the graphics device and the display, which vary by product. The last generations of VGA devices could rival the capabilities of Dual-Link DVI, with some VGA displays handling signals as high as 2304×1440 at 80&nbsp;Hz (like the Sony GDM-FW900). While many graphics cards list a maximum analog resolution of 2048×1536, this is often incorrect, and they do work with higher resolutions as long as the monitor supports it.<br /><br />
</div>
<strong>Can VGA be used for 1080p 60&nbsp;Hz?</strong><br /><br />
<div style="padding-left:20px;">
Yes, any reasonably modern VGA device will handle 1080p 60&nbsp;Hz over VGA.<br /><br />
</div>
<strong>Is VGA limited to 60&nbsp;Hz?</strong><br /><br />
<div style="padding-left:20px;">
No, VGA is not limited to 60&nbsp;Hz. Many CRT monitors (which only took VGA input) operated at 75&nbsp;Hz or 85&nbsp;Hz standard. VGA has no defined limit on refresh frequency, and can (and has) been used for video formats exceeding 120&nbsp;Hz or even 240&nbsp;Hz on high-end CRTs, if the resolution is lowered enough.<br /><br />
At medium-to-high resolutions like 1920×1080 or above, 120+&nbsp;Hz should not be expected since this does push the limits of what most VGA devices are capable of handling, but VGA is in no way limited to 60&nbsp;Hz as a whole.<br /><br />
</div>
<strong>How does the image quality of VGA compare to more modern interfaces like DVI, HDMI, and DisplayPort?</strong><br /><br />
<div style="padding-left:20px;">
In general, the image quality of VGA is acceptable and usually difficult to distinguish from DVI, HDMI, and DisplayPort, but it depends on the specific situation and equipment. VGA signals can be degraded by electromagnetic interference, so the image quality may suffer depending on the quality of shielding in the VGA cable. Damage to the cable may also lead to a color-tinted screen if one of the color channels drops out. Image artifacts such as VGA ghosting (the echo/smearing effect; not to be confused with motion trails left behind fast-moving objects, which is also called ghosting) may also appear as a result of poor quality VGA cables.<br /><br />
VGA also lacks some of the image handshake protocols that digital interfaces have, which can lead to the image being "off-center". Most displays have adjustment options built into their on-screen menu to align the image manually.<br /><br />
VGA is generally considered a fallback option for situations in which DVI, HDMI, or DisplayPort are not available.
</div>
</div>
</div>
<!-------------------------------- HTML FRONTEND -------------------------------->
<div align="center" width="100%">
<div align="left">
<table align="center">
<tr>
<td style="padding-bottom:10px">
<strong>How to use:</strong><br />
<ul>
<li>Use the <u><strong>output</strong></u> (left) dropdown only, for general information about an interface (DVI, HDMI, etc.)</li>
<li>Use the <u><strong>input</strong></u> (right) dropdown only, to see all options for connecting to a specific port on a display</li>
<li>Use <u><strong>both</strong></u> dropdowns for information about a specific adapter combination — make sure they are in the right order!</li>
</ul>
</td>
</tr>
</table>
</div>
<div style="overflow-x:auto" id="TOP";>
<table align="center" style="border:0px solid #000000; border-spacing:0px; font-family:Arial; font-size:14px;">
<tr>
<td>&nbsp;</td>
<td style="text-align:center;">
<strong>Output</strong>
</td>
<td>&nbsp;</td>
<td style="text-align:center;">
<strong>Input</strong>
</td>
<td>&nbsp;</td>
</tr>
<tr>
<td style="text-align:right; vertical-align:middle; padding:4px; width:160px;">(Computer / Source)</td>
<td style="text-align:center; vertical-align:middle; padding:4px; width:100px;">
<select id="Output" onchange="Configurator()">
<option value="blank">&nbsp;</option>
<option value="DP">DisplayPort</option>
<option value="HDMI">HDMI</option>
<option value="DVI">DVI</option>
<option value="VGA">VGA</option>
</select>
</td>
<td style="text-align:center; vertical-align:middle; padding:4px; width:80px;">
<button onclick="switchIO()" type="button"><span style="color:#000000;">&nbsp;&nbsp;Switch&nbsp;&nbsp;</span></button>
</td>
<td style="text-align:center; vertical-align:middle; padding:4px; width:100px;">
<select id="Input" onchange="Configurator()">
<option value="blank">&nbsp;</option>
<option value="DP">DisplayPort</option>
<option value="HDMI">HDMI</option>
<option value="DVI">DVI</option>
<option value="VGA">VGA</option>
</select>
</td>
<td style="text-align:left; vertical-align:middle; padding:4px; width:160px;">(Monitor / TV / Display)</td>
</tr>
<tr>
<td style="text-align:center; padding-top:4px;" colspan="255">
(Note: <strong>Order matters!</strong> Make sure that the Output / Input are in the correct order and not reversed.)
</td>
</tr>
</table>
</div>
<hr />
<div id="maintext" style="max-width:1000px; line-height:150%;" align="left">&nbsp;</div>
<!-- LTT SECTION -->
<div id="LTT_Section" align="left" style="max-width:1024px;">
<div><strong>Click to Expand:</strong><br /><br /></div>
<!-- Maximum Refresh Frequency and Resolution of Everything -->
<table id="maximum_limits" style="width:100%; padding:8px; border-collapse:collapse; border:1px solid RGBA(192,192,192,0.25); table-layout:fixed;">
<tr id="maximum_limits_header" style="background-color:RGBA(0,0,0,0.16);">
<td onclick="toggleSpoilerTable('maximum_limits')" style="cursor:pointer; max-width:20px; min-width:20px; width:20px; text-align:center; vertical-align:middle; padding-left:12px;"><span style="font-size: 22px; position:relative; top:-0.05em;">&#8250;</span></td>
<td onclick="toggleSpoilerTable('maximum_limits')" style="cursor:pointer; padding:8px; padding-left:12px;">
<strong>Maximum Refresh Frequency and Resolution of Everything</strong>
</td>
<td style="max-width:40px; min-width:40px; width:40px; text-align:right; padding-right:8px; white-space:nowrap;">[<a href=".?section=maximum_limits">Link</a>]</td>
</tr>
<tr id="maximum_limits_content" style="display:none;"><td colspan="3" style="padding:16px; background-color:RGBA(40,40,40,0.02);">
<div>
<div align="center">
<div style="font-size:18px; font-weight:bold; padding:8px;">DisplayPort</div>
<div id="LIMIT_SECTION_DP"></div><br />
<div style="font-size:18px; font-weight:bold; padding:8px;">HDMI</div>
<div id="LIMIT_SECTION_HDMI"></div><br />
<div style="font-size:18px; font-weight:bold; padding:8px;">DVI</div>
<div id="LIMIT_SECTION_DVI"></div><br />
</div>
<script>
document.getElementById("LIMIT_SECTION_DVI").innerHTML = document.getElementById("DVI_TABLE").innerHTML;
document.getElementById("LIMIT_SECTION_HDMI").innerHTML = document.getElementById("HDMI_TABLE").innerHTML;
document.getElementById("LIMIT_SECTION_DP").innerHTML = document.getElementById("DP_TABLE").innerHTML;
</script>
</div>
</td></tr>
<tr id="maximum_limits_footer" onclick="scrollDiff('maximum_limits'); toggleSpoilerTable('maximum_limits');" style="background-color:RGBA(0,0,0,0.16); cursor:pointer; display:none;"><td colspan="3" style="padding:8px; padding-left:16px; font-weight:bold;">Close</td></tr>
</table>
<br /><br />
<!-- Which Cable Type Should I Use? -->
<table id="which_cable_type" style="width:100%; padding:8px; border-collapse:collapse; border:1px solid RGBA(192,192,192,0.25); table-layout:fixed;">
<tr id="which_cable_type_header" style="background-color:RGBA(0,0,0,0.16);">
<td onclick="toggleSpoilerTable('which_cable_type')" style="cursor:pointer; max-width:20px; min-width:20px; width:20px; text-align:center; vertical-align:middle; padding-left:12px;"><span style="font-size: 22px; position:relative; top:-0.05em;">&#8250;</span></td>
<td onclick="toggleSpoilerTable('which_cable_type')" style="cursor:pointer; padding:8px; padding-left:12px;">
<strong>Which Cable Type Should I Use? (DisplayPort vs. HDMI vs. DVI vs. VGA)</strong>
</td>
<td style="max-width:40px; min-width:40px; width:40px; text-align:right; padding-right:8px; white-space:nowrap;">[<a href=".?section=which_cable_type">Link</a>]</td>
</tr>
<tr id="which_cable_type_content" style="display:none;"><td colspan="3" style="padding:16px; background-color:RGBA(40,40,40,0.02);">
<div>
<strong>Which Cable Type Should I Use?</strong><br /><br />
<div style="padding-left:20px;">
It's generally recommended to avoid using VGA for computer monitors when possible. While it does work fine for most situations, the image quality can be degraded depending on the quality of the cable, and it's relatively easy to damage the cable which often results in color channels dropping out and requiring you to wiggle the cable around, and eventually replace it. On the other hand, VGA can be useful in some situations for consoles, and for using computers/laptops on TVs, since it usually avoids the overscan problems seen with HDMI (where the desktop is cut off on the edges), as well as HDCP compatibility issues that consoles sometimes have.
<br /><br />
</div>
<strong>Between DVI, HDMI, and DisplayPort:</strong>
<div style="padding-left:20px;">
<ul>
<li>DVI can do up to 1920×1080 at 144&nbsp;Hz or 2560×1600 at 60&nbsp;Hz (using Dual-Link DVI)</li>
<li>DVI has a maximum color depth of 24&nbsp;bit/px (16.7 million colors)</li>
<li>DVI does not support any extra features like audio, HDR, or FreeSync</li>
</ul>
But if your monitor's specs don't go beyond these limitations, then there is no difference between using DVI, HDMI, and DisplayPort. For a standard monitor which is limited to (for example) 1080p 60&nbsp;Hz 24&nbsp;bit/px, all three will produce identical images.<br /><br />
</div>
<strong>So HDMI and DisplayPort don't have better image quality than DVI?</strong><br /><br />
<div style="padding-left:20px;">
That's correct. Between DVI, HDMI, and DisplayPort, there is no difference in image quality when the same image settings are used. The difference is that HDMI and DisplayPort support a wider range of possible settings, so they can be used for situations that DVI can't be used for, like 4K 60&nbsp;Hz or 30&nbsp;bit/px color depth. But these extra capabilities don't make them any better at doing the other things.
<br /><br />
Basically it works like this; DVI can do some stuff. HDMI and DisplayPort can do all the stuff that DVI can do, plus some more. But the stuff that they have in common with DVI, they don't do any better than DVI does, it's just that they have extra capabilities beyond that. If you don't have a monitor that actually uses those extra capabilities, then there is no advantage to using DisplayPort or HDMI compared to DVI.
<br /><br />
At the moment, the vast majority of displays still fall within the capabilities of DVI, so HDMI and DisplayPort are only necessary if you want the extra features like inline audio, or for higher-end display formats like 2560×1440 at 144&nbsp;Hz, or 4K.
<br /><br />
</div>
<strong>What about between HDMI and DisplayPort?</strong><br /><br />
<div style="padding-left:20px;">
It's pretty much the same as between DVI and HDMI / DP, just between the different versions of HDMI and DisplayPort instead. There is no difference in image quality between HDMI and DisplayPort. They both produce identical images when the same image settings are used. The choice between HDMI and DisplayPort only matters if one of them (usually HDMI) doesn't support the full specs of your monitor. For example, some 4K displays only have HDMI&nbsp;1.4 and DisplayPort&nbsp;1.2. Since HDMI&nbsp;1.4 can't do 4K 60&nbsp;Hz, but DisplayPort&nbsp;1.2 can, you should use DisplayPort. However, if the monitor has an HDMI version which <i>does</i> support 4K 60&nbsp;Hz (like HDMI&nbsp;2.0), then it doesn't matter whether you use HDMI or DisplayPort.
<br /><br />
You can check the maximum resolution and refresh frequency of each interface and version in the section above ("Maximum Refresh Frequency and Resolution of Everything").
<br /><br />
</div>
</div>
</td></tr>
<tr id="which_cable_type_footer" onclick="scrollDiff('which_cable_type'); toggleSpoilerTable('which_cable_type');" style="background-color:RGBA(0,0,0,0.16); cursor:pointer; display:none;"><td colspan="3" style="padding:8px; padding-left:16px; font-weight:bold;">Close</td></tr>
</table>
<br /><br />
<!-- Do HDMI Cables Have Versions? -->
<table id="hdmi_cable_versions" style="width:100%; padding:8px; border-collapse:collapse; border:1px solid RGBA(192,192,192,0.25); table-layout:fixed;">
<tr id="hdmi_cable_versions_header" style="background-color:RGBA(0,0,0,0.16);">
<td onclick="toggleSpoilerTable('hdmi_cable_versions')" style="cursor:pointer; max-width:20px; min-width:20px; width:20px; text-align:center; vertical-align:middle; padding-left:12px;"><span style="font-size: 22px; position:relative; top:-0.05em;">&#8250;</span></td>
<td onclick="toggleSpoilerTable('hdmi_cable_versions')" style="cursor:pointer; padding:8px; padding-left:12px;">
<strong>Do HDMI Cables Have Versions?</strong>
</td>
<td style="max-width:40px; min-width:40px; width:40px; text-align:right; padding-right:8px; white-space:nowrap;">[<a href=".?section=hdmi_cable_versions">Link</a>]</td>
</tr>
<tr id="hdmi_cable_versions_content" style="display:none;"><td colspan="3" style="padding:16px; background-color:RGBA(40,40,40,0.02);">
<div>
<strong>Do HDMI cables have versions?</strong><br /><br />
<div style="padding-left:20px;">
No, HDMI cables do not have versions. In fact, advertising a cable as an "HDMI&nbsp;1.4 cable" or "HDMI&nbsp;2.0 cable" or "HDMI&nbsp;2.0 compliant" (etc.) has been banned by the HDMI Licensing authority since 2009 and is a violation of the licensing agreement that cable manufacturers and vendors must sign with them in order to legally use the HDMI logo and trademarks. Unfortunately HDMI Licensing does not actively enforce this, since it would involve quite a considerable legal campaign at this point. Nonetheless, the creators of the HDMI specification have specifically prohibited classifying HDMI cables by their "HDMI version", because this is not actually a property that cables have in the first place.<br /><br />
</div>
<strong>So does that mean all HDMI cables are the same?</strong><br /><br />
<div style="padding-left:20px;">
No. There are several different "levels" or "categories" of HDMI cables, rated by maximum bandwidth. <i>This is not the same as an "HDMI version"</i>. HDMI version and feature support are not affected by cables. Even a Standard Speed HDMI cable can support an HDMI&nbsp;2.0 or HDMI&nbsp;2.1 connection between devices, and while the maximum bandwidth may be limited (the full 48.0&nbsp;Gbit/s of HDMI&nbsp;2.1 will not be available, for example), all other version-specific features such as HDR and VRR will still work. Using a so-called "HDMI&nbsp;1.4 cable" (a High Speed HDMI cable) between two HDMI&nbsp;2.0 devices will not "downgrade the connection to HDMI&nbsp;1.4" and prevent all HDMI 2.0 features from working as some people believe; the <u>only</u> feature that is affected by the cable (besides inline Ethernet) is the maximum bandwidth, which is why cables are rated by bandwidth, and not by "HDMI version".<br /><br />
</div>
<div align="center" style="overflow-x:auto;">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:150%;">
<tr>
<td colspan="3" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
HDMI Cable Categories
</td>
</tr>
<tr>
<td style="padding:8px; text-align:center; background-color:#D9D9D9; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
<strong>Certification Name</strong>
</td>
<td style="padding:8px; text-align:center; background-color:#D9D9D9; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
<strong>Tested up to...</strong>
</td>
<td style="padding:8px; text-align:center; background-color:#D9D9D9; vertical-align:middle; max-width:240px; border:1px solid #000000; white-space:nowrap;">
<strong>Equivalent to (approx.)...</strong>
</td>
</tr>
<tr>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000;">
Category 1 ("Standard&nbsp;Speed")
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
2.25 Gbit/s<br />(75 MHz clock)
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:240px; border:1px solid #000000; white-space:nowrap;">
1280 × 720 at 60 Hz<br />
1920 × 1080 at 30 Hz
</td>
</tr>
<tr>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000;">
Category 2 ("High&nbsp;Speed")
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
10.2 Gbit/s<br />(340 MHz clock)
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:240px; border:1px solid #000000; white-space:nowrap;">
1920 × 1080 at 144 Hz<br />
2560 × 1440 at 75 Hz<br />
3840 × 2160 at 30 Hz<br />
</td>
</tr>
<tr>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000;">
"Premium High Speed"
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
18.0 Gbit/s<br />(600 MHz clock)
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:240px; border:1px solid #000000; white-space:nowrap;">
1920 × 1080 at 240 Hz<br />
2560 × 1440 at 144 Hz<br />
3840 × 2160 at 60 Hz<br />
5120 × 2880 at 30 Hz<br />
</td>
</tr>
<tr>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000;">
48G
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; white-space:nowrap;">
48.0 Gbit/s<br />(1.2 GHz clock)
</td>
<td style="padding:8px; text-align:left; background-color:#ffffff; vertical-align:middle; max-width:240px; border:1px solid #000000;">
<span style="white-space:nowrap;">
2560 × 1440 at 360 Hz<br />
3840 × 2160 at 180 Hz<br />
5120 × 2880 at 100 Hz<br />
7680 × 4320 at 50 Hz<br />
</span>
(HDMI&nbsp;2.1 uses compression to achieve higher modes like 8K&nbsp;60&nbsp;Hz)
</td>
</tr>
</table>
</div><br />
<div style="padding-left:20px;">
While it is tempting to call High Speed HDMI cables "HDMI&nbsp;1.4 cables", Premium High Speed cables "HDMI&nbsp;2.0 cables", and 48G cables "HDMI 2.1 cables" because the ratings of those cables match the maximum bandwidth limits set by those HDMI versions, this should be avoided for the reasons explained above. HDMI versions define more than just bandwidth limits, and calling a High Speed HDMI cable an "HDMI&nbsp;1.4 cable" implies that it is necessary in order to use HDMI&nbsp;1.4 features, but this is not the case. You only need it to use the 10.2&nbsp;Gbit/s bandwidth introduced by HDMI&nbsp;1.3/1.4, not for the other features. For this reason HDMI cables are simply rated by bandwidth, not by "HDMI version".<br /><br />
Also note that the certifications do not actually tell you anything about the maximum bandwidth of the cable, except that it is <i>at least</i> the listed amount. A High Speed certification simply means the cable was tested at 10.2&nbsp;Gbit/s and functioned properly at that speed. The maximum bandwidth that the cable can handle could actually be anything above that, be it 10.3&nbsp;Gbit/s, 20&nbsp;Gbit/s, or 100&nbsp;Gbit/s. Of course, you might think "if it could handle all the way up to the next tier of certification, it would just be rated at that tier instead!"; well, yes you'd think so, but unfortunately that isn't always the case, as we'll see below.<br /><br />
</div>
<strong>High Speed HDMI Cables and HDMI&nbsp;2.0</strong><br /><br />
<div style="padding-left:20px;">
Some people say that High Speed HDMI cables (rated for 10.2&nbsp;Gbit/s) will still work for full HDMI&nbsp;2.0 bandwidth (18.0&nbsp;Gbit/s), while some say you need a Premium High Speed HDMI cable (rated for 18.0&nbsp;Gbit/s). Indeed it turns out many (but not all) High Speed HDMI cables <i>do work</i> for full HDMI&nbsp;2.0 bandwidth, so a Premium High Speed HDMI cable is not necessarily required. The story behind this is somewhat more complicated than most people realize.<br /><br />
When HDMI&nbsp;2.0 was first released, there were only two certification levels for HDMI cables, the same ones established back in HDMI&nbsp;1.3:
<ul>
<li>Category 1 ("Standard Speed") HDMI cables, which are tested to work at up to 2.25&nbsp;Gbit/s</li>
<li>Category 2 ("High Speed") HDMI cables, which are tested to work at up to 10.2&nbsp;Gbit/s</li>
</ul>
The Premium High Speed HDMI certification did not exist at that time. Contrary to what some people believe, the HDMI&nbsp;2.0 specification does not contain any kind of "HDMI&nbsp;2.0 compliance test" for cables. No changes to the cable testing procedures or the requirements for passing the certification were made compared to HDMI&nbsp;1.3/1.4.<br /><br />
For the next two years following the release of HDMI&nbsp;2.0, the HDMI Consortium insisted that cables which had passed the High Speed certification would be sufficient for the increased 18.0&nbsp;Gbit/s bandwidth introduced in HDMI&nbsp;2.0, and no higher levels of certification were introduced. During this time, a vast number of HDMI cables were manufactured which were capable of handling full HDMI&nbsp;2.0 bandwidth (18.0&nbsp;Gbit/s), but only received a High-Speed certification, the highest certification available at the time. Due to this, there are a large number of High Speed HDMI cables which <i>do work</i> at full 18.0&nbsp;Gbit/s HDMI&nbsp;2.0 bandwidth, despite not having the Premium High Speed certification. Most of these cables were never resubmitted for certification under the new certification tier once it was released, or if they were, they were sold again as a different product.<br /><br />
Many existing High Speed HDMI cables (manufactured long before HDMI&nbsp;2.0) also worked fine with the increased data rates, but despite the HDMI Consortium's initial claims not <i>all</i> certified High Speed HDMI cables could handle it. Finally, after numerous complaints and reports during the two years following the release of HDMI&nbsp;2.0, the HDMI Consortium revised their position on the matter and released a third cable certification tier, Premium High Speed HDMI, which actually tests cables for proper operation at 18.0&nbsp;Gbit/s.<br /><br />
<div style="border:1px #000000 solid; background-color:RGBA(128,128,128,0.1); font-family:'Courier New'; padding:4px;">
HDMI Licensing acknowledges the issue of some "high speed" cable not quite being up to the task of actually handling the full 2.0 bandwidth, saying:<br /><br />
"Although many current High Speed HDMI Cables in the market will perform as originally expected (and support 18Gbps), some unanticipated technical characteristics of some compliant High Speed HDMI Cables that affect performance at higher speeds have been found. These cables are compliant with the Category 2 HDMI Cable requirements and perform successfully at 10.2Gbps, but may fail at 18 Gbps."<br />
</div><br />
So while many High Speed HDMI cables will handle the full 18.0&nbsp;Gbit/s bandwidth of HDMI&nbsp;2.0, it is not guaranteed, while a "Premium High Speed" HDMI cable has been tested to definitely work.<br /><br />
For a more in-depth explanations, I recommend reading these articles:<br />
<a href="http://www.bluejeanscable.com/articles/note-about-hdmi-2.htm">http://www.bluejeanscable.com/articles/note-about-hdmi-2.htm</a><br />
<a href="http://www.bluejeanscable.com/articles/premium-hdmi-cable.htm">http://www.bluejeanscable.com/articles/premium-hdmi-cable.htm</a><br /><br />
</div>
</div>
</td></tr>
<tr id="hdmi_cable_versions_footer" onclick="scrollDiff('hdmi_cable_versions'); toggleSpoilerTable('hdmi_cable_versions');" style="background-color:RGBA(0,0,0,0.16); cursor:pointer; display:none;"><td colspan="3" style="padding:8px; padding-left:16px; font-weight:bold;">Close</td></tr>
</table>
<br /><br />
<!-- Connecting to a 120+ Hz Display -->
<table id="120Hz_displays" style="width:100%; padding:8px; border-collapse:collapse; border:1px solid RGBA(192,192,192,0.25); table-layout:fixed;">
<tr id="120Hz_displays_header" style="background-color:RGBA(0,0,0,0.16);">
<td onclick="toggleSpoilerTable('120Hz_displays')" style="cursor:pointer; max-width:20px; min-width:20px; width:20px; text-align:center; vertical-align:middle; padding-left:12px;"><span style="font-size: 22px; position:relative; top:-0.05em;">&#8250;</span></td>
<td onclick="toggleSpoilerTable('120Hz_displays')" style="cursor:pointer; padding:8px; padding-left:12px;">
<strong>Connecting to a 120+ Hz Display</strong>
</td>
<td style="max-width:40px; min-width:40px; width:40px; text-align:right; padding-right:8px; white-space:nowrap;">[<a href=".?section=120Hz_displays">Link</a>]</td>
</tr>
<tr id="120Hz_displays_content" style="display:none;"><td colspan="3" style="padding:16px; background-color:RGBA(40,40,40,0.02);">
<div>
<strong>Index:</strong>
<div style="padding-left:20px;">
<table style="border:1px RGBA(0,0,0,0) solid; border-collapse:collapse;">
<tr onclick="scrollTo('120Hz_interface_support')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Which connections can support 120+&nbsp;Hz?</td></tr>
<tr onclick="scrollTo('120Hz_which_to_use');"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Which one should I use?</td></tr>
<tr onclick="scrollTo('120Hz_HDMI_limit')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Isn't HDMI limited to 60&nbsp;Hz?</td></tr>
<tr onclick="scrollTo('120Hz_DP_adapters')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Can I use a DisplayPort to Dual-Link DVI passive adapter/cable?</td></tr>
<tr onclick="scrollTo('120Hz_HDMI_adapters')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Can I use an HDMI to Dual-Link DVI passive adapter/cable?</td></tr>
<tr onclick="scrollTo('120Hz_DP_only')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
I have a G-Sync monitor that only has DisplayPort input. Can I connect the DVI or HDMI port from my PC/laptop/console to it with a passive adapter?</td></tr>
<tr onclick="scrollTo('120Hz_no_DP')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
I have a 144&nbsp;Hz monitor that only has HDMI and DVI, and my computer doesn't have a DVI port that I can use. What should I do?</td></tr>
</table>
</div>
<br /><hr /><br />
<span id="120Hz_interface_support"><strong>Which connections can support 120+ Hz?</strong></span><br /><br />
<div style="padding-left:20px;">
In order of preference:<br /><br />
At 1920×1080 (2K):<br />
<ul>
<li>DisplayPort (any version)</li>
<li>HDMI&nbsp;2.0 and above(it is unusual for 1920×1080 monitors to support HDMI&nbsp;2.0+, so dont count on this option)</li>
<li>Dual-Link DVI</li>
<li>HDMI&nbsp;1.31.4b (some monitors do not accept >60&nbsp;Hz over HDMI, so don't count on this option either)</li>
</ul>
At 2560×1440 (2.5K):<br />
<ul>
<li>DisplayPort (1.2 and above)</li>
<li>HDMI (2.0 and above)</li>
<li>Unofficially, Dual-Link DVI can work via overclocking (i.e. setting custom resolutions), but not guaranteed</li>
</ul>
At 3840×2160 (4K):<br />
<ul>
<li>DisplayPort (1.3 and above)</li>
</ul><br />
</div>
<span id="120Hz_which_to_use"><strong>Which one should I use?</strong></span><br /><br />
<div style="padding-left:20px;">
A straight DisplayPort connection is the preferred option in all cases.<br /><br />
At 1920×1080 if DisplayPort is not available, then use Dual-Link DVI. HDMI version 2.0 can also be used, but it is rare for a 1920×1080 display to support HDMI&nbsp;2.0. Most of these monitors have HDMI&nbsp;1.4 which you can try as a last resort, but it is not guaranteed to work for 120+&nbsp;Hz (it depends on the monitor; some work, some don't).<br /><br />
At 2560×1440 if DisplayPort is not available, then HDMI can be used if the monitor and source both support HDMI&nbsp;2.0 or above. If the monitor does not support HDMI&nbsp;2.0+, then it will not be possible to use HDMI for 120+&nbsp;Hz at 2560×1440. In this case, it may be possible to use Dual-Link DVI by setting a custom resolution, but it depends on monitor support and is not guaranteed to work.<br /><br />
At 3840×2160 without compression, DisplayPort&nbsp;1.3 or 1.4 can be used up to 120&nbsp;Hz, and HDMI 2.1 can be used up to ≈180&nbsp;Hz. Frequencies higher than these limits will require Display Stream Compression (DSC), only supported by DisplayPort 1.4+ and HDMI 2.1.
</div><br />
<span id="120Hz_HDMI_limit"><strong>Isnt HDMI limited to 60&nbsp;Hz?</strong></span><br /><br />
<div style="padding-left:20px;">
No, HDMI is not limited to 60&nbsp;Hz. This is a common myth. Sometimes, certain displays will not accept HDMI signals above 60&nbsp;Hz even when the monitor is capable of 120+&nbsp;Hz signals over other connections, but that is just a limitation of those particular products. HDMI itself allows unlimited refresh frequencies; this has been the case since version 1.0.<br /><br />
Notable examples of monitors which don't accept >60&nbsp;Hz over HDMI are the BenQ XL2411(Z) and the ASUS VG248QE (which both use HDMI&nbsp;1.4a). However, other monitors like the ViewSonic XG2401 <i>do</i> accept 1080p 144&nbsp;Hz through HDMI&nbsp;1.4a.
The refresh frequency limits of HDMI at some common resolutions are listed in the tables at the top of this guide under the heading "<i>Maximum Refresh Frequency and Resolution of Everything</i>". HDMI&nbsp;1.3 and above are capable of 144&nbsp;Hz at 1080p, and HDMI&nbsp;2.0 is capable of 144&nbsp;Hz at 1440p.<br /><br />
</div>
<span id="120Hz_DP_adapters"><strong>Can I use a DisplayPort to Dual-Link DVI passive adapter&nbsp;/&nbsp;cable?</strong></span><br /><br />
<div style="padding-left:20px;">
No. DisplayPort to Dual-Link DVI passive adapters/cables do not actually exist. Even though most DisplayPort to DVI adapters you see for sale are “Dual-Link”, all of these are fake, they are only Single-Link DVI adapters in disguise.<br /><br />
The DisplayPort connector has 20 pins, which means it can be used as a Single-Link DVI-D port via a passive adapter. However, Dual-Link DVI requires 25 pins, so a DisplayPort connector does not have enough pins to emulate a Dual-Link DVI connection. The additional DVI pins on “DisplayPort to Dual-Link DVI” adapters are not connected to anything at all, they are just for show, for marketing purposes. It is nothing but a Single-Link DVI-D adapter dressed up to appear like a Dual-Link DVI-D adapter.<br /><br />
</div>
<span id="120Hz_HDMI_adapters"><strong>Can I use an HDMI to Dual-Link DVI passive adapter&nbsp;/&nbsp;cable?</strong></span><br /><br />
<div style="padding-left:20px;">
No, for the same reason as in the above section. HDMI to Dual-Link DVI passive adapters/cables do not exist. HDMI only has 19 pins, like Single-Link DVI-D. Even though most HDMI to DVI adapters you see for sale are “Dual-Link”, all of these are fake, they are only Single-Link DVI adapters in disguise.<br /><br />
These HDMI to Single-Link DVI passive adapters <strong>may</strong> work for 120+&nbsp;Hz if used from a DVI <strong>output</strong> (computer/source) to an HDMI <strong>input</strong> (display), due to the way passive adapters work, but this does require the monitor to accept 120+&nbsp;Hz through its HDMI port, so it will not work on monitors like the BenQ XL2411Z or ASUS VG248QE, which are limited to 60&nbsp;Hz on their HDMI ports.<br /><br />
</div>
<span id="120Hz_DP_only"><strong>I have a G-Sync monitor that only has DisplayPort input. Can I connect the DVI or HDMI port from my PC/laptop/console to it with a passive adapter?</strong></span><br /><br />
<div style="padding-left:20px;">
No, DVI and HDMI outputs do not support passive adapters to DisplayPort input ports. Passive DisplayPort to DVI / HDMI adapters and cables will only work from a DisplayPort output (graphics card) to a DVI / HDMI input (monitor). They will NOT work in the reverse configuration. A DisplayPort input on a monitor will ONLY accept native DisplayPort signals.<br /><br />
</div>
<span id="120Hz_no_DP"><strong>I have a 144&nbsp;Hz monitor that only has HDMI and DVI, and my computer doesn't have a DVI port that I can use. What should I do?</strong></span><br /><br />
<div style="padding-left:20px;">
Some 120+&nbsp;Hz monitors dont have DisplayPort input, like the BenQ/Zowie XL2411Z or the Acer GN246HL; they only have DVI and HDMI. This can be problematic in situations where no DVI ports are available, such as on laptops or some newer graphics cards that dont have DVI output, or if you want several of these monitors but dont have enough DVI ports for all of them.<br /><br />
On most of these monitors, the only way to run them at 144&nbsp;Hz without a native Dual-Link DVI connection is by using a DisplayPort to Dual-Link DVI active adapter. <strong>Be careful</strong>, because DisplayPort to <i>Single-Link DVI</i> active adapters also exist and are often fitted with fake "Dual-Link" connectors to make them look like DL-DVI adapters. True DisplayPort to DL-DVI active adapters are very expensive and bulky. If the adapter doesn't fit this description, it's probably not a Dual-Link DVI adapter.<br /><br />
<ul>
<li style="line-height:140%;"><strong>Can I use a DisplayPort to DVI passive adapter?</strong> — No, because Dual-Link DVI is required for 144&nbsp;Hz and DisplayPort only supports passive adapters to Single-Link DVI, not Dual-Link. <strong>WARNING:</strong> Although most DisplayPort to DVI passive adapters may appear to have Dual-Link connectors on them and may say "Dual-Link DVI" in the product title and description, they are still Single-Link DVI adapters. <strong>Creating a DisplayPort to Dual-Link DVI passive adapter is <u>physically impossible</u>, so if the adapter is <i>passive</i>, then it is <i>Single-Link-only</i>, <u>no matter what the product title and description say</u></strong>.</li>
<li style="line-height:140%; padding-top:10px;"><strong>Can I use an HDMI to DVI passive adapter?</strong> — Exactly the same as above, just replace the word "DisplayPort" with "HDMI".</li>
<li style="line-height:140%; padding-top:10px;"><strong>Can I use a straight HDMI connection?</strong> — Probably not. Although HDMI has been capable of 1080p 144&nbsp;Hz since version 1.3, some monitors (such as the BenQ/Zowie XL2411Z and ASUS VG248QE) will not accept >60&nbsp;Hz over HDMI even though they support HDMI&nbsp;1.4. This is not because "HDMI has a 60&nbsp;Hz limit" (it doesn't), it's just a limitation of those particular monitors. Other monitors such as the ViewSonic XG2401 <i>do</i> accept 144 Hz over HDMI&nbsp;1.4.</li>
</ul><br />
On these monitors that have no DisplayPort input and don't accept >60&nbsp;Hz over HDMI (like the XL2411Z), you <i>must</i> use Dual-Link DVI to get 144&nbsp;Hz, and the only way to do that without a native DVI port is by using a DisplayPort to Dual-Link DVI active adapter.<br /><br />
These adapters are very expensive (≈100 USD). You may see many cheaper DisplayPort to DVI active adapters (≈20 USD), but those are only Single-Link DVI adapters and are designed for certain AMD graphics cards which require active adapters for 3+ multi-monitor configurations. Similar to DP to DVI passive adapters, most of these active adapters will be dressed up with fake Dual-Link DVI connectors, so it can be difficult to distinguish them from a true DisplayPort to Dual-Link DVI converter. Here are some recommendations, but keep in mind complex active adapters like these are finicky in general and even the expensive ones are not very reliable. My best advice is, in the future when you buy a high refresh frequency monitor, make sure it has DisplayPort input.<br /><br />
DisplayPort 1.1 to Dual-Link DVI active adapter:&nbsp;<a href="https://www.amazon.com/Accell-B087B-002B-UltraAV-DisplayPort-Dual-Link/dp/B002ISVI3U/">Amazon US</a><br />
DisplayPort 1.1 to Dual-Link DVI active adapter:&nbsp;<a href="https://www.amazon.com/StarTech-com-DisplayPort-Active-Adapter-Converter/dp/B00A493CNY/">Amazon US</a><br />
Mini DisplayPort 1.1 to Dual-Link DVI active adapter:&nbsp;<a href="https://www.amazon.com/StarTech-com-MDP2DVID-DisplayPort-Dual-Link-Powered/dp/B004I6L6DW/">Amazon US</a><br /><br />
</div>
</div>
</td></tr>
<tr id="120Hz_displays_footer" onclick="scrollDiff('120Hz_displays'); toggleSpoilerTable('120Hz_displays');" style="background-color:RGBA(0,0,0,0.16); cursor:pointer; display:none;"><td colspan="3" style="padding:8px; padding-left:16px; font-weight:bold;">Close</td></tr>
</table>
<br /><br />
<!-- Active vs. Passive Adapters -->
<table id="active_vs_passive_adapters" style="width:100%; padding:8px; border-collapse:collapse; border:1px solid RGBA(192,192,192,0.25); table-layout:fixed;">
<tr id="active_vs_passive_adapters_header" style="background-color:RGBA(0,0,0,0.16);">
<td onclick="toggleSpoilerTable('active_vs_passive_adapters')" style="cursor:pointer; max-width:20px; min-width:20px; width:20px; text-align:center; vertical-align:middle; padding-left:12px;"><span style="font-size: 22px; position:relative; top:-0.05em;">&#8250;</span></td>
<td onclick="toggleSpoilerTable('active_vs_passive_adapters')" style="cursor:pointer; padding:8px; padding-left:12px;">
<strong>Active vs. Passive Adapters</strong>
</td>
<td style="max-width:40px; min-width:40px; width:40px; text-align:right; padding-right:8px; white-space:nowrap;">[<a href=".?section=active_vs_passive_adapters">Link</a>]</td>
</tr>
<tr id="active_vs_passive_adapters_content" style="display:none;"><td colspan="3" style="padding:16px; background-color:RGBA(40,40,40,0.02);">
<div>
<strong>Index:</strong>
<div style="padding-left:20px;">
<table style="border:1px RGBA(0,0,0,0) solid; border-collapse:collapse;">
<tr onclick="scrollTo('Adapters_Preface')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Preface</td></tr>
<tr onclick="scrollTo('Adapters_Passive');"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Passive Adapters</td></tr>
<tr onclick="scrollTo('Adapters_Analog_Digital_P1')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Doesn't passive adapter compatibility have something to do with analog and digital?</td></tr>
<tr onclick="scrollTo('Adapters_Analog_Digital_P2')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
"But you can't convert between digital and analog passively!"</td></tr>
<tr onclick="scrollTo('Adapters_Passive_Latency')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Do passive adapters add any latency?</td></tr>
<tr onclick="scrollTo('Adapters_Passive_Image_Quality')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Do passive adapters reduce image quality?</td></tr>
<tr onclick="scrollTo('Adapters_Active')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Active Adapters</td></tr>
<tr onclick="scrollTo('Adapters_Active_Latency')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Do active adapters add any latency?</td></tr>
<tr onclick="scrollTo('Adapters_Active_Image_Quality')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Do active adapters reduce image quality?</td></tr>
<tr onclick="scrollTo('Adapters_How_to_Tell')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
How can I tell if an adapter is passive or active?</td></tr>
<tr onclick="scrollTo('Adapters_Which_to_Use')"
onmouseover="this.style.backgroundColor='RGBA(128, 128, 128, .32)'" onmouseout="this.style.backgroundColor='RGBA(128, 128, 128, 0)'" style="cursor:pointer">
<td style="font-weight:normal; vertical-align:top; padding:2px;">
Which type should I use?</td></tr>
</table>
</div>
<br /><hr /><br />
<span id="Adapters_Preface"><strong>What's the difference between a passive adapter and an active adapter? (Preface)</strong></span><br /><br />
<div style="padding-left:20px;">
The difference between an active adapter and a passive adapter is in the basic principle of operation. Telling the difference between a passive and active adapter isn't as simple as looking for external features like power cables or bulkiness. Some active adapters require power cables, but less complex ones can get enough power directly from the port. Some active adapters, like DisplayPort to VGA, can be very inexpensive, compact, reliable, and require no power cables, and for this reason they are often mistaken or mislabeled as "passive adapters". However, these external features are not the criteria which actually define whether an adapter is passive or active.
<br /><br />
So what is the difference exactly? Well...
<br /><br />
There are many different signalling formats, or methods of representing and transmitting the information that makes up a video signal. Each different interface (VGA, HDMI, DisplayPort, etc.) uses a different format; they represent the information in different ways. If you (as a system designer) want your device to be able to communicate information to another device which uses a different format, there are two ways for this to happen. You can design your device to be able to also recognize and communicate in the other device's format (make it "multi-lingual" in a sense), or you can insert a third-party device between them to convert the information from one format to the other.
<br /><br />
</div>
<span id="Adapters_Passive"><strong>Passive Adapters</strong></span><br /><br />
<div style="padding-left:20px;">
A passive adapter works via the first approach. As it turns out, the ports on your graphics card or laptop or other source device can output signals in multiple different formats. For example, DisplayPort ports are not just limited to sending DisplayPort signals; they can send signals in the HDMI or DVI formats if required. Of course, the only problem is that the DisplayPort port cannot physically morph itself into an HDMI port to allow you to plug in HDMI cables, so this is why the "passive adapter" is needed; the adapter does not do anything at all to the electrical signal, it is just there to change the shape of the port to allow you to plug the correct cable in. When you use a DisplayPort to HDMI passive adapter, the adapter is not "converting" DisplayPort signals into HDMI signals. The electrical signals coming from the DP port are already in the HDMI format, the adapter is just changing the physical shape of the port.
<br /><br />
Since passive adapters don't actually do anything themselves, they will only work for some very specific combinations of ports which have been pre-designed with the ability to communicate in other formats. The table below shows which connections are possible using passive adapters:
<br /><br />
</div>
<div align="center" style="overflow-x:auto;">
<table style="color:#000000; border-collapse:collapse; border:1px solid #000000; font-family:Arial; font-size:14px; line-height:120%;">
<tr>
<td colspan="4" style="padding:8px; font-weight:bold; text-align:center; background-color:#D9D9D9; border:1px solid #000000;">
Every Possible Passive Adapter Combination
</td>
</tr>
<tr>
<td style="padding:8px; text-align:center; background-color:#D9D9D9; vertical-align:middle; max-width:300px; border:1px solid #000000; border-right:0px solid #000000;">
<strong>Output Port</strong><br />(Computer / Source)</td>
<td style="background-color:#D9D9D9; width:16px; border:1px solid #000000; border-left:0px solid #000000; border-right:0px solid #000000;">&nbsp;</td>
<td style="padding:8px; text-align:center; background-color:#D9D9D9; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:0px solid #000000; border-right:0px solid #000000;">
<strong>Input Port</strong><br />(Monitor / TV / Display)</td>
<td style="padding:8px; text-align:center; background-color:#D9D9D9; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:0px solid #000000;">
<strong>Equivalent to</strong><br /></td>
</tr>
<tr>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-right:0px solid #000000;">
DisplayPort</td>
<td style="font-size:20px; text-align:center; background-color:#ffffff; width:16px; border:1px solid #000000; border-left:0px solid #000000; border-right:0px solid #000000;">&rarr;</td>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:0px solid #000000;">
HDMI<br />
<span style="white-space:nowrap;">DVI (any type)</span></td>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:1px solid #000000;">
HDMI<br />
<span style="white-space:nowrap;">Single-Link DVI-D</span></td>
</tr>
<tr>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-right:0px solid #000000;">
HDMI</td>
<td style="font-size:20px; text-align:center; background-color:#ffffff; width:16px; border:1px solid #000000; border-left:0px solid #000000; border-right:0px solid #000000;">&rarr;</td>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:0px solid #000000;">
<span style="white-space:nowrap;">DVI (any type)</span></td>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:1px solid #000000;">
<span style="white-space:nowrap;">Single-Link DVI-D</span></td>
</tr>
<tr>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-right:0px solid #000000;">
DVI-D</td>
<td style="font-size:20px; text-align:center; background-color:#ffffff; width:16px; border:1px solid #000000; border-left:0px solid #000000; border-right:0px solid #000000;">&rarr;</td>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:0px solid #000000;">
HDMI</td>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:1px solid #000000;">
HDMI</td>
</tr>
<tr>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-right:0px solid #000000;">
DVI-I</td>
<td style="font-size:20px; text-align:center; background-color:#ffffff; width:16px; border:1px solid #000000; border-left:0px solid #000000; border-right:0px solid #000000;">&rarr;</td>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:0px solid #000000;">
HDMI<br />
VGA</td>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:1px solid #000000;">
HDMI<br />
VGA</td>
</tr>
<tr>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-right:0px solid #000000;">
VGA</td>
<td style="font-size:20px; text-align:center; background-color:#ffffff; width:16px; border:1px solid #000000; border-left:0px solid #000000; border-right:0px solid #000000;">&rarr;</td>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:0px solid #000000;">
DVI-I</td>
<td style="padding:8px; text-align:center; background-color:#ffffff; vertical-align:middle; max-width:300px; border:1px solid #000000; border-left:1px solid #000000;">
VGA</td>
</tr>
</table>
</div><br />
<div style="padding-left:20px;">
This table is an <strong>exhaustive list</strong> of all possible connections that can be made using passive adapters between DP, HDMI, DVI, and VGA. If it is not listed above, it is not possible with a passive adapter. For specifics about which versions of DisplayPort and HDMI are supported by what, look up the specific adapter combination using the dropdowns at the top of this guide.
<br /><br />
Note that adapter compatibility is not symmetric. For example, even though a DisplayPort source supports passive adapters to HDMI displays, an HDMI source does not support adapters to a DisplayPort display. In fact nothing supports passive adapters to DisplayPort; the only way to connect to a DisplayPort input on a monitor is from a native DisplayPort connection or an active adapter.
<br /><br />
</div>
<span id="Adapters_Analog_Digital_P1"><strong>Doesn't passive adapter compatibility have something to do with analog and digital?</strong></span><br /><br />
<div style="padding-left:20px;">
No, passive adapter compatibility has nothing to do with analog and digital signals.
<br /><br />
</div>
<span id="Adapters_Analog_Digital_P2"><strong>"But you can't convert between digital and analog passively!"</strong></span><br /><br />
<div style="padding-left:20px;">
That's right, because you can't convert <i>any</i> signal to <i>any other</i> signal passively, whether it's digital to digital, digital to analog, or whatever. There is no such thing as "passively converting" signals at all; <u>no passive adapters</u> work by converting one signal into another. Instead, when a "passive adapter" is used, the source device outputs the original signal in whatever format is required, so no "conversion" is needed in the first place. This method of supporting adapters can be designed into any interface; there's no reason a port which normally sends digital signals can't be designed to send analog signals instead when an adapter is attached.
<br /><br />
DVI-I is a perfect example of this; the port's main signal type (DVI) is digital, and it supports passive adapters to both HDMI (digital) and VGA (analog). When connected to an HDMI display via a passive adapter, the source device (graphics card) detects the HDMI display and starts using the DVI port to send HDMI signals <i>instead of</i> the normal DVI signals. DVI-I to VGA adapters work exactly the same way; when the graphics card detects a VGA display, it starts using the DVI port to send VGA signals <i>instead of</i> the normal DVI signals. Since passive adapters don't work by "converting" a DVI signal into an equivalent HDMI or VGA signal, the characteristics of DVI compared to the other signal are irrelevant. Passive adapters work because the DVI control chips are designed with the capability to output all these different types of signals.
<br /><br />
So, just because "one's analog and the other is digital" doesn't mean passive adapters won't work; sometimes they do, sometimes they don't. Likewise, just because two signals are "both digital" doesn't mean passive adapters <i>will</i> work; sometimes they do, sometimes they don't. For example, HDMI output <strong>does not</strong> support passive adapters to DisplayPort input, even though they are both digital, and even though the reverse configuration (DP output to HDMI input) does work.
<br /><br />
Whether signals are digital or analog actually has nothing to do with passive adapter compatibility. Passive adapters work if the port is designed to send the signal you want, and that's all there is to it. This is completely arbitrary and comes down to the design decisions of the engineers who drafted the standards and designed the chips. There are no "rules of thumb" for what kinds of adapters are supported by each interface. HDMI doesn't support VGA passive adapters because it doesn't support VGA passive adapters. It's not because "it's impossible because HDMI is digital and VGA is analog". HDMI <i>could</i> have been designed with the ability to send VGA signals (as DVI-I was), and then HDMI to VGA passive adapters would be a thing. But it wasn't, so they're not. Simple as that.
<br /><br />
As it happens, digital and analog have nothing to do with <i>active</i> adapter compatibility either (you can convert <i>any signal</i> to <i>any other signal</i> using an active adapter), so really the whole "digital vs analog" discussion is completely irrelevant to the topic of adapters as a whole, whether formats are digital or analog tells you nothing about whether you can use adapters or not.
<br /><br />
</div>
<span id="Adapters_Passive_Latency"><strong>Do passive adapters add any latency?</strong></span><br /><br />
<div style="padding-left:20px;">No.<br /><br /></div>
<span id="Adapters_Passive_Image_Quality"><strong>Do passive adapters reduce image quality?</strong></span><br /><br />
<div style="padding-left:20px;">No.<br /><br /></div>
<span id="Adapters_Active"><strong>Active Adapters</strong></span><br /><br />
<div style="padding-left:20px;">
Active adapters (or "signal converters") use the second approach described in the preface; both the source device and the display send/receive signals in their native formats, but there is a device in the middle (the adapter) which converts the information from one format to the other. Active adapters are required for any combination of ports that isn't possible with passive adapters (as listed above). Active adapters have also been used in some situations historically to circumenvent limitations of passive adapters; for example, some older AMD graphics cards could support up to 6 monitors, but only maximum of two could be using DVI/HDMI signals (including sending DVI/HDMI signals through a DisplayPort port via a passive adapter); the rest had to use native DisplayPort output. DisplayPort to DVI/HDMI <i>active</i> adapters were useful in this case to allow additional DVI/HDMI connections, since the graphics card would send native DisplayPort signals, which were then intercepted by the adapter and converted to the DVI/HDMI format en route.
<br /><br />
Active adapters have a processor which converts between the two formats, so they are more expensive than passive adapters and may require a power cable, depending on the complexity of the conversion. Since active adapters convert information from one format into its equivalent in a different format, they are limited only to the features and capabilities supported by <strong>both</strong> formats. This means active adapters won't support anything that isn't supported by <strong>both</strong> sides of the connection, including limitations on maximum bandwidth, audio support, and any other features such as G-Sync or daisy-chaining. In addition, certain active adapters may have their own limitations depending on what the signal processor can handle. For example, many (but not all) HDMI to DisplayPort active adapters are limited to 1920×1200 at 60&nbsp;Hz. Even though both connections can go beyond that, the processor used inside those adapters cant process data quickly enough to do more than that. For 1440p or 4K resolutions, even more expensive adapters with more powerful processors must be used.
<br /><br />
Active adapters usually only work in one direction. An active adapter that receives a VGA signal and converts it into HDMI usually isnt equipped to receive HDMI signals and turn them into VGA instead. When purchasing an active adapter, read the product description carefully.
<br /><br />
In theory, any signal can be converted to any other signal with an active adapter, although in practice there is not an adapter manufactured for every conceivable combination of ports.
<br /><br />
</div>
<span id="Adapters_Active_Latency"><strong>Do active adapters add any latency?</strong></span><br /><br />
<div style="padding-left:20px;">
Depends on the adapter, but usually they do not add any meaningful amount of latency.
<br /><br />
</div>
<span id="Adapters_Active_Image_Quality"><strong>Do active adapters reduce image quality?</strong></span><br /><br />
<div style="padding-left:20px;">
No. But when converting between two different formats the image quality will only be as good as the worse format.
<br /><br />
</div>
<span id="Adapters_How_to_Tell"><strong>How can I tell if an adapter is passive or active?</strong></span><br /><br />
<div style="padding-left:20px;">
Some people think that "active adapter" means it has an additional plug for power, but this is not the case. If an adapter needs a power cable, it is definitely an active adapter, but if it doesn't need a power cable, it could still be either an active or a passive adapter. It is not possible to tell the difference between them by looking at them, because "active" and "passive" aren't defined by any external feature, as explained above. Some active adapters may have conversion circuitry so small that it can be powered from the port and embedded in the cable termination, so that it appears just like any normal passive adapter cable.
<br /><br />
Sometimes it isn't possible to tell whether an adapter is active or passive, but there are some steps you can take to rule out one or the other. Only specific combinations of ports are possible with passive adapters, listed in the table a few paragraphs above. If the adapter you are looking at isn't a type listed on that table, it must be an active adapter (or fake). If it <i>is</i> a combination listed on that table, then it could be either passive or active. Usually the product description will tell you, but if it doesn't, you should generally assume it is passive, because companies don't normally make active adapters for port combinations that can already be done using passive adapters.
<br /><br />
However, there are some exceptions to this. Even though DisplayPort supports passive adapters to HDMI and Single-Link DVI, there are many active adapters also available for these combinations due to restrictions on multi-monitor configurations on some older AMD graphics cards (see the section titled below "Active Adapter Requirements for Multi-Monitor Configurations"). So DisplayPort to DVI adapters or DisplayPort to HDMI adapters may either be passive or active; reading the product description will usually tell you.
<br /><br />
In addition sometimes active adapters may be required between DisplayPort and HDMI depending on which versions you want; for example, DisplayPort 1.2 does support passive adapters to HDMI, but only up to HDMI 1.4; to get a full HDMI 2.0 connection from DisplayPort 1.2, you need an active adapter.
<br /><br />
More specific information on what combinations are supported with passive adapters can be found by entering a specific combination of ports in the dropdown menus at the top of this guide.
<br /><br />
</div>
<span id="Adapters_Which_to_Use"><strong>Which type should I use?</strong></span><br /><br />
<div style="padding-left:20px;">
If a passive adapter is possible for the configuration you want (check using the utility at the top of this guide), then usually you should use the passive adapter. Active adapters tend to be more expensive and less reliable, and only exist for situations where passive adapters won't work.
<br /><br />
</div>
</div>
</td></tr>
<tr id="active_vs_passive_adapters_footer" onclick="scrollDiff('active_vs_passive_adapters'); toggleSpoilerTable('active_vs_passive_adapters');" style="background-color:RGBA(0,0,0,0.16); cursor:pointer; display:none;"><td colspan="3" style="padding:8px; padding-left:16px; font-weight:bold;">Close</td></tr>
</table>
<br /><br />
<!-- Active Adapter Requirements for Multi-Monitor Configurations -->
<table id="active_adapters_for_multi_display" style="width:100%; padding:8px; border-collapse:collapse; border:1px solid RGBA(192,192,192,0.25); table-layout:fixed;">
<tr id="active_adapters_for_multi_display_header" style="background-color:RGBA(0,0,0,0.16);">
<td onclick="toggleSpoilerTable('active_adapters_for_multi_display')" style="cursor:pointer; max-width:20px; min-width:20px; width:20px; text-align:center; vertical-align:middle; padding-left:12px;"><span style="font-size: 22px; position:relative; top:-0.05em;">&#8250;</span></td>
<td onclick="toggleSpoilerTable('active_adapters_for_multi_display')" style="cursor:pointer; padding:8px; padding-left:12px;">
<strong>Active Adapter Requirements for Multi-Monitor Configurations</strong>
</td>
<td style="max-width:40px; min-width:40px; width:40px; text-align:right; padding-right:8px; white-space:nowrap;">[<a href=".?section=active_adapters_for_multi_display">Link</a>]</td>
</tr>
<tr id="active_adapters_for_multi_display_content" style="display:none;"><td colspan="3" style="padding:16px; background-color:RGBA(40,40,40,0.02);">
<div>
Certain older AMD graphics cards require a native DisplayPort connection or DisplayPort <strong>active</strong> adapters to connect more than 2 monitors. DisplayPort to Single-Link DVI active adapters are useful in this situation to avoid the cost of an active Dual-Link adapter. <strong>This limitation ONLY applies to certain older AMD graphics cards. NVIDIA graphics cards and newer AMD graphics cards DO NOT require DisplayPort or active DisplayPort adapters for <u>any</u> multi-monitor configurations.</strong><br /><br />
Graphics cards with this limitation can still support 3+ monitors, but only a maximum of two may be connected through any combination of the following:<br />
<ul>
<li>VGA</li>
<li>DVI</li>
<li>HDMI</li>
<li>Any active or passive adapters from VGA / DVI / HDMI to anything else</li>
<li>DisplayPort to DVI / HDMI passive adapters</li>
</ul>
Any additional monitors beyond 2 must be connected with one of the following:<br />
<ul>
<li>DisplayPort / Mini DisplayPort</li>
<li>DisplayPort to VGA / DVI / HDMI active adapter</li>
</ul><br />
<strong>The&nbsp;following graphics cards are subject to the&nbsp;limitation described above:</strong><br />
<ul>
<li>AMD Radeon R7 370</li>
<li>AMD Radeon R7 265, R9 270, R9 270X, R9 280, and R9 280X</li>
<li>AMD/ATI Radeon HD 5000, 6000, 7000, and 8000 series</li>
</ul><br />
<strong>The following graphics cards do not support more than 2 monitors <u>at all</u> (regardless of whether DisplayPort or active DP adapters are used):</strong><br />
<ul>
<li>NVIDIA GeForce GT 610, GT 620, GT 630 (Fermi version), and GT 705</li>
<li>NVIDIA GeForce GTX 500 series and below</li>
<li>ATI Radeon HD 4000 series and below</li>
</ul><br />
</div>
</td></tr>
<tr id="active_adapters_for_multi_display_footer" onclick="scrollDiff('active_adapters_for_multi_display'); toggleSpoilerTable('active_adapters_for_multi_display');" style="background-color:RGBA(0,0,0,0.16); cursor:pointer; display:none;"><td colspan="3" style="padding:8px; padding-left:16px; font-weight:bold;">Close</td></tr>
</table>
<br /><hr /><br /><br />
<!-- Bandwidth / Maximum Refresh Frequency Calculator -->
<table id="bandwidth_calculator" style="width:100%; padding:8px; border-collapse:collapse; border:1px solid RGBA(192,192,192,0.25); table-layout:fixed;">
<tr id="bandwidth_calculator_header" style="background-color:RGBA(0,0,0,0.16);">
<td onclick="toggleSpoilerTable('bandwidth_calculator')" style="cursor:pointer; max-width:20px; min-width:20px; width:20px; text-align:center; vertical-align:middle; padding-left:12px;"><span style="font-size: 22px; position:relative; top:-0.05em;">&#8250;</span></td>
<td onclick="toggleSpoilerTable('bandwidth_calculator')" style="cursor:pointer; padding:8px; padding-left:12px;">
<strong>Bandwidth / Maximum Refresh Frequency Calculator</strong>
</td>
<td style="max-width:40px; min-width:40px; width:40px; text-align:right; padding-right:8px; white-space:nowrap;">[<a href=".?section=bandwidth_calculator">Link</a>]</td>
</tr>
<tr id="bandwidth_calculator_content" style="display:table-row;"><td colspan="3" style="padding:16px; background-color:RGBA(40,40,40,0.02);">
<div id="Bandwidth Calc Div" style="padding-left:16px;">
<label style="cursor:pointer;"><input type="radio" name="CALC_MODE" id="CALC_MODE_DATA" onchange="CalcModeSwitch(); Calculator();" checked />&nbsp;<strong>Bandwidth:</strong> Calculate the data rate required at a certain resolution and refresh frequency</label>
<br />
<label style="cursor:pointer;"><input type="radio" name="CALC_MODE" id="CALC_MODE_FREQ" onchange="CalcModeSwitch(); Calculator();" />&nbsp;<strong>Max. Refresh Frequency:</strong> Calculate the maximum refresh frequency of every interface at a certain resolution</label>
<br />
<div style="overflow-x:auto;">
<table cellspacing="0" style="font-family:inherit; font-size:inherit;">
<tr>
<td valign="top">
<table cellspacing="0" cellpadding="4" style="font-family:inherit; font-size:inherit;">
<tr>
<td style="padding:4px; padding-top:12px;" width="100px"><strong>Resolution:</strong></td>
<td style="padding:4px; padding-top:12px; text-align:right;"><input style="text-align:center; width:64px; background-color: rgba(128,128,128,.2);" id="HRES_BOX" type="text" onchange="Calculator();" onkeypress="this.onchange();" oninput="this.onchange();" align="left" /></td>
<td style="padding:4px; padding-top:12px; text-align:center;">×</td>
<td style="padding:4px; padding-top:12px; text-align:left;"><input style="text-align:center; width:64px; background-color: rgba(128,128,128,.2);" id="VRES_BOX" type="text" onchange="Calculator();" onkeypress="this.onchange();" oninput="this.onchange();" /></td>
</tr>
<tr>
<td style="padding:4px; padding-bottom:16px;"><strong>Frequency:</strong></td>
<td style="padding:4px; padding-bottom:16px; text-align:right"><input style="text-align:center; width:64px; background-color: rgba(128,128,128,.2);" id="FREQ_BOX" type="text" onchange="Calculator();" onkeypress="this.onchange();" oninput="this.onchange();" /></td>
<td style="padding:4px; padding-bottom:16px; text-align:left;" colspan="2">Hz</td>
</tr>
<tr>
<td style="padding:4px; border-top:1px solid #BBBBBB; border-left:1px solid #BBBBBB; padding-top:8px;"><strong>Color&nbsp;Depth:</strong></td>
<td style="padding:4px; border-top:1px solid #BBBBBB; border-right:1px solid #BBBBBB; padding-top:8px;" colspan="3">
<select id="DEPTH_DROP" onchange="Calculator()">
<option value=24 selected>8 bpc (24 bit/px)</option>
<option value=30>10 bpc (30 bit/px)</option>
<option value=36>12 bpc (36 bit/px)</option>
<option value=42>14 bpc (42 bit/px)</option>
<option value=48>16 bpc (48 bit/px)</option>
</select>
</td>
</tr>
<tr>
<td style="padding:4px; border-left:1px solid #BBBBBB;"><strong>Color&nbsp;Format:</strong></td>
<td style="padding:4px; border-right:1px solid #BBBBBB;" colspan="3">
<select id="MODEL_DROP" onchange="Calculator();">
<option value="RGB" selected>RGB</option>
<option value="YCBCR 444">YCBCR 4:4:4</option>
<option value="YCBCR 422">YCBCR 4:2:2</option>
<option value="YCBCR 420">YCBCR 4:2:0</option>
</select>
</td>
</tr>
<tr>
<td style="padding:4px; border-left:1px solid #BBBBBB;"><strong>Compression:</strong></td>
<td style="padding:4px; border-right:1px solid #BBBBBB;" colspan="3">
<select id="COMP_DROP" onchange="Calculator();">
<option value="None" selected>None</option>
<option value="DSC 2.0x">DSC (2.0× ratio)</option>
<option value="DSC 2.5x">DSC (2.5× ratio)</option>
<option value="DSC 3.0x">DSC (3.0× ratio)</option>
</select>
</td>
</tr>
<tr>
<td style="padding:4px; border-left:1px solid #BBBBBB;"><strong>Timing&nbsp;Format:</strong></td>
<td style="padding:4px; border-right:1px solid #BBBBBB;" colspan="3">
<select id="TIMING_DROP" onchange="Calculator();">
<option value="CVT">CVT</option>
<option value="CVT-RB">CVT-RB</option>
<option value="CVT-R2" selected>CVT-R2</option>
<option value="None">None</option>
</select>
</td>
</tr>
<tr>
<td style="padding:4px; border-left:1px solid #BBBBBB; padding-bottom:8px">&nbsp;</td>
<td style="padding:4px; border-right:1px solid #BBBBBB;" colspan="3"><label><input type="checkbox" id="SHOW_FORMULA" onclick="Calculator();" />&nbsp;Show timing formula</label></td>
</tr>
<tr>
<td style="padding:4px; border-left:1px solid #BBBBBB; border-bottom:1px solid #BBBBBB; padding-bottom:8px">&nbsp;</td>
<td style="padding:4px; border-right:1px solid #BBBBBB; border-bottom:1px solid #BBBBBB; padding-bottom:8px;" colspan="3"><a href="javascript: ResetDropdowns(); Calculator();">Set to Defaults</a></td>
</tr>
<tr><td style="height:16px"></td></tr>
<tr>
<td style="padding:4px; border:1px solid #BBBBBB; padding-top:8px; padding-bottom:16px; text-align:center;" colspan="4">
<table id="RefTable" align="center" cellspacing="0" style="padding:8px; border-width:0px"></table>
</td>
</tr>
<tr><td>&nbsp;</td></tr>
</table>
</td>
<td style="padding:4px; padding-top:12px; padding-left:32px; min-width:32px;" valign="top" id="RESULTS_BOX"></td>
</tr>
</table>
<div id="YCBCR_TEXT" hidden>YC<sub>B</sub>C<sub>R</sub>&nbsp;</div>
</div>
</div>
</td></tr>
<tr id="bandwidth_calculator_footer" onclick="scrollDiff('bandwidth_calculator'); toggleSpoilerTable('bandwidth_calculator');" style="background-color:RGBA(0,0,0,0.16); cursor:pointer; display:table-row;"><td colspan="3" style="padding:8px; padding-left:16px; font-weight:bold;">Close</td></tr>
</table>
</div>
</div>
</div>
<!-------------------------------- MAIN JAVASCRIPT -------------------------------->
<script>
function Configurator() {
var out_dropdown = document.getElementById("Output");
var out_slct = out_dropdown.options[out_dropdown.selectedIndex].value;
var in_dropdown = document.getElementById("Input");
var in_slct = in_dropdown.options[in_dropdown.selectedIndex].value;
if (out_slct == "blank" && in_slct == "blank") {
document.getElementById("maintext").innerHTML = '&nbsp;';
}
else if (out_slct == "blank" && in_slct == "DP") {
document.getElementById("maintext").innerHTML = document.getElementById("ANY_TO_DP").innerHTML;
}
else if (out_slct == "blank" && in_slct == "HDMI") {
document.getElementById("maintext").innerHTML = document.getElementById("ANY_TO_HDMI").innerHTML;
}
else if (out_slct == "blank" && in_slct == "DVI") {
document.getElementById("maintext").innerHTML = document.getElementById("ANY_TO_DVI").innerHTML;
}
else if (out_slct == "blank" && in_slct == "VGA") {
document.getElementById("maintext").innerHTML = document.getElementById("ANY_TO_VGA").innerHTML;
}
else if ((out_slct == "DP" && in_slct == "DP") || (out_slct == "DP" && in_slct == "blank")) {
document.getElementById("maintext").innerHTML = document.getElementById("DP_TO_DP").innerHTML;
}
else if (out_slct == "DP" && in_slct == "HDMI") {
document.getElementById("maintext").innerHTML = document.getElementById("DP_TO_HDMI").innerHTML;
}
else if (out_slct == "DP" && in_slct == "DVI") {
document.getElementById("maintext").innerHTML = document.getElementById("DP_TO_DVI").innerHTML;
}
else if (out_slct == "DP" && in_slct == "VGA") {
document.getElementById("maintext").innerHTML = document.getElementById("DP_TO_VGA").innerHTML;
}
else if (out_slct == "HDMI" && in_slct == "DP") {
document.getElementById("maintext").innerHTML = document.getElementById("HDMI_TO_DP").innerHTML;
}
else if ((out_slct == "HDMI" && in_slct == "HDMI") || (out_slct == "HDMI" && in_slct == "blank")) {
document.getElementById("maintext").innerHTML = document.getElementById("HDMI_TO_HDMI").innerHTML;
}
else if (out_slct == "HDMI" && in_slct == "DVI") {
document.getElementById("maintext").innerHTML = document.getElementById("HDMI_TO_DVI").innerHTML;
}
else if (out_slct == "HDMI" && in_slct == "VGA") {
document.getElementById("maintext").innerHTML = document.getElementById("HDMI_TO_VGA").innerHTML;
}
else if (out_slct == "DVI" && in_slct == "DP") {
document.getElementById("maintext").innerHTML = document.getElementById("DVI_TO_DP").innerHTML;
}
else if (out_slct == "DVI" && in_slct == "HDMI") {
document.getElementById("maintext").innerHTML = document.getElementById("DVI_TO_HDMI").innerHTML;
}
else if ((out_slct == "DVI" && in_slct == "DVI") || (out_slct == "DVI" && in_slct == "blank")) {
document.getElementById("maintext").innerHTML = document.getElementById("DVI_TO_DVI").innerHTML;
}
else if (out_slct == "DVI" && in_slct == "VGA") {
document.getElementById("maintext").innerHTML = document.getElementById("DVI_TO_VGA").innerHTML;
}
else if (out_slct == "VGA" && in_slct == "DP") {
document.getElementById("maintext").innerHTML = document.getElementById("VGA_TO_DP").innerHTML;
}
else if (out_slct == "VGA" && in_slct == "HDMI") {
document.getElementById("maintext").innerHTML = document.getElementById("VGA_TO_HDMI").innerHTML;
}
else if (out_slct == "VGA" && in_slct == "DVI") {
document.getElementById("maintext").innerHTML = document.getElementById("VGA_TO_DVI").innerHTML;
}
else if ((out_slct == "VGA" && in_slct == "VGA") || (out_slct == "VGA" && in_slct == "blank")) {
document.getElementById("maintext").innerHTML = document.getElementById("VGA_TO_VGA").innerHTML;
}
if (out_slct != "blank" || in_slct != "blank") {
document.getElementById("maintext").innerHTML += "<br /><br /><a href=\"javascript: scrollTo('TOP');\">Back to top<" + "/" + "a>&nbsp;&nbsp;<a href=\"javascript: HideConfigurator();\">Close<" + "/" + "a>";
document.getElementById("maintext").innerHTML += "<hr /><br />";
}
return;
}
function switchIO() {
var out_dropdown = document.getElementById("Output");
var out_index = out_dropdown.selectedIndex;
var in_dropdown = document.getElementById("Input");
var in_index = in_dropdown.selectedIndex;
out_dropdown.selectedIndex = in_index;
in_dropdown.selectedIndex = out_index;
Configurator();
return;
}
function toggleTable(tableName, parentName) {
var oldLabel = document.getElementById(parentName + "_LINK").innerHTML;
if (document.getElementById(parentName + "_CONTAINER").innerHTML == "&nbsp;") {
document.getElementById(parentName + "_LINK").innerHTML = "Hide" + oldLabel.substring(4, oldLabel.length);
document.getElementById(parentName + "_CONTAINER").innerHTML = "<br />" + document.getElementById(tableName + "_TABLE").innerHTML + "<br />";
}
else {
document.getElementById(parentName + "_LINK").innerHTML = "Show" + oldLabel.substring(4, oldLabel.length);
document.getElementById(parentName + "_CONTAINER").innerHTML = "&nbsp;";
}
return;
}
function toggleBandwCalc() {
var div = document.getElementById("Bandwidth Calc Div");
var text = document.getElementById("BWC button");
if (div.style.display != "none") { div.style.display = "none"; text.innerHTML = 'show';}
else { div.style.display = "block"; text.innerHTML = 'hide';}
return;
}
function toggleSpoilerTable(id) {
var content_id = id + '_content';
var footer_id = id + '_footer';
var state = document.getElementById(content_id).style.display;
if (state == 'none') {
document.getElementById(content_id).style.display = 'table-row';
document.getElementById(footer_id).style.display = 'table-row';
}
else {
document.getElementById(content_id).style.display = 'none';
document.getElementById(footer_id).style.display = 'none';
}
}
function getInterface() {
return [ // Stores max data rate of each interface. The actual numbered stored in the array is in bits per second
// Data is formatted below as the transmission bandwidth (in gbit/s) * encoding overhead factor (i.e. 8b/10b encoding scheme applies
// a factor of 8/10 to the bandwidth) * 1,000,000,000).
//The "maxfreq" is a placeholder, it is filled in dynamically as the program executes
// The interface name stored in the table is the one that is actually displayed in the output, so don't use abbreviations or "internal" code names.
{ name: "DisplayPort 1.31.4", datarate: 32.40 * ( 8/10 ) * 1000000000, maxfreq: null },
{ name: "DisplayPort 1.2", datarate: 21.60 * ( 8/10 ) * 1000000000, maxfreq: null },
{ name: "DisplayPort 1.01.1", datarate: 10.80 * ( 8/10 ) * 1000000000, maxfreq: null },
{ name: "HDMI 2.1", datarate: 48.00 * ( 16/18 ) * 1000000000, maxfreq: null },
{ name: "HDMI 2.0", datarate: 18.00 * ( 8/10 ) * 1000000000, maxfreq: null },
{ name: "HDMI 1.31.4", datarate: 10.20 * ( 8/10 ) * 1000000000, maxfreq: null },
{ name: "HDMI 1.01.2", datarate: 4.95 * ( 8/10 ) * 1000000000, maxfreq: null },
{ name: "Dual-Link DVI", datarate: 9.90 * ( 8/10 ) * 1000000000, maxfreq: null },
{ name: "Single-Link DVI", datarate: 4.95 * ( 8/10 ) * 1000000000, maxfreq: null },
];
}
function MakeRefTable() {
var Interface = getInterface();
var RefTable = document.getElementById("RefTable");
var tBody = document.createElement("tbody");
RefTable.style.padding = "4px";
RefTable.style.fontFamily = "Arial";
RefTable.style.fontSize = "14px";
var tRow = document.createElement("tr");
var tCell = document.createElement("td");
tCell.colSpan = "2";
tCell.style.padding = "8px";
tCell.style.textAlign = "center";
tCell.innerHTML = "<strong>Max. Data Rate Reference Table:" + "<" + "/" + "strong>";
tRow.appendChild(tCell);
tBody.appendChild(tRow);
for (var x = 0; x < Interface.length; x++) {
tRow = document.createElement("tr");
tCell = document.createElement("td");
tCell.innerHTML = Interface[x]["name"];
tCell.style.padding = "8px";
tCell.style.textAlign = "left";
if (x % 2 == 0) { tCell.style.background = "rgba(128,128,128,0.2)"; }
tRow.appendChild(tCell);
tCell = document.createElement('td');
tCell.style.textAlign = "right";
tCell.style.padding = "8px";
tCell.style.paddingLeft = "12px";
if (x % 2 == 0) { tCell.style.background = "rgba(128,128,128,0.2)"; }
tCell.innerHTML = (Number(Interface[x]["datarate"] / 1000000000).toFixed(2) + "&nbsp;Gbit/s");
tRow.appendChild(tCell)
tBody.appendChild(tRow);
}
RefTable.appendChild(tBody);
return;
}
function GCD(a, b) {
a = Math.abs(a);
b = Math.abs(b);
if (b > a) { var temp = a; a = b; b = temp; }
while (true) {
if (b == 0) return a;
a %= b;
if (a == 0) return b;
b %= a;
}
}
function SameRatio(H, V, A) {
//Checks if the ratio H/V is equal to the given ratio A (within a defined margin of error E)
//Negative signs on H, V, and A are ignored
var E = 0.001 //E is a percent error written as a decimal (i.e. E = 0.001 would give an acceptable error margin of 0.1%)
if (Math.abs((Math.abs(H / V) / Math.abs(A)) - 1) <= E) { return true; }
else { return false; }
}
function CVT(H, V, F) {
var V_MIN = 0.00055 // Minimum vertical blanking period (in seconds), defined by VESA CVT standard
var V_PER = 1 / F; // Vertical refresh period
var IDEAL_DUTY_CYCLE = 30 - ((300000 * (V_PER - V_MIN)) / (V + 3));
if (IDEAL_DUTY_CYCLE < 20) { IDEAL_DUTY_CYCLE = 20; }
var H_BLANK = (Math.floor((H * IDEAL_DUTY_CYCLE) / ((100 - IDEAL_DUTY_CYCLE) * 16)) * 16);
var V_BLANK = Math.floor(((V + 3) * V_MIN) / (V_PER - V_MIN)) + 4;
// Must now check if V_BLANK is below the minimum required V_BLANK line count, which is the sum of the vertical front porch, back porch, and sync width
var V_PORCH_F = 3; // Vertical front porch, defined by VESA CVT standard
var V_PORCH_B = 6; // Vertical back porch, defined by VESA CVT standard
var V_SYNC_WIDTH_REF = [ // Table of magic numbers defined in VESA CVT standard; sync width depends on aspect ratio
[ 4 / 3, 4],
[16 / 9, 5],
[ 8 / 5, 6],
[ 5 / 3, 7],
[ 5 / 4, 7],
]
var V_SYNC_W;
for (var x = 0; x < V_SYNC_WIDTH_REF.length; x++) {
if (SameRatio(H, V, V_SYNC_WIDTH_REF[x][0]) == true) {
V_SYNC_W = V_SYNC_WIDTH_REF[x][1];
break;
}
else {
V_SYNC_W = 10;
continue;
}
}
if (V_BLANK < (V_PORCH_F + V_PORCH_B + V_SYNC_W)) {
V_BLANK = V_PORCH_F + V_PORCH_B + V_SYNC_W;
}
// Fill in values in the formula table in case the table is to be shown
document.getElementById("CVT_VMIN_CONST").innerHTML = V_MIN;
document.getElementById("CVT_H_CONST").innerHTML = Commas(H);
document.getElementById("CVT_V_CONST").innerHTML = Commas(V);
document.getElementById("CVT_F_CONST").innerHTML = Commas(F);
document.getElementById("CVT_D_VMIN_plugin").innerHTML = V_MIN;
document.getElementById("CVT_D_F_plugin").innerHTML = Commas(F);
document.getElementById("CVT_D_V+3_plugin").innerHTML = Commas(V + 3);
document.getElementById("CVT_D_RESULT").innerHTML = Number(0.3 - ((3000 * (V_PER - V_MIN)) / (V + 3))).toFixed(3);
document.getElementById("CVT_HBLANK_H_plugin").innerHTML = Commas(H);
document.getElementById("CVT_HBLANK_D_plugin1").innerHTML = Number(IDEAL_DUTY_CYCLE / 100).toFixed(3);
document.getElementById("CVT_HBLANK_D_plugin2").innerHTML = Number(IDEAL_DUTY_CYCLE / 100).toFixed(3);
document.getElementById("CVT_HBLANK_RESULT").innerHTML = Commas(Number((H * IDEAL_DUTY_CYCLE) / (100 - IDEAL_DUTY_CYCLE)).toFixed(1));
document.getElementById("CVT_HBLANK_RND").innerHTML = Commas(Math.floor(((H * IDEAL_DUTY_CYCLE) / (100 - IDEAL_DUTY_CYCLE)) / 16) * 16);
document.getElementById("CVT_VBLANK_V+3_plugin").innerHTML = Commas(V + 3);
document.getElementById("CVT_VBLANK_F_plugin").innerHTML = Commas(F);
document.getElementById("CVT_VBLANK_VMIN_plugin1").innerHTML = V_MIN;
document.getElementById("CVT_VBLANK_VMIN_plugin2").innerHTML = V_MIN;
document.getElementById("CVT_VBLANK_RESULT").innerHTML = Commas(Number((((V + 3) * V_MIN) / (V_PER - V_MIN)) + 4).toFixed(1));
document.getElementById("CVT_VBLANK_RND").innerHTML = Commas(V_BLANK);
document.getElementById("CVT_HEFF_H_plugin").innerHTML = Commas(H);
document.getElementById("CVT_HEFF_HBLANK_plugin").innerHTML = Commas(H_BLANK);
document.getElementById("CVT_HEFF_RESULT").innerHTML = Commas(H + H_BLANK);
document.getElementById("CVT_VEFF_V_plugin").innerHTML = Commas(V);
document.getElementById("CVT_VEFF_VBLANK_plugin").innerHTML = Commas(V_BLANK);
document.getElementById("CVT_VEFF_RESULT").innerHTML = Commas(V + V_BLANK);
return [H_BLANK, V_BLANK];
}
function CVT_RB(H, V, F, R) { // R = 1 for CVT-RB, R = 2 for CVT-R2
var V_MIN = 0.00046; // Minimum vertical blanking period (in seconds), defined by VESA CVT 1.1/1.2 standards
var V_PER = 1 / F; // Vertical refresh period
var H_BLANK;
if (R == 1) { H_BLANK = 160; }
else if (R == 2) { H_BLANK = 80; }
var V_BLANK = Math.floor((V * V_MIN) / (V_PER - V_MIN)) + 1;
// Must now check if V_BLANK is below the minimum required V_BLANK line count, which is the sum of the vertical front porch, back porch, and sync width
var V_PORCH_F;
if (R == 1) { V_PORCH_F = 3; } // Vertical front porch for Reduced Blanking v1, defined by VESA CVT 1.1 standard
else if (R == 2) { V_PORCH_F = 1; } // Vertical front porch for Reduced Blanking v2, defined by VESA CVT 1.2 standard
var V_PORCH_B = 6; // Vertical back porch, defined by VESA CVT standard
var V_SYNC_WIDTH_REF = [ // Table of magic numbers defined in VESA CVT standard; sync width depends on aspect ratio
[ 4 / 3, 4],
[16 / 9, 5],
[ 8 / 5, 6],
[ 5 / 3, 7],
[ 5 / 4, 7],
]
var V_SYNC_W;
if (R == 1) {
for (var x = 0; x < V_SYNC_WIDTH_REF.length; x++) {
if (SameRatio(H, V, V_SYNC_WIDTH_REF[x][0]) == true) { V_SYNC_W = V_SYNC_WIDTH_REF[x][1]; break; }
else { V_SYNC_W = 10; continue; }
}
}
else if (R == 2) { V_SYNC_W = 8; }
if (V_BLANK < (V_PORCH_F + V_PORCH_B + V_SYNC_W)) {
V_BLANK = V_PORCH_F + V_PORCH_B + V_SYNC_W;
}
// Fill in values in the formula table in case the table is to be shown
document.getElementById("CVTRB_VMIN_CONST").innerHTML = V_MIN;
document.getElementById("CVTRB_HBLANK_CONST").innerHTML = H_BLANK;
document.getElementById("CVTRB_H_CONST").innerHTML = Commas(H);
document.getElementById("CVTRB_V_CONST").innerHTML = Commas(V);
document.getElementById("CVTRB_F_CONST").innerHTML = Commas(F);
document.getElementById("CVTRB_VBLANK_V_plugin").innerHTML = Commas(V);
document.getElementById("CVTRB_VBLANK_F_plugin").innerHTML = Commas(F);
document.getElementById("CVTRB_VBLANK_VMIN_plugin1").innerHTML = V_MIN;
document.getElementById("CVTRB_VBLANK_VMIN_plugin2").innerHTML = V_MIN;
document.getElementById("CVTRB_VBLANK_RESULT").innerHTML = Commas(Number((V * V_MIN) / (V_PER - V_MIN)).toFixed(1));
document.getElementById("CVTRB_VBLANK_RND").innerHTML = Commas(V_BLANK);
document.getElementById("CVTRB_HEFF_H_plugin").innerHTML = Commas(H);
document.getElementById("CVTRB_HEFF_HBLANK_plugin").innerHTML = Commas(H_BLANK);
document.getElementById("CVTRB_HEFF_RESULT").innerHTML = Commas(H + H_BLANK);
document.getElementById("CVTRB_VEFF_V_plugin").innerHTML = Commas(V);
document.getElementById("CVTRB_VEFF_VBLANK_plugin").innerHTML = Commas(V_BLANK);
document.getElementById("CVTRB_VEFF_RESULT").innerHTML = Commas(V + V_BLANK);
return [H_BLANK, V_BLANK];
}
function Calculator() {
var MODE;
var Interface = getInterface();
if (document.getElementById("CALC_MODE_DATA").checked == true && document.getElementById("CALC_MODE_FREQ").checked == false) { MODE = "data"; }
if (document.getElementById("CALC_MODE_FREQ").checked == true && document.getElementById("CALC_MODE_DATA").checked == false) { MODE = "freq"; }
var H = document.getElementById("HRES_BOX").value;
var V = document.getElementById("VRES_BOX").value;
var F = document.getElementById("FREQ_BOX").value;
var CD = document.getElementById("DEPTH_DROP").value;
var TF = document.getElementById("TIMING_DROP").value;
var Model = document.getElementById("MODEL_DROP").value;
var CompMode = document.getElementById("COMP_DROP").value;
H = Math.abs(parseInt(H));
V = Math.abs(parseInt(V));
TOTAL_PX_RAW = H * V;
H_RND = Math.floor(H / 8) * 8;
var H_BLANK;
var V_BLANK;
var H_EFF;
var V_EFF;
var TOTAL_PX_RAW;
var TOTAL_PX_EFF;
var PX_PER_SEC;
var BITS_PER_SEC;
var BITS_PER_SEC_MODEL;
var BITS_PER_SEC_COMP;
var DATARATE;
var RESULTS = document.getElementById("RESULTS_BOX");
var CM = null;
if (Model == "RGB" || Model == "YCBCR 444") { CM = 1; }
else if (Model == "YCBCR 422") { CM = (2 / 3); }
else if (Model == "YCBCR 420") { CM = (1 / 2); }
var COMP_RATIO = null;
if (CompMode == "None") { COMP_RATIO = 1; }
else if (CompMode == "DSC 2.0x") { COMP_RATIO = 1 / 2; }
else if (CompMode == "DSC 2.5x") { COMP_RATIO = 2 / 5; }
else if (CompMode == "DSC 3.0x") { COMP_RATIO = 1 / 3; }
try {
if ((MODE == "data" && isNaN(TOTAL_PX_RAW) == false && isNaN(parseInt(F)) == false) || (MODE == "freq" && isNaN(TOTAL_PX_RAW) == false)) {
if (MODE == "data") {
F = Math.abs(parseFloat(F));
if ((TF == "CVT") && (F > (1/.00055))) { RESULTS.innerHTML = "Refresh frequency greater than or equal to 1,818.<span style=\"text-decoration:overline\">18" + "<" + "/" + "span>&nbsp;Hz (1 ÷ 0.00055&nbsp;s) is not possible with the CVT timing format. Due to a minimum vertical blanking period requirement of 550&nbsp;µs (0.55 ms), bandwidth requirements will approach infinity as you approach a framerate with a period of 550&nbsp;µs."; return; }
else if ((TF == "CVT-RB") && (F > (1/.00046))) { RESULTS.innerHTML = "Refresh frequency greater than or equal to ≈2,173.91&nbsp;Hz (1 ÷ 0.00046&nbsp;s) is not possible with the CVT-RB timing format. Due to a minimum vertical blanking period requirement of 460&nbsp;µs (0.46&nbsp;ms), bandwidth requirements will approach infinity as you approach a framerate with a period of 460&nbsp;µs."; return; }
else if ((TF == "CVT-R2") && (F > (1/.00046))) { RESULTS.innerHTML = "Refresh frequency greater than or equal to ≈2,173.91&nbsp;Hz (1 ÷ 0.00046&nbsp;s) is not possible with the CVT-R2 timing format. Due to a minimum vertical blanking period requirement of 460&nbsp;µs (0.46&nbsp;ms), bandwidth requirements will approach infinity as you approach a framerate with a period of 460&nbsp;µs."; return; }
if (TF == "CVT") { H_BLANK = CVT(H_RND, V, F)[0]; }
else if (TF == "CVT-RB") { H_BLANK = CVT_RB(H_RND, V, F, 1)[0]; }
else if (TF == "CVT-R2") { H_BLANK = CVT_RB(H, V, F, 2)[0]; }
else if (TF == "None") { H_BLANK = 0; }
H_EFF = H + H_BLANK;
if (TF == "CVT") { V_BLANK = CVT(H_RND, V, F)[1]; }
else if (TF == "CVT-RB") { V_BLANK = CVT_RB(H_RND, V, F, 1)[1]; }
else if (TF == "CVT-R2") { V_BLANK = CVT_RB(H, V, F, 2)[1]; }
else if (TF == "None") { V_BLANK = 0; }
V_EFF = V + V_BLANK;
TOTAL_PX_EFF = H_EFF * V_EFF;
PX_PER_SEC = TOTAL_PX_EFF * F;
BITS_PER_SEC = PX_PER_SEC * CD;
BITS_PER_SEC_MODEL = BITS_PER_SEC * CM;
BITS_PER_SEC_COMP = BITS_PER_SEC_MODEL * COMP_RATIO;
DATARATE = BITS_PER_SEC_COMP;
if (isNaN(DATARATE) == false) {
if (DATARATE >= 1000000000000000000000000) { RESULTS.innerHTML = ("<strong>Data Rate Required: " + Commas(Number(DATARATE / 1000000000000000000000000).toFixed(2)) + "&nbsp;Ybit/s</strong><br /><br />") }
else if (DATARATE >= 1000000000000000000000) { RESULTS.innerHTML = ("<strong>Data Rate Required: " + Commas(Number(DATARATE / 1000000000000000000000).toFixed(2)) + "&nbsp;Zbit/s</strong><br /><br />") }
else if (DATARATE >= 1000000000000000000) { RESULTS.innerHTML = ("<strong>Data Rate Required: " + Commas(Number(DATARATE / 1000000000000000000).toFixed(2)) + "&nbsp;Ebit/s</strong><br /><br />") }
else if (DATARATE >= 1000000000000000) { RESULTS.innerHTML = ("<strong>Data Rate Required: " + Commas(Number(DATARATE / 1000000000000000).toFixed(2)) + "&nbsp;Pbit/s</strong><br /><br />") }
else if (DATARATE >= 1000000000000) { RESULTS.innerHTML = ("<strong>Data Rate Required: " + Commas(Number(DATARATE / 1000000000000).toFixed(2)) + "&nbsp;Tbit/s</strong><br /><br />") }
else if (DATARATE >= 1000000000) { RESULTS.innerHTML = ("<strong>Data Rate Required: " + Commas(Number(DATARATE / 1000000000).toFixed(2)) + "&nbsp;Gbit/s</strong><br /><br />") }
else if (DATARATE >= 1000000) { RESULTS.innerHTML = ("<strong>Data Rate Required: " + Commas(Number(DATARATE / 1000000).toFixed(2)) + "&nbsp;Mbit/s</strong><br /><br />") }
else if (DATARATE >= 1000) { RESULTS.innerHTML = ("<strong>Data Rate Required: " + Commas(Number(DATARATE / 1000).toFixed(2)) + "&nbsp;Kbit/s</strong><br /><br />") }
else if (DATARATE < 0) { RESULTS.innerHTML = "<strong>Data Rate Required: A lot (integer overflow error :P)<" + "/strong>"; return; }
else { RESULTS.innerHTML = ("<strong>Data Rate Required: " + Number(DATARATE) + "&nbsp;bit/s</strong><br /><br />") }
RESULTS.innerHTML += ("Video format:<br />")
RESULTS.innerHTML += (H + "&nbsp;×&nbsp;" + V + "&nbsp;(" + H / GCD(H, V) + ":" + V / GCD(H, V) + "&nbsp;ratio)&nbsp;at&nbsp;" + Commas(F) + "&nbsp;Hz<br />");
RESULTS.innerHTML += ((CD / 3) + "&nbsp;bpc&nbsp;(" + CD + "&nbsp;bit/px)&nbsp;");
if (Model == "RGB") { RESULTS.innerHTML += "RGB color"; }
else if (Model == "YCBCR 444") { RESULTS.innerHTML += document.getElementById("YCBCR_TEXT").innerHTML + "4:4:4&nbsp;color"; }
else if (Model == "YCBCR 422") { RESULTS.innerHTML += document.getElementById("YCBCR_TEXT").innerHTML + "4:2:2&nbsp;color"; }
else if (Model == "YCBCR 420") { RESULTS.innerHTML += document.getElementById("YCBCR_TEXT").innerHTML + "4:2:0&nbsp;color"; }
if (TF == "CVT" || TF == "CVT-RB" || TF == "CVT-R2") { RESULTS.innerHTML += "&nbsp;with&nbsp;" + TF + "&nbsp;timing"; }
if (CompMode == "DSC 2.0x") { RESULTS.innerHTML += "<br />Display Stream Compression (2.0× ratio)"; }
else if (CompMode == "DSC 2.5x") { RESULTS.innerHTML += "<br />Display Stream Compression (2.5× ratio)"; }
else if (CompMode == "DSC 3.0x") { RESULTS.innerHTML += "<br />Display Stream Compression (3.0× ratio)"; }
RESULTS.innerHTML += "<br /><br />";
RESULTS.innerHTML += "Frame size:<br />" + Commas(H) + "&nbsp;×&nbsp;" + Commas(V) + "&nbsp;=&nbsp;" + Commas(TOTAL_PX_RAW) + "&nbsp;pixels&nbsp;per&nbsp;frame<br /><br />";
if (TF != "None") { RESULTS.innerHTML += ("Effective&nbsp;frame&nbsp;size&nbsp;with " + TF + "&nbsp;blanking&nbsp;intervals:<br />" + Commas(H_EFF) + "&nbsp;×&nbsp;" + Commas(V_EFF) + "&nbsp;=&nbsp;" + Commas(TOTAL_PX_EFF) + "&nbsp;pixels&nbsp;per&nbsp;frame<br /><br />"); }
if (TF == "None") { RESULTS.innerHTML += ("Pixel rate:<br />"); }
else { RESULTS.innerHTML += ("Effective Pixel rate:<br />"); }
RESULTS.innerHTML += (Commas(TOTAL_PX_EFF) + "&nbsp;px&nbsp;per&nbsp;frame&nbsp;×&nbsp;" + F + "&nbsp;frames&nbsp;per&nbsp;second&nbsp;=&nbsp;" + Commas(PX_PER_SEC) + "&nbsp;px&nbsp;per&nbsp;second<br /><br />");
RESULTS.innerHTML += ("Bit rate:<br />");
RESULTS.innerHTML += (Commas(PX_PER_SEC) + "&nbsp;px/s&nbsp;×&nbsp;" + CD + "&nbsp;bits&nbsp;per&nbsp;pixel&nbsp;=&nbsp;" + Commas(BITS_PER_SEC) + "&nbsp;bits&nbsp;per&nbsp;second");
if (BITS_PER_SEC >= 1000000000000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC / 1000000000000000000000000).toFixed(2)) + "&nbsp;Ybit/s)") }
else if (BITS_PER_SEC >= 1000000000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC / 1000000000000000000000).toFixed(2)) + "&nbsp;Zbit/s)") }
else if (BITS_PER_SEC >= 1000000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC / 1000000000000000000).toFixed(2)) + "&nbsp;Ebit/s)") }
else if (BITS_PER_SEC >= 1000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC / 1000000000000000).toFixed(2)) + "&nbsp;Pbit/s)") }
else if (BITS_PER_SEC >= 1000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC / 1000000000000).toFixed(2)) + "&nbsp;Tbit/s)") }
else if (BITS_PER_SEC >= 1000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC / 1000000000).toFixed(2)) + "&nbsp;Gbit/s)") }
else if (BITS_PER_SEC >= 1000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC / 1000000).toFixed(2)) + "&nbsp;Mbit/s)") }
else if (BITS_PER_SEC >= 1000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC / 1000).toFixed(2)) + "&nbsp;Kbit/s)") }
else { RESULTS.innerHTML += ("&nbsp;(" + Number(BITS_PER_SEC) + "&nbsp;bit/s)") }
if (Model == "YCBCR 422") {
RESULTS.innerHTML += ("<br /><br />" + document.getElementById("YCBCR_TEXT").innerHTML + "4:2:2 format reduces data rate by a factor of 1.5:<br />" +
Commas(BITS_PER_SEC) + "&nbsp;bit/s ÷ 1.5 = " + Commas(BITS_PER_SEC_MODEL) + "&nbsp;bit/s");
}
//× ( <sup>1<" + "/sup><sub>2<" + "/sub> )
else if (Model == "YCBCR 420") {
RESULTS.innerHTML += ("<br /><br />" + document.getElementById("YCBCR_TEXT").innerHTML + "4:2:0 format reduces data rate by a factor of 2:<br />" +
Commas(BITS_PER_SEC) + "&nbsp;bit/s ÷ 2 = " + Commas(BITS_PER_SEC_MODEL) + "&nbsp;bit/s");
}
if (Model == "YCBCR 422" || Model == "YCBCR 420") {
if (BITS_PER_SEC_MODEL >= 1000000000000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_MODEL / 1000000000000000000000000).toFixed(2)) + "&nbsp;Ybit/s)") }
else if (BITS_PER_SEC_MODEL >= 1000000000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_MODEL / 1000000000000000000000).toFixed(2)) + "&nbsp;Zbit/s)") }
else if (BITS_PER_SEC_MODEL >= 1000000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_MODEL / 1000000000000000000).toFixed(2)) + "&nbsp;Ebit/s)") }
else if (BITS_PER_SEC_MODEL >= 1000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_MODEL / 1000000000000000).toFixed(2)) + "&nbsp;Pbit/s)") }
else if (BITS_PER_SEC_MODEL >= 1000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_MODEL / 1000000000000).toFixed(2)) + "&nbsp;Tbit/s)") }
else if (BITS_PER_SEC_MODEL >= 1000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_MODEL / 1000000000).toFixed(2)) + "&nbsp;Gbit/s)") }
else if (BITS_PER_SEC_MODEL >= 1000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_MODEL / 1000000).toFixed(2)) + "&nbsp;Mbit/s)") }
else if (BITS_PER_SEC_MODEL >= 1000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_MODEL / 1000).toFixed(2)) + "&nbsp;Kbit/s)") }
else { RESULTS.innerHTML += (" (" + Number(BITS_PER_SEC_MODEL) + "&nbsp;bit/s)") }
}
if (CompMode == "DSC 2.0x") {
RESULTS.innerHTML += ("<br /><br />Display Stream Compression (DSC) with a 2-to-1 compression ratio reduces data rate by a factor of 2:<br />" +
Commas(BITS_PER_SEC_MODEL) + "&nbsp;bit/s ÷ 2 = " + Commas(BITS_PER_SEC_COMP) + "&nbsp;bit/s");
}
else if (CompMode == "DSC 2.5x") {
RESULTS.innerHTML += ("<br /><br />Display Stream Compression (DSC) with a 2.5-to-1 compression ratio reduces data rate by a factor of 2.5:<br />" +
Commas(BITS_PER_SEC_MODEL) + "&nbsp;bit/s ÷ 2.5 = " + Commas(BITS_PER_SEC_COMP) + "&nbsp;bit/s");
}
else if (CompMode == "DSC 3.0x") {
RESULTS.innerHTML += ("<br /><br />Display Stream Compression (DSC) with a 3-to-1 compression ratio reduces data rate by a factor of 3:<br />" +
Commas(BITS_PER_SEC_MODEL) + "&nbsp;bit/s ÷ 3 = " + Commas(BITS_PER_SEC_COMP) + "&nbsp;bit/s");
}
if (CompMode != "None") {
if (BITS_PER_SEC_COMP >= 1000000000000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_COMP / 1000000000000000000000000).toFixed(2)) + "&nbsp;Ybit/s)") }
else if (BITS_PER_SEC_COMP >= 1000000000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_COMP / 1000000000000000000000).toFixed(2)) + "&nbsp;Zbit/s)") }
else if (BITS_PER_SEC_COMP >= 1000000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_COMP / 1000000000000000000).toFixed(2)) + "&nbsp;Ebit/s)") }
else if (BITS_PER_SEC_COMP >= 1000000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_COMP / 1000000000000000).toFixed(2)) + "&nbsp;Pbit/s)") }
else if (BITS_PER_SEC_COMP >= 1000000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_COMP / 1000000000000).toFixed(2)) + "&nbsp;Tbit/s)") }
else if (BITS_PER_SEC_COMP >= 1000000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_COMP / 1000000000).toFixed(2)) + "&nbsp;Gbit/s)") }
else if (BITS_PER_SEC_COMP >= 1000000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_COMP / 1000000).toFixed(2)) + "&nbsp;Mbit/s)") }
else if (BITS_PER_SEC_COMP >= 1000) { RESULTS.innerHTML += (" (" + Commas(Number(BITS_PER_SEC_COMP / 1000).toFixed(2)) + "&nbsp;Kbit/s)") }
else { RESULTS.innerHTML += (" (" + Number(BITS_PER_SEC_COMP) + "&nbsp;bit/s)") }
}
if (TF == "None") { RESULTS.innerHTML += ("<br /><br /><strong>Note:" + "<" + "/" + "strong> Actual video transmission does require blanking intervals. The \"Timing Format: None\" option should only be used for mathematical curiosity, not to determine how much bandwidth a video signal actually needs."); }
if (TF != "None" && document.getElementById("SHOW_FORMULA").checked == true) {
RESULTS.innerHTML += "<br /><br /><strong>" + TF + " Timing Formula:<" + "/strong><br />";
if (TF == "CVT") {
RESULTS.innerHTML += document.getElementById("CVT_FORMULA").innerHTML;
}
if (TF == "CVT-RB" || TF == "CVT-R2") {
RESULTS.innerHTML += document.getElementById("CVTRB_FORMULA").innerHTML;
}
}
}
else { RESULTS.innerHTML = "&nbsp;"; }
}
else if (MODE == "freq") {
if (TF == "CVT") {
for (var x = 0; x < Interface.length; x++) {
// For each interface, this section finds the approximate maximum frequency via division by 2 (Log(N) time).
// Since CVT has a maximum limit of 1818.18 Hz (or 1/V_MIN), checking frequencies within the range 01920 is sufficient.
// This approximation method executes [Rounds] number of times (in this case Rounds = 16). More rounds increases precision.
// In the first round, the program determines if the maximum frequency is in the upper or lower half of the 1920 Hz range
// The second round determines whether it is in the upper or lower half of that half, and so on and so forth
// After 16 rounds, the maximum frequency is determined within 1920/(2^16) precision (≈0.03 Hz).
var CheckRange = 1920;
var Rounds = 16;
var F = CheckRange / 2;
var n = CheckRange / 4;
var V_MIN = 0.00055
for (var y = 0; y < Rounds; y++) {
DATARATE = ((H + CVT(H, V, F)[0]) * (V + CVT(H, V, F)[1]) * F * CD * CM * COMP_RATIO);
if (DATARATE >= Interface[x]["datarate"] || F >= (1 / V_MIN)) { F -= n; }
else { F += n; }
n /= 2;
}
if (F > (1 / V_MIN)) { Interface[x]["maxfreq"] = "1818.2&nbsp;Hz"; }
else { Interface[x]["maxfreq"] = F; }
}
}
else if (TF == "CVT-RB" || TF == "CVT-R2") {
if (TF == "CVT-RB") { H_BLANK = 160; }
else if (TF == "CVT-R2") { H_BLANK = 80; }
var V_MIN = 0.00046
for (var x = 0; x < Interface.length; x++) {
F = (Interface[x]["datarate"]) / (((H + H_BLANK) * V * CD * CM * COMP_RATIO) + (V_MIN * Interface[x]["datarate"]));
if (F > (1 / V_MIN)) { Interface[x]["maxfreq"] = "2173.9&nbsp;Hz"; }
else { Interface[x]["maxfreq"] = F; }
}
}
else if (TF == "None") {
for (var x = 0; x < Interface.length; x++) {
Interface[x]["maxfreq"] = Interface[x]["datarate"] / (H * V * CD * CM * COMP_RATIO);
}
}
var FreqContainer = document.createElement("div")
var FreqTable = document.createElement("table");
var tBody = document.createElement("tbody");
FreqTable.cellSpacing = "0";
FreqTable.style.fontFamily = "Arial";
FreqTable.style.fontSize = "14px";
FreqTable.style.minWidth = "240px";
var tRow = document.createElement("tr");
var tCell = document.createElement("td");
tCell.colSpan = "2";
tCell.style.padding = "4px";
tCell.style.paddingLeft = "0px";
tCell.style.textAlign = "left";
tCell.innerHTML = "<strong>Video Format:<" + "/" + "strong>";
tRow.appendChild(tCell);
tBody.appendChild(tRow);
tRow = document.createElement("tr");
tCell = document.createElement("td");
tCell.colSpan = "2";
tCell.style.padding = "4px";
tCell.style.paddingLeft = "8px";
tCell.style.textAlign = "left";
tCell.innerHTML += H + "&nbsp;×&nbsp;" + V + "&nbsp;(" + (H / GCD(H, V)) + ":" + (V / GCD(H, V)) + "&nbsp;ratio)<br />";
tCell.innerHTML += ((CD / 3) + "&nbsp;bpc&nbsp;(" + CD + "&nbsp;bit/px)&nbsp;");
if (Model == "RGB") { tCell.innerHTML += "RGB color"; }
else if (Model == "YCBCR 444") { tCell.innerHTML += document.getElementById("YCBCR_TEXT").innerHTML + "4:4:4 color"; }
else if (Model == "YCBCR 422") { tCell.innerHTML += document.getElementById("YCBCR_TEXT").innerHTML + "4:2:2 color"; }
else if (Model == "YCBCR 420") { tCell.innerHTML += document.getElementById("YCBCR_TEXT").innerHTML + "4:2:0 color"; }
if (CompMode == "None") { tCell.innerHTML += "<br />Uncompressed"}
else if (CompMode == "DSC 2.0x") { tCell.innerHTML += "<br />DSC (2.0× ratio)"; }
else if (CompMode == "DSC 2.5x") { tCell.innerHTML += "<br />DSC (2.5× ratio)"; }
else if (CompMode == "DSC 3.0x") { tCell.innerHTML += "<br />DSC (3.0× ratio)"; }
if (TF == "None") { tCell.innerHTML += "<br />&nbsp;"; }
else if (TF == "CVT") { tCell.innerHTML += "<br />CVT&nbsp;timing format"; }
else if (TF == "CVT-RB") { tCell.innerHTML += "<br />CVT-RB&nbsp;timing format"; }
else if (TF == "CVT-R2") { tCell.innerHTML += "<br />CVT-R2&nbsp;timing format"; }
tRow.appendChild(tCell);
tBody.appendChild(tRow);
tRow = document.createElement("tr");
tCell = document.createElement("td");
tCell.colSpan = "2";
tCell.style.padding = "4px";
tCell.style.paddingLeft = "0px";
tCell.style.paddingBottom = "8px";
tCell.style.textAlign = "left";
tCell.innerHTML = "<strong>Maximum Refresh Frequency:" + "<" + "/" + "strong>";
tRow.appendChild(tCell);
tBody.appendChild(tRow);
for (var x = 0; x < Interface.length; x++) {
tRow = document.createElement("tr");
tCell = document.createElement("td");
tCell.innerHTML = Interface[x]["name"];
tCell.style.padding = "8px";
tCell.style.textAlign = "left";
tCell.style.minWidth = "125px";
tCell.style.border = "0px solid #000000";
if (x % 2 == 0) { tCell.style.background = "rgba(128,128,128,0.2)"; }
tRow.appendChild(tCell);
tCell = document.createElement('td');
tCell.style.textAlign = "right";
tCell.style.padding = "8px";
tCell.style.paddingLeft = "12px";
tCell.style.minWidth = "75px";
if (x % 2 == 0) { tCell.style.background = "rgba(128,128,128,0.2)"; }
if (isNaN(Interface[x]["maxfreq"]) == true) { tCell.innerHTML = Interface[x]["maxfreq"]; }
else {
if (Interface[x]["maxfreq"] >= 1000000000000) { tCell.innerHTML = (Commas(Number(Interface[x]["maxfreq"] / 1000000000000).toFixed(2)) + "&nbsp;THz"); }
else if (Interface[x]["maxfreq"] >= 1000000000) { tCell.innerHTML = (Commas(Number(Interface[x]["maxfreq"] / 1000000000 ).toFixed(2)) + "&nbsp;GHz"); }
else if (Interface[x]["maxfreq"] >= 1000000) { tCell.innerHTML = (Commas(Number(Interface[x]["maxfreq"] / 1000000 ).toFixed(2)) + "&nbsp;MHz"); }
else if (Interface[x]["maxfreq"] >= 10000) { tCell.innerHTML = (Commas(Number(Interface[x]["maxfreq"] / 1000 ).toFixed(2)) + "&nbsp;KHz"); }
else { tCell.innerHTML = (Commas(Number(Interface[x]["maxfreq"] ).toFixed(1)) + "&nbsp;Hz"); }
}
tRow.appendChild(tCell)
tBody.appendChild(tRow);
}
FreqTable.appendChild(tBody);
FreqContainer.appendChild(FreqTable);
RESULTS.innerHTML = FreqContainer.innerHTML;
}
}
else { RESULTS.innerHTML = "&nbsp;" }
}
catch (err) {
document.getElementById("RESULTS_BOX").innerHTML = '&nbsp;';
return;
}
return;
}
function CalcModeSwitch() {
if (document.getElementById("CALC_MODE_DATA").checked == true) {
document.getElementById("FREQ_BOX").disabled = false;
}
else if (document.getElementById("CALC_MODE_FREQ").checked == true) {
document.getElementById("FREQ_BOX").disabled = true;
//document.getElementById("FREQ_BOX").value = "";
}
return;
}
function Commas(x) {
var parts = x.toString().split(".");
parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
return parts.join(".");
}
function ResetDropdowns() {
document.getElementById("DEPTH_DROP").selectedIndex = 0;
document.getElementById("MODEL_DROP").selectedIndex = 0;
document.getElementById("COMP_DROP").selectedIndex = 0;
document.getElementById("TIMING_DROP").selectedIndex = 2;
return;
}
function HideConfigurator() {
document.getElementById("Output").selectedIndex = 0;
document.getElementById("Input").selectedIndex = 0;
Configurator();
scrollTo('TOP');
return;
}
function findPos(obj, offset) {
var curtop = 0 - offset;
if (obj.offsetParent) {
do {
curtop += obj.offsetTop;
} while (obj = obj.offsetParent);
return [curtop];
}
}
function scrollTo(elementID) {
window.scroll(0, findPos(document.getElementById(elementID), 50));
}
function getQuery(name, url) {
if (!url) {
url = window.location.href;
}
name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, " "));
}
function changeOnLoad() {
var output = getQuery('output');
var input = getQuery('input');
if (output == null && input == null) { return; }
var whiteList = {
'blank':0,
'DP': 1,
'HDMI': 2,
'DVI': 3,
'VGA': 4
}
if ((output in whiteList || output == null) && (input in whiteList || input == null) && !(output == null && input == null)) {
if (output == null) { document.getElementById('Output').selectedIndex = whiteList['blank']; }
else { document.getElementById('Output').selectedIndex = whiteList[output]; }
if (input == null) { document.getElementById('Input').selectedIndex = whiteList['blank']; }
else { document.getElementById('Input').selectedIndex = whiteList[input]; }
scrollTo('TOP');
}
return;
}
function scrollOnLoad() {
var id = getQuery('section');
if (id == null) { return; }
var whiteList = [
'maximum_limits',
'which_cable_type',
'hdmi_cable_versions',
'120Hz_displays',
'active_vs_passive_adapters',
'active_adapters_for_multi_display',
'bandwidth_calculator'
]
if (whiteList.indexOf(id) != -1) {
document.getElementById(id + '_content').style.display = 'table-row';
document.getElementById(id + '_footer').style.display = 'table-row';
scrollTo(id);
}
return;
}
function scrollDiff(id) { // scrolls the page so that Elem2 is at the Y position where Elem1 used to be
var Elem1 = id + '_footer';
var Elem2 = id + '_header';
var Offset1 = ($(document.getElementById(Elem1)).offset()).top;
var Offset2 = ($(document.getElementById(Elem2)).offset()).top;
var diff = Offset1 - Offset2;
window.scroll(0, window.scrollY - (diff - 1));
return;
}
MakeRefTable();
Calculator();
changeOnLoad();
scrollOnLoad();
Configurator();
</script>
</body>
</html>