FFMpeg命令收藏

2024-02-01  本文已影响0人  YocnZhao

1. 水印

1.1. 加水印

把a.png当做水印加到a.mp4上,设置宽高,设置alpha。

ffmpeg -i a.mp4 -i a.png -filter_complex "overlay=W-w-10:H-h-10:alpha=0.5" output.mp4

1.2.加文字水印,并且x坐标随着时间移动

文字水印,内容为“watermark”,y为整体高度减去文字高度。x为整体宽度减去时间*20,也就是随着时间轴移动x值逐渐变小。字体大小为14,颜色为黄色,有y方向的阴影。

ffmpeg -i a.gif -vf "drawtext=text='watermark':y=h-text_h:x=w-text_w-20*t:fontsize=14:fontcolor=yellow:shadowy=2" out4.gif

1.3.去水印

注意x,y不能从0开始,会出错

ffmpeg -i a.mp4 -vf delogo=x=1:y=1:w=92:h=12:show=0 out.mp4

如果不确定水印位置可以使用ffplay命令先确定位置在执行去水印动作。

ffplay -i a.mp4 -ss 00:00:15 -vf delogo=x=1:y=1:w=92:h=12:show=1

-ss 00:00:15表示从15s开始执行。

2. 视频尺寸操作

2.1. 获取视频宽高

ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=p=0 a.mp4

2.2. 裁剪视频尺寸

ffmpeg -i real.mp4 -vf "crop=718:1110:1:80" real_output.mp4

3. 裁剪视频时长

3.1. 裁剪视频时长
ffmpeg -y -i src.mp4 -c copy -to 00:00:16 out.mp4

3.2. 裁剪视频时长,精确到毫秒。

ffmpeg -y -ss 0 -t 00:00:16 -i src.mp4 -c:v libx264 -preset superfast -c:a copy out.mp4

3. 音轨相关

3.1. 截取指定时间长度的音频

# 下面命令的意思是从50秒开始,截取2分钟的音频
# ss:指定开始时间    t:指定提取时间
# 时间戳必须采用HH:MM:SS.xxx格式或以秒为单位;如果不指定t选项,则一直到末尾
# 两种写法都可以 下面是第一种
ffmpeg -i chain.mp4 -ss 00:00:50 -t 00:02:00.0 -q:a 0 -map a chainmusic.mp3
# 第二种
ffmpeg -i chain.mp3 -ss 00:00:50 -t 00:02:00 1m.mp3

3.2. 截取指定时间区间的音频

# 截取50秒到1分钟之间的音频
ffmpeg -i chain.mp3 -ss 00:00:50 -to 00:01:00 10s.mp3

3.3. 从视频中提取完整音频

# 下面两种方法都可以
ffmpeg -i chain.mp4 -q:a 0 -map a chain.mp3
# -i 要处理的视频  -vn 禁用视频
ffmpeg -i chain.mp4 -vn t.mp3

3.4. 使用 FFmpeg 添加音轨的方法取决于你想要实现的具体功能。如果你想将一个音频文件合并到一个视频文件中,可以使用以下命令:

ffmpeg -i video.mp4 -i audio.mp3 -map 0:v -map 1:a -c:v copy -shortest output.mp4
其中,video.mp4 是你想要添加音轨的视频文件,audio.mp3 是你想要添加的音频文件,-map 0:v 表示使用视频文件的视频流,-map 1:a 表示使用音频文件的音频流,-c:v copy 表示不对视频进行重新编码,-shortest 表示在视频和音频结束时选择最短的时间戳作为输出的时间戳,output.mp4 是输出文件的文件名。

3.5. 如果你想要给视频添加背景音乐,可以使用以下命令:

ffmpeg -i video.mp4 -i music.mp3 -filter_complex "[0:a]volume=1.0[a];[1:a]volume=0.5[b];[a][b]amix=inputs=2:duration=first" -c:v copy -shortest output.mp4

其中,video.mp4 是你想要添加背景音乐的视频文件,music.mp3 是你想要添加的背景音乐文件,-filter_complex 表示使用复杂的音频滤镜,[0:a]volume=1.0[a] 表示将视频文件的音频流音量调整为 1.0,[1:a]volume=0.5[b] 表示将音乐文件的音频流音量调整为 0.5,[a][b]amix=inputs=2:duration=first 表示将两个音频流混合成一个流,-c:v copy 表示不对视频进行重新编码,-shortest 表示在视频和音频结束时选择最短的时间戳作为输出的时间戳,output.mp4 是输出文件的文件名。
上一篇下一篇

猜你喜欢

热点阅读