承接QT程序开发、OBS定制化开发
NDI是什么?
NDI,全称Network Device Interface,是一种IP网络设备接口协议,它使得视频兼容产品能够通过局域网进行视频共享。NDI协议采用数字高清以太网传输技术,将前端采集类设备(如NDI数字高清摄像机)通过CAT5或CAT6网线点对点直接连接,再通过网络数据链路层把未压缩的实时数字高清信号经过高效的组织排序发送给接收端NDI分析类设备(如DVR、压缩卡、中继器、光端机等),从而实现类似于HD-SDI的传输效果。
NDI的传输相比用同轴电缆传输会更有价格优势,更稳定,抗干扰能力更强。此外,NDI在传输视频信号的同时可以实现实时、双向音频、双向控制信号等的传输,还可以使用以太网供电(POE)技术,从而降低使用成本及节省了布线成本。因此,NDI是一种通过IP网络进行超低延时、无损传输、交互控制的标准协议。
基于OBS的NDI插件功能
包括3个主要部分
- NDI Source: 像传统视频源那样添加NDI视频源
- NDI Output: 把OBS的主输出或预览输出为1路NDI信号源,覆盖整个局域网
- NDI Filter: NDI滤镜,让使用这个滤镜的源可以成为一路独立的NDI输出
安装流程
初次使用NDI,系统会提示安装NDIRuntime(NDI运行环境),
点击链接下载或者从OBS直播助手下载安装,NDIRuntime安装过程中会自动设置相关环境变量,安装完成后需要重启OBS。
如何使用NDI
由于没有NDI设备,本文使用VLC模拟NDI发送。VLC默认是不支持NDI协议的,需要安装VLC的NDI插件,安装 NDITools(如果官网下载慢,可以从OBS直播助手下载),安装完成后重启VLC,重启后按照下图设置NDI相关参数。
音频、视频都需要设置使用NDITools自带的工具 Studio Monitor 做接收NDI数据的测试。
在OBS创建NDI源
在OBS中创建NDI源有两种方式:
1.将主输出或预览输出做为NDI源,下图是具体的步骤:
菜单栏,打开 工具 --> NDI输出设置
弹出NDI输出设置界面
选择主输出,设置输出名称 OBS-Main。打开DNITools安装目录里面的Studio Moniter工具,选择OBS中设置的NDI输出名称 OBS-Main
2.为指定输出的源应用NDI滤镜,输出内容只是当前源的内容。
选择带输出的源,点击滤镜按钮。在弹出的滤镜设置界面 ,点击左下侧 效果滤镜 下发的 + 按钮,在弹出的菜单中选择 专用NDI输出
添加 专用NDI输出 滤镜,可以设置 NDI名称。
设置完成后打开 NDITools 工具包中的 Studio Monitor ,选择 专用NDI输出,即可看到视频流。
在OBS中接收NDI源
首先用VLC播放一个影片并使用NDI输出,在OBS中创建NDI源
在设置界面选择 VLC
设置完成后,回到场景就看到了VLC发送的NDI数据
更多OBS插件,访问 OBS插件助手