OBS直播时编码器、码率控制器、分辨率帧率是什么以及如何向第三方推流

news2024/9/24 21:23:11

内容摘要:OBS直播时编码器、码率控制器、分辨率、帧率到底是什么,以及OBS向第三方直播平推流时,要注意什么。

 图:OBS直播时输出界面参数设定

OBS编码器

1. 软编:x264

使用CPU进行编码,占用CPU资源多,但编码出来视频质量更好

2. 硬编:NVENC H.264

基于GPU编码,编码的计算负载由NV显卡的GPU承担,从而大大降低了CPU的压力。NV显卡编码的缺陷是在相同的h.264编码参数设置下,其编码后视频的质量比x264要次,特别是在大量运动画面和转场画面的情况下,会更为明显。

对于有的电脑来说,虽然配有NV的独立显卡,但在主板Bios上没有激活该显卡,而是使用的集成显卡,因此在“编码器”中不会有“NVENC H.264”的选项。

3.QuickSync H.264:即采用英特尔的集成显卡进行H.264的“硬”编码。英特尔显卡编码出来的质量介于CPU编码和NVENC编码之间。

4.H264 Encoder(AMD Advanced Media Framework)AMF:采用AMD的显卡进行编码。在其余条件相同的情况下,根据第三方测试结果,在这4种编码中,AMD显卡编码后的视频质量是最低的。
 

码率控制器

1. VBR动态码率:固定设定的码率上下波动,波动幅度较大

根据图像内容的复杂程度来分配不同的码率以确保画面的质量。在图像十分复杂,画面运动剧烈的情况下,其码率就会有大幅的提高,而在画面简单以及运动小或者几乎没有运动的情况下,码率会很低。

2. CBR固定码率:根据设定的码率相对波动,波动幅度很小,码率优先,质量第二

3. ABR平均码率:可以看成是权衡CBR和VBR的结果。

该模式也是以质量为目标,和VBR相比,更加温和一点,实际码率波动不会那么大,但可能就会牺牲一点点的质量为代价

4. CRF固定质量模式:该模式下码率由CRF质量值来进行控制,CRF取值范围在1~51之间,H264编码的默认CRF值为23,取值越低,编码质量越好,同时对CPU或者GPU的压力就越大。

关键帧间隔

关键帧间隔越大,也就是GOP越长,数据压缩越大,实际码率就会越低。但GOP太大会导致画质变差,特别是在运动画面中最为明显。所以我们不建议GOP设置太长,以确保画面质量,默认情况下可以设置为0,即系统自动设定。如果自己设置,可以考虑在半秒到2秒之间。

CPU使用预设(Present)

分了10级,即从最下面的placebo到最上面的ultrafast。级别越靠上,CPU处理的数据量越小,编码时对CPU的处理能力要求越低,但画质会越来越差。该参数对CPU的影响非常大,即使是从faster到fast一个级别的变化,CPU的运行量可能就会翻倍。一般可以选择在fast~veryfast级别之间,平衡画质与CPU的负载。
 

配置(Profile)

定义了视频在进行H264编码时的视频信号抽样和视频压缩方式(算法)相关的一组参数值,或者说特性。H264一共定义了7个档次,我们OBS中只支持最常见的三种,从低到高依次为baseline、main和high。在码率等其余参数不变的情况下,三种档次从低到高压缩率逐渐提高,对CPU计算能力的要求也逐步提高,同时画面质量也会更好。

微调(Tune)

8种适应场景。
  1.film:电影画质场景,主要用户画质较高、比特率较高的应用场合;
  2.animation:适用于卡通场景,对平坦区域较大的图形画面有一定的优化;
  3.grain:应用于颗粒化比较多的画面,编码后能够较好保持原画面的颗粒感;
  4.stillimage:应用于静态画面场合。
  5.psnr和ssim:psnr和ssim是2个视频质量的量化指标,用于客观判断编码后的数据值和编码器前数据值的差异,但比不能真正的反应质量是否有所有提升。
  6.fastdecode:使编码后的数据在解码时,对解码器CPU和(或)GPU的要求不高,即低处理能力的解码器也能快速的进行解码。
  7.zerolatency:实现快速编码,适用于延迟要求低的场合,但画质可能有一定的影响。
 

分辨率(resolution)

  1.基础画布分辨率:这是指OBS预监和输出框的分辨率,我们建议该分辨率和输入视频的分辨率一致,在不一致时,需要进行手动拉伸,以恰好适应画布的大小。
  2. 输出(缩放)分辨率:即编码后的输出分辨率,根据实际需要调整,默认情况下建议于原始视频一致。
  输出分辨率的大小对CPU或者计算计算资源有较大的关联性,在码率等其余条件不变的情况下,分辨率越高,占用的计算资源会越高,对硬件的要求越高。
  3.缩小方法:指原高高分辨率视频下变换成低分辨率视频时,所采用的计算方法,obs提高了4种算法,即双直线法、区域法、双立方法和lanczos法,这四种方法下变换后的视频质量依次提高,但更好计算资源,所幸的是,对计算资源的占用量也不会有多大的影响。
 

帧率(FPS)

  即一秒钟内视频的帧数,帧数越高,画面的流畅感越强,临场感越强,对于运动剧烈的画面,建议使用高分帧率。

OBS向第三方直播平台推流

以我熟悉的云平台为例(如果是向阿里云、腾讯云推流,也类似)。

 图:获取第三方平台的推流地址

注意事项:

  • 第三方推流需使用直播模板为【纯视频】的频道
  • 获取了推流地址后的30分钟内需要进行推流,如果未推流则会过期,要从后台重新获取,也可以联系您的对应售后,获取频道的固定推流地址

 主要有两个步骤:

1、打开OBS-设置

 图:OBS直播界面中添加推流地址

2、填入推流地址

  • 在推流设置中,服务那一项选择“自定义”
  • 推流地址需要截断,并分开填入到服务器和串流密钥中

以下方推流地址举例,完整地址为:

rtmp://push-pp.vidoab.net/recordf/
CB*********cb3165acx7196c4a8?txSecret=38d274e9bcasd268dd65a9a8d6e&txTime=6364dasq2

特别注意:一般云平台提供的是类似上面的这样的RTMP完整的推流地址,使用OBS时,需要手动将该地址分两部分,填入OBS推流界面的参数中,分别为:

服务器地址:(推流服务器)rtmp://push-pp.vidoab.net/recordf/

串流密钥:(也可以理解是流名称)CB*********cb3165acx7196c4a8?txSecret=38d274e9bcasd268dd65a9a8d6e&txTime=6364dasq2

图如下:

 图:OBS直播界面中添加推流地址(服务器地址、串流密钥)

 完成后,发起直播,就OK了,如下图:

  图:OBS直播界面中发起直播

图片

图(直播实例) / 绿幕舞台背景摄像机采集画面

图片

▲ 图(直播实例-观众观看效果)  / 直播绿幕抠图后直播间直播的实际效果

 MR虚拟直播

  • MR直播实例(混合现实直播)高品质企业直播
  • 企业年会直播来个虚拟舞台场景如何?
  • MR直播(混合现实直播)做一场高品质企业培训
  • MR场景直播-帮助企业高效开展更有意思的员工培训
  • 企业多会场视频直播(主会场、分会场直播)实例效果
  • 虚拟直播(虚拟场景直播)要怎么做?

无延迟直播

  • 无延时直播/超低延时直播画面同步性测试(实测组图)
  • 搞定企业视频直播:硬件设备、直播网络环境和设备连接说明
  • 无延时/无延迟视频直播实例效果案例
  • OBS无延迟视频直播完整教程(组图)
  • 毫秒级超低延时直播产品实测(PRTC直播/webRTC直播)

视频加密与安全

  • 企业培训视频如何防止被下载和盗用?
  • 在线教育机构视频加密防下载和防盗用的方法有哪些可以借鉴
  • 上新:视频加密功能增加防录屏(随机水印)功能
  • 两种实现视频倍速播放的方法(视频播放器倍速1.5x/2x)
  • 教育培训机构教学课程内容视频加密是如何做的?

在线导播台

  • 在线导播台(网页导播台)混流效果
  • OBS Studio导播台多画面使用实测
  • 软件导播台多画面切换支持多人连麦实测(实测组图)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/505243.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

m3u8文件

#EXTM3U:m3u文件头,必须放在第一行,起标示作用; #EXT-X-VERSION:播放列表文件的兼容版本。若不存在此标记,则默认为协议的第一个版本; #EXT-X-MEDIA-SEQUENCE: 播放列表中的每个媒…

第1章计算机系统漫游之 “操作系统管理硬件“

7、操作系统管理硬件 回到 hello 程序的例子。当 shell 加载和运行 hello 程序时,当 hello 程序输出自己的消息时,程序没有直接访问键盘、显示器、磁盘或主存储器。取而代之的是,它们依靠操作系统提供的服务。 可以把操作系统看成是应用程序…

王琤:当数据治理遇上ChatGPT

以ChatGPT为代表的人工智能等技术正在“狂飙”,为全球带来一场翻天覆地的变革。4月27日在2023数据治理新实践峰会上,Datablau数语科技创始人&CEO王琤先生以《数据治理新实践与人工智能》为主题进行了分享,与参会同仁共同探索当数据治理遇…

APP开发的上线流程

APP的使用已经非常普及,对于企业来说通过APP可以加强和客户的沟通,展现最新的产品和服务。随着APP应用商店对用户隐私的重视,APP的上线规则比以前更加复杂,甚至出现APP需要反复修改数十次才能上架的问题,今天和大家分享…

移远通信参加2023中国移动5G发展大会 ,共探5G创新未来

5月6日,以“聚力5G创新,共铸百业绽放”为主题的中国移动5G发展大会在郑州国际会展中心召开。作为5G赋能千行百业的重要贡献者,移远通信应邀参加大会,并深度参与了大会的多个环节。 会上,中国移动系列创新成果发布&…

【Linux】Linux安装tomcat(图文解说详细版)

