[Python,Pandas]交流群 164142295
前阵子下载了很多电影,造成磁盘空间严重不足,为了节约小钱钱于是萌生了将H264电影压缩成HEVC的念头。
本程序在Win10中开发,并通过测试。
接下来是几点说明:
1. 这段代码用到pymediainfo库,具体安装请自行百度。
2. 关于控制视频质量的参数。函数 bit_rate_control 返回输出视频的码率,如果原始视频码率低于1800kbps,则输出体积大约是原视频的70%大小。码率超过 20000kbps 如果,则输出文件约为原视频的20%(一般来说,细节损失还可以接受)。经过大量实践1080P 30fps的影片大约需要 2500kbps - 3000kbps 以保证不会出现大量马赛克。
3. 主函数中 encoder 的说明,
- hevc_nvenc, 网上文章说是NVIDIA CUDA加速,笔者没测试过
- hevc_mf,NVIDIA显卡的硬件加速选项,在笔者笔记本的NVIDIA显卡测试过,可以使用
- hevc_amf ,AMD显卡硬件加速使用的参数,由于笔者使用AMD,所以为代码默认
- hevc_qsv, Intel显卡硬件加速使用的参数
- libx265, 软件编码使用的参数,压缩速度比硬件加速慢上好多倍
4. preset 参数,请参考文章