多机位直播案例
目录
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%。然而,在满意用户方面,人机结合模式的用户满意度明显高于其他模…...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...

K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

visual studio 2022更改主题为深色
visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中,选择 环境 -> 常规 ,将其中的颜色主题改成深色 点击确定,更改完成...

ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3
一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...
代码随想录刷题day30
1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

nnUNet V2修改网络——暴力替换网络为UNet++
更换前,要用nnUNet V2跑通所用数据集,证明nnUNet V2、数据集、运行环境等没有问题 阅读nnU-Net V2 的 U-Net结构,初步了解要修改的网络,知己知彼,修改起来才能游刃有余。 U-Net存在两个局限,一是网络的最佳深度因应用场景而异,这取决于任务的难度和可用于训练的标注数…...