杠氯 发表于 昨天 12:16

FFmpeg开发笔记(六十三)FFmpeg使用vvenc把视频转为H.266编码

​前面的两篇文章分别介绍了如何在Linux环境和Windows环境给FFmpeg集成H.266的编码器vvenc,接下来利用ffmpeg把视频文件转换为VVC格式,观察新生成的vvc视频能否正常播放。 确保Linux系统已经按照《FFmpeg开发实战:从零基础到短视频上线》该书第一章的“1.2  Linux系统安装FFmpeg”安装了FFmpeg,并且Windows系统已经按照《FFmpeg开发实战:从零基础到短视频上线》该书第八章的“8.1  Windows环境编译FFmpeg”安装了FFmpeg,然后进入各自系统的控制台界面。
先执行下面命令,把视频文件转为h264编码格式(即H.265视频编码标准):
ffmpeg -i fuzhous.mp4 -vcodec h264 ff_recode_video1.mp4再执行下面命令,把视频文件转为hevc编码格式(即H.265视频编码标准):
ffmpeg -i fuzhous.mp4 -vcodec hevc ff_recode_video2.mp4再执行下面命令,把视频文件转为vvc编码格式(即H.266视频编码标准):
ffmpeg -i fuzhous.mp4 -vcodec vvc ff_recode_video3.mp4接着执行下面命令查看转换后的视频信息:
ls -lrt命令行返回转换后的视频信息如下所示:
-rw-r--r-- 1 root root 640320 May 13 16:46 ff_recode_video1.mp4
-rw-r--r-- 1 root root 306139 May 13 16:48 ff_recode_video2.mp4
-rw-r--r-- 1 root root 278684 May 13 16:48 ff_recode_video3.mp4由以上视频信息可见,采取H.264格式的视频大小约640K,采取H.265格式的视频大小约306K,采取H.266格式的视频大小约278K,可见hevc和vvc编码的视频大小都比h264编码的视频大为减小,其中vvc视频比起hevc视频又缩小了少许。
因为FFmpeg从7.1开始支持解码vvc格式,所以编译出来的ffplay程序能够播放vvc视频。于是运行下面命令播放新转换的vvc格式视频文件:
ffplay ff_recode_video3.mp4发现弹出了ffplay播放窗口如下图所示,说明vvc视频可以正常播放。

虽然通过ffplay命令能够播放vvc视频,但是VLC media player的3.0.21版本尚不支持vvc格式。若想通过可交互界面播放vvc视频,需下载最新版的PotPlayer,最新的PotPlayer支持播放VVC格式视频。
使用PotPlayer播放vvc视频的效果如下图所示:

可见通过ffplay和PotPlayer都能播放VVC格式视频,证明之前的vvenc编码器正确集成到了FFmpeg。
更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: FFmpeg开发笔记(六十三)FFmpeg使用vvenc把视频转为H.266编码