十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Bitfocus Companion 拆解:把 Stream Deck 变成可编程的导播台

Bitfocus Companion 拆解:把 Stream Deck 变成可编程的导播台 Bitfocus Companion 拆解把 Stream Deck 变成可编程的导播台【免费下载链接】companionBitfocus Companion enables the Elgato Stream Deck and other controllers to be a professional shotbox surface for an increasing amount of different presentation switchers, video playback software and broadcast equipment.项目地址: https://gitcode.com/gh_mirrors/co/companion导播间里导播按下 Stream Deck 的一个按键OBS 立刻切走机位演播室的灯光跟着变暗。按键只是表象背后是开源程序 Bitfocus Companion 在编排一切——它把 Stream Deck 这类控制器变成可编程面板统一指挥 OBS、vMix、QLab 这些软件。它替代了什么传统做法基本是三条路买专用硬件控制面板贵而且功能写死在固件里换个软件又得重新买给每个软件单独写遥控脚本OSC 归 OSC、HTTP 归 HTTP协议互不相通或者用厂商自家工具出了那个生态就没法用。Companion 把两头拆开硬件只是硬件软件只是软件中间隔着一层统一的按键模型。按键上挂的动作不是写死的底层换成任何它认识的控制器都行上层把 OBS 换成 vMix只是多配一个连接之前排好的按键原样能用。把按键变成可编程的动作传统控制器上一个键干什么功能是出厂定死的而直播现场一个键经常要连着干好几件事。Companion 把每个按键做成一个动作容器往里面塞一串动作按下的瞬间按顺序执行切场景、调灯光、改变量各干各的。执行核心在 companion/lib/Controls/ActionRunner.ts它逐个跑完你定义的动作步骤之间还能插入等待和条件判断。电台值班员把切到晚间节目做成一个键——上一个节目淡出、新推流地址切上、节目表变量刷新一按全到位。一块软件认出所有控制器硬件形态五花八门48 个灯键的 Stream Deck、带旋钮的 Loupedeck、软键加滑动条的 Mirabox。Companion 用 Surface 这一层把硬件抽象成位置类型的统一坐标设备枚举HID/USB和画面渲染都在 companion/lib/Surface/Controller.ts 里新设备靠 mDNS/Bonjour 广播自动被发现。再往上还有 Satellite 卫星机制把 Companion 界面跑在另一台机器上通过网络把按键画面推到本地的控制器。导播台放一台 Stream Deck灯光台旁边摆一台 Mirabox都接同一个 Companion各自显示你为它们配好的按键布局。把软件状态回显到按键上按键只能单向发令但操作者还得知道软件那头此刻是什么状态。Companion 的变量系统解决这个问题每个连接都能往系统里写状态——OBS 当前播什么场景、QLab 播到第几个 cue——按键的图标、文字、背光绑定变量后跟着实时变。变量值和表达式求值归 companion/lib/Variables/Controller.ts 管指示灯的闪烁逻辑单独放在 VariablesBlinker.ts。直播间里导播不用切回浏览器确认哪个场景在播对应按键就亮什么颜色扫一眼面板心里就有数。各家控制协议怎么统一接入每个软件只认自己的协议逐个适配的维护成本会爆炸。Companion 在 Service 层给每种协议各开了一个服务模块OSC 走 companion/lib/Service/OscApi.tsHTTP 走 HttpApi.ts裸 TCP/UDP 和 Artnet 也各有对应实现。配连接时选好软件就行动作发出去时自动翻译成对方听得懂的报文。一个现场团队用它同时管着 OBS 的视频切换和 QLab 的音频播放两个软件各说各的协议面板这边只认按键。 插件是怎么装进系统的软件支持靠模块一个模块对应一个软件或设备的适配。companion/lib/Instance/ModuleStore.ts 对接模块商店缓存版本列表安装和更新时用 semver 校验模块声明的 API 版本跟当前 Companion 是否兼容对不上就装不了。模块商店里 700 多个模块界面上每个模块按 Stable / Beta / Deprecated 三档标色升级、回退都是单独操作。OBS 那边接口变了老模块被标成弃用你在界面上点一下换到新版按键动作不用动——动作挂在按键上不挂在具体协议上。 怎么上手从部署到第一次跑起来生产部署走 Docker仓库根目录的 Dockerfile 直接构建镜像容器起来后浏览器打开管理界面就能用Windows 和 macOS 有现成的 launcher 安装包。想自己跑源码clone 仓库地址https://gitcode.com/gh_mirrors/co/companion装完依赖跑yarn dev即可安装细节见 docs/user-guide/1_getting-started/Installation.md开发说明在根目录的 DEVELOPER.md。第一次打开管理界面左侧是 Connections、Buttons、Surfaces、Modules 这些入口。先把 OBS 连接配上再回 Buttons 页给按键排动作几分钟就能让 Stream Deck 干上正事。Companion 适合谁需要同时指挥几台软件、又不想被硬件绑死的场合直播间、演播室、教室机房、会议室。硬件随便挑软件支持靠模块扩按键逻辑全在软件里定义——出问题能自己翻源码想加功能能自己写模块。【免费下载链接】companionBitfocus Companion enables the Elgato Stream Deck and other controllers to be a professional shotbox surface for an increasing amount of different presentation switchers, video playback software and broadcast equipment.项目地址: https://gitcode.com/gh_mirrors/co/companion创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表