PiP(画中画)搭配内置 Keying

本文将介绍如何利用内部 Keying 功能实现视频叠加(画中画)。.


1. 内部 Keying 的设置

我们需要配置 PLAYDECK,使其包含一个背景信号(BG FEED)和一个画中画信号(PIP FEED),并将它们混合到主信号(MAIN FEED)中。为此,我们将使用内部 Keying。参见 有关Internal Keying的更多信息,请参阅本文.

使用任何支持内部 Keying 功能的设备。在本例中,我们使用 Blackmagic DeckLink Duo2。打开“桌面视频设置”,将前两个 SDI 输出端口合并。其余输出端口保持单独输出:

接下来,我们在PLAYDECK的第1通道中启用Internal Keying:


2. BG FEED 的设置

现在我们需要将背景信号(BG FEED)发送至 SDI 1。为此,我们使用通道 2,并通过 SDI 环路从 SDI 3 发送至 SDI 1。 请注意,由于我们已将SDI 1和SDI 2合并,因此SDI 3现在被命名为“Decklink Duo 2 (2)”:

然后,我们将在第2频道播放任何视频内容:

如果您在 SDI 2 接口上连接了 SDI 监视器,现在应该已经可以看到背景信号正在该监视器上播放了。.

现在,我们可以直接在通道 1 上播放任何带有透明度的内容,并将其叠加在背景信号上,例如透明视频(ProRes、HAP-A)或简单的叠加层。但由于我们需要对画中画反馈信号进行缩放和定位,因此必须将其设置在另一个通道上。.


3. PIP FEED 的设置

我们将第3频道用作画中画(PIP)反馈源,因此可以在这里播放常规视频内容。我们希望通过NDI将第3频道的信号传输到第1频道,并启用输出缩放器,以便将画中画显示在右上角:

现在,我们将在第3频道插入一个视频片段,但这也可以是直播视频、Streams或其他任何内容:

我们将此 NDI 反馈信号连接至输入 1:

然后将“输入 1”插入到“通道 1”的播放列表中:

我们现已将第3频道的播放列表缩减为第1频道,该频道将叠加在第2频道的背景信号上。.


4. 最终输出 / 主信号

主信号被发送至SDI 2,以下是SDI 2监视器上的显示效果(照片):


在外部准备/导入播放列表

本文将介绍如何在另一台设备上创建播放列表,或从其他应用导入播放列表。.

本文内容:
使用免费频道
使用播放列表试用版
直播期间添加播放列表
自动检测并重新加载新播放列表
与第三方应用程序对接


使用免费频道

PLAYDECK 里还有空闲频道吗?利用这些频道来准备和测试新内容,然后将它们复制到你的主频道。你可以通过拖放将模块从一个频道拖到另一个频道,或者在开始拖放时按住 CTRL 键进行复制。.

您还可以通过右键单击“频道编号”来复制、覆盖或追加整个播放列表:

如果您将新内容粘贴到现有播放列表中(或导入 XML),系统会提供“覆盖”或“追加”的选项:


使用播放列表试用版

您可以在任何其他设备上安装 PLAYDECK,并在那里编辑播放列表。除了试用版的浮水印外,没有其他限制,因此您可以准备好播放列表,然后将其发送至您的主系统。.


直播期间添加播放列表

您想导入新的播放列表,又不想中断直播?没问题:请在“文件”菜单中使用“追加项目”选项:

这将加载任何 PLAYDECK 项目,但不会替换现有播放列表,而是将项目中的所有片段添加到现有播放列表中。随后,您可以放心删除任何旧内容。.

您可以通过将播放列表导出为 XML 文件,然后在另一台机器上导入该 XML 文件,将此操作应用于单个播放列表。具体操作是右键单击“频道编号”:

此工作流非常适合任何日常日程安排,您可以随时添加新日期或删除旧日期。.


自动检测并重新加载新播放列表

您还可以覆盖主系统上当前加载的项目文件,让 PLAYDECK 检测到这一变化并重新加载该项目,之后 Playout 将恢复运行。请在应用程序设置中启用此功能:

注: “继续播放”功能仅在当前正在播放的片段存在于新加载的项目中时才有效,否则 Playout 将停止该通道的播放。该片段通过唯一标识符(UNIQUE ID)进行识别,因此它可能已在重新加载的项目中移动到了另一个区块。.

该工作流最适用于任何自动化系统,在这些系统中,项目文件会自动生成并上传至主系统。或者,当内容编辑员无法访问主系统时,可将新的播放列表上传至 NAS/云存储。.


与第三方应用程序对接

我们不支持其他第三方应用的播放列表格式,因为市面上的格式种类繁多,而且许多播放列表功能(如混音、曲目重叠、排程等)与PLAYDECK不兼容。.

如果您希望在第三方应用中制作播放列表,您需要将播放列表导出为 CSV 文件,然后编辑该 CSV 文件使其与 PLAYDECK 兼容,最后将该 CSV 文件导入 PLAYDECK。.

为什么选择 CSV?因为它是最简单的列表格式,支持每个项目包含多个值。它可以使用任何文本或表格编辑器进行编辑,从记事本到 Excel 皆可。.

让我们来看看我们的 CSV 文件。为此,我们自己创建了一个包含 2 个块的示例播放列表。其中混合了不同类型的内容:带有 IN/OUT 点的视频片段、设备输入、YouTube 视频、UDP 输入 Stream、带有运行时间的 GFX 以及一个音符。 我们还在第二个块中添加了一个排程:

现在,我们右键单击“通道编号 2”,然后选择“导出为 CSV”:

然后,我们在记事本中打开保存的 CSV 文件(点击此处下载/在新标签页中打开):

如您所见,文本行数其实并不“太多”。由于前几行只是标题,在表格编辑器中看起来会更加清晰:

CSV 文件的编写/生成方法如下:您可以在任何第三方应用中导出内容,打开任意编辑器,然后将其转换为 PLAYDECK 格式。但什么是 PLAYDECK 格式呢?.

这些是必填字段。它们可以位于任意位置(第1至第5列中的任意一列):
类型 = 屏蔽、文件、网站(或YouTube)、Input#、Stream、备注
图注 = 在 PLAYDECK 中显示的任意文本
文件名 = 路径/文件或 URL(YouTube 和 Streams)

这些是可选列。它们可以位于任意位置(第1至第5列中的任意一列):
已启用 = PLAYDECK 第一列中的复选框
时长 = 仅适用于图像文件类型。若为无限,请留空或填入 0
剪切/剪切 = 修剪的入点和/或出点
日程安排 = 仅限块类型使用

注: 为了保持 CSV 格式的简洁易用,目前不支持更高级的属性(例如音频增益)。若需导入/导出所有属性,请使用 XML 格式而非 CSV 格式。.

注: PLAYDECK 使用 UTF-8 编码来保存和加载 CSV 文件。.


为 GPU 解码转码片段


如需了解适用于 Playout 的最佳视频编解码器的总体概况,请 参见这篇文章.

虽然 PLAYDECK 能够将所有片段实时转码为您选择的输出格式,但在 Playout 期间,这可能会给您的系统带来沉重负担,具体取决于您的使用场景。.

如果您的 CPU 使用率达到临界水平,并且出现播放卡顿(通常表现为音频断续),建议您确保所有片段均通过 GPU 进行解码,因为大多数现代显卡能够处理的负载远超 CPU 单独处理的能力,从而使 PLAYDECK 能够同时运行多个输出通道。.

本文内容:
使用内置转码器
在 PLAYDECK 中,哪些文件是在 CPU 上进行解码的?
推荐哪些显卡?


使用内置转码器

PLAYDECK 内置了视频/音频文件转码器。它能让您更轻松地快速批量转码多个文件,例如,当您的节目即将开始,而您又没有时间通过 Adobe Media Encoder 等第三方工具进行转码时。.

在您的示例中,我们有一个文件块,其中包含只能通过 CPU 解码的文件,例如 ProRes 和 HAP-A 视频编解码器。现在,我们先选中任意一个片段,然后按 CTRL+A 选中该文件块中的所有片段。 您也可以使用 SHIFT 键选择片段范围,或者仅使用 CTRL 键选择单个片段。.

现在,我们右键单击选中的其中一个片段,然后选择“转码片段”:

您不会看到一个预定义的目标视频编解码器列表,其中所有编解码器均支持 GPU 解码:

如果您时间紧迫或需要转码的视频片段数量庞大,请选择第一个选项“MPEG-4”,因为该选项不仅能提供极快的转码速度,还能保持良好的画质。 在其他所有情况下,请选择第二个选项“AV1”,因为该选项生成的文件在 SSD/HDD 上的占用空间相当小,同时能生成极高质量的文件,并且支持 HDR。最后一个选项虽然速度慢得令人不安,但在质量和压缩率上又略胜一筹,但这种情况下,时间与质量的比值并不理想。 请将此选项用于过夜转码。.

注: 很遗憾,由于许可原因,我们无法提供 H.264 或 H.265 格式的转码服务。.

转码器会将新文件保存到旧文件旁边,并在文件名后添加“_transcoded”:

新文件将在您的播放列表中自动替换并重新扫描:

如果您需要随时恢复到播放列表的较早版本,可以使用“恢复项目备份”功能:


在 PLAYDECK 中,哪些文件是在 CPU 上进行解码的?

ProRes
这款高质量的视频编解码器源于Mac电脑,因为它也是由苹果公司开发的。遗憾的是,苹果从未发布过适用于Windows系统的编解码器信息,因此目前仍难以通过GPU解码ProRes。如果您需要Alpha通道,我们建议使用HAP-A视频编解码器。.

HAP及其变体(如HAP-A)
这些视频编解码器还支持Alpha通道,且CPU占用率极低。.

DNxHD、MXF
此外,这些编解码器在PLAYDECK中也无法通过GPU进行解码。.


推荐哪些显卡?

我们指的是 这篇文章是针对 PC Building 的 适用于 PLAYDECK。.


广告插播将打断《Playout》

本文将介绍如何使用“BREAK BLOCK”来创建广告插播,这些广告插播会中断您常规的Playout播放,并在广告结束后恢复播放。.

本文内容:
将广告位用作广告插播点
课间休息时段
使用操作按钮插入广告插播
将叠加层附加到断点块上
将 SCTE 标记安装到断路块上


将广告位用作广告插播点

这其实很简单:在播放列表中创建一个新的内容块,唯一不同之处在于:该块以“BREAK BLOCK”(而非“STOP”或“PAUSE”)结束。为此,我们选中该块,点击“块结束”图标(或双击块的末端),然后选择“BREAK BLOCK”。.

广告结束后,请选择《Playout》接下来将在何处继续播放:

  • 返回上一个位置
  • 从片头开始播放
  • 继续观看下一段视频

“中断当前片段”功能默认处于启用状态。此时,PLAYDECK 将在预定时间硬切入《Break》曲目。取消勾选该选项后,当前片段将先播放完毕——随后《Break》曲目将作为下一首播放,不会硬切入。.

