- 音视频 、编码器 基础
- 同步方式是指音频和视频之间的时间同步,以确保它们在播放过程中保持一致。以下是几种常见的同步方式以及它们的特点:
- 外部时钟同步:使用外部时钟源来同步音频和视频。例如,可以使用硬件时钟、专用时钟设备或者网络时间协议(NTP)来提供统一的时间基准。这种同步方式可实现高精度的同步,但通常需要专门的硬件支持。
- 音频驱动同步:使用音频设备的驱动程序来控制视频的播放速度。音频设备的采样率通常比视频帧率高,因此可以利用音频设备的时钟来同步视频帧的显示时间。这种同步方式简单且实时性较高,但在音频驱动程序的性能和稳定性方面存在依赖。
- 时间戳同步:每个音频和视频样本都带有时间戳,用于指示其应该在什么时间播放。通过比较音频和视频的时间戳,可以调整音频和视频的播放速度以实现同步。这种同步方式灵活且可靠,但需要精确的时间戳管理和处理。
- 时间基准同步:音频和视频都使用一个共同的时间基准来进行同步。例如,可以使用系统时钟或其他可靠的时钟源作为时间基准,并将音频和视频的播放时间与该时钟进行同步。这种同步方式可实现相对较高的准确性,但对时间基准的稳定性和一致性有较高的要求。
- 帧间同步:在视频编码中,帧间同步(Inter-Frame Synchronization)是一种通过在关键帧之间插入额外的帧来实现同步的方法。这些额外的帧被称为预测帧或插入帧,它们可以用于校正音频和视频之间的时间差异。这种同步方式通常应用于视频流传输和网络传输场景。
- 每种同步方式都有其适用的场景和特点。在选择同步方式时,需要考虑音频和视频数据的特性、应用需求、性能要求以及可用的硬件和软件支持。对于特定的音视频应用,可能需要结合多种同步方式来实现最佳的同步效果。
- 数字图像表示 YUV 基础
YUV 是一种表示图像颜色的编码格式,常用于视频处理和压缩。它将图像的亮度(Luma)和色度(Chroma)信息分开存储,以提高压缩效率和图像处理的性能。
YUV 编码使用亮度信号 Y(代表亮度或灰度值)和色度信号 U、V(代表颜色差值)来描述图像的颜色。它的主要思想是人眼对亮度变化更敏感,对颜色变化相对不太敏感,因此将亮度和颜色分开编码可以提高压缩效率。
以下是 YUV 中的三个分量:- Y(亮度分量):表示图像的亮度信息,用于描述图像的明暗变化,通常对应于灰度图像。
- U(色度分量):表示图像的蓝色色度差值,用于描述图像中蓝色与亮度之间的差异。
- V(色度分量):表示图像的红色色度差值,用于描述图像中红色与亮度之间的差异。
- YUV 格式有多种变体,包括 YUV420、YUV422、YUV444 等。其中,YUV420 是最常见的格式,用于许多视频编码标准(如 MPEGH.264)。
- YUV 格式在视频编码和视频处理中具有重要作用。在视频压缩中,利用人眼对颜色变化相对不敏感的特性,可以对色度分量进行降采样,减少数据量和传输带宽需求。在视频处理中,可以分别对亮度和色度分量进行处理,以实现图像增强、颜色调整等效果。
- 需要注意的是,YUV 并不是一种图像文件格式,而是一种编码格式。图像文件可以使用 YUV 格式进行编码,但通常更常见的是将图像存储为 RGB 格式,然后在需要时将其转换为 YUV 格式进行处理或压缩。
- YUV 怎么转化为 RGB
- YUV 和 RGB 之间存在一种转换关系,可以使用一组转换公式将它们互相转换。下面是从 YUV 到 RGB 的转换公式:
R = Y + 1.402 * (V - 128)
G = Y - 0.344136 * (U - 128) - 0.714136 * (V - 128)
B = Y + 1.772 * (U - 128) - 其中,Y 是亮度分量,U 和 V 是色度分量。转换公式中的常数 128 用于将色度分量的取值范围从 0-255 转换为 -128 到 127。
- 请注意,上述公式是最常见的转换公式,适用于 YUV420 格式。对于其他 YUV 变体(如 YUV422、YUV444),转换公式可能会有所不同。
- YUV 和 RGB 之间存在一种转换关系,可以使用一组转换公式将它们互相转换。下面是从 YUV 到 RGB 的转换公式:
- 为什么YUV—> RGB 解码失败时,屏幕显示是绿屏?
- 因为解码时,YUV分量都填为零,所以工具公式:
R = 0 + 1.402 * (0 - 128) = - 126.598
G = 0 - 0.344136 * (0 - 128) - 0.714136 * (0 - 128) = 135.45984
B = 0 + 1.772 * (0 - 128) = - 126.228
RGB值的范围为 [0,255],所以最终值为:
R = 0
G = 135.45984
B = 0
此时只有G 分量有值,所以解码失败时为绿屏。
- 因为解码时,YUV分量都填为零,所以工具公式:
- 出现绿屏可能的原因:
- 宽高对不对
- YUV 是属于哪一种,解析方法和存储格式是不是不一致。
- 相关概念
- I帧 : 内部帧
- P帧 :预测帧
- B帧 : 双向预测帧 : 有延迟,因为需要参考前后的帧。
- GOP(group of pictures),GOP 是视频编码中的一个重要概念,代表着一组连续的视频帧。
- GOP 由多个视频帧组成,包括关键帧(I帧)、预测帧(P帧)和参考帧(B帧)等。这些帧按照特定的顺序组合在一起,形成一个 GOP。
- 在视频编码中,关键帧(I帧)是一个完整的、独立的图像帧,它包含了完整的图像信息。其他帧(P帧和B帧)则是相对于前面的关键帧进行预测编码的帧,只包含了与前面帧之间的差异信息。
- GOP 的设计和配置对于视频编码的压缩效率和播放质量具有重要影响。以下是一些与 GOP 相关的概念和特点:
- GOP长度:指 GOP 中包含的帧的数量。通常情况下,较长的 GOP 长度可以提高视频编码的压缩效率,但会增加解码延迟。
- 关键帧(I帧):关键帧是一个完整的图像帧,不依赖于其他帧。每个 GOP 都以关键帧开始,它提供了一个完整的参考点,用于解码和显示。
- 预测帧(P帧):预测帧是相对于前面的关键帧进行预测编码的帧。它只包含与前面帧之间的差异信息,可以通过引用前面的关键帧和/或其他预测帧来重建图像。
- 参考帧(B帧):参考帧是相对于前后的关键帧进行预测编码的帧。它包含了与前后帧之间的差异信息,通过引用前后的关键帧和/或其他预测帧来重建图像。
- 通过合理地配置 GOP 长度、关键帧间隔以及预测帧的使用,可以在视频编码中实现较高的压缩效率和播放质量的平衡。较长的 GOP 长度可以提高压缩效率,但会增加解码延迟和关键帧之间的依赖性。适当的关键帧间隔可以提供更好的随机访问性和错误恢复能力。
- 需要根据具体的视频编码标准和应用需求来选择和配置 GOP。常见的视频编码标准(如 H.264、HEVC)都使用 GOP 的概念来组织视频帧。
- 码率
- 帧率
- 一帧有多少个 Slice
- GDR(Gradual Decoder Refresh)
- GDR(Gradual Decoder Refresh)模式是视频编码中的一种技术,用于增强视频流的容错性和恢复性能。
- GDR 模式主要用于帧内编码(Intra-frame Coding)的视频编码标准中,例如 H.264/AVC 和 HEVC。帧内编码是一种无需参考其他帧的编码方式,每个帧都是独立编码的,这使得它具有较好的容错性和随机访问性。
- GDR 模式通过定期插入额外的关键帧(I帧)或重置点(Reset Point),来提供更好的错误恢复能力。这些关键帧或重置点可以在播放过程中用于重建图像,从而减小传输错误的影响范围。
- 以下是 GDR 模式的特点:
- 关键帧间隔:GDR 模式会定期插入关键帧,使关键帧之间的间隔更小。较小的关键帧间隔有助于提高错误恢复性能,因为即使在发生传输错误时,只需重新解码和显示较短的视频序列。
- 错误传播限制:由于插入了更多的关键帧或重置点,GDR 模式可以限制错误的传播范围。传输错误通常只会影响从错误位置开始的一小部分图像序列,而不会影响整个视频流。
- 随机访问性:由于关键帧的插入,GDR 模式提供了更好的随机访问性,即可以快速定位和播放视频的特定位置,而不需要解码和显示之前的帧。
- GDR 模式对于实时传输和错误恢复性能较为重要,特别适用于视频流传输中对容错性和随机访问性要求较高的应用场景,如视频会议、实时流媒体等。
- 需要注意的是,GDR 模式会引入额外的编码开销,因为插入更多的关键帧会增加编码数据量。因此,在使用 GDR 模式时需要权衡编码效率和容错性能之间的平衡。
- 声音的采样频率 :一秒采样多少次
- 声音的采样深度(精度) : 采样的精细度,越精细越清晰
- 声道(通道)
- 比特率 :每秒传输的 bit 数
- 声音的码率 : 码率越高,音质越好;码率 = 音频文件大小/时长
- Ffmpeg 查看帮助命令:
- ffmpeg -h 基础信息
- Ffmpeg -h long 高级信息 : 与ffmpeg -h 相比多了参数
- Ffmpeg -h full 全部信息
- Ffplay -h
- Ffprobe -h
- Ffmpeg / ffplay / ffprobe 他们部分参数通用,部分不通用。
- 例子
- Window : ffmpeg -h full | findstr 264
- Linux : ffmpeg -h full | grep 264
- 例子
- 同步方式是指音频和视频之间的时间同步,以确保它们在播放过程中保持一致。以下是几种常见的同步方式以及它们的特点:
ffmpeg基础知识学习笔记
最新推荐文章于 2025-01-14 20:54:33 发布