使用 Companion 进行播出控制

本文将介绍如何将 bitfocus Companion 与 PLAYDECK 配合使用。Companion 提供了一个可直接使用的 PLAYDECK 模块。这是将 PLAYDECK 连接到 ATEM 调光台或 STREAMDECK 的最便捷方式。.

“伴侣模块”由以下团队开发并维护: 尼克·塞莫诺夫. 他是位社区开发者,也是位非常棒的同事。.

本文内容:
安装
带预设的按钮页面
使用自定义命令代替操作
自定义按钮反馈


安装

1. 启动 PLAYDECK,以便 Companion 能找到它

2. 下载并安装 Companion 的最新稳定版

3. 启动 Companion 并添加 PLAYDECK 模块

4. 如果 Companion 显示此连接为绿色勾号,则设置完成。如果无法建立连接,请关闭防火墙或允许 TCP 端口 11411。.


带预设的按钮页面

我们将使用“伴侣预设”快速创建一个全新的按钮页面,以应对日常的播出场景。.

1. 创建一个新页面,然后转到“预设”并选择“PLAYDECK”

2. 在本示例中,我们特别希望针对第 1 频道。您也可以使用“列表”(LISTS),这些列表是动态的,会使用 PLAYDECK 中可见的频道(左、右)。您还可以控制您的资源(流媒体、录制内容)。请选择“第 1 频道”以继续

3. 通过拖放功能,我们创建了一个简单的播放方案:包含若干叠加层的播放控制界面。按钮均带有反馈功能,这意味着:按钮的颜色会根据播放状态(提示、播放中、暂停、停止)显示为红色。.

4. 在播放过程中,“播放”按钮还会显示剩余片段时长:

5. 某些按钮需要您提供更多信息,例如“启动叠加层”按钮。它需要知道应启动哪些叠加层:


使用自定义命令代替操作

我们将把任何 PLAYDECK 命令添加到 Companion 按钮中。如果您更擅长“编程”,或者 PLAYDECK 中出现了 Companion 尚未支持的新命令,此功能将非常有用。此外,您还可以同时添加多个命令。.

1. 我们创建一个新的按钮并添加一个新操作。现在选择“自定义命令”,然后点击“完成”

2. 在 PLAYDECK 中,我们打开“命令列表”以查看想要使用的命令

3. 我们决定在几个频道上启动多个叠加层,然后启动 2 个直播流:

<startoverlay|1|1+3>
<startoverlay|2|1+5>
<startstream|1>
<startstream|2>

4. 我们将所有命令合并为一行,并将其复制到“命令”字段中。随后点击按钮,系统将启动叠加层和直播流,因为所有命令都会按照写入的顺序依次执行。.

5. 另一个很好的例子是启动 2 个通道的同步:

<cue|1><cue|2><wait|1000><play|1><play|2>

这将对两个声道同时进行预读,然后等待 1 秒钟直至预读完成(片段缓存),随后播放两个声道。.


自定义按钮反馈

与其使用预定义的反馈(例如“PLAY STATE”),您不妨使用辅助变量来获取更多反馈。在本例中,我们将启动一个特定的模块,并在按钮上显示其剩余时间。.

1. 我们在 PLAYDECK 的 Channel #1 中添加一个新块,并将其重命名为“MAIN PROGRAM”

2. 现在,我们在 Companion 中添加一个新的按钮,并将“CONTROL PLAY FLEX”操作分配给该按钮。.

3. PLAY FLEX 操作允许我们通过名称(而非 ID)播放一个音块。我们使用模式“b:main c#1”来启动音块,具体说明请参见命令列表(PLAYDECK > 主菜单 > 文档):

4. 目前我们已经有了一个“播放积木”按钮,但我们还希望在积木开始播放后显示剩余播放时间。为此,我们需要为该按钮添加一个自定义反馈,该反馈将检查“某个”变量并执行“某项”操作:

5. 我们通过在“变量”字段中搜索“块名称”来与当前正在运行的块进行比对,并将我们的“主程序”块作为“值”添加进去:

6. 然后,我们将 TEXT 作为新的样式属性添加,因为我们的目的是显示剩余的块时间:

7. 将“$(Playdeck:channel_1_block_remain)”添加为按钮文本字符串,至此按钮制作完成:

8. 那么,我们是如何获取“按钮文本字符串”的呢?Companion 会向您展示所有可在 PLAYDECK 中使用的变量。随后,您可以点击小型的“复制”图标,将该变量添加到您的按钮中: