文学起点网
当前位置: 首页 文学百科

视频号推流软件(obs推流直播的好处)

时间:2023-06-12 作者: 小编 阅读量: 3 栏目名: 文学百科

对图像的水平线条和竖直线条敏感,对斜线相对不敏感。对整体结构敏感,对内部细节相对不敏感。因此,包含在色度信号、运动图像、图像高频信号中的一些数据,相对于人眼而言,并不能对增加图像的清晰度作出贡献,被人眼视为多余的,这就是视觉冗余。也就是说视觉冗余就是排除掉人类视觉不敏感的地方,达到压缩的目的。推流推流协议的话其实就两个,基于tcp的rtmp和udp的webRTC和私有协议rtmp是adobe的私有协议,已经不再维护,推流需要封装成flv。

原理

基本步骤为:采集–压缩编码–封装–推流–分发–流媒体协议观看

采集

我们知道计算机都是只认识二进制的,所以对于视频采集,其实就是把实际看到的东西转为二进制的格式,采集就是转为二进制流的过程。

这部分其实实际测试中关注的是比较少的,因为客户端针对的都是采集好的原始视频或音频流做处理,这里要知道采集成的格式视频是YUV,音频是PCM。

YUV来说,其中“Y”表示明亮度(Luminance或Luma),也就是灰阶值;而“U”和“V” 表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。

处理

处理的过程主要是美颜和滤镜了,重点说说美颜,美颜有两步,一个是磨皮,一个是美白,要想正确美颜,所以还需要加上人脸识别技术和皮肤识别技术。

这里要说说题外话,美颜在压缩编码前处理可以说是最自然的,缺点也有,不能修改。所以也有一种是通过播放器渲染”美颜”。效果嘛,呵呵。可惜的是我们项目美颜滤镜就是这样做的,个人还是不敢苟同的,这样做缺点非常明显,画质不忍直视,还要十分拖累帧数,优点嘛,修改和实现非常简单,成本也低

在针对原始流的处理,除了滤镜美颜外,还可以自定义打logo,修改画面内容。

压缩编码

首先,要知道的是,一个视频是由一个个画面组成的,多个画面连续运动便构成了动画,也就是视频,一个个画面我们称为帧(笔者想起小时候玩的小玩具,一个小本本,里面有很多相似的图画,然后像翻书那样快速翻过,形成了动画)。

原始视频流是很大的,需要压缩,那么最简单的办法就是”推测”,根据前一帧推测后一帧后者几帧,那么就不用存储这么多数据了。

所以压缩编码就是把采集到的数据分成有关联的一帧帧,那么N个帧合在一起就是一个组,我们叫GOP(group of picture)。这个组里面的帧,我们划分成I/B/P帧,我们把I帧叫做关键帧,B/P帧叫做参考帧,其中B叫双向参考帧,P叫向前参考帧,没有I帧B/P帧也没法播放,因为B/P帧是参考I帧的变化而成的。

压缩编码到底怎么压缩的?

压缩编码的作用是去掉冗余信息,主要有以下几个方向,当然冗余不止这几个哈:

空间冗余

时间冗余

视觉冗余

编码冗余

空间冗余:

比如下面这幅笔者正在用的壁纸,可以发现有的颜色区域非常类似甚至一样,这样这些重复的区域就是空间冗余了,空间冗余是属于帧内压缩的,是指在一个图像内的压缩。

时间冗余:

根据时间关系产生的冗余,根据前一帧和变化量可以推测出后一帧的冗余,比如下面的图(网上搜的一幅图),动作是比较规律的,不同的只是变化(可以想成开发中动画的定义,先定义一个图像,然后调用api让它旋转、放大、移动和透明),那么这就是时间冗余。

视觉冗余:

这个百度百科挺详细的,我摘取一段下来:

在多媒体技术的应用领域中,人的眼睛是图像信息的接收端。视觉冗余是相对于人眼的视觉特性而言的,人类的视觉系统并不能对图像画面的任何变化都能感觉到,通常情况下具有以下特点:

对亮度的变化敏感,对色度的变化相对不敏感。

对静止图像敏感,对运动图像相对不敏感。

对图像的水平线条和竖直线条敏感,对斜线相对不敏感。

对整体结构敏感,对内部细节相对不敏感。

对低频信号敏感,对高频信号相对不敏感(如:对边沿或者突变附近的细节不敏感)。

……

因此,包含在色度信号、运动图像、图像高频信号中的一些数据,相对于人眼而言,并不能对增加图像的清晰度作出贡献,被人眼视为多余的,这就是视觉冗余。

