多机位直播案例
目录
1、案例简述
2、设备准备:
(1)笔记本电脑
(2)手机
(3)触控一体机
(4)教室前端监控摄像机
(5)教室后端监控摄像机
(6)教师收音
(7)网络支持
3、设备连接:
(1)加入教师授课桌面NDI信号:
(2)加入手机SRT摄像机信号:
(3)教师监控RTSP信号:
4、直播推流:
5、最后的几点说明
(1)手机自动跟随稳定器
(2)监控摄像机
(3)传统摄像机
(4)专用摄像机
(5)无线网络
(6)通讯的协议
之前的几篇文章,介绍了导播/直播软件的流媒体接入协议【查看专辑】,本文拟用一个案例,说明各种协议的选择及使用方法。具体详细做法还请参考以前的文章。
1、案例简述
直播内容:课堂授课
直播地点:教室
场地设备:黑板+平板触控一体机(含OPS电脑)+前后摄像机+教室无线覆盖
直播设备:笔记本电脑+手机+校园直播服务器
2、设备准备:
(1)笔记本电脑
负责导播及推流到服务器,安装OBS软件、NDI-Tools、OBS的NDI插件、VLC等软件。VLC负责验证拉流播放,NDI负责接入教室授课电脑(OPS)画面。软件安装详见《OBS直播软件使用NDI协议输入输出》

(2)手机
配合云台稳定器负责跟随教师拍摄(原生跟随模块),安装SRT摄像机APP,详见《在直播系统中使用SRT协议传输视频》

(3)触控一体机
使用其内置OPS电脑,安装vMix Desktop Capture,详见《vMix导播软件使用NDI协议输入输出》负责将教师课件传输到导播系统中。
(4)教室前端监控摄像机
负责学生场景拍摄,受用RTSP与导播系统连接,详见《vMix导播软件使用NDI协议输入输出》
(5)教室后端监控摄像机
负责整个全景拍摄,也采用RTSP方式连接。
(6)教师收音
采用“小蜜蜂”,教师夹在领口,与手机做无线蓝牙连接。学生收音使用监控摄像机内置麦克风(登陆摄像机后台,做消噪处理)
(7)网络支持
笔记本电脑、手机通过无线AP,与OPS电脑、摄像头互联。
3、设备连接:
(1)加入教师授课桌面NDI信号:
启动OBS→新建场景→在场景中添加源→寻找手机的NDI源→确定→调整在场景中的位置


