16个不稳定版本 (5个破坏性更新)
0.13.0 | 2024年7月16日 |
---|---|
0.12.0 | 2024年2月8日 |
0.11.3 | 2023年12月18日 |
0.11.2 | 2023年11月11日 |
0.0.0 | 2021年4月5日 |
#60 in 视频
每月下载量 118次
275KB
6.5K SLoC
GStreamer NDI插件
兼容NDI SDK 6.x和5.x
这是一个GStreamer多媒体框架的插件,允许GStreamer接收或发送NDI流。
此插件最初由Teltek开发,并由伦敦艺术大学和曼彻斯特大学资助。
当前该插件包含一个用于接收NDI源的数据源元素,一个提供NDI源的目标元素,以及一个用于在网络中查找NDI源的设备提供者。
插件在运行时加载NDI SDK,从默认库路径或,如果设置,从由环境变量NDI_RUNTIME_DIR_V6
或NDI_RUNTIME_DIR_V5
指定的目录加载。
以下是一些从命令行使用这些元素的示例
# Information about the elements
$ gst-inspect-1.0 ndi
$ gst-inspect-1.0 ndisrc
$ gst-inspect-1.0 ndisink
# Discover all NDI sources on the network
$ gst-device-monitor-1.0 -f Source/Network:application/x-ndi
# Audio/Video source pipeline
$ gst-launch-1.0 ndisrc ndi-name="GC-DEV2 (OBS)" ! ndisrcdemux name=demux demux.video ! queue ! videoconvert ! autovideosink demux.audio ! queue ! audioconvert ! autoaudiosink
# Audio/Video sink pipeline
$ gst-launch-1.0 videotestsrc is-live=true ! video/x-raw,format=UYVY ! ndisinkcombiner name=combiner ! ndisink ndi-name="My NDI source" audiotestsrc is-live=true ! combiner.audio
欢迎为此项目做出贡献。以下是一些您可以贡献的方式
- 使用更多硬件和软件进行测试并报告错误
- 提交拉取请求。
字幕支持
此管道从gst-plugins-rs/video/closedcaption发送带有测试字幕的测试视频。从gst-plugins-rs根目录运行。
# Audio/Video sink pipeline with closed captions (cc start around 0:00:14)
$ gst-launch-1.0 \
ndisinkcombiner name=ndicombiner ! ndisink ndi-name="My NDI source" \
cccombiner name=cccombiner ! videoconvert ! video/x-raw,format=UYVY ! ndicombiner.video \
videotestsrc is-live=true ! cccombiner. \
filesrc location=video/closedcaption/tests/dn2018-1217.scc ! sccparse ! cccombiner.caption \
audiotestsrc is-live=true volume=0.1 ! ndicombiner.audio
# Discover all NDI sources on the network
$ gst-device-monitor-1.0 -f Source/Network:application/x-ndi
# Audio/Video source pipeline with closed caption overlay
$ gst-launch-1.0 \
ndisrc ndi-name="_REPLACE_WITH_SOURCE_NAME_" ! ndisrcdemux name=demux \
demux.video ! queue ! cea608overlay ! videoconvert ! autovideosink \
demux.audio ! queue ! audioconvert ! autoaudiosink
# Variant 1: sink pipeline with c708 closed captions
$ gst-launch-1.0 \
ndisinkcombiner name=ndicombiner ! ndisink ndi-name="My NDI source" \
cccombiner name=cccombiner ! videoconvert ! video/x-raw,format=UYVY ! ndicombiner.video \
videotestsrc is-live=true ! cccombiner. \
filesrc location=video/closedcaption/tests/dn2018-1217.scc ! sccparse ! ccconverter ! closedcaption/x-cea-708,format=cdp ! cccombiner.caption \
audiotestsrc is-live=true volume=0.1 ! ndicombiner.audio
# Variant 2: sink pipeline with c608 and c708 closed captions
$ gst-launch-1.0 \
ndisinkcombiner name=ndicombiner ! ndisink ndi-name="My NDI source" \
cccombiner name=cccombiner_1 ! cccombiner name=cccombiner_2 ! videoconvert ! video/x-raw,format=UYVY ! ndicombiner.video \
videotestsrc is-live=true ! cccombiner_1. \
filesrc location=video/closedcaption/tests/dn2018-1217.scc ! sccparse ! tee name=cctee \
cctee. ! ccconverter ! closedcaption/x-cea-608,format=raw ! cccombiner_1.caption \
cctee. ! ccconverter ! closedcaption/x-cea-708,format=cdp ! cccombiner_2.caption \
audiotestsrc is-live=true volume=0.1 ! ndicombiner.audio
许可证
此插件根据MPL-2许可证授权 - 请参阅许可证文件以获取详细信息
致谢
- 伦敦艺术大学和曼彻斯特大学。
- Sebastian Dröge (@sdroege)。
依赖项
~11–18MB
~278K SLoC