美文网首页
【入门】视频直播概览

【入门】视频直播概览

作者: 24c41111e47b | 来源:发表于2021-07-01 17:21 被阅读0次

开发环境:CentOS7, nginx, docker
想入门直播行业,学习直播技术,创业做直播公司,需要哪些技术栈,需要做哪些事情,本文做一个框架整理,帮助大家学习探索.


什么是视频直播

视频直播是指用户进行远距离画面互动,实时性更高,互动性更强,同时对技术和内容审核要求性也较高.
视频直播服务是基于领先的内容接入与分发网络和大规模分布式实时转码技术打造的音视频直播平台,提供便捷接入、高清流畅、低延迟、高并发的音视频直播服务.

基础概念

推流:主播端使用手机摄像头采集画面,然后进行编码压缩,采用高效的网络协议进行传送数据到流媒体服务中心.
流媒体服务中心: 负责视频内容接入,转码/封装/录制/截图,分发等功能.
内容审核:基于流媒体服务的内容做政治/鉴黄等审核,一般包括人工审核,机器审核两类.
拉流:观众端使用特定的网络协议拉取流媒体服务中心内容,进行解码/渲染.
音视频技术:音视频处理技术 + 网络传输技术(详情见 即时通讯音视频开发

编码/解码解决内容传输过大,进行压缩处理;
转码解决视频清晰度,高清/低清,进行视频分辨率/码率转换
封装将转码后的视频封装成MP4,FLV等格式

封装格式与编码具有紧密的联系,但是一个格式却可以有不同的编码。编码和素材的质量、空间、占地大小与功能有很大的关系。所以在输出视频时,除了要选择输出的格式还要选择相应的编码才行

流媒体系统搭建

流媒体系统搭建有两种方式,自研搭建,使用三方服务快速集成,目前市面上的服务出色的有:即构,阿里云视频直播,声网。他们都提供一整套快速解决方案,从主播采集推流到流媒体服务,到播放器拉流,滤镜,连麦应有尽有,如果快速搭建业务可以根据自己的需要从三方服务中选择一家合作。
这里我们学习讨论,选择自研搭建方式

这里我们推荐使用srs搭建,原因是网络传输协议:

  • rtmp/HTTP-FLV 协议: 基于TCP的协议,因为TCP协议自身特性(ACK确认机制重传慢,拥塞判断不准确,灵活性差),所以不适合低延迟场景;
  • HLS协议:编解码,网络,CDN均产生延迟,一般延迟10秒以上;
  • WebRTC: 底层基于RTCP实现,目前除了自研外比较好的实时传输协议,可以做到100-300毫秒的延迟,也是推荐的音视频传输方案,当然也有缺点,这里不讨论;

RTP/RTCP: RTP负责传送数据,RTCP负责控制信令传输;
TCP负责数据和控制信令,可靠;
UDP只负责数据传输无控制信令,不可靠;
RTP/RTCP将控制信令和数据信息分开传输,所以快,且可靠;

内容审核

由于政策法律风险,所以直播视频内容,音视频内容需要做内容审核,目前技术发展快速,可以使用AI自动审核,审核原理:视频截图进行图像识别,音频转文字,进行关键字命中;也可以进行人工审核;
目前市场上的内容审核三方服务有:

  • 数美
  • 网易同盾
  • 百度
  • 腾讯
  • 阿里
    可以根据需要,进行选择,这里推荐数美

备注:流媒体服务部署中遇到一个坑,推流一直报防火墙问题,关闭了服务器防火墙还是有问题,后来发现问题出在了阿里云的外层防火墙,建议阿里云的防火墙设置不要在服务器上直接操作,请去阿里云控制台进行设置添加规则

参考:
SRS官方文档和学习路径

相关文章

  • 【入门】视频直播概览

    开发环境:CentOS7, nginx, docker想入门直播行业,学习直播技术,创业做直播公司,需要哪些技术栈...

  • Live-client-1-UI界面的设计

    在项目概览时,已经提及到客户端有如下功能:登录、注册、开始直播、观看直播、查看直播记录、查看本地视频等。项目的UI...

  • iOS RTMP视频直播入门

    要问2016年什么最火,当然是视频直播呀.据不完全统计,直播的app超过150个.有些的直接套用第三方SDK,有些...

  • SRS 视频直播开发入门

    不管是线上教育, 远程会议, 智慧医疗等各行各业都可能有直播的需要, 今天简单介绍下如何快速体验自己搭建的视频直播...

  • Adobe Premiere视频添加水印图片教程,小白一看就会!

    最近在录制《微信小程序开发3天快速入门》和《微信小程序直播开发快速入门》的视频课程,就突发奇想:能否给视频加上标识...

  • javacv实现直播流

    javacv实现直播流 javacv从入门到入土系列,音视频入门有一点门槛的延迟大概是2~4秒之间, 依赖 视频采...

  • 【直播技术概览】

    直播技术概况来说,可以分为 采集,前处理,编码,传输,解码,渲染 这几个环节 分步解析 音视频采集 音视频的采集是...

  • 感觉跟直播挂钩的都挺火的,就开发了一款直播系统,感觉功能也挺全面

    随着国内网络视频直播行业的健康稳定发展,直播平台搭建的准入门槛也变得较低。很多人都会选择通过直播系统源码来快速实现...

  • maven入门概览

    1. 什么是maven? 意第绪语,意为知识的积累。maven主要有两重身份:构建工具、依赖管理工具。同类工具有...

  • Cocoapods入门概览

    对于一个项目从生产力的角度来说,我们都不能保证自己写的每一行代码是否在某种程度上重复的造"轮子".换言之对于通用的...

网友评论

      本文标题:【入门】视频直播概览

      本文链接:https://www.haomeiwen.com/subject/qbnjultx.html