音视频技术原理

 1 E币 
成为会员,免费下载资料
文件大小:12.98 KB 上传者:A-小鲸鱼 时间:2020-02-13 14:35:13 下载量:7

1. 播放器的数据处理流程




2. 封装格式


按照一定的格式,把音视频流和描述数据, 存储到文件中




3. 编码格式:


音频编码: G.711, G722, G726, AAC,MP1/MP2/MP3, AC-3, WMA...


视频编码: h265/H264/H263,MPEG1/2/3/4, WMV, MJPEG, VP8/VP9...


4. 视频编码原理


经典的IPB压缩:


Iframes: 节点图像, 保存一帧完整图像压缩后的数据,


                  编解码不涉及自己以外的任何图像


Pframes: 预测图像: 仅保存当前帧与前一帧的差值信息,


                  解码依赖于前一帧数据


Bframes: 前后预测图像: 保存当前帧与前一帧和后一帧的差值信息, 可双向单帧逐步播放




5. 视频编码原理


以H264为例






6. 图像群组(GOP)


图像群组就是一组连续的图像, GOP总是以I frame为起始点,


后面有若干P frame和Bframe, 下一个I frame则是新的GOP起点



7. 硬件编解码



硬件编解码是图形芯片厂家提出的用GPU资源解码视频流的方案


(软解是用CPU承担解码工作)


优点是编解码效率高,功耗低、热功耗低,缺点存在局限性,设置较为复杂, 一般需要使用图形芯片厂商提供的驱动和sdk程序


为什么GPU编解码速度快于CPU?


•CPU 主要为串行指令而优化,而GPU 则是为大规模的并行运算而优化

•从并行的角度来看,现代的多核CPU 针对的是指令集并行(ILP)和任务并行(TLP),而GPU 则是数据并行(DLP)

•在同样面积的芯片之上,CPU 更多的放置了多级缓存(L1/L2/LLC)和指令并行相关的控制部件(乱序执行,分支预测等等),而 GPU 上则更多的是运算单元(整数、浮点的乘加单元,特殊运算单元等等)

•GPU 往往拥有更大带宽的Memory,也就是显存,因此在大吞吐量的应用中也会有很好的性能


8. 音视频协议



HLS,RTSP/RTP/RTCP,H323,SIP, RTMP...


9. 开源框架


vlc, ffmpeg, gstreamer, directshow,live555, webRTC...

————————————————

版权声明:本文为CSDN博主「松鼠板栗」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/allen8612433/article/details/80328876


展开
折叠
433
1152
评论
共 0 个
内容存在敏感词
    易百纳技术社区暂无数据
相关资料
关于作者
易百纳技术社区
A-小鲸鱼
贡献资料 1241
易百纳技术社区 我上传的资料
登录查看
我赚取的积分
登录查看
我赚取的收益
登录查看
上传资料 赚取积分兑换E币
易百纳技术社区
删除原因
广告/SPAM
恶意灌水
违规内容
文不对题
重复发帖
置顶时间设置
结束时间
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-资料模块

审核失败

失败原因
备注
易百纳技术社区