此“中断块”的工作原理如下:一旦到达末尾,它将返回进入“中断块”之前(从外部进入)正在播放的片段和位置(或其他位置)。这意味着:您可以在“中断块”内的任意位置之间跳转,它会记住返回的位置。.


课间休息时段

您可以像处理其他任何“块”类型一样安排“休息块”的时间,方法是选中该“块”,然后点击“安排”图标:

在此示例中,我们每天上午11:00开始播放广告插播,并在当天剩余时间内每隔2.5小时重复一次。0:00至11:30期间不会插播广告。.

计划好的广告插播绝不会自动触发:如果没有内容正在播放,就没有什么可中断的,也没有什么可切回的。因此,计划好的广告插播绝不会在另一个广告插播期间触发。这也带来了一种可能性:你可以故意设置会发生冲突的重复广告插播,让第一个广告插播获得优先权并忽略另一个。.

如果启用了“中断当前片段”功能,Break将在预定时间开始;如果禁用该功能,PLAYDECK将等待当前片段播放完毕。 实时或无限循环的片段永远不会到达片段结尾,因此当它们正在播放时,如果“中断”功能处于关闭状态,Break将不会开始。停止、CUE或播放其他片段会取消正在等待的Break。暂停则会保留它。.


使用操作按钮插入广告插播

除了预设的广告位外,您还可以使用操作按钮。只需点击一个空的操作按钮,然后选择播放相关的广告位即可:

在“阻止操作”之后,该操作可以使用自己的返回方法:

  • 不执行任何操作——使用“Break Block End(After Break)”
  • 返回上一个片段/位置
  • 返回上一个片段/位置(-3秒)
  • 返回上一个片段/位置(-10 秒)
  • 返回上一个片段并从头开始播放

“继续执行下一个片段”选项仅在“代码块结束”处存在,而在“操作”处不存在。如果您选择“不执行任何操作”,则会使用“代码块结束”的方法,就像上文示例中那样。如果您选择任何其他选项,则会优先使用“操作”的“返回”方法,而非“代码块结束”的方法。这将提供新的选项:

  • 您可以同时使用这两种返回方式,具体取决于“Break Block”是通过计划任务还是通过操作按钮启动的
  • 如果通过“操作按钮”启动,你可以提前退出断点块,之后仍可返回

第二种选项非常适合循环播放“Break Blocks”,因为如果你再次点击“操作按钮”,系统会返回上一次的播放内容。.


将叠加层附加到断点块上

通常情况下,您希望叠加层能与分隔块内容一同自动加载。因此,我们推荐阅读以下文章:


将 SCTE 标记安装到断路块上

如果您希望向 Streaming 服务器或广播系统发送指令,在“休息时段”内插播广告,我们建议您参考以下文章:


通过第二个频道创建L波段广告

本文将介绍如何利用第二个信道制作L波段广告。.


1. L波段规格

每家电视台对尺寸都有自己的规定,所以我们直接借用了News18的这个示例:

原理始终如一:我们将主要内容按比例“缩小”,以便在剩余区域为广告腾出空间。缩小后,我们会保留一些重叠部分,以避免出现黑色背景。最终的缩小尺寸为:1520×855 像素。.


2. 对通道 1 进行缩放,并发送至通道 2

我们假设主视频内容位于通道 1 上。因此,我们在“设置”中将输出缩放器启用,并将其缩放至 1520×855 像素的尺寸。然后,我们将缩放后的内容作为 NDI 信号发送:

现在,我们将 NDI 信号反馈至输入 1:

然后,我们将输入1添加到通道2的播放列表中,方法是将输入图标拖放到播放列表中。现在,我们拥有了L-Band尺寸的视频内容:


3. 添加用于切换的干净信号

由于我们的最终输出将通过通道 2 播放,因此我们还希望在通道 2 的播放列表中能够选择“干净信号”。为此,我们可以直接复制该通道,但去掉输出缩放器。使用另一个输入,并将通道 1 设置为源:

然后也将该输入添加到通道 2。我已经将播放列表中的两个输入重命名,以便更容易区分:

现在,您可以快速在L频段和清洁信号之间切换。.


4. 在L波段中使用叠加层

您可以为 L 波段使用 PLAYDECK 叠加层。为简便起见,我们使用 这张透明的PNG图片 通过视频信号传输。但这些情况可能更为复杂。参见 这篇关于如何创建叠加组的文章 并将它们淡入淡出。.

点击任意一个空白的叠加按钮,然后添加我们的示例 PNG 文件:

现在,我们希望“叠加”效果仅与“L-Band Feed”输入的播放列表片段同步播放。为此,我们选择 L-Band 片段并点击“叠加”图标,然后将新创建的叠加效果添加到该片段的整个时长内:

我们的 L 波段叠加信号现将随 L 波段源信号自动启动:

注: 分配给片段的叠加层总是会有轻微的反应延迟。可以通过微调播放列表和叠加层的淡入淡出时间来解决这个问题。您还可以将 L 频段信号和干净信号分别分配到第 2 和第 3 通道,并使用外部混音器进行转场。.

设置设备参考信号(GenLock)


引入参考信号将强制输出硬件根据参考时钟发送帧。.


1. 多通道同步作为用例

如果您计划同步多个声道,应将外部时钟连接至设备,然后通过 LINK(或命令)对所有声道发送 CUE 指令,并取消所有声道的暂停状态。这样将使所有声道(几乎)同步开始播放,而参考时钟将确保所有声道保持同步。 此同步效果仅对通过同一设备输出的所有声道有效。.

本文 演示了如何使用操作按钮在SYNC中同时启动多个频道。.


2. 提供参考信号(GenLock)

