1.软文推荐

2.软文推荐

3.软文推荐

FFmpeg 是领先的多媒体框架,能够解码、编码、转码、混合、解密、流媒体、过滤和播放人类和机器创造的几乎所有东西。它支持最晦涩的古老格式,直到最尖端的格式,本篇文章重点为大家讲解一下FFmpeg使用实例,有需要的小伙伴可以参考一下。

实例 flac 格式转 mp3

音频格式转换非常简单:

ffmpeg -i input.flac -acodec libmp3lame output.mp3

ffmpeg 将会使用 libmp3lame 解码器将 input.flac 文件转换为 mp3 格式的 output.mp3 文件。

批量格式转换

想要批量转换 flac 文件也是很常见的需求,我们可以结合 bash 命令来完成:

find . -name "*.flac" -exec bash -c 'ffmpeg -i "{}" -y "${0/.flac}.wav"' {} 
webm 转 gif 格式

webm 是 Google 提出的多媒体文件格式,包含了 VP8 影片轨和 Ogg Vorbis 音轨,按照 BSD 格式开源。webm 能够提供更高质量的在线视频,但是其支持程度并不如存在已久的 mp4 和动态图片格式 gif,因此有时候会有将其转换为 gif 格式的需求。我们用到的命令是:

ffmpeg -i input.webm -vf "scale=400:-1,fps=10" output.gif

其作用是将 input.webm 格式的视频转换为横向宽度为 400px,纵向宽度保持比例的每秒 10 帧的 output.gif 图片。

当然,也可以将 gif 转换为 webm 格式:

ffmpeg -i output.gif -c:v libvpx -auto-alt-ref 0 input.webm

如果出现“Unknown encoder libvpx”的问题,需要重新在重新编译安装 ffmpeg 以支持 libvpx 编码器:brew reinstall ffmpeg –with-libvpx。

转换为 mp4 格式:
ffmpeg -i input.webm -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" output.mp4

这里 vf 参数的意义是,将视频的长宽强制转换为偶数,否则可能遇到“width not divisible by 2”的问题。

生成视频缩略图

生成封面

使用视频的第一帧作为封面:

ffmpeg -i your-video.mp4 -ss 00:00:00 -vframes 1 thumb.png

每 xx 秒生成一个缩略图,每分钟一张:

ffmpeg -i your-video.mp4 -vf fps=1/60 your-video-%03d.png

再将其合并:

ffmpeg -i your-video-%03d.png -filter_complex scale=-1:-1,tile=99x1:margin=10:padding=4 output.png

这里的 tile 长度设定为 99,应当改为缩略图的总数。

一步到位:

ffmpeg -ss 00:00:00 -i your-video.mp4 -vf 'select=not(mod(n,24)),scale=-1:-1,tile=99*1' out.png

意思是从视频的 00:00:00 处开始,每 24 帧(一般动换都是 24 帧的)取一张图片,长宽不进行压缩,最后合成在 99*1 的方格中。

本文来源:www.lxlinux.net/4636.html,若引用不当,请联系修改。

相关文章 8

1

seo优化分析(seo分析及优化建议) 55秒前

目录:1、SEO优化网站需要分析哪些数据2、SEO优化要分析哪些数据?3、SEO优化数据分析包括哪些内容?4、如何分析一个网站SEO优化情况?5、...

2

详解apt-clone使用方法 3分钟前

使用 apt-clone 能帮你备份安装的软件包,并在全新安装的 Ubuntu 系统中恢复它们,如果你有多个 Ubuntu 系统需要安装同一组软件包,apt-clone 能...

3

详解tcpdump 命令的常用选项(三) 5分钟前

tcpdump命令可以对网络上的数据包进行截获和分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮...

4

cn2和cn2gia(cn1和cn2区别) 7分钟前

目录:1、CN2的一些介绍2、什么是CN2线路3、海外国家服务器租用CN2线路 GT线路 GIA线路的区别是什么?CN2的一些介绍 CN2,中国电信下一代承载...

5

Redhat 7使用CentOS 7的Yum网络源 10分钟前

在学习第1章 部署虚拟环境安装linux系统Yum软件仓库有介绍yum网络源,所以决定尝试一下CentOS的网络源,这样在安装依赖包时就会方便很多,...

6

详解Node.js RESTful API 10分钟前

Node.js 是一个跨平台的 JavaScript 运行时环境。 Node.js 使用高效、轻量级的事件驱动、非阻塞 I/O 模型。Node.js 的生态系统是目前最大的开源包...

7

百度网盘双11(百度网盘双11打折) 12分钟前

目录:1、求 2019天猫双十一狂欢夜 百度云免费在线观看资源2、如何看待百度网盘超级会员双十一价208仅在12天以后188?3、《2019天猫双十一狂...

8

Fedora 下常用的几款图像创建程序 13分钟前

有了创意吗?Fedora 有很多程序可以帮助你的创造力。从数字绘图、矢量到像素艺术,每个人都可以在这个周末发挥创意。本文重点介绍了...