(2)加入手机SRT摄像机信号:
手机启动LarixBroadcasterAPP→设置→连接→新连接→连接名、URL(srt://127.0.0.1:9001)、mode:(Listener)→选中这个链接→返回主界面→点击开始摄像【详见】

笔记本电脑启动OBS→新建场景→新建媒体源→输入srt://192.168.0.100:9001?mode=caller,注意IP地址是手机的IP

(3)教师监控RTSP信号:
启动OBS→新建场景→在“来源”中添加“VLC”视频源→播放列表中添加“路径/URL”
rtsp://admin:admin12345@192.168.10.199:554/h264/ch1/main/av_stream
rtsp://admin:admin12345@192.168.10.200:554/h264/ch1/main/av_stream

4、直播推流:
安装CentOS→安装SRS流媒体服务器(过程略)
启动OBS→设置→直播→服务:自定义……→填写流媒体IP地址、路径、推流码→确定返回→开始录像→开始直播


5、最后的几点说明
(1)手机自动跟随稳定器
必须选择外置跟拍硬件模块,不能使用稳定器APP内的AI软件识别,因为我们需要用支持传输协议(NDI、SRT、RTSP)的特殊APP摄像机。
(2)监控摄像机
是因地制宜的选用,如果不具备条件,可以多增加手机机位。
(3)传统摄像机
可以安照输出接口(HDMI、SDI)选配编码器(推流盒子),很多编码都支持RTMP、RTSP、SRT、NDI协议,还具备wifi或4G/5G网络。注意NDI协议需要额外收权费,采购是需要确认报价中是否包含NDI授权费,否则有30分使用限制。

(4)专用摄像机
如果资金允许,可以选择用会议专用摄像机,很多摄像机均支持上述协议。

(5)无线网络
尽量使用企业级产品,支持多用户密集接入(平板教学场景),支持2.4G/5G信号。

(6)通讯的协议
除了根据硬件选择外,还可以根据协议特性选择。如:RTSP延迟小,监控设备多支持;NDI图像质量高,有延迟;SRT支持互联网传输,延迟低。
相关文章:
多机位直播案例
目录 1、案例简述 2、设备准备: (1)笔记本电脑 (2)手机 (3)触控一体机 (4)教室前端监控摄像机 (5)教室后端监控摄像机 (6&…...
前沿重器[37] | 大模型对任务型对话的作用研究
前沿重器 栏目主要给大家分享各种大厂、顶会的论文和分享,从中抽取关键精华的部分和大家分享,和大家一起把握前沿技术。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有。(算起来,专项启动已经…...
第三章:boundary-value analysis
文章目录 Boundary-value Analysiscomputational faults 计算错误boundary shift 边界偏移boundary value analysis 的优势Path condition, domain, and domain boundary (路径条件、域和域边界)Open and closed boundaries (闭合边界 / 开放边界)on / off pointGuidelinestr…...
Python模块psutil:系统进程管理与Selenium效率提升的完美结合
前言 在前面编写一个Selenium的自动化程序时候,发现一个问题。 因笔记本配置较为差,所以每次初始化Selenium的WebDriver都会非常慢,整个等待过程是不友好的。 所以我就想到: 在程序中初始化一个全局的WebDriver对象,…...
glibc 里的线程 id
这里讲的是通过 pthread_create() 函数返回的线程 id,其实就是 glibc 库里维护的线程id,它跟内核维护的线程 id 不一样,pthread_create() 返回的线程 id 并不一定是唯一的。我们看 pthread_create 函数的源码,它最后返回的线程 id…...
nacos的部署与配置中心
文章目录 一、nacos部署安装的方式单机模式:集群模式:多集群模式: 二、安装的步骤1、预备环境准备2、载安装包以及安装2.1、Nacos有以下两种安装方式:2.2、更换数据源数据源切换为MySQL 2.3、开启控制台授权登录(可选) 3、配置中心的使用3.1、创建配置信…...
undefined 与 undeclared 的区别?
在 JavaScript 中,undefined 和 undeclared 是两个不同的概念,表示不同的情况: 1:undefined: undefined 是一个特殊的值,表示一个变量已经被声明,但尚未被赋予一个值。当一个变量被声明但未进…...
Leetcode周赛370补题(3 / 3)
目录 1、找到冠军 Ⅰ- 暴力 2、找到冠军 Ⅱ - 寻找入度为0的点 3、在树上执行操作以后得到的最大分数 - dfs树 逆向思考 1、找到冠军 Ⅰ- 暴力 100115. 找到冠军 I class Solution {public int findChampion(int[][] g) {int ng.length;for(int i0;i<n;i){int cnt0;for…...
PyTorch深度学习实战——图像着色
PyTorch深度学习实战——图像着色 0. 前言1. 模型与数据集分析1.1 数据集介绍1.2 模型策略 2. 实现图像着色相关链接 0. 前言 图像着色指的是将黑白或灰度图像转换为彩色图像的过程,传统的图像处理技术通常基于直方图匹配和颜色传递的方法或基于用户交互的方法等完…...
InfiniBand 的前世今生
今年,以 ChatGPT 为代表的 AI 大模型强势崛起,而 ChatGPT 所使用的网络,正是 InfiniBand,这也让 InfiniBand 大火了起来。那么,到底什么是 InfiniBand 呢?下面,我们就来带你深入了解 InfiniBand…...
分享一下微信小程序里怎么添加社区团购功能
随着互联网的快速发展,线上购物已经成为我们日常生活的一部分。而在这个数字化时代,微信小程序作为一种便捷的电商渠道,正逐渐成为新的趋势。其中,社区团购功能更是受到广大用户的热烈欢迎。本文将探讨如何在微信小程序中添加社区…...
软考高项-IT部分
信息化体系 信息化技术应用:龙头 信息资源:核心任务 信息网络:应用基础 信息技术和产业:建设基础 信息化人才:成功之本 信息化法规:保障 信息化趋势 产业信息化、产品信息化、社会生活信息化、国民经济信息化 新型基础设施建设 2018年召开的中央经济工作会议,首…...
hugetlb核心组件
1 概述 hugetlb机制是一种使用大页的方法,与THP(transparent huge page)是两种完全不同的机制,它需要: 管理员通过系统接口reserve一定量的大页,用户通过hugetlbfs申请使用大页, 核心组件如下图: 围绕着…...
vscode配置环境变量
首先点击下面这个链接。 sMinGW-w64 - for 32 and 64 bit Windows - Browse Files at SourceForge.net 然后选择Files这个选项 向下移选择下载这个文件 解压完成之后,找到这个文件的bin目录复制路径后,添加到环境变量中 依次点击后打开cmd࿰…...
react:封装组件
封装 /components/Pagination.tsx import React from react import { Pagination } from antdconst PaginationWarp ({ total, paramsInfo, setParamsInfo }) > {return (<Paginationtotal{total}current{paramsInfo.page}showSizeChangershowQuickJumperdefaultPageSi…...
基于深度学习的视频多目标跟踪实现 计算机竞赛
文章目录 1 前言2 先上成果3 多目标跟踪的两种方法3.1 方法13.2 方法2 4 Tracking By Detecting的跟踪过程4.1 存在的问题4.2 基于轨迹预测的跟踪方式 5 训练代码6 最后 1 前言 🔥 优质竞赛项目系列,今天要分享的是 基于深度学习的视频多目标跟踪实现 …...
linux中各种最新网卡2.5G网卡驱动,不同型号的网卡需要不同的驱动,整合各种网卡驱动,包括有线网卡、无线网卡、Wi-Fi热点
linux中各种最新网卡2.5G网卡驱动,不同型号的网卡需要不同的驱动,整合各种网卡驱动,包括有线网卡、无线网卡、自动安装Wi-Fi热点。 最近在做路由器二次开发,现在市面上卖的新设备,大多数都采用了2.5G网卡,…...
asp.net上传文件
第一种方法 前端: <div> 单文件上传 <form enctype"multipart/form-data" method"post" action"upload.aspx"> <input type"file" name"files" /> …...
JavaEE平台技术——预备知识(Web、Sevlet、Tomcat)
JavaEE平台技术——预备知识(Web、Sevlet、Tomcat) 1. Web基础知识2. Servlet3. Tomcat并发原理 1. Web基础知识 🆒🆒上个CSDN我们讲的是JavaEE的这个渊源,实际上讲了两个小时的历史课,给大家梳理了一下&a…...
基础课23——设计客服机器人
根据调查数据显示,使用纯机器人完全替代客服的情况并不常见,人机结合模式的使用更为普遍。在这两种模式中,不满意用户的占比都非常低,不到1%。然而,在满意用户方面,人机结合模式的用户满意度明显高于其他模…...
Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密
在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
MySQL中【正则表达式】用法
MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...
如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...
初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