也就是说视觉冗余就是排除掉人类视觉不敏感的地方,达到压缩的目的。

但是,你不排除有的人就是对这些细节很在意啊,比如每次测试不出来的东西,一发到外网,总有人反馈,一看,颜色不对啦,多了一根线啦,真是折磨人呢!

编码冗余:

因为不同编码方式或者不同的图片压缩后产生的二进制长度是不一致的,指在编码过程中每个像素使用的比特位大于实际的信息熵(其实就是计划和实际不匹配产生的余量咯),那么就产生了冗余,这和图像和编码方式有区别的,编码冗余也叫信息熵冗余。

关系?

还是有关系的,GOP分组,I帧是关键帧,是空间冗余,B/P帧是参考帧,是时间冗余,然后继续编码,去除视觉冗余和编码冗余等,最后这一过程就完成了。

常用编码格式

这里需要对比一下常用的编码标准了,深入的原理不会涉及(不是算法层了,接触太多反而没必要),但是你要知道优缺点呢!

那么综上,目前项目的编码格式定位最主流的h.264 + aac的编码方案,主要是为了:

移动端要考虑兼容性,硬解一般都支持h.264

要考虑性能,h.265资源消耗比较大,而且为了体验良好需要快速编码并保存资源

封装

然后到封装了,封装其实就是打包啊,压缩编码后h.264和aac,要怎么结合在一起呢,就是封装呀,举个例子,一个酱油瓶,里面装的酱油,酱油就是压缩编码后的成品,装到瓶子里就是封装,然后打上”cloudhuan牌酱油”,就是打上meatadata信息。封装除了是包装外,还可以打上时间戳,避免音画不同步呢。

推流

推流协议的话其实就两个,基于tcp的rtmp和udp的webRTC和私有协议

rtmp是adobe的私有协议,已经不再维护,推流需要封装成flv。

优点:主流,cdn都支持,用的最多,实现简单,创业公司用这个成本最低

缺点:基于tcp的,tcp有超时重传的机制,意味着弱网下,稳定性可能会出问题

webRTC视频会议用得比较多,google出品(对,又是google,一个伟大的公司)

优点:开源的,基于udp意味着直播的时候可以对弱网指定一些丢包策略。

缺点:cdn支持不良

基于udp的私有协议,大公司一般会自己实现了,缺点同样是cdn支持不好,然后要有一定技术才能去开发。

接收流媒体

流媒体协议用的最多了就三个,一般都是支持的:

rtmp和http-flv:

都是flv的格式,延迟都是2~4s,实时性都差不多,却别在于http是存储flv在客户端的,而rtmp是存储在服务器端的,都不支持web播放

hls:

唯一一个支持h5播放的流媒体协议,延迟4~10s,格式是ts + m3u8,观看的时候先把一组.ts视频下载,然后通过m3u8的索引去观看,因为要先下载一段(N个ts文件+一个m3u8文件),所以延迟和段数有关,实时性不会太好。

总结

最后复习一下

原理流程:

采集–>处理–>压缩编码–>封装–>推流–>分发–>流媒体观看

