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

举报
aqi00 发表于 2025/06/07 16:54:56 2025/06/07
【摘要】 ​前面的两篇文章分别介绍了如何在Linux环境和Windows环境给FFmpeg集成H.266的编码器vvenc,接下来利用ffmpeg把视频文件转换为VVC格式,观察新生成的vvc视频能否正常播放。确保Linux系统已经按照《FFmpeg开发实战:从零基础到短视频上线》该书第一章的“1.2  Linux系统安装FFmpeg”安装了FFmpeg,并且Windows系统已经按照《FFmpeg开...

前面的两篇文章分别介绍了如何在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视频可以正常播放。

vvenc6.png

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

使用PotPlayer播放vvc视频的效果如下图所示:

vvenc7.png

可见通过ffplay和PotPlayer都能播放VVC格式视频,证明之前的vvenc编码器正确集成到了FFmpeg。

更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。