浏览器具有内置功能,可以与远程用户共享您的屏幕,例如在网络会议上,但通常您必须在共享一个窗口和共享整个屏幕之间进行选择。
- 如果您希望查看者看到 2 个或更多窗口,共享一个窗口有时会很不方便。来回切换很繁琐。
- 如果您的屏幕分辨率比查看器的分辨率大很多,则共享整个屏幕的效果并不好:例如,我的屏幕分辨率是 3440x1440,但使用笔记本电脑的查看器的分辨率可能是 1920x1080。因此,我这边可读的文本对于查看器来说太小了(尤其是压缩伪影)。
我很好奇是否有人对 Ubuntu 有一些巧妙的解决方案?我将在下面发布我自己的答案,但我相信其他人有更好的想法。
答案1
到目前为止我发现的最佳方法是使用 VLC 捕获屏幕的一部分,然后共享 VLC 窗口。
首先,运行 VLC:
$ vlc --no-video-deco \
--no-embedded-video \
--screen-fps=20 \
--screen-top=32 \
--screen-left=85 \
--screen-width=1120 \
--screen-height=740 \
screen://
这将设置为捕获屏幕的一部分。顶部和左侧从屏幕角落设置,因此不包括 Dock 和顶部栏 - 您必须根据自己的设置自定义这些。
现在移动并调整您想要共享的窗口的大小,以便它们位于捕获区域,然后在您的网络浏览器中选择要共享的 VLC 窗口。
有几个缺点:
- 对 VLC 捕获区域进行微调以匹配您的设置非常繁琐。
- 每次想要共享时都要移动并调整窗口大小,非常繁琐。
- 如果您最小化 VLC 窗口,它将无法作为共享选项使用。如果 VLC 窗口与捕获区域重叠,则会产生“镜厅”效果。我将 VLC 窗口移至屏幕底部,以便只有其标题栏仍然可见。
我很想听到更好的解决方案。
答案2
我找到了一种使用 的方法xrandr
。例如,要仅显示 4K 屏幕的右下角 1920x1080 部分,请运行:
xrandr --setmonitor screenshare 1920/1x1080/1+1920+1080 none
这应该会作为新监视器出现在要共享的屏幕列表中。几何的语法是[w]/[mmw]x[h]/[mmh]+[x]+[y]
。
┌─────────────────┬─────────────────┐
│ │ │
│ y │
│ │ │
│ │ │
│ ▼ │
├───────x────────►┌────────w────────┤
│ │ │
│ │ │
│ h h
│ │ │
│ │ │
└─────────────────┴────────w────────┘
mmw
/mmh
是实际尺寸(以毫米为单位)。我使用1
,因为我还没有遇到过与它相关的应用程序。
要删除它,请运行:
xrandr --delmonitor screenshare
根据这些答案:
答案3
还有另一个实用程序称为 xzoom
$ sudo apt install xzoom
用法:
$ xzoom -geometry 800x400
并输入 - / + 来放大或缩小