h264和h265比较、rtmp、http-flv、hls的异同点、帧内压缩和帧间压缩以及GOP的概念

    推荐阅读
  • 拉布拉多怎么看纯不纯(如何看拉布拉多品相)

    最简单的办法,看毛色,拉布拉多只有三种颜色:黄色、黑色和棕色,纯色,不会有其他颜色,黑色的拉布拉多注意一下,胸前不能有大片白色,少量几根白毛是允许的,接下来我们就来聊聊关于拉布拉多怎么看纯不纯?拉布拉多还有个特征就是尾巴,俗称水獭尾巴,就是一条粗粗的直直的尾巴,一般向下,很少有向上扬起,更不能卷起来。拉布拉多耳朵比较大,拉起来可以遮住狗的眼睛,向下耷拉,耳朵不能竖起来。

  • jdm 车型推荐(美国人为啥喜欢日系车)

    本以为Supra的美国之旅即将在此终结时,事情迎来了转机。有着EK打下的基础,2017年发售的FK8TypeR更是炙手可热,以3.5万美元限量发售的它瞬间被抢购一空。值得一提的是,S2000也是迄今为止唯一一台后驱的红头发动机车型。为纪念这段不平凡的岁月,塞纳加入了本田的设计团队并参与了NSX的测试工作。此后,本田更是赠送了两辆NSX给他作为纪念。据统计,老款NSX在它15年的生命中仅生产了1.8万多辆,而其中有一半以上都是被美国人买走的。

  • word怎么自动编号(方法简单易懂)

    接下来我们就一起去了解一下吧!word怎么自动编号首先打开计算机,打开Word将各级标题设置成对应的标题格式。然后,点击菜单栏的多级列表,选择定义新的多级列表。点击确定之后,标题的标号就成功了,正文的各级标题都已经编号了,这时增加标题或删减标题,各级标题的编号都会自动随之变化。

  • 赛博朋克2077插件代码有哪些(赛博朋克2077插件怎么使用)

    赛博朋克2077插件代码有哪些?插件代码不少,但是真正好用的却不是很多,下面小编就带来赛博朋克2077插件代码分享,一起来看看吧。

  • 气缸缓冲怎么调节(一般都会用这种方法)

    下面更多详细答案一起来看看吧!气缸缓冲怎么调节首先将速度控制阀的开度放在调整范围内的中间位置。随后逐渐调节减压阀的输出压力,当气缸接近预定速度时,即可确定工作压力。然后用速度控制阀进行微调,最后调节气缸的缓冲,调节缓冲针阀使活塞的惯性得到吸收,其最终速度又不致撞击缸盖为宜,榛锐机电供应气缸。

  • 跑步机皮带异响处理方法(怎么解决跑步机皮带异响)

    跑步机皮带异响处理方法跑带声音和跑步声,处理方法:当在跑步机上面运动时有“刷刷”的声音,是因为跑带和跑板没有完全磨合,使用一段时间后声音会减轻。如跑板有“吱嘎”的声音,则是跑板固定螺丝松动,处理方法:将跑板最末端银白色塑料套取下,再将跑板边上塑料条往后抽出,能看到跑板表面固定螺丝,然后用M6六角扳手固定或将跑板下面螺丝固定好。如电机有异晌则需更换电机。

  • 易建联个人资料简介(易建联个人介绍)

    2010年6月30日,转会至华盛顿奇才队。2011年10月8日,易建联重回CBA为广东东莞银行队效力。2015年10月3日,易建联等人带领的中国男篮在2015年男篮亚锦赛上夺冠,并获得里约奥运会比赛资格。2015年,获得中国十佳运动员称号。2017年12月5日,易建联选评为“全球杰青”。2019年2月15日,易建联正式成为CBA历史篮板王。2019年3月15日,易建联成为CBA首位最佳防守球员。2019年5月3日,易建联随广东队夺得2018-19赛季CBA总冠军并荣膺总决赛MVP。

  • 国内翡翠原石产地(翡翠的介绍)

    国内翡翠原石产地国内翡翠原石产地为新疆和田地区策勒县。翡翠的原产地很少,在世界上只有美国、日本、俄罗斯、危地马拉、缅甸、中国等几个国家,中国新疆和田地区策勒县出产少量翡翠矿石,而缅甸是翡翠产量最高、品质最好的国家。翡翠的正确定义是以硬玉矿物为主的辉石类矿物组成的纤维状集合体,是在地质作用下形成的。市场上商业品级的翡翠玉石95%以上来自缅甸,缅甸是世界翡翠出产最丰富的国家,且以玉石优质闻名。

  • 这三本小说真是值得一看(这些小说真的太冷门了)

    为了响应冷空气的号召,榜哥决定再添股风,专门为各位小伙伴准备了五本过冬必备的冷门小说。其实关于《新宋》这本书,能说的东西有很多,甚至单独做一期节目也是绰绰有余。作为一本穿越小说,《新宋》的主体却不单单只是穿越,更近似是一部关于宋朝的大百科全书。新宋值得称赞的地方太多太多,而我只想说一句,新宋是一本成功的历史小说。这,便是你们不容错过的理由好了,我是榜哥,网络小说排行榜,关注转发不书荒。

  • 冬天洗澡的水温多少度合适(冬天洗澡水温多少度最好)

    冬天如果要洗澡的话,建议将水温控制在40摄氏度左右最好。因为这个温度只高出体表几度,肤感会比较的舒适。并且这个水温洗澡还能够起到较好的去垢止痒、舒筋活血、发汗镇痛的作用。但如果觉得水温冷的话可以稍稍调高几度,但注意水温不能过高,不然就会对身体造成不好的影响。并且水温过高还会使得体表的油脂被过度冲掉,这样就是使得皮肤出现干燥缺水的情况。