文章目录 1、安装前置条件2、下载所需压缩包,上传到服务器3、对资源进行解压4、给防火墙添加访问端口(默认8080,在它的/conf/server.xml文件里面查看)5、然后切换到bin目录下,启动(成功效果如图&#xff09…

批量任务导致页面卡死解决方案

需求背景 需要基于高德地图展示海量点位(大概几万个),点位样式要自定义(创建DOM),虽然使用了聚合点,但初始化时仍需要将几万个点位的DOM结构都创建出来。 这里补充一句,高德地图在2.…

为什么剑桥出身的“AI教父”辛顿会担心?

剑桥很有意思!在那儿呆过的人常常有这样一种感觉:剑,很锋利!桥,很温柔!剑桥的科技自不必说,牛顿、达尔文、麦克斯韦、爱丁顿......,剑桥的人文却也不让科技,拜伦、培根、…

使用asp.net core web api创建web后台,并连接和使用Sql Server数据库

前言:因为要写一个安卓端app,实现从服务器中获取电影数据,所以需要搭建服务端代码,之前学过C#,所以想用C#实现服务器段代码用于测试,本文使用C#语言,使用asp.net core web api组件搭建服务器端&…

【软考备战·希赛网每日一练】2023年5月9日

文章目录 一、今日成绩二、错题总结第一题三、知识查缺 题目及解析来源:2023年05月09日软件设计师每日一练 一、今日成绩 二、错题总结 第一题 解析: 有损、无损连接判断: (A1,A2)∩(A1,A3)A1 (A1,A2)-(A1,A3)A2 (A1,A3)-(A1,A2)A3 所以A1-&…

车载5G放量增长,哪些厂商抢跑

前装标配19.88万辆,同比上年同期增长724.89%,这是一季度中国市场乘用车5G搭载上车交付的成绩。高工智能汽车研究院监测数据显示,2022年全年5G交付搭载41.74万辆(不含选装),前装搭载率为2.09%。 这意味着&a…

【Linux】GDB多进程调试

目录 GDB多进程调试 GDB多进程调试 演示父子进程如何进行gdb调试会用到hello.c文件 hello.c文件内容如下&#xff1a; #include <stdio.h> #include <unistd.h>int main() {printf("begin\n");if(fork() > 0) {printf("我是父进程&#xff1…

Baumer工业相机堡盟工业相机如何使用BGAPI SDK进行两个万兆网相机的同步采集

Baumer工业相机堡盟工业相机如何使用BGAPI SDK进行两个万兆网相机的同步采集 Baumer工业相机Baumer工业相机图像数据转为Bitmap的技术背景Baumer同步异常 &#xff1a;客户使用两个Baumer万兆网相机进行同步采集发现FrameID相同&#xff0c;但是图像不同步细节原因解决办法 Bau…

Windows下python中的pip换源

在Windows中更换pip数据源方法&#xff0c;提高Python相关包安装效率 1.在windows环境下&#xff0c;打开我的电脑&#xff0c;在"地址栏"输杰沫入: %APPDATA% 后回车 2.在打开的文件夹中新建 pip 文件夹&#xff08;打开的地址为下图所示&#xff09; 3.进入pip文…

在 Python 中将泊松分布拟合到不同的数据集

文章目录 在 Python 中将泊松分布拟合到不同的数据集在 Python 中拟合泊松分布的分箱最小二乘法程序的导入函数为泊松分布创建一个虚拟数据集并使用该数据集绘制直方图使用曲线拟合将曲线拟合到直方图 使用负二项式拟合过度分散的数据集上的泊松分布创建数据集使用数据集绘制直…

JAVA算法(一)查找算法

一、基本查找 / 顺序查找 核心&#xff1a;从0索引开始挨个往后查找 private static boolean basicSearch(int[] arr, int number) {for (int i 0; i < arr.length; i) {if (arr[i] number) {return true;}}return false;}二、二分查找 / 折半查找 前提&#xff1a;数组…

(四) 打造更加智能的即时通信系统——实现主界面消息和联系人切换效果

文章目录 一、引言二、界面设计的基本要求2.1 界面美观简洁2.2 功能合理布局 三、界面布局和控件设计四、效果展示五、关键代码六、个人经验分享6.1 即时通信系统开发中的经验和总结6.2 遇到的问题和解决方案6.3优化即时通信系统 七、总结 一、引言 当今社会&#xff0c;人们对…

解决 scalac: bad option: ‘-make:transitive‘

scalac: bad option: ‘-make:transitive’ 打开项目所在位置并进入 .idea 修改scala_compiler.xml文件 删除掉参数行包含-make:transitive 保存后 重新运行代码

Linux驱动开发笔记(二):ubuntu系统从源码编译安装gcc7.3.0编译器

若该文为原创文章&#xff0c;转载请注明原文出处 本文章博客地址&#xff1a;https://hpzwl.blog.csdn.net/article/details/130533941 红胖子网络科技博文大全&#xff1a;开发技术集合&#xff08;包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬…

uniapp云打包

1. 生成本地打包资源 2. 下载Android Studio和App离线SDK 导航路径&#xff1a;https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android 下载的Android 离线SDK与本地开发工具版本对应 3. 解压得到的目录如下 4. 使用Android Studio打开Android 离线SDK解压目录里面这个…