请向制造商确认您的输出卡是否支持参考输入。在本例中,我们使用的是“Blackmagic DeckLink Duo 2”:

如果您的其他硬件均未生成时钟信号,您可以使用独立的硬件来生成此类信号,例如 Blackmagic 同步发生器.


3. 在 PLAYDECK 中设置参考输入

某些设备需要特定的参考输入设置,例如 AJA 设备。在此示例中,我们将该设备的 AJA 参考输入设置为“外部”:

点击“显示帮助”,您将看到针对各设备制造商可设置的所有其他选项。.

使用片段自动生成 Lower Third 叠加效果

本文将介绍如何创建叠加组,并将它们绑定到片段或进行排程。.

本文内容:
创建 Lower Third(使用 overlays.uno)
创建 Lower Third(使用 ClassX)
创建 Lower Third(在 PLAYDECK 中)
使用片段/模块实现叠加自动化
日程叠加
遥控器
外部 Keying


1. 创建 Lower Third(使用 overlays.uno)

在此示例中,我们将使用一个现成的 Lower Third 覆盖方案,该方案来自 overlays.uno.

打开此叠加模板,然后点击“免费使用”:
https://overlays.uno/library/199-Lower-Third—Prism

然后点击“复制输出网址”,将目标网址复制到剪贴板中。.


在 PLAYDECK 中,点击任意一个空白的“叠加层”按钮,选择“HTML”,然后将网址粘贴到上方的“在线模板”字段中:

该叠加层可立即显示。您甚至可以通过 overlay.uno 叠加层网站实时更新徽标和文本:


2. 创建 Lower Third(使用 ClassX)

ClassX 实时板 这是一款用于自动化生成动态叠加内容的专业 CG Playout 解决方案。您可以在其官网上注册获取试用版。.

安装 LiveBoard 后,您只需通过用户界面即可轻松添加视频、图形及其他内容。您还可以在那里为内容命名并赋予唯一标识符,例如“MyLowerThird”,以便日后调用。.

LiveBoard 支持通过 TCP 连接,并发送命令来显示或隐藏特定内容。完整的命令列表始终位于其 Windows 安装路径中:
C:\Program Files\…\ClassX_Applications_v6\remotecontroltester\commands

目前,这两条命令对我们来说就足够了:

