本文将介绍如何根据不同用途设置您的 Output Streams。.
本文内容:
→ 引言
→ 使用参数和配置字符串
→ 配置示例
→ AAC 高质量音频 Streams
→ 色彩空间与色度抽样 以及交错
→ 多音轨
→ 隐藏式字幕与SCTE
→ 将 Streams 路由到特定 IP 地址
→ 监控与故障排除
1. 引言
您可以为任何信号源(包括频道、输入源和导演视图)设置15种不同的Stream配置。默认情况下,Stream启动后会从信号源复制视频格式,但您可以将其转码为任意分辨率。.
一旦您选择了协议,视频/音频编解码器和 URL 的其他字段将根据您的选择而变化,这意味着:并非所有视频/音频编解码器都适用于每种 Stream 协议。.
信息: NVIDIA 编码器不再支持交错格式。请改用 Intel QuickSync。.
您的 URL 将显示所需 URL 格式的建议。点击“URL 信息”可查看更多示例,例如如何集成用户名/密码。PLAYDECK 不会使用“预览 URL”,它仅用于方便您在点击“预览”时打开网络浏览器。.
2. 使用参数和配置
此外,还可以针对您所选的协议和编解码器设置更多参数。这些参数可用于微调您的设置,例如将 Stream 设置为恒定比特率(CBR)或添加元数据。.
点击“参数”将打开一个编辑器,该编辑器仅显示您所选项的可用设置。任何与默认值不同的数值都会被高亮显示。.
“配置字符串”代表了您所选择的所有协议/编解码器及其相应的参数。 配置字符串支持双向操作:您也可以将配置字符串复制并粘贴到文本框中,然后点击“从字符串更新”将这些值应用到上级设置。这样,您就可以轻松地在不同的 Stream ID 之间复制设置,或与其他用户共享设置。.

3. 配置示例
以下是针对不同用途的精选推荐配置。将其复制并粘贴到 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'
4. 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,因为您的源素材可能存在相位不一致的问题。.
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 等)实现。您还可以应用不同的音频编解码器。.
具体操作方式是:先确保通道中所有音频轨道均已激活,然后将用于 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 中测试生成的音频轨道:

7. 隐藏式字幕与SCTE
这两项功能均可在协议的“参数设置”中启用:

信息: SCTE-35 仅适用于以下协议:SRT、DVB、UDP(任何视频编解码器)。. 字幕功能仅支持以下视频编解码器:MPEG-2、H.264(任何协议)
这需要您的频道中已启用并提供这两项功能。有关 SCTE 和/或隐藏式字幕的更多信息,请参阅以下文章:
→ 将 SCTE-35 发送至 Stream 服务器
→ 隐藏式字幕 / 字幕
8. 将 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.
9. 监控与故障排除
如果您的 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 内容上传接口.