美文网首页
直播技术--概念篇

直播技术--概念篇

作者: d8893ea8ba05 | 来源:发表于2019-10-09 16:10 被阅读0次

推流端:主播使用的终端

  • 通过摄像头进行视频采集,通常为YUV编码格式
  • 通过话筒进行音频采集,通常为PCM编码格式
  • 将视频数据从YUV编码为H264或H265
  • 将音频数据从PCM编码为AAC
  • 将视频与音频数据一起编码为多媒体容器格式,如H264与AAC组合编码为FLV或TS或RTMP Packet,根据传输协议来定
  • 通过某种协议将数据推送到目标地址:
    • 应用层协议:HLS、RTSP、RTMP
    • 传输层协议:RTCP、RTP
    • 网络层协议:RSVP

服务端

待学习

拉流端:用户终端

  • 通过某种协议从目标地址拉取数据,同上
  • 将多媒体容器格式的数据解复用为视频编码格式的视频数据如H264和音频编码格式的音频数据如AAC
  • 使用硬解码(GPU解码+CPU辅助)或软解码(CPU解码)将H264视频数据和AAC音频数据解码为YUV和PCM数据
  • 执行音话同步操作
  • 将同步后的YUV数据传输给视频播放设备;将同步后的AAC音频数据传输给音频播放设备

相关协议

  • HLS
    苹果提出的基于HTTP的流媒体网络传输协议
  • RTSP
    流媒体协议;一般是ts或mp4格式,一般在2-3个通道上传输命令和数据
  • RTMP
    流媒体协议;一般是flv或f4v格式,一般在一个通道上传输命令和数据
  • RTP
    RTP标准定义了两个协议:RTP(数据传输协议)和RTCP(控制协议)

多媒体容器格式

一般情况下,用户不会直接拥有单独的视频和音频文件,而是同时包含两种数据的多媒体容器格式的文件,通过解复用剥离出视频和音频数据,传输给对应的硬件

  • 多媒体容器格式:MPEG-4、AVI、FLV、TS、MKV、RMVB
  • 解复用后的视频编码格式:H264(国际电联的命名)/AVC(ISO的命名)(这俩机构联合开发的,但是各自命了名,蛋疼)、MPEG2 Part2、MPEG2 Part4
  • 解复用后的音频编码格式:AAC、MP3、FLAC、APE、WAVEPACK
  • YUV:视频采集芯片直接输出的视频编码格式
  • PCM:音频采集芯片直接输出的音频编码格式

编码格式

编码格式本身是一种压缩标准,而制作这个标准的机构主要有两个

  • ITU-T:主要制定了H.261/H263/H263+/H263++等标准
  • ISO:主要制定了MPEG-1/MPEG-4等
    为了统一,目前比较通用的是双方共同制作的MPEG-2、H.264/AVC和H.265/HEVC等协议(各自命了名,但其实是同一个协议)
  • MPEG-1:最早的音视频压缩标准,被VCD标准采用,其中的Part3(Audio)中的Layer3,就是我们平常说的mp3,但有时候也可能是MPEG-2 Audio Layer Ⅲ
  • MPEG-2:Part2被DVD标注采用
  • MPEG-4:Part4就是常说的mp4,其中的Part10就是由ITU-T和ISO共同制定的H264/AVC编码格式

相关文章

网友评论

      本文标题:直播技术--概念篇

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