设置设备参考信号(GenLock)


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


1. 多通道同步作为用例

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

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


2. 提供参考信号(GenLock)

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

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


3. 在 PLAYDECK 中设置参考输入

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

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

使用 Clips 自动生成画面下方的三分之一字幕

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

本文内容:
创建下三分之一字幕(使用 overlays.uno)
创建下三分之一字幕(使用 ClassX)
创建下三分之一字幕(在PLAYDECK中)
使用片段/模块实现叠加自动化
日程叠加
遥控器
外部键控


1. 创建下三分之一字幕(使用 overlays.uno)

在本例中,我们将使用一个来自 overlays.uno.

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

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


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

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


2. 制作画面下三分之一字幕(使用 ClassX)

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

安装 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 中)

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

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

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

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


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

    现在,我们已经为下三分之一区域创建了一个可正常工作的叠加按钮,其中包含动态文本内容。接下来,让我们将此叠加层应用到特定的片段上。选中相关片段,点击“叠加层”图标,然后将我们的叠加层添加到该片段中,从片段开始后的第 5 秒开始显示,持续 10 秒:

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

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

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

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


    5. 时间表叠加

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


    6. 遥控器

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

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

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


    7. 外部键控

    您可以将 PLAYDECK 的一个通道专门用于叠加图层,并通过外部抠像功能将其发送至调音台。该功能同时支持设备输出和 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

    对于“输出”,请在此注册表键中编辑 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

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

    输出流的配置

    本文将介绍如何根据不同用途配置输出流。.

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


    1. 引言

    您可以为任何源(包括频道、输入和导演视图)设置 15 种不同的流配置。默认情况下,视频格式会在流开始时从源中复制过来,但您可以将其转码为任意分辨率。.

    选择协议后,视频/音频编解码器和 URL 的其他字段将根据您的选择进行相应调整,这意味着:并非所有视频/音频编解码器都适用于每种流媒体协议。.

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

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


    2. 使用参数和配置

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

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

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


    3. 配置示例

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


    DVB 流 包含 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 流中 PCR 错误或其他问题的最佳做法是使用以下工具之一:
    DVBControl DVBAnalyzer (价格约2000欧元,但最为可靠,且能检测PTS-DTS错误)
    StreamGURU (价格约300欧元,可检测任何ETR错误并显示比特率曲线)
    TSAnalyzer (免费,但支持导入流媒体URL,需在硬盘上存有TS文件)
    – 其他值得一提的工具:DVBInspector、Elecard Stream Analyzer、StreamXpert

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

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

    以下示例被多家客户应用于多通道流媒体配置中,用于播放音乐视频内容。该配置在4个并行输出+流媒体通道下运行流畅,通过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 流 以CBR编码,60帧/秒,每2秒设置一个关键帧

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

    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 检查器 要检查您的直播稳定性,请在直播链接中添加“?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'


    4. AAC 高质量音频流

    默认的 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:高保真流媒体(优化版立体声)

    最适合: 专为音乐打造的频道,采用纯净的录音室级原始音源文件。该配置文件采用严格的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,因为您的源素材可能存在相位不一致的问题。.


    5. 色彩空间、色度抽样与交错扫描

    对某些色彩空间的支持(例如 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 库替换为您自己的版本。.


    6. 多音轨

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

    具体操作方法是:先确保频道中所有音频轨道均已启用,然后将用于直播输出的音频轨道拆分为立体声对等形式。.

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

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

    然后打开直播设置,特别是直播协议的参数,并启用音频轨道拆分:

    信息: “流设置”中的“音频通道数”必须保持为 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 等工具中测试生成的音频轨道:


    7. 隐藏式字幕与SCTE

    这两项功能均可在协议的“参数设置”中启用:

    信息: SCTE-35 仅适用于以下协议:SRT、DVB、UDP(任何视频编解码器)。. 字幕功能仅支持以下视频编解码器:MPEG-2、H.264(任何协议)

    这需要您的频道中已启用并提供这两项功能。有关 SCTE 和/或隐藏式字幕的更多信息,请参阅以下文章:

    将 SCTE-35 发送至流媒体服务器
    隐藏式字幕 / 字幕


    8. 将数据流路由到特定 IP 地址

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

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

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

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


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

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


    9. 监控与故障排除

    如果您的流媒体播放出现卡顿甚至完全停止,您往往不清楚究竟发生了什么。以下是一些提示,可帮助您找出问题所在。.

    1. 比特率

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


    2. 监测

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

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

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

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

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

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


    3. 网络/带宽问题

    关闭所有正在运行的程序,打开 Windows 命令提示符(在“开始”菜单中搜索“cmd”),然后输入

    tracert


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

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

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

    此外,请向您的服务提供商或服务平台确认,他们是否为您的地区或国家/地区提供了本地流媒体采集网址。例如,Twitch 便提供了此类网址 Twitch 内容上传接口.

    将输入流添加到播放列表

    本文将介绍如何将流媒体内容添加到播放列表中。.

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


    插入流(SRT、RTMP、UDP 等)

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

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

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

    如果无法连接流媒体,它将显示为红色:

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


    插入 YouTube 视频

    您可以通过拖放操作插入 YouTube 链接,或采用与插入输入流相同的方式进行操作。请参阅 这篇文章 有关 YouTube 的更多信息。.


    插入网站视频

    您可以通过拖放操作将某些网站直接添加到播放列表中,或通过“流媒体”图标进行添加。本例中我们使用 TWITCH。点击“显示帮助”可查看支持的网站列表:


    将许可证转移到另一台电脑上

    本文将介绍如何将许可证从一个系统转移到另一个系统。.

    本文内容:
    店铺许可证
    USB 加密狗许可证
    离线许可证
    备份许可证


    店铺许可证

    您可以通过简单的签入/签出系统转移许可证。在拥有有效许可证的系统上,进入许可证管理器:

    首先,我们需要停用当前的许可证:选择“试用版”,点击“激活”,然后确认重启提示:

    重启 PLAYDECK 后,我们将把释放的许可证移回您的在线许可证池。请重新打开许可证管理器。 现在请登录您的 PLAYDECK 账户。请使用您在商店结账时使用的电子邮件地址和密码。如果您需要重置密码,请点击“忘记密码”按钮:

    现在,只需点击一下按钮,即可将许可证从您的左侧移至右侧(将许可证归还至许可证池)。这意味着,该许可证在当前系统上将变为不可用,但在任何其他系统上将变为可用:

    下一屏显示的是登录许可证管理器后的另一台电脑。现在只需反向操作即可:在右侧选择许可证,然后点击按钮将其移至左侧(将许可证从许可证池移至本地电脑)。PLAYDECK 随后会提示您激活许可证并重启:


    USB 加密狗许可证

    只需拔下 USB 加密狗并将其插入另一台电脑,然后在该电脑上启动 PLAYDECK。 请注意,如果在 PLAYDECK 仍在运行时拔出加密狗,PLAYDECK 将立即关闭且不会提前提示。建议定期关闭 PLAYDECK,以确保所有数据均已正确保存。.


    离线许可证

    离线许可证与 PLAYDECK 系统 ID 绑定,客户无法将其转移至其他系统。如需获取新的离线许可证,请发送邮件至 [email protected] 联系我们。.


    备份许可证

    我们另有一篇文章专门介绍如何使用该 备份许可证.

    免费备份许可证

    本文将介绍如何使用随每份 PLAYDECK 许可证附赠的免费备份许可证。备份许可证的功能如下:

    • 可与任何 PLAYDECK 许可证(加密狗、商店版、离线版)配合使用
    • 可在同一网络中的任意 PLAYDECK-PC 上使用
    • 支持多个客户端
    • 不支持全天候运行(每次会话最长24小时)


    1. 设置

    在您的主系统(即拥有许可证的那台)上,您无需进行任何操作:备份许可证系统默认处于启用状态。它将使用 WebSocket 端口 11411,因此请确保该端口未被封锁:

    在客户端系统(即未安装许可证的系统)上,您只需进行常规的 PLAYDECK 安装,此处无需特殊操作:PLAYDECK 不会以带有水印的试用模式启动:

    现在,我们需要通过提供 MAIN 的 IP 地址,告知 CLIENT PLAYDECK 如何找到 MAIN PLAYDECK。要获取 MAIN 的 IP 地址,只需在 PLAYDECK 中打开“关于”窗口(主菜单 > 许可证 > 关于):

    在您的客户端上,进入“应用程序设置”,输入主PLAYDECK的IP地址,然后点击“立即测试IP”。 客户端现在将测试网络连接,并搜索主设备上的有效许可证。如果您未看到以下信息弹窗,请检查您的主设备许可证以及主设备与客户端之间的网络连接:

    现在,您可以通过点击“BACKUP-SYSTEM”来启用此功能。PLAYDECK 将立即重启,并使用与 MAIN 完全相同的许可证。您可以在多个显示屏上验证 CLIENT 是否正确使用了备份许可证:

    注: 如果 CLIENT 本身拥有有效的许可证,则不会使用 MAIN 的许可证。.


    2. 备份许可规则

    “备份许可证”并非用于全天候运行,而是为了在某些使用场景下提供即时运行的故障保护(例如在正式生产环境中),且无需购买第二份许可证,仅需一个备用系统即可满足需求。.

    如需实现全天候无人值守运行,您需要购买一份附加许可证。请通过以下方式联系我们: [email protected], 如果您下一份许可证仅用于备份,我们将为您提供相应的折扣。.

    您的备份许可证的最长有效期为:
    – 2 小时,如果主线路断开或关闭
    – 24小时,前提是MAIN保持在线

    PALYDECK 将不经事先警告即终止 CLIENT 服务。因此,请务必在 2 小时内让 MAIN 恢复在线,或在 24 小时内重启 MAIN 和 CLIENT。.

    您可以在客户端的“设置”中查看剩余的运行时间:

    在单显示器上创建幻灯片

    本文将介绍如何制作带有转场效果的幻灯片,并在同一台显示器上进行播放。.


    1. 制作节目

    点击播放列表之间的右箭头,打开内置的文件资源管理器。找到您的图片文件夹,选中所有图片,然后通过拖放操作将其添加到播放列表中:

    在播放列表中选择任意一个片段,然后按 CTRL+A 选中所有片段,接着点击“时长”图标,为每张图片输入合适的时长,例如 15 秒:

    在所有片段仍处于选中状态时,点击“转场”图标,然后添加任意转场效果。在此示例中,我们使用平滑的长淡入淡出转场:

    在播放列表底部,您可以查看幻灯片的总时长:


    2. 播放幻灯片

    只需双击第一个片段(或使用 CUE+PLAY 按键),然后双击预览区域(或右键单击并选择“全屏”)。此时,您的播放画面将以最高画质全屏显示,并占据整个屏幕。同时,鼠标光标将被隐藏。 按 ESC 键退出全屏模式。.

    注: 在全屏模式下,您可以使用空格键暂停或继续播放。.

    您还可以将视频信号输出到第二台显示器,或传输到电视上。您也可以通过 NDI 将其传输到另一台电脑,并使用 PLAYDECK 打开该信号(使用免费的 备份许可证),或 VCL Mediaplayer 或其他任何第三方应用:


    使用命令进行播出控制

    本文将介绍如何使用命令来控制您的播出系统。.

    本文内容:
    示例:CUE+PLAY 多声道
    所有命令列表及添加位置
    从其他应用发送命令


    示例:CUE+PLAY 多声道

    我们希望创建一个操作按钮,该按钮将触发多个输出通道并同时播放它们(几乎同步)。.

    单击该按钮创建一个新的操作按钮,然后选择“命令”,再选择“编辑命令”:

    在“COMMANDS – Internal”下方添加以下内容:
    <cue|1|1><cue|2|1><wait|1000><play|1|1><play|2|1>

    这将加载第1和第2频道(第1个片段的第1个块),然后等待1000毫秒(用于缓存),最后播放这两个频道。.


    所有命令列表及添加位置

    可通过 PLAYDECK 的主菜单快速打开“所有命令列表”:

    可以在以下位置添加命令:

    • 操作按钮(开始、结束)
    • 叠加按钮(开始、结束)
    • 片段(随时)
    • 区块(起始,结束)

    主要通过此图标:


    从其他应用发送命令

    我们另有一篇文章介绍了如何通过 伴侣.

    但如果不是 Companion,而是另一款第三方应用呢?首先,你需要启用 TCP 命令。这样可以使 PLAYDECK 能够接收并执行来自外部源的命令:

    在您的第三方应用中,通过 TCP 连接到 PLAYDECK 并发送一个或多个命令。在此示例中,我们使用 赫拉克勒斯 发送一条命令,该命令将启动流 1 和流 2:


    使用 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 中使用的变量。随后,您可以点击小型的“复制”图标,将该变量添加到您的按钮中:

    1 2 3 4 5