美文网首页
Android 直播专题1-直播流程原理

Android 直播专题1-直播流程原理

作者: 浪人残风 | 来源:发表于2021-03-26 17:28 被阅读0次

    前言

    当前app最火的几个技术专题无非就是直播、手游、跨平台,只要精通其中任何一个,那工资都是爽的不要不要的,很多人想学苦于无法入门,这里就带大家来了解下直播技术。
    直播难,难在专业技术点多,专业概念也多,涉及到音视频压缩算法处理、CDN分发、即时通讯等,单个技能就够你学个好几年了。怎样快速搭建一个直播呢?当然是站在大神的肩膀上!

    效果图

    IMG_3797.PNG

    完整的直播功能

    根据效果图猜猜产品设计的功能:

    聊天

    • 聊天、表情、弹幕、排行榜、贵宾榜、房间增删查改切换、黑名单等

    送礼

    • 普通礼、豪华礼、普通🐯粮、特权、包裹、充值、提现等

    直播

    • 录制、美颜、推流、解码、实时播放、历史播放、转播、禁播、超管、鉴黄等

    个人

    • 登录、注册、搜索、关注、粉丝、收入等

    平台

    • 个人统计、主播统计、收入统计、业务埋点等

    完整直播app流程

    图片.png

    1.音视频采集

    从设备(手机)的摄像头、MIC中采集音频、视频的原始数据

    2.前置处理

    • 对视频添加美颜、水印、滤镜等
    • 对音频进行混音、消除环境音、声音特效等

    3.音视频编码

    原始的音视频数据是很大的,需要进行压缩编码,方便快速传输。
    常用的编码类型有:

    • 视频编码:H.264、H.265、VP8、VP9
    • 音频编码:aac、Opus、mp3

    编码方式又分为软编码、硬编码

    • 软编码: 使用CPU进行编码
    • 硬编码: 不使用CPU进行编码,使用显卡(GPU)进行硬件加速,专用的DSP、FPGA、ASIC芯片等硬件进行编码

    4.推流

    将编码好的音视频根据流媒体协议格式封装数据,推送到流媒体服务器。
    常用的流媒体协议有:
    RTMP、RTSP、HLS、RTP/RTCP、FLV

    5.流媒体服务器

    接收到音视频流,服务器处理步骤:

    • 鉴黄处理
    • 截屏
    • 录制保存
    • 实时转码,常用的格式为RTMP、RTSP、HLS、FLV,方便iOS、Android、pc等根据自身情况拉取各自符合格式的流
    • CDN缓存分发

    常用的流媒体服务器有:
    nginx、SRS、BMS

    6.拉流

    各个客户端根据自身情况拉取流媒体服务器转码的音视频流

    7.音视频解码

    拉取下来的流都是经过第3步编码后的,需求根据编码协议进行解码才能播放

    8.播放

    各端根据原生提供的API进行音视频播放

    iOS直播技术

    图片.png

    如果觉得可以就点个👍吧,欢迎粉丝收藏,土豪打赏,您的关注就是我们创作的动力!

    读者有什么想看的相关技术篇章,欢迎评论留言!

    QQ交流群:908058499

    上一篇:无 目录 下一篇:iOS 直播专题2-音视频采集

    相关文章

      网友评论

          本文标题:Android 直播专题1-直播流程原理

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