LBC_PLAYCONTENT "MyLowerThird"
LBC_STOPCONTENT "MyLowerThird"

    让我们在 PLAYDECK 中启用 TCP 功能,以便与 LiveBoard 通信。LiveBoard 的默认端口为 301。启用此功能后,如果 LiveBoard 服务器正在运行,将显示“已连接”。 否则,PLAYDECK 会每 5 秒尝试连接一次,因此您可以在启动 PLAYDECK 之前或之后启动 LiveBoard:

    请跟进 4. 使用片段/模块实现叠加自动化


    3. 在 PLAYDECK 中创建 Lower Third

    让我们创建一个由背景图形和文字组成的自定义“画面下三分之一”元素,并将它们组合在一起。.

    点击一个空白的叠加按钮以打开编辑器,然后添加一些 背景 GFX. 关闭编辑器,右键单击“叠加”按钮,并将背景定位到底部区域。我们还需在视频预览中右键单击,并禁用“频道名称”:

    我们再添加一个“文本叠加”对象,并将 {blockname} 作为标题文本的占位符。接着再添加一个“文本叠加”对象,并将 {clipname} 作为文本占位符。调整一下位置后,效果如下:

    现在让我们将它们分组:右键单击一个空的叠加按钮,然后选择“创建叠加组”。接着添加前面创建的 3 个叠加层,并按从下到上的顺序排列它们:


    4. 使用片段/模块实现叠加自动化

    现在,我们已经为 Lower Third 制作了一个带有动态文本内容的、可正常工作的叠加按钮。 接下来,我们将这个叠加层应用到特定的片段上。选择相关片段,点击“叠加层”图标,然后将我们的叠加层添加到该片段中,从片段开始后的第 5 秒开始显示,持续 10 秒:

    要将叠加层附加到块上,可以使用以下命令:

    您可以通过右键单击“片段/块”,然后选择“复制/粘贴设置”来复制叠加附件。这将极大地方便您在播放列表中复制附件。.

    要自动化外部叠加层(例如 ClassX),您同样需要在剪辑或块上使用命令,但需在“通过 TCP 连接的外部”部分编写这些命令:

    您还可以通过操作按钮,使用内部或外部命令来显示或隐藏叠加层。.


    5. 时间表叠加

    除了将叠加层附加到播放列表项目上,您还可以通过右键单击叠加层,将其设置为在特定时间运行并持续特定时长:


    6. 遥控器

    你已经在 4. 使用片段/模块实现叠加自动化. 您可以在任何地方调用这些命令,并通过 Stream Deck 或任何其他遥控软件启动您的叠加层。.

    以下是一篇关于如何设置和使用命令的通用指南:
    https://playdeck.tv/howto/commands/

    此外,您还可以在这里找到有关如何设置和使用 Stream Deck 配合 Companion 的更多信息:
    https://playdeck.tv/howto/companion/


    7. 外部 Keying

    您可以将PLAYDECK的一个通道专门用于叠加图层,并通过External Keying将其发送至调音台,该功能同时支持设备输出和NDI输出:
    https://playdeck.tv/howto/keying/

    ST 2110 设备设置

    为了确保网络运行质量优良且无延迟,我们建议使用高端网络硬件(路由器、交换机)以及高速以太网线(Cat6+)。.

    本文内容:
    BlackMagic 2110/IP 卡
    AJA 2110/IP 卡
    Deltacst 2110/IP 卡


    BlackMagic 2110/IP 卡

    BlackMagic 设备可使用制造商提供的工具进行配置:
    Blackmagic 桌面视频系统设置:


    AJA 2110/IP 卡

    PLAYDECK 支持指定网络配置文件,该文件将在 PLAYDECK 启动时加载。.

    配置文件结构(JSON)

    {
        "protocol":"2110",
        "network2110":
        { // 此部分配置设备本身的参数以及带有 IP 配置的连接器(SFP)
            "ptpPreferredGMID":"00-00-00-00-00-00-00-00",
     "ptpDomain":0,
     "setup4k":"false",
            "multiSDP":"false",
     "audioCombine":"false",
     "rxMatchOverride":0,
     "sfps":
     [   // 每个连接器的具体配置
                {
     "designator":"sfp1",
     "ipAddress":"192.16.45.8",
     "subnetMask":"255.255.0.0",
                    "gateWay":"255.255.255.255",
     "enable":"true"
                },
     {
     "designator":"sfp2",
     "ipAddress":"192.16.45.9",
     "subnetMask":"255.255.0.0",
                    "gateWay":"255.255.255.255",
     "enable":"true"
     }
     ]
        },
        "receiveVideo2110":
        [ // 此部分用于接收视频流,需在此处设置连接器、源地址
     // 以及两个连接器的端口。
     {
     "stream":"video1",
     ...
            },
     {
     "stream":"video2",
     ...
     }
        ],
        "receiveAudio2110":
        [ // 此部分用于接收音频流,需为两个连接器分别设置连接器、源地址
          // 以及两个连接器的端口。
     {
     "stream":"audio1",
     ...
     },
     {
     "stream":"audio2",
     ...
            }
        ],
        "receiveAnc2110":
        [  // 此部分用于接收辅助数据,需为两个连接器分别设置连接器、源地址
     // 及其端口。
            {
     "stream":"anc1",
     ...
     },
     {
     "stream":"anc2",
     ...
     }
        ],
        "transmitVideo2110":
        [  // 此部分用于发送视频信号,需在此处设置连接器、目标地址
     // 以及两个连接器的端口。
     {
     "stream":"video3",
     ...
            },
     {
     "stream":"video4",
     ...
     }
        ],
        "transmitAudio2110":
        [  // 此部分用于发送音频信号,需设置两个连接器的连接器、目标地址
           // 及其端口。
     {
     "stream":"audio3",
     ...
     },
     {
     "stream":"audio4",
     ....
            }
        ],
        "transmitAnc2110":
        [  // 此部分用于发送辅助数据,需为两个连接器分别设置连接器、目标地址
     // 及其端口。
            {
     "stream":"anc3",
     ...
     },
     {
     "stream":"anc4",
     ...
     }
        ]
    }


    配置文件示例

    你可以 下载此示例 JSON 文件.


    将配置分配给 PLAYDECK

    该配置将在启动 PLAYDECK 时加载,并将被分配给所有输入和输出(如果已分配)。.

    对于 INPUTS,请在此注册表键中编辑 JSON 文件的完整路径:
    HKEY_CURRENT_USER\Software\Medialooks\MFormats\MFLive\AJA2\aja.ip_config

    对于“OUTPUTS”,请在此注册表项中编辑 JSON 文件的完整路径:
    HKEY_CURRENT_USER\Software\Medialooks\MFormats\MFRenderer\AJA2\aja.ip_config


    Deltacast 2110/IP 卡片

    PLAYDECK 支持指定网络配置文件,该文件将在 PLAYDECK 启动时加载。.

    配置文件结构(JSON)

    {
        "tx2110Setup":
        {
     "ethPort":0,
     "DHCP":"true",
     "ipAddress":"127.0.0.1",
            "子网掩码":"255.255.255.0",
     "网关":"127.0.0.1",
            "ipAddressMulticast":"239.1.32.32",
     "udpPort":16
        },
    
     "rx2110Setup":
        {
     "ethPort":0,
     "DHCP":"true",
     "ipAddress":"127.0.0.1",
            "子网掩码":"255.255.255.0",
     "网关":"127.0.0.1",
            "ipAddressMulticast":"239.1.32.32",
     "udpPort":16
        }
    }


    配置文件示例

    你可以 下载此示例 JSON 文件.


    将配置分配给 PLAYDECK

    该配置将在启动 PLAYDECK 时加载,并将被分配给所有输入和输出(如果已分配)。.

    对于 INPUTS,请在此注册表键中编辑 JSON 文件的完整路径:
    HKEY_CURRENT_USER\Software\Medialooks\MFormats\MFLive\MFDeviceDC\dc.ip_config

    对于“OUTPUTS”,请在此注册表项中编辑 JSON 文件的完整路径:
    HKEY_CURRENT_USER\Software\Medialooks\MFormats\MFRenderer\DC\dc.ip_config

    输出 Streams 的设置

    本文将介绍如何根据不同用途设置您的 Output Streams。.

    本文内容:
    引言
    使用参数和配置字符串
    配置示例
    AAC 高质量音频 Streams
    色彩空间与色度抽样 以及交错
    多音轨
    将 Streams 路由到特定 IP 地址
    监控与故障排除


    引言

    您可以为任何信号源(包括频道、输入源和导演视图)设置15种不同的Stream配置。默认情况下,Stream启动后会从信号源复制视频格式,但您可以将其转码为任意分辨率。.

    一旦您选择了协议,视频/音频编解码器和 URL 的其他字段将根据您的选择而变化,这意味着:并非所有视频/音频编解码器都适用于每种 Stream 协议。.

    信息: NVIDIA 编码器不再支持交错格式。请改用 Intel QuickSync。.

    您的 URL 将显示所需 URL 格式的建议。点击“URL 信息”可查看更多示例,例如如何集成用户名/密码。PLAYDECK 不会使用“预览 URL”,它仅用于方便您在点击“预览”时打开网络浏览器。.


    参数和配置的使用

    此外,还可以针对您所选的协议和编解码器设置更多参数。这些参数可用于微调您的设置,例如将 Stream 设置为恒定比特率(CBR)或添加元数据。.

    点击“参数”将打开一个编辑器,该编辑器仅显示您所选项的可用设置。任何与默认值不同的数值都会被高亮显示。.

    “配置字符串”代表了您所选择的所有协议/编解码器及其相应的参数。 配置字符串支持双向操作:您也可以将配置字符串复制并粘贴到文本框中,然后点击“从字符串更新”将这些值应用到上级设置。这样,您就可以轻松地在不同的 Stream ID 之间复制设置,或与其他用户共享设置。.


    配置示例

    以下是针对不同用途的精选推荐配置。将其复制并粘贴到 PLAYDECK 中,然后点击“从字符串更新”。.


    DVB Stream 包含 CBR 和 GOP B 帧。无 PCR、PTS-DTS 或缓冲区不足错误

    format='dvb' protocol='udp://' mpegts_start_pid='60' video::streamid='80' video::disable_sps_pps='true' video::codec='n264' video::profile='high' video::level='4.1' video::rc_type='cbr' muxrate='10M' video::b='7.5M' video::bufsize='1.25M' video::g='32' video::bf='2' video::ref_frames='3' audio::streamid='81' audio::metadata::language='deu' audio::codec='mp2' audio::b='192k' pmt_start_pid='100' mpegts_flags='-system_b' rc_buffers='4' pcr_period='35' pat_period='0.1' sdt_period='0.5' tdt_period='10' start_pcr='0' service_name='TEST' service_provider='PD' service_id='1' original_network_id='1' transport_stream_id='201' service_type='advanced_codec_digital_hdtv'


    或简写形式:

    format='dvb' protocol='udp://' video::disable_sps_pps='true' video::codec='n264' video::profile='high' video::level='4.1' video::rc_type='cbr' muxrate='10M' video::b='7.5M' video::bufsize='1.25M' video::g='32' video::bf='2' video::ref_frames='3' audio::metadata::language='deu' audio::codec='mp2' audio::b='192k' service_type='advanced_codec_digital_hdtv'


    信息: 每台DVB接收器都有所不同,您可能需要设置不同的参数。有些接收器不允许有任何偏差, 官方指南, ,屏幕上将显示黑色。编码DVB信号最可靠的解决方案是硬件编码器,例如:. 海视.

    检测 DVB Streams 是否存在 PCR 错误或其他问题的最佳做法是使用以下工具之一:
    DVBControl DVBAnalyzer (价格约为2000欧元,但可靠性最高,且能检测PTS-DTS错误)
    StreamGURU (价格约300欧元,可检测任何ETR错误并显示比特率曲线图)
    TSAnalyzer (免费,但可导入 Stream 格式的 URL,需在硬盘上存有 TS 文件)
    – 其他值得一提的软件:DVBInspector、Elecard Stream Analyzer、StreamXpert

    ————————————————————

    SRT Stream 以CBR格式,25帧/秒,高品质音频

    下一个示例正被多家客户用于多通道 Stream 配置中,用于播放音乐视频内容。该配置在 4 个并行输出+Stream 通道下运行流畅——通过 FHD ACC 音频实现了最佳的音质和画质。.

    format='mpegts' protocol='srt://' video::codec='n264' video::b='4M' video::rc_type='cbr' video::preset='p4' audio::codec='aac' audio::b='128K' audio::profile='aac_low' audio::stereo_mode='ms_force' audio::minrate='128K' audio::maxrate='128K' audio::bufsize='128K' audio::aac_coder='0'

    ————————————————————

    RTMP Stream 以CBR编码,60帧/秒,每2秒设置一个关键帧

    下一个示例适用于 YouTube。请使用 YouTube 分析和 Stream 健康工具来测试您的 Stream 稳定性:

    format='flv' protocol='rtmp://' video::codec='n264' video::b='9000k' video::maxrate='9000k' video::bufsize='9000k' video::g='120' video::preset='veryfast' audio::codec='aac' audio::b='128k' audio::ar='44100'


    下一个示例适用于 Twitch。请使用 Twitch 检查器 要检查您的 Stream 稳定性,请在 Stream 的 URL 后添加“?bandwidthtest=true”,以防止其进入正式运行状态。.

    格式='flv' 协议='rtmp://' merge_tracks='true' video::codec='n264' video::b='5800k' video::maxrate='5800k' video::bufsize='5800k' video::g='120' 视频::预设='veryfast' 音频::编解码器='aac' 音频::比特率='128k' 视频::调谐='zerolatency' 音频::编解码器='aac' 音频::采样率='44100' 音频::比特率='128k'


    ————————————————————

    索尼 XDCAM HD422 标准

    视频参数——包括4:2:2色度采样、特定的GOP结构(M=3,N=15)以及隔行场处理——以及采样率为48 kHz的专业级24位PCM音频。.

    format='mxf' video::codec='mpeg2video' video::b='50M' video::interlace='1' video::top='1' video::g='15' video::v422='true' video::bf='2' video::flags='+ildct+ilme' audio::codec='pcm_s24le' audio::ar='48000'


    AAC 高质量音频 Streams

    默认的 AAC 流媒体设置虽然能节省 CPU 资源,但在音乐频道上听起来可能会有些单薄。若要获得纯净的音质,请根据您的目标受众和源素材,从以下两个配置文件中选择一个。.

    快速准备:
    来源: 请使用 48 kHz 的音频片段(320 kbps 或无损 PCM)。.
    视频: 如果带宽较低,请将视频分辨率降至720p30。请始终使用硬件编码。.


    选项 1:最大兼容性与稳定性(安全方案)

    最适合: 标准流媒体、有线电视运营商和DVB-T复用器。这是防止各类内容出现相位问题的最稳妥配置。.

    format='mpegts' protocol='udp://' video::codec='n264' video::b='4M' audio::codec='aac' audio::b='256K' audio::profile='aac_low' audio::aac_coder='0'


    audio::profile=’aac_low’: 将 AAC-LC 设置为最高质量,并兼容 100% 硬件解码器。.
    audio::aac_coder=’0': 强制进行高质量的双循环编码,以获得清晰的瞬态响应。(如果遇到CPU负载骤升,请将其改为1)。.
    动态立体声: 将立体声管理交由编码器处理,使其能够很好地应对源素材质量不佳的情况。.


    选项 2:高保真 Streaming(优化立体声版本)

    最适合: 专为音乐打造的频道,采用纯净的录音室级源文件。该配置文件采用了严格的VBR包络,并强制应用了Mid/Side立体声处理。.

    format='mpegts' protocol='udp://' video::codec='n264' video::b='4M' audio::codec='aac' audio::b='256K' audio::profile='aac_low' audio::stereo_mode='ms_force' audio::minrate='200K' audio::maxrate='320K' audio::bufsize='640K' audio::aac_coder='0'


    audio::stereo_mode=’ms_force’: 采用中/侧立体声处理技术,最大限度地提高带宽效率,营造深邃、宽广的立体声场。.
    minrate=’200K’ / maxrate=’320K’ / bufsize=’640K’: 紧凑的VBR包络,既能防止安静段落中的音质下降,又能为强烈的音乐峰值预留空间。.
    注: 如果某些音频片段缺乏“力度”或听起来空洞,请切换回方案1,因为您的源素材可能存在相位不一致的问题。.


    色空间、色度抽样和交错扫描

    对某些色彩空间的支持(例如 DVB 的 4:2:2 或交错编码)在很大程度上取决于您所使用的英特尔 CPU 或英伟达 GPU。.

    这是一个关于 英伟达 NVenc 以及 422 支持,还有这里 英特尔快速同步 以及 422 支持。.

    简而言之:

    1. NVIDIA 对隔行编码的支持:
    – Pascal(GTX 10系列):最后一款支持交错扫描的架构
    – Turing / Ampere / Ada (RTX 20/30/40):移除了对交错编码的硬件支持
    – Blackwell(RTX 50系列):已重新引入H.264(8位和10位)的交错编码

    2. NVIDIA 对 4:2:2 色彩空间的支持:
    – Blackwell(RTX 50系列)

    3. 英特尔对 4:2:2 色彩空间的支持
    – 第10代及更新款处理器支持通过Quick Sync对HEVC编解码器进行4:2:2色采样下的硬件加速编码和解码。.
    – 第9代及更早版本的英特尔® 酷睿™ 处理器所搭载的图形控制器,在硬件加速编码和解码方面,仅支持HEVC编解码器的4:2:0色彩采样。.

    这是一个使用英特尔快速同步(第10代及以上)进行4:2:2编码的快速配置示例

    format='dvb' protocol='udp://' video::codec='hevc_qsv' video::b='5M' audio::codec='aac' audio::b='128K' video::pix_fmt='yuyv422'


    注: x264 CPU 编码器也支持交错扫描和 4:2:2 色彩空间等功能。 由于我们使用的是不含 GPL 组件(例如 libx264)的 LGPL 版本 FFmpeg,因此这些功能未被启用。您可以将 FFmpeg 库替换为您自己的版本。.


    多音轨

    如果您需要发送多个音频轨道(例如用于不同语言或导演音频),可以通过所有受支持的协议(DVB、RTMP、UDP 等)实现。您还可以应用不同的音频编解码器。.

    具体操作方式是:先确保通道中所有音频轨道均已激活,然后将用于 Stream 输出的音频轨道拆分为(例如)立体声对。.

    首先,请确保您的声道设置为超过 2 个音频声道:

    然后“填充”这些音频通道,例如通过在片段上启用“所有音频轨道”,或通过 SDI 导入所有轨道(最多 16 条音频轨道)。 您还可以使用音频映射功能对音频轨道进行混音(上/下混音),或使用音频滤波器复制并延迟特定音频轨道。.

    然后打开 Stream 设置,特别是 Stream 协议的参数,并启用“音频轨道拆分”功能:

    信息: 您在 Stream 设置中的“音频通道数”必须保持为 2。.

    如有需要,您可以为新增的音频轨道应用不同的音频编解码器。请注意,除第一个音频轨道外,其余每个音频轨道的编号都会递增:

    audio::codec='aac' audio.1::codec='ac3' audio.2::codec='libmp3lame' audio.3::codec='mp2'


    您还可以为每条音频轨道应用语言描述符:

    audio::metadata::language='eng' audio.1::metadata::language='ita' audio.2::metadata::language='fra' audio.3::metadata::language='ger'


    信息: 语言代码必须符合 ISO 639-2

    然后,您可以在例如 StreamGURU 中测试生成的音频轨道:


    将 Streams 路由到特定 IP 地址

    您的制作需要通过特定网络发送流媒体。这主要是为了为流媒体传输提供一条专用/预留的线路,从而避免干扰常规网络流量。.

    如果使用 UDP Streams 您只需将此参数直接添加到 URL 中:
    udp://ip:port?localaddr=172.20.10.2

    如果使用 SRT Streams 您只需将此参数直接添加到 URL 中。此方法仅适用于 会合模式:
    srt://ip:port?mode=rendezvous&localip=172.20.10.2

    如果使用 RTMP Streams,很遗憾,没有相应的参数。您需要手动路由所有 RTMP 出站流量。为此,我们使用 Proxifier. 进入“配置文件”→“代理规则”,点击“添加新规则”并按此方式进行编辑,然后将其移至规则列表的顶部。通过“高级”选项选择所需的适配器。.


    如果你想在本地进行一次不连接第二条线路的干测,请在电脑上同时启用以太网适配器和Wi-Fi,然后在手机上创建一个新的热点,并将电脑的Wi-Fi连接到该手机。接着打开命令提示符(“cmd”),输入“ipconfig”。你需要的IP地址就在那里:

    您可以使用以下方式测试您的网络流量: Wireshark.


    监控与故障排除

    如果您的 Streams 出现运行迟缓甚至完全停止的情况,您往往会对究竟发生了什么一头雾水。以下是一些提示,可帮助您排查问题。.

    1. 比特率

    请遵守以下规则:视频和音频比特率设置(针对您的 Stream)绝不能超过片段编码比特率。 请在播放列表中右键单击您的片段,打开 MediaInfo 进行检查。在此情况下,请将视频比特率设置为 3M,音频比特率设置为 128K。.


    2. 监测

    在 PLAYDECK 中打开“监视器”窗口,或打开 Stream 日志。.

    帧率 50/60 (平均帧率/目标帧率)
    将当前和平均编码帧率与目标值进行比较。若数值下降,表明系统无法跟上实时编码的进度。.

    已过去 (帧等待时间,单位:秒)
    显示自上一个帧处理完成以来经过的时间。如果该值增加,则可能是由于源文件缺失、设置错误或未连接,导致无法处理帧。.

    跳过 (丢帧)
    这是判断性能瓶颈的最关键指标。如果该数值上升,说明编码器因无法及时处理帧数据而故意丢弃帧。.

    分隔符 (丢失的帧)
    如果网络速度慢,你会看到“中断”提示,因为服务器 想要 一个新的帧,但它无法及时到达(对于需要确认的协议,如RTMP或SRT)。如果源端未能及时发送帧,也会导致中断。.

    缓冲区 (正在加载帧)
    监控内部队列中待处理帧的数量。缓冲区持续增长通常预示着将出现帧丢失或中断。. 高处跳过,低处折断: 这通常意味着你的 CPU/GPU 编码器 太慢了。. 高点跳过,低点/零点跳过: 这通常意味着 网络或来源 是瓶颈所在。写入端已准备好进行编码,但由于连接延迟,帧未能按时到达或被“拉取”。.


    3. 网络/带宽问题

    关闭所有 Streams 设备,打开 Windows 命令提示符(“开始”菜单中的“cmd”),然后输入

    tracert


    请使用目标 URL 的主机名或 IP 地址。如果看到任何数值大于 100 毫秒,则表明与 Stream 目标的连接速度较慢。.

    另外请注意,虽然如今光纤、有线或DSL的下载速度大多很高(>100 Mbps),但上传速度可能要慢得多。请使用如下工具: 网速测试 以确定您的实际上传速度。.

    此外,请在 Stream 服务器上使用带宽分析器(Bandwidth Profiler)检查,确认服务器端是否也接收到了您期望的比特率。大多数服务商或软件都会提供用于测量接收比特率的工具。理想情况下,这些数据会以图表形式显示,从而能指出传输过程中的任何断点。 如果您手头没有相关工具,我们建议将流媒体传输到 YouTube,因为它内置了 Stream 分析器,对于诊断任何不稳定的连接非常有用。.

    此外,请向您的服务提供商或服务方确认,他们是否为您的地区或国家/地区提供了任何本地 Stream 内容接入 URL。例如,Twitch 就提供了这些 Twitch 内容上传接口.

    将“Input Streams”添加到播放列表中

    本文将介绍如何将 Streams 添加到你的播放列表中。.

    本文内容:
    插入 Stream (SRT、RTMP、UDP、……)
    插入 YouTube 视频
    插入网站视频


    插入 Stream(SRT、RTMP、UDP 等)

    您可以直接将浏览器中的任何 YouTube 链接拖放到 PLAYDECK 上:

    要将新的 Stream 添加到播放列表中,只需将 STREAM 图标拖放到播放列表上即可。此时会弹出一个新窗口,您可以在其中输入 Stream 的网址:

    PLAYDECK 现在将扫描您的 Stream。如果 PLAYDECK 能成功连接到您的 Stream,该文本将显示为白色。 现在您可以播放 Stream,和/或双击“INFO”图标查看有关 Stream 的更多信息,例如视频格式和编解码器:

    如果无法连接 Stream,它将显示为红色:

    如果您输入了错误的网址,只需右键单击并选择“更改网址”,即可快速修改:


    插入 YouTube 视频

    您可以通过拖放方式插入 YouTube 链接,或者采用与插入“Input Stream”相同的方法。参见 这篇文章 有关 YouTube 的更多信息。.


    插入网站视频

    您可以通过拖放操作将某些网站直接插入播放列表,或通过“STREAM”图标进行操作。本例中我们使用 TWITCH。点击“显示帮助”可查看有关可用网站的更多信息:


    1 2 3 4 5