HEVC 与 H264 中捕获的视频的文件大小

File size of videos captured in HEVC vs H264

我正在使用我开发的一个简单的 Android 应用程序对 HEVC 中录制的视频与 H264 中录制的视频的文件大小进行一些实验。我的印象是,与以 H264 录制的视频相比,以 HEVC 录制的视频通常 几乎一半大小 (或至少小得多),因为它们具有相同的持续时间和几乎相同的内容(我捕获与 phone 的相机相同的场景)。但是当我使用 mediaInfo 比较它们的元数据时,它并不是很像。我想知道为什么。

这是怎么回事?我错过了什么吗?!我应该怎么做才能证明这个概念?

这是我设置的:

    mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
    mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
    //choose HEVC or H264
    mMediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
    mMediaRecorder.setVideoEncodingBitRate(5000 * 1000);
    mMediaRecorder.setVideoFrameRate(30);
    mMediaRecorder.setVideoSize(1280, 720);

这是 HEVC 视频的媒体信息:

General 
Complete name : VID_20211225_210352.mp4 
Format : MPEG-4 
Format profile : Base Media / Version 2 
Codec ID : mp42 (isom/mp42) 
File size : 763 KiB 
Duration : 1 s 447 ms 
Overall bit rate : 4 322 kb/s 
Encoded date : UTC 2021-12-25 17:33:56 
Tagged date : UTC 2021-12-25 17:33:56 
com.android.version : 11 

Video 
ID : 1 
Format : HEVC 
Format/Info : High Efficiency Video Coding 
Format profile : Main@L3.1@Main 
Codec ID : hvc1 
Codec ID/Info : High Efficiency Video Coding 
Duration : 1 s 447 ms 
Source duration : 1 s 441 ms 
Bit rate : 4 316 kb/s 
Width : 1 280 pixels 
Height : 720 pixels 
Display aspect ratio : 16:9 
Frame rate mode : Variable 
Frame rate : 29.837 FPS 
Minimum frame rate : 23.112 FPS 
Maximum frame rate : 30.050 FPS 
Standard : PAL 
Color space : YUV 
Chroma subsampling : 4:2:0 
Bit depth : 8 bits 
Bits/(Pixel*Frame) : 0.157 
Stream size : 759 KiB (99%) 
Source stream size : 759 KiB (99%) 
Title : VideoHandle 
Language : English 
Encoded date : UTC 2021-12-25 17:33:56 
Tagged date : UTC 2021-12-25 17:33:56 
Color range : Limited 
Color primaries : BT.709 
Transfer characteristics : BT.709 
Matrix coefficients : BT.709 
mdhd_Duration : 1447 
Codec configuration box : hvcC 

Audio 
ID : 2 
Format : AAC LC 
Format/Info : Advanced Audio Codec Low Complexity 
Codec ID : mp4a-40-2 
Duration : 1 s 408 ms 
Bit rate mode : Constant 
Bit rate : 13.1 kb/s 
Nominal bit rate : 12.2 kb/s 
Channel(s) : 1 channel 
Channel layout : C 
Sampling rate : 8 000 Hz 
Frame rate : 7.812 FPS (1024 SPF) 
Compression mode : Lossy 
Stream size : 2.26 KiB (0%) 
Title : SoundHandle 
Language : English 
Encoded date : UTC 2021-12-25 17:33:56 
Tagged date : UTC 2021-12-25 17:33:56 

这里是 H264 视频的媒体信息:

General 
Complete name : VID_20211225_210425.mp4 
Format : MPEG-4 
Format profile : Base Media / Version 2 
Codec ID : mp42 (isom/mp42) 
File size : 719 KiB 
Duration : 1 s 409 ms 
Overall bit rate : 4 178 kb/s 
Encoded date : UTC 2021-12-25 17:34:28 
Tagged date : UTC 2021-12-25 17:34:28 
com.android.version : 11 

Video 
ID : 1 
Format : AVC 
Format/Info : Advanced Video Codec 
Format profile : High@L3.1 
Format settings : CABAC / 1 Ref Frames 
Format settings, CABAC : Yes 
Format settings, Reference frames : 1 frame 
Codec ID : avc1 
Codec ID/Info : Advanced Video Coding 
Duration : 1 s 408 ms 
Bit rate : 4 157 kb/s 
Width : 1 280 pixels 
Height : 720 pixels 
Display aspect ratio : 16:9 
Frame rate mode : Variable 
Frame rate : 29.832 FPS 
Minimum frame rate : 23.107 FPS 
Maximum frame rate : 30.050 FPS 
Standard : PAL 
Color space : YUV 
Chroma subsampling : 4:2:0 
Bit depth : 8 bits 
Scan type : Progressive 
Bits/(Pixel*Frame) : 0.151 
Stream size : 714 KiB (99%) 
Title : VideoHandle 
Language : English 
Encoded date : UTC 2021-12-25 17:34:28 
Tagged date : UTC 2021-12-25 17:34:28 
Color range : Limited 
Color primaries : BT.709 
Transfer characteristics : BT.709 
Matrix coefficients : BT.709 
mdhd_Duration : 1408 
Codec configuration box : avcC 

Audio 
ID : 2 
Format : AAC LC 
Format/Info : Advanced Audio Codec Low Complexity 
Codec ID : mp4a-40-2 
Duration : 1 s 409 ms 
Source duration : 1 s 408 ms 
Bit rate mode : Constant 
Bit rate : 13.4 kb/s 
Nominal bit rate : 12.2 kb/s 
Channel(s) : 1 channel 
Channel layout : C 
Sampling rate : 8 000 Hz 
Frame rate : 7.812 FPS (1024 SPF) 
Compression mode : Lossy 
Stream size : 2.31 KiB (0%) 
Source stream size : 2.31 KiB (0%) 
Title : SoundHandle 
Language : English 
Encoded date : UTC 2021-12-25 17:34:28 
Tagged date : UTC 2021-12-25 17:34:28 
mdhd_Duration : 1409 

您将两种格式的比特率设置为 5 Mbps - 因此两种格式的大小大致相同。 理论上 - 如果您使用 5 Mbps 编码 HEVC,您应该获得比使用 5 Mbps 的 H.264 更高的质量。 因此,您应该降低 HEVC 的比特率 - 尝试 2.5 Mbps - 然后使用例如 PSNR 比较质量。