视频文件的恒定和可变比特率的媒体信息

视频文件的恒定和可变比特率的媒体信息

这是什么最大比特率对于.mp4比特率模式为持续的

MP4 显示的媒体信息(使用 MediaInfo 工具)

ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : [email protected]
Format settings, CABAC : No
Format settings, ReFrames : 1 frame
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Bit rate mode : Constant
Bit rate : 1 500 Kbps
Maximum bit rate : 3 961 Kbps
Display aspect ratio : 4:3
Frame rate mode : Constant
Frame rate : 29.970 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.163


在这种情况下,比特率模式设置为多变的,比特率字段显示的数值是否为其309平均比特率?

M4V 显示的媒体信息(使用 MediaInfo 工具)

ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : [email protected]
Format settings, CABAC : No
Format settings, ReFrames : 1 frame
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Bit rate mode : Variable
Bit rate : 309 Kbps
Display aspect ratio : 16:9
Frame rate mode : Variable
Frame rate : 23.976 fps
Minimum frame rate : 23.810 fps
Maximum frame rate : 24.390 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.229
Writing library : x264 core 120

答案1

当 MediaInfo 报告时Bit rate,它会报告实际媒体流指定的比特率。因此,如果它显示 1,500 并且使用了恒定比特率,那么这就是编码器设置的速率。

另一方面,当使用可变比特率模式进行编码时,编码器无法为您提供预定义的平均值。因此,MediaInfo 将报告测量的平均值。它通过以File__Analyze_Streams_Finish.cpp非常通用的方式分析流大小和持续时间(参见其源代码)来实现这一点。

当它给出Maximum bit rateVBR 时,其含义非常明显。它还会报告Maximum bit rateCBR 流的情况。不幸的是,我无法找出它的确切含义 — 源代码有点复杂 — 但这取决于所使用的特定媒体编解码器或容器。

可能是以下之一:

  • 计算结果,寻找峰值比特率(不太可能,还没有检查完整的源代码)
  • 从中提取的一条信息MOOV原子MP4 容器
  • MPEG-2 描述符定义在ISO/IEC 13818-1第2.6.26节:

    该值表示此节目元素或节目中将遇到的比特率的上限,包括传输开销

  • 特定容器支持的最大比特率,例如 MXF
  • 特定编解码器配置文件/级别组合支持的最大比特率

顺便说一句:据我所知,MP4(MPEG-4 Part 14)容器对所使用的编解码器的比特率没有限制。MP4 不是视频编解码器。如果您说的是 MPEG-4 Part 10 AVC 视频 (h.264) 中的“MP4”,那么 5.2 级 High 10 配置文件指定的最大比特率为 720,000 kBit/s(参考)。

相关内容