ffmpeg 基础知识

  • (stream):通常的视频文件中最易见的是视频流与音频流两个流。部分视频文件(多为 mkv 文件)还有字幕流,即内挂字幕。注意,有的视频将字幕嵌入到了视频流中(内嵌字幕),这类视频没有字幕流,也无法提取出字幕文件。

    • 码率/比特率(bitrate):衡量流的数据量的标准。高码率的视频、音频携带了比低码率更多的数据,在压制时(允许的)损失较小,因此它们的质量一般更高。例如,128 kbps 的 MP3 音频的听感效果一般比 64 kbps 的好。

    • 分流/混流(mux/demux):将多个流从一个视频文件中对应地抽取出来,称为分流。反之,将多个流整理后写入某个文件,称为混流。

    • 容器(container):可以粗略地理解为某种扩展名类型的视频文件。比如 MP4 是一种容器,MKV 是另一种容器。

  • 编码/解码(encode/decode):将流用某种格式或规范记录下来并存储,称为编码;将编码后的流,根据格式或规范来逆向实现编码的过程,从而将流还原出来,称为解码。我们最经常听到的规范大概是 H.264,最常见到的编码器可能是 libx264。

  • 色深位(bit):该概念与图片中颜色分级的位概念一致。在很长一段时间内,最广泛使用的颜色分级会把纯黑到纯白的灰阶分成 256 级,因此叫 8 位(因为 28=256)色深。8 bit 的视频也是最广为使用的。

  • 色度采样(chroma sampling):视频在录制或编码时,我们常逐个记录像素的明度、而采样式地(非逐个)记录像素的色度,以此减小视频大小。这种方式称为 YCrCb,其中 Y 表示明度,Cr 与 Cb 用于记录色度(红色与蓝色的偏移量)。

    色度采样方式常常使用 x:y:z 的方式来表示,如 4:2:0。这种记法表示在 4 个像素宽、2像素高的区域中,每行对 x 个像素进行亮度采样。x 通常是 4,也就是全像素亮度记录。而 y 与 z 分别代表第一行与第二行的采样数。例如,4:2:2 表示在两行中均只对 2 个像素采样色度(剩余像素的色度由采样速度推断),因此实际只使用了这 8 个像素中 4 个像素的色度信息,即丢失了 50% 的色度。同理,4:2:0 在第一行对 2 像素色度采样、不在第二行色度采样,因此丢失了 75% 的色度信息。最后,4:4:4 表示对全像素记录色度。

在 FFmpeg 中,可以使用 ffmpg -pix_fmts 来查看 FFmpeg 支持的所有像素格式。

常用的视频编码格式有:

  • H.264 是上一代最广为使用的视频编码格式,始于 2003 年,当之无愧的一代霸主。在 FFmpeg 中可由 libx264 编码器支持。

  • H.265 (或称 HEVC) 是 H.264 的接任者,于 2013 年正式面世。它在同等视频质量下提供了相比 H.264 而言可达 50% 的体积缩减。 libx265 编码器对该编码格式提供了支持。

  • VP9 经历了从 VP3 起漫长的版本迭代,VP 系列解码器的开发公司 On2 被谷歌收购。谷歌在 2013 年左右推出了取代上一代 VP8 编码的 VP9,主要为旗下的互联网视频平台 Youtube 所采用。

  • AV1 (AOMedia Video 1) 是 H.265 的免版税竞争者,极大地基于 VP9 的技术,并在 VP9 的基础上提供了惊人的压缩比率。其开发联盟由诸多互联网公司支持,并受到主流浏览器 Chrome 与 Firefox 的积极推动。它在 FFmpeg 中由 libaom-av1 编码器对该编码格式提供支持。

下次说说常用编码器与参数

相关推荐

  1. ffmpeg 基础知识

    2024-01-17 22:18:01       35 阅读
  2. (一)ffmpeg 入门基础知识

    2024-01-17 22:18:01       14 阅读
  3. FFmpeg基础知识详解:音频视频处理的强大工具

    2024-01-17 22:18:01       15 阅读
  4. <span style='color:red;'>ffmpeg</span>

    ffmpeg

    2024-01-17 22:18:01      14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-17 22:18:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-17 22:18:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-17 22:18:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-17 22:18:01       20 阅读

热门阅读

  1. 京东云无线宝一代64G加速版刷机记录

    2024-01-17 22:18:01       109 阅读
  2. 每日coding

    2024-01-17 22:18:01       36 阅读
  3. LeetCode 37. 解数独

    2024-01-17 22:18:01       32 阅读
  4. 基于stm32的智能衣柜系统设计(毕业设计)

    2024-01-17 22:18:01       40 阅读
  5. GoLang刷题之leetcode

    2024-01-17 22:18:01       29 阅读
  6. 用Python做数据分析之生成数据表

    2024-01-17 22:18:01       29 阅读
  7. openssl3.2 - 官方demo学习 - signature - rsa_pss_hash.c

    2024-01-17 22:18:01       25 阅读
  8. ssl解码

    2024-01-17 22:18:01       32 阅读
  9. Git远程仓库

    2024-01-17 22:18:01       34 阅读
  10. c语言基础知识

    2024-01-17 22:18:01       38 阅读
  11. python

    2024-01-17 22:18:01       40 阅读