admin管理员组文章数量:1565292
1 引言
最近由于工作需要,做了很多汇报材料.为了展示算法效果,大多神经网络开发人员都直接将模型跑出来的结果做成视频,但是生成的视频文件往往很大,在PPT插入时显得异常臃肿,真让人脑壳大 >_<.
2 问题描述
为了方便的在PPT或其他汇报材料中插入小视频文件,这里指体积小的视频文件,我们可以选择对原始视频进行压缩,让其体积变小.压缩后,视频文件体积小了,所占空间自然就小了,我们的汇报材料所占空间自然而然也就小了.
俗话说的好:工欲善其事,必先利其器.我们肯定不是第一个遇到此类问题的人呀,我们打开百度,搜索一番.唉,小度苦人久矣,搜出来摸索半天都是收费软件或者需要实名注册才可以…
3 解决方案
百度搜索折腾了半天,无果遂放弃.突然想起来自己还是个程序员,那就用命令行方式来解决吧.这里给大家安利FFmpeg库来做视频压缩,速度贼拉拉地快…
3.1 安装
ffmpeg的在ubuntu上的安装方式贼简单,使用以下命令即可安装:
sudo apt-get update
sudo apt-get install ffmpeg
安装后执行以下命令进行验证:
ffmpeg -version
输出以下信息,则证明安装成功:
ffmpeg version 2.8.17-0ubuntu0.1 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.12) 20160609
可以看出我们ffmpeg的版文为2.8.17,该库使用gcc-5.4进行编译生成.
3.2 视频压缩
FFmpeg是一套可以用来记录 转换数字音频和视频,并能将其转化为流的开源计算机程序.它提供了录制 转换以及流化音视频的完整解决方案.
嗯嗯, 接下来我们使用以下命令来执行视频压缩:
ffmpeg -i input.mp4 -vcodec h264 -acodec mp2 output.mp4
ffmpeg –i input.mp4 –vcodec h264 –g 25 –s 352*278 –an –f m4v test.264
上述命令解释如下:
- -i: 指定输入文件,上面的例子中为input.mp4,实际支持绝大部分视频格式(.avi, .mkv, .264等)
- -f: 指定输出格式,支持常见大部分视频格式输出
- -s: 设定输出视频的宽与高
- -an: 不处理音频
- -vcodec: 指定视频编解码器,未设定时采用和输入流相同的编解码器
- -acodec: 指定声音编解码器,未设定时采用和输入流相同的编解码器
我们执行以下命令,对视频detect.avi执行H264编码压缩后输出output.mp4文件:
ffmpeg -i detect.avi -vcodec h264 -acodec mp2 output.mp4
文件大小压缩后从 152MB 减小至 40.4MB,压缩过程虽然是有损压缩,但是清晰度还是足够使用的,人眼几乎看不出来区别,简直无敌…
3.3 视频抽帧
学会了视频压缩,这里我们来思考下一个问题,如果我们不想要完整的视频,只想要从视频流中截取一段最精彩的视频片段,那我们该如何操作呢?
嗯… 答案还是推荐使用万能的ffmpeg,废话少说,我们直接看命令:
ffmpeg -i input.mp4 -ss 00:01:00 -to 00:02:00 -c copy output.mp4
上述命令解释如下:
- -i: 指定输入文件,上面的例子中为input.mp4,实际支持绝大部分视频格式(.avi, .mkv, .264等)
- -ss: 和 -i 一起使用,截取视频片段开始时间,上述命令中为00:01:00
- -to: 指定从开始时间算起截取的时间长度
- -c copy: 指定视频流截取方式
好了,接下来我们从上述压缩后的完整视频中截取前10s 作为我们的最终输出,采用命令行如下:
ffmpeg -i output.mp4 -ss 00:00:00 -to 00:00:10 -c copy result.mp4
使用上述命令后,我们从压缩视频中提取精彩10s的视频,我们查看其大小:
最后的最后,我们的素材文件就只剩下了10M大小了,嗯捏,极大的减少了所占空间.
en,自从使用了FFmpeg, 感觉又看见了光…
4 总结
本文介绍了如何使用FFmpeg库进行快速视频压缩和视频片段提取,针对FFmpeg库常用命令行参数进行了讲解说明,并给出了具体处理后的文件大小.
您学废了吗?
5 参考
本文参考链接如下:
链接一
关注公众号《AI算法之道》,获取更多AI算法资讯。
版权声明:本文标题:日常技巧之使用FFmpeg进行快速视频压缩和视频片段截取 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1726868032a1087669.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论