IT袋

当前位置:主页 > 经验教程 > 建站编程 >

FFmpeg安装配置与使用

FFmpeg安装配置与使用 学习FFmpeg的安装、配置和使用(2)

更新:2024-03-03 01:35:55 来源:IT袋 作者:马勇
导读:FFmpeg安装配置与使用,2 转换编码格式 转换编码格式(transcoding)指的是将视频文件从一种编码转成另一种编码。比如转成 H.264 编码,一般使用编码器  libx264 ,所以只需指定输

FFmpeg安装配置与使用

2 转换编码格式

转换编码格式(transcoding)指的是将视频文件从一种编码转成另一种编码。比如转成 H.264 编码,一般使用编码器 libx264,所以只需指定输出文件的视频编码器即可。

# 转成H.264编码
ffmpeg -i [input] -c:v libx264 output.mp4
# 转成H.265编码
ffmpeg -i [input] -c:v libx265 output.mp4

3 转换容器格式

转换容器格式(transmuxing)指的是,将视频文件从一种容器转到另一种容器。下面是写法。

# 只是转一下容器,内部的编码格式不变,所以使用 -c copy 指定直接拷贝,不经过转码,这样比较快
ffmpeg -i input.mp4 -c copy output.webm # mp4 转 webm 
# 将 aac 音频转为 mp3
ffmpeg -i <input>.aac -acodec libmp3lame <output>.mp3
# 将 wma 音频转为 mp3
ffmpeg -i <input>.wma -ab 64 -ar 44100 <output>.mp3
# 批量将 wma 音频转为 mp3
for %a in ("D:\Downloads\input\*.wma") do ffmpeg -i "%a" -ab 64 -ar 44100 "D:\Downloads\output\%~na.mp3"

4 改变分辨率

# 从1080p转为480p
ffmpeg \
-i input.mp4 \
-vf scale=480:-1 \
output.mp4

5 添加音轨

将外部音频加入视频,比如添加背景音乐或旁白。有音频和视频两个输入文件,FFmpeg 会将它们合成为一个文件。

ffmpeg \
-i input.aac -i input.mp4 \
output.mp4

6 为音频添加封面

有些视频网站只允许上传视频文件。如果要上传音频文件,必须为音频添加封面,将其转为视频,然后上传。

下面命令可以将音频文件转为带封面的视频文件。

# -loop 1 表示图片无限循环,-shortest 表示音频文件结束,输出视频就结束
ffmpeg \
-loop 1 \
-i cover.jpg -i input.mp3 \
-c:v libx264 -c:a aac -b:a 192k -shortest \
output.mp4

7 视频截图

# 每隔一秒截一张图,-f是指定输出文件
ffmpeg -i [input] -f image2 -vf fps=fps=1 out%d.png
# 每隔20秒截一张图
ffmpeg -i [input] -f image2 -vf fps=fps=1/20 out%d.png
# 从指定时间开始,每一秒截图一次
ffmpeg -y -i [input] -ss 00:01:24 -t 00:00:01 out_%3d.png
# -vframes 1 指定只截取一帧,`-q:v 2`表示输出的图片质量,一般是1到5之间(1为质量最高)。
ffmpeg -ss 01:23:45 -i [input] -vframes 1 -q:v 2 output.png

8 视频裁剪

# 指定开始时间(start)和持续时间(duration),output前可添加路径,-c copy表示直接拷贝
ffmpeg -ss [start] -i [input] -t [duration] -c copy [output]
# 指定开始时间和结束时间(end)
ffmpeg -ss [start] -i [input] -to [end] -c copy [output]

下面是一个实际例子。

ffmpeg -ss 00:01:50 -i [input] -t 10.5 -c copy [output]
ffmpeg -ss 2.5 -i [input] -to 10 -c copy [output]

相关阅读

  • 怎么申请个人网站注册 建立自己的网站平台

    怎么申请个人网站注册 建立自己的网站平台

    如果想了解怎么申请个人网站注册和建立自己的网站平台的方法内容,很不错的方法小知识,建议收藏哦! 很多不是程序员的朋友总是理解不了网站到底是什么,它到底是怎么存在和运行的,

  • js支付是什么 jsapi支付什么意思

    js支付是什么 jsapi支付什么意思

    全面的为大家介绍jsapi支付什么意思方面的讲解,JSAPI支付是指用户在微信中打开商户的H5页面,商户在H5页面通过调用微信支付提供的JSAPI接口调起微信支付模块来完成支付。适用于在公众号、

  • 什么是集群服务器 有几种类型? 集群服务器有什么特点

    什么是集群服务器 有几种类型? 集群服务器有什么特点

    IT袋网网为大家说一说什么是集群服务器方面的讲解,下面为详细的介绍。 集群服务器是一组独立的计算机,它们通过高速网络连接在一起,以便共同处理任务。 这些计算机通常称为“节点”

  • Kubernetes Pod被驱逐原因详解

    Kubernetes Pod被驱逐原因详解

    小编为大家讲一讲KubernetesIT技巧方面的经验,接下来分享详细内容。 Kubernetes官方给出了下属Pod被驱逐的原因: 抢占驱逐 (Preemption and Eviction)[1] 节点压力驱逐 (Node-pressure)[2] 污点驱逐 (Taints)[3