跳转到主要内容

一种服务,Web界面和UI,用于使用Stream Deck与您的计算机交互

项目描述

streamdeck_ui - Linux compatible UI for the Elgato Stream Deck


PyPI version Test Status codecov Join the chat at https://gitter.im/timothycrosley/streamdeck-ui License Downloads Code style: black Imports: isort


阅读最新文档 发行说明


streamdeck_ui Linux兼容的Elgato Stream Deck UI。

Streamdeck UI Usage Example

主要功能

  • Linux兼容: 允许在Linux上使用Stream Deck设备(原始、MK2、迷你和XL)。
  • 多设备: 允许在一台计算机上连接和配置多个Stream Deck。
  • 亮度控制: 支持从配置UI和设备本身的按钮控制亮度。
  • 可配置按钮显示: 每个Stream Deck按钮上的图标 + 文本、仅图标和仅文本可配置。
  • 多动作支持: 在Stream Deck的单个按钮上运行命令、写入文本和按热键组合。
  • 按钮页面: streamdeck_ui支持多个按钮页面,并动态设置按钮以在这些页面之间切换。
  • 自动重连: 在设备被拔掉并重新插入的情况下,自动优雅地重新连接。
  • 导入/导出:支持保存和恢复Stream Deck配置。
  • 拖放:通过拖放来移动按钮。
  • 拖放图片:通过将图片从文件管理器拖放到按钮上来配置按钮图片。
  • 自动熄灭:配置Stream Deck在一段时间后自动熄灭显示。按钮点击可以唤醒它。
  • 动画图标:使用动画GIF来使事情更有趣。
  • 在systemd下运行:作为systemd --user服务在后台自动运行。
  • Stream Deck踏板:支持按下踏板时执行操作。

Stream Deck的通信由Python Elgato Stream Deck库提供。

安装指南

启动后,请考虑安装systemd服务

使用故障排除指南搜索问题以获取指导。

预编译脚本

提供了在Debian/UbuntuFedora上设置streamdeck_ui的脚本。

帮助

不显示用户界面启动

注意您可以通过以下方式在不显示配置用户界面的情况下启动streamdeck_ui

streamdeck -n

命令

在命令字段中输入一个值以执行命令。例如,gnome-terminal将在Ubuntu/Fedora上启动新终端,或obs将启动OBS。

示例

以下示例是为使用xorg的Ubuntu。您可以使用像xdotool这样的工具与其他应用程序交互。

查找标题以Meet - 开头的窗口并将其聚焦。如果您在某个标签页上有一个Google Meet会话但您将其置于另一个窗口之后,这将很有帮助。

xdotool search --name '^Meet - .+$' windowactivate 

如果您有多个标签页打开,则会议标签必须是活动的,因为窗口标题是由当前活动标签设置的。

查找标题以Meet - 开头的窗口,然后向其发送ctrl+d。这相当于在Google Meet中切换静音按钮。

xdotool search --name '^Meet - .+$' windowactivate --sync key ctrl+d

以一定百分比更改系统音量(或降低)。假设您使用PulseAudio/Alsa混音器。

amixer -D pulse sset Master 20%+

如果您想调用使用shell脚本特定功能(如&&|)的命令,请通过bash运行它。此命令将使用wmctrl将焦点转移到firefox,然后转到第一个标签。

bash -c "wmctrl -a firefox  && xdotool key alt+1"

按键

模拟按键组合(热键)。基本格式是一组按键,用加号(+)分隔以同时按下。如果需要更多按键组合,请用逗号(,)分隔按键组合组。例如,alt+F4,f表示先按住alt,然后按F4,最后释放两个按键。接下来,按并释放f

您也可以指定十六进制格式的KeyCode,例如,0x74t的KeyCode。这有时也称为keysym值。

您可以使用xev工具捕获您正在寻找的键。在输出中查找keysym hex value,例如(keysym 0x74, t)

使用逗号加号来实际输出,或相应地输出+

使用delay <n>添加延迟,其中<n>是秒数(浮点数或整数)。如果没有指定<n>,则默认使用0.5秒。如果<n>无法解析为有效的数字,则将不会产生延迟。

示例

  • F11 - 按下F11。如果您的焦点在浏览器上,这将切换全屏。
  • alt+F4 - 关闭当前窗口。
  • ctrl+w - 关闭当前浏览器标签。
  • cmd+left - 在左侧查看分割。注意cmd超级键(Windows键的等价键)。
  • alt+plus - 同时按下alt和+键。
  • alt+delay+F4 - 按下alt,然后等待0.5秒,然后按F4。释放两个键。
  • 1,delay,delay,2,delay,delay,3 - 在按键间有1秒延迟的情况下输入123(使用默认延迟)。
  • 1,delay 1,2,delay 1,3 - 在按键间有1秒延迟的情况下输入123(使用自定义延迟)。
  • e,c,h,o,space,",t,e,s,t,",enter - 输入echo "test"并按回车。
  • ctrl+alt+0x74 - 打开一个新的终端窗口。0x74t的KeyCode。提示:如果字符不起作用,尝试使用KeyCode。
  • 0xffe5 - 切换大小写锁定。
  • 0xffaf - 数字键盘上的/键。

标准键列表可以在源代码中找到。

super键(Windows键)在某些Linux版本中可能会有问题。您可以使用以下方式使用命令功能而不是按键功能。在这个例子中,它会按Super4,这将启动您喜欢的应用程序编号4(Ubuntu)。

xdotool key "Super_L+4"

写入文本

快速输入较长的文本片段(逐字输入)。请注意,与按键动作不同,写入文本不接受特殊(修饰符)键。但是,如果输入回车(产生新行),则会在输出时按下回车。

示例

Unfortunately that's a hard no.
Kind regards,
Joe

nope

已知问题

使用pip show streamdeck-ui确认您正在运行最新版本。与以下内容进行比较:PyPI version

  • Streamdeck使用pynput来模拟按键,但它缺少对Wayland的适当支持。通常,当使用X(Ubuntu/Linux Mint)时,结果会很好。此线程可能有用。
  • 按键写入文本在Fedora(除Streamdeck本身外)上不起作用,这并不特别有用。然而,仍然可以通过命令功能做很多事情。
  • 一些用户报告说Stream Deck设备在某些特定的USB端口上无法正常工作,因为它消耗了相当多的电源和/或具有严格的带宽要求。尝试使用不同的端口。
  • 如果您正在从命令功能执行shell脚本,请记住在文件的顶部添加shebang,针对所涉及的语言。例如#!/bin/bash#!/usr/bin/python3等。在某些发行版中,如果没有添加shebang,Streamdeck可能会看起来像锁定了。

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分布

streamdeck_ui-2.0.15.tar.gz (1.2 MB 查看散列

上传于 源文件

构建分发版

streamdeck_ui-2.0.15-py3-none-any.whl (1.2 MB 查看哈希值)

上传于 Python 3

由以下组织支持