首页 > 代码库 > 第三十二篇、直播项目开发

第三十二篇、直播项目开发

1.直播app分类:主要分为两大类

  >秀场直播 如:映客 花椒

  >游戏直播 如:斗鱼

 

2.iOS主要实现的技术

  >播放:播放远程服务器收集到的视频

  >录播:主播通过手机直播,客户端需要将直播实时视频传输给服务器,以边其它手机客户端播放

  >即时通讯:观众和主播互动的礼物,聊天及时呈现   >弹幕

  >整体界面的搭建和展示

 

3.技术分析

  数据-->解协议-->封装格式数据-->解封装-->音频压缩数据-->音频解码-->音频的原始数据-->视音频同步-->音频驱动/设备

                      -->视频压缩数据-->视频解码-->视频的原始数据-->视音频同步-->视频驱动/设备

  说明:

    >解协议:远程服务器通过某种协议将数据传递给我们客户端,客户端需要通过解协议拿到数据

    >解封装:服务器传递给我们的数据是视频文件&音频文件一起的压缩文件,需要通过解封装,将视频文件和音频文件分离,单独解析

    >音频&视频解码:对分离出来的视频文件&音频文件进行解码,拿到原始的数据

    >音视频同步:将音视频文件进行同步,并且传输给声卡显卡进行播放

 

4.项目选择

  秀场直播界面一般相对比较简单

  游戏直播一般都包含秀场直播

 

5.项目部署GIT

  添加gitignore文件,忽略不必要的提交的文件(如什么设置)

 

6.获取app icon资源 

  gitHub上 cartool工具:解压.car文件获取到图片资源

 

第三十二篇、直播项目开发