美文网首页
第二课 音视频编码的原理

第二课 音视频编码的原理

作者: XX杰 | 来源:发表于2022-09-29 16:48 被阅读0次

为何大多数视频采用 H264 编码

  •  因为免费,没有专利费用,而 H265 VP9 需要专利费用。(8K电影 是 H265 和 VP9 的)
    

注意:

  •  无论是 H264 还是 H265 VP9 都是基于 宏块 的方式进行编码, 原理都是一样的, 但是 实现的算法不一样
    

何为 宏块 的编码?
个人理解 : 将视频的每一帧 进行分块,

  • 1、H264 默认使用 16 X16 的大小区域 作为一个 块,将一帧 分成多个视频 块 (也有8X8 16X8 的)
    如果这一帧 的 图片 颜色有不同的边界,就会划分成 8X8 的,这样分的 更细节一些
  • 2、如果划分成 16 X16 的块。他并不会保存 所有 256 个像素,而是记录 顶部 16 个 和左侧 16个像素在减去左上角的点的记录了2次的像素一共 31 个, 同时也会记录颜色渐变的方向 。在通过颜色渐变的 把 16 X16 给填满。
  • 3、

1、android 中的解码

软解码

 通过 集成 ffmpeg 。对视频进行解码,属于软解码,依赖CPU的计算,内存、CPU占用高,高清视频容易卡顿。
 但是不依赖于视频的格式。

硬解码

由显卡核心GPU来对高清视频进行解码工作,CPU占用率很低,画质效果比软解码略差一点,需要对播放器进行设置。 (一般使用 DSP 的 芯片 进行 解码,同时他也做 编码 的工作)
在 Android 中 使用 MediaCodec 进行的是 硬解码

下图展示的 是 DSP 的 编解码 控制过程


screenshot_2022_09_30_15_51_41.png

其中的 视频信源编码器 就是将 视频帧 实现 块结构
其中 传输缓冲器 还起到一个 校验 的作用,是否符合规则,

2、视频信源编码器

screenshot_2022_09_30_16_09_29.png

上图是视频信源编码器 的流程图

  • a、图像输入的时候会先 判断 是 帧内 还是 帧间。其中所有的视频的第一帧都是 帧内 的方式, 属于关键帧
    当视频场景切换的时候,还会出现 一个 关键帧
  • b、量化器做的工作是 每一帧的块 运动的方向 视频在改变,其实是 每一帧的块 在改变或者在运动
  • c、环路滤波器,就是把高频的过滤掉, 因为人眼也就只能分辨 60Hz

相关文章

  • 音视频-H264编码

    H264编码原理和音视频-AAC编码[https://www.jianshu.com/p/fa4c58424be4...

  • 2019-08-08

    音视频编码

  • MediaCodec硬编码pcm2aac

    MediaCodec是Android(api>=16)提供的一个多媒体硬解编码库,能实现音视频的编解码。 工作原理...

  • android音视频开发之编码封装

    音视频编码 为何要对音视频进行编码? 音视频的原始数据非常庞大,难以存储和传输。要解决音视频数据的存储和传输问题,...

  • 研究Android音视频-3-在Android设备上采集音视频并

    本文解决的问题 本文主要使用MediaCodec硬编码器对Android设备采集的音视频编码 封装音视频基础编码器...

  • 音视频学习(一)-- 基础知识准备

    本章知识点一览: 视频播放原理视频文件封装格式音视频编码方式简介 一、视频播放器原理: 我们播放的视频文件一般都是...

  • # 音视频学习从零到整--(2)

    音视频学习从零到整(1)音视频学习从零到整(2)音视频学习从零到整(3) 音频编码 一.为什么要做音频编码? 之前...

  • NALU格式

    音视频编码在流媒体和网络领域占有重要地位;流媒体编解码流程大致如下图所示: x264原理解析 参考链接: x264...

  • 音视频处理

    音视频编码 AudioTrack播放 视频编码 OpenGL 绘制 视频编辑转码 视频滤镜 牟仯 FFmpeg4A...

  • 零基础学习音视频

    **零基础学习音视频-----编码篇(VideoToolBox)** 现在音视频如此火爆,作为一枚专业的程序媛哪能...

网友评论

      本文标题:第二课 音视频编码的原理

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