我对 xorg.conf 中的自定义分辨率配置有一个稍微不寻常的要求,并且需要一些帮助来弄清楚如何实现它。我有一台原始分辨率为 1400x1050 的投影仪,并希望在 1400x584 的穷人影院模式下使用它。问题是我仍然需要向投影仪提供全帧信号,同时限制 X(或本例中的 XBMC)仅使用 1400x584“切片”,同时输出其上方和下方的黑色/空白像素。理想情况下,我希望能够定义输出“窗口”在 1400x1050 帧内垂直放置的位置,但居中也可以。我很确定这应该是可能的,但尽管经过几个小时的搜索,我还没有找到任何好的答案 - 可能是因为大多数人还没有愚蠢到只想使用屏幕的一部分......有什么想法吗?
编辑- 这些是投影仪的报告统计数据:
(II) NVIDIA(0): Frequency information for CAI CANON PJ (DFP-1):
(II) NVIDIA(0): HorizSync : 15.000-80.000 kHz
(II) NVIDIA(0): VertRefresh : 50.000-85.000 Hz
(II) NVIDIA(GPU-0): 1400 x 1050 @ 60 Hz
(II) NVIDIA(GPU-0): Pixel Clock : 108.000 MHz
(II) NVIDIA(GPU-0): HRes, HSyncStart : 1400, 1448
(II) NVIDIA(GPU-0): HSyncEnd, HTotal : 1560, 1688
(II) NVIDIA(GPU-0): VRes, VSyncStart : 1050, 1051
(II) NVIDIA(GPU-0): VSyncEnd, VTotal : 1054, 1066
(II) NVIDIA(GPU-0): H/V Polarity : -/-
另一个编辑- 经过更多的绞尽脑汁、测量和测试后,我提出了一个修改后的计划:
投影仪具有电动变焦功能,更重要的是,如果我将长宽比设置为 16:9(在投影仪上),我可以使用遥控器在 1050 像素高的视口内上下移动 788 像素高的框架。 。结果!结合上面的内容,并在下面的答案的帮助下,我认为最好的解决方案是将 xorg.conf 中的屏幕分辨率设置为 1400x788 (16:9) 并使用缩放功能将投影图像放大到完整观看 2.39:1(宽银幕电影)内容时屏幕的高度 - 从而将黑条从屏幕上推到遮蔽上。该解决方案有一些主要优点:
- 当观看 16:9 内容时,我使用的像素数量几乎是两倍(1.1Mp 与 600kp)
- 我能够使用遥控器动态调整图像的垂直位置
- 放大的图片比完全缩小的图片稍微亮一些
缺点是要切换纵横比,我现在必须执行三个步骤:移动遮罩、缩放图片并将其垂直移动到位置,而不是仅仅移动遮罩 - 但我绝对可以忍受。现在唯一的问题是使用这两个模型行中的哪一个:
Modeline "1400x788@69" 108.00 1400 1432 1840 1872 788 803 812 828 -hsync -vsync
Modeline "1400x788@60" 89.66 1400 1432 1768 1800 788 804 812 828 -hsync -vsync
也就是说,我应该选择最大刷新 (69Hz) 还是标准刷新 (60Hz)?
答案1
好吧,这是一个令人讨厌的解决方案,但它有效:您需要的是自定义模型行。您想要做的是通过减少扫描线但增加重新扫描时间来进行补偿,从而保持总体时序相同。这个数学有点复杂,但有记录。我可能可以计算,但我需要你现有的模型线。
答案2
之前曾问过一个非常相似的问题它的答案包含指向页面/脚本的链接,可以生成您的设置所需的模型行。