作者:小虾米 发表时间:2024-03-13 18:18:21 类别:Linux
一张图片生成25帧的MP4视频
~:ffmpeg -loop 1 -framerate 25 -i 1.jpg -c:v libx264 -pix_fmt yuv420p -t 5 ./output.mp4
多张图片生成25帧的MP4视频,每张图片的时长不能一一定义
ffmpeg -y -framerate 25 -i ./pic2022/v%d.png -filter_complex "scale=1920:1080, setpts=PTS/TIMEBASE" -c:v libx264 -pix_fmt yuv420p ./m2.mp4
## PTS = 1秒/帧率 是FFMPEG的预变量,自动计算
## DURATION 是所需的每张图片的播放时长
## 每张图片时长计算方法:PTS/TIMEBASE=DURATION TIMEBASE=PTS/DURATION
## 示例:有3张图片,每张图片播放5秒,帧率为25,则PTS为1/25=0.04,TIMEBASE=0.04/5=0.008
ffmpeg -y -framerate 25 -i ./pic2022/v%d.png -filter_complex "scale=1920:1080, setpts=PTS/0.008" -c:v libx264 -pix_fmt yuv420p ./m2.mp4
一张1920x1080的图片和一个720x720的视频做拼接,图片在下面,视频在上面,视频的位置在右边,并将原视频更改为720x1080,生成一个新的mp4视频,时长以原视频时长为准
ffmpeg -y -loop 1 -i 1.jpg -i 5.mp4 -filter_complex "[0:v]scale=1920:1080,pad=1920:1080:0:0[bg];[1:v]scale=720:1080[v1s];[bg][v1s]overlay=1200:0" -c:a copy -shortest 20230511-06.mp4 -v error
使用ffprobe获取视频信息,并保存到txt文件
ffprobe -i input.mp4 -show_streams -show_format -print_format ini > output.txt
视频大小剪切
ffmpeg -i input_video.mp4 -vf "crop=w:h:x:y" -c:v libx264 -c:a copy output_cropped_video.mp4
视频拉长
ffmpeg -i 3s.mp4 -filter_complex "loop=loop=-1:size=3*25[out]" -map "[out]" -c:v libx264 -t 49 3-49s.mp4 -v error
# loop=loop=-1 无限循环
# size=3*25 视频时长3秒,帧率:25帧
多个图片、多个视频合成新的视频
图片格式为png或jpg
视频格式mp4
图片生成的视频时长可各不相同,根据时长预设不同时长的无声音频流
如果相同,只生成一条无声音频流即可
叠加顺序取决于最后的[v0][v1]...[v3]...[vn],音频顺序需要跟视频顺序相同
### 叠加顺序取决于最后的[v0][v1]...[v3]...[vn],音频顺序需要跟视频顺序相同
### -b:v 比特率 -c:v 视频编码器 -c:a 音频编码器 -r 输出帧率 -threads 占用的线程数
ffmpeg -y \
-t 10 -framerate 25 -loop 1 -i 1.jpg \
-t 18 -framerate 25 -loop 1 -i 2.jpg \
-i 1-copy.mp4 \
-i 2-copy.mp4 \
-f lavfi -t 10 -i anullsrc=r=44100:cl=stereo \
-f lavfi -t 18 -i anullsrc=r=44100:cl=stereo \
-filter_complex "\
[0:v]fps=25,scale=1920x1080[v0];\
[1:v]fps=25,scale=1920x1080[v1];\
[2:v]fps=25,scale=1920x1080[v2];\
[3:v]fps=25,scale=1920x1080[v3];\
[v0][v2][v1][v3]concat=n=4:v=1:a=0[v];[4:a][2:a][5:a][3:a]concat=4:v=0:a=1[a]" \
-map "[v]" -map "[a]" -b:v 10M -c:v libx264 -c:a aac -r 25 -threads 2 23091904.mp4
原创,转载请注明来源