FFMpeg 的常用说明
1. 让视频以H.264编码
ffmpeg -i field.mp4 -c:v libx264 -crf 18 field_crf18.mp4
此处我们将恒定速率因子设置为 18。比例的范围是 ,其中无损,是默认值,并且质量可能最差。较低的值导致较高的质量,主观上合理的范围是 。考虑 17 或 18 在视觉上无损或几乎无损。
2. 缩放、裁剪和垫
原视频是1920*1080的
ffmpeg -i moon.mp4 -vf scale=640:480,setdar=4:3 moon_sc.mp4
这样就改为了640 * 480 ,且4:3的视频;
如果视频因为上面的问题导致比例失真,则使用下面的参数 -2: 480 ,则保持保持纵横比
ffmpeg -i moon.mp4 -vf scale=-2:480 moon_sc_ar.mp4
上面的重新缩放的视频大小,它比预期的要大,可以使用下面的方法裁切视频:
ffmpeg -i moon_sc_ar.mp4 -vf "crop=640:in_h:(in_w-out_w)/2:0" moon_sc_ar_crp.mp4
在上面的参数中:crop=out_w:out_h:x:y
- out_w指示输出矩形的宽度
- out_h指示输出矩形的高度
- x并且是输出矩形的左上角y
下面是填充视频
ffmpeg -i moon_sc_ar_crp.mp4 -vf "pad=1920:1080:(out_w-in_w)/2:(out_h-in_h)/2" moon_pad.mp4
如果想让填充区域为白色,则:
ffmpeg -i moon_sc_ar_crp.mp4 -vf "pad=1920:1080:(out_w-in_w)/2:(out_h-in_h)/2:white" moon_padwhite.mp4
3. 视频的堆叠
我们可以水平堆叠视频:
ffmpeg -i relax.mp4 -i stream.mp4 -filter_complex hstack hComb.mp4
也可以垂直堆叠
ffmpeg -i relax.mp4 -i stream.mp4 -filter_complex vstack vComb.mp4
也可以创建一个视频马赛克
ffmpeg -i field.mp4 -i moon.mp4 -i relax.mp4 -i stream.mp4 \
-filter_complex "[0:v][1:v]hstack[h1];[2:v][3:v]hstack[h2];[h1][h2]vstack[v]" \
-map "[v]" -c:v libx264 -crf 18 combAll.mp4
以上内容来自yichuanzhu.com/creating-powerpoint-compatible-videos-with-ffmpeg
另外一篇很不错的参考
让以happy1/2/3等命名的图片,做成视频,并且1秒一张:
ffmpeg -framerate 1 -i happy%d.jpg -c:v libx264 -r 30 output.mp4
上面的命令需要输入图像,.这将搜索具有最低数字的图像,并将其设置为起始图像。然后,它将该数字递增 1,如果图像存在,它将被添加到序列中。你可以自己指定起始映像,如果我们添加到上面的命令中,起始映像将是 。-i happy%d.jpg-start_number n-start_number 3happy3.jpg
选项总是写在它们引用的文件之前,因此在我们的示例中,是用于输入图像的选项,也是输出文件的选项。-framerate 1 -i-c:v libx264 -r 30
我们用来定义读取图片的速度,在本例中为每秒 1 张图片。省略帧速率将默认为 25 帧速率。-framerate 1
-r 30是输出视频的帧速率。同样,如果我们不定义它,它将默认为 25。
指定用于对视频进行编码的编解码器。 是用于将视频流编码为 H.264/MPEG-4 AVC 压缩格式的库。-c:v libx264x264
您可以添加 或(当您的输出为 H.264 时)以提高视频与各种播放器的兼容性:-vf format=yuv420p-pix_fmt yuv420p
$ ffmpeg -framerate 1 -i happy%d.jpg -c:v libx264 -r 30 -pix_fmt yuv420p output.mp4
使用 FFmpeg concat 解复用器
您可以使用 concat 解复用器连接文件中列出的图像。
下面,我们创建一个带有标签的文件,并为幻灯片添加图像列表。我们指定每个图像将显示的持续时间(2 秒)。您可以为每个图像指定不同的持续时间:input.txt
file 'happy1.jpg'
duration 2
file 'happy2.jpg'
duration 2
file 'happy3.jpg'
duration 2
file 'happy4.jpg'
duration 2
file 'happy5.jpg'
duration 2
file 'happy6.jpg'
duration 2
然后,我们运行以下命令来输出图像的视频幻灯片:
$ ffmpeg -f concat -i input.txt -c:v libx264 -r 30 -pix_fmt yuv420p output.mp4
将音频添加到视频幻灯片
您可以通过添加音轨来使视频幻灯片更有趣:
$ ffmpeg -framerate 1 -pattern_type glob -i '*.jpg' -i freeflow.mp3 \
-shortest -c:v libx264 -r 30 -pix_fmt yuv420p output6.mp4
上面添加了第二个输入文件,该文件是音频文件。-i freeflow.mp3
该选项将输出视频的长度设置为两个输入文件中的最短长度。由于我们的音频文件比六张图像的幻灯片长,因此输出视频的长度就是幻灯片的长度。-shortest
向视频幻灯片添加过渡效果
您可以通过在从一个图像过渡到另一个图像时添加一些效果来进一步改进视频幻灯片。
下面为图像添加淡入淡出效果:
$ ffmpeg \
-loop 1 -t 5 -i happy1.jpg \
-loop 1 -t 5 -i happy2.jpg \
-loop 1 -t 5 -i happy3.jpg \
-loop 1 -t 5 -i happy4.jpg \
-loop 1 -t 5 -i happy5.jpg \
-loop 1 -t 5 -i happy6.jpg \
-i freeflow.mp3 \
-filter_complex \
"[0:v]scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=out:st=4:d=1[v0]; \
[1:v]scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=in:st=0:d=1,fade=t=out:st=4:d=1[v1]; \
[2:v]scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=in:st=0:d=1,fade=t=out:st=4:d=1[v2]; \
[3:v]scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=in:st=0:d=1,fade=t=out:st=4:d=1[v3]; \
[4:v]scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=in:st=0:d=1,fade=t=out:st=4:d=1[v4]; \
[5:v]scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2,setsar=1,fade=t=in:st=0:d=1,fade=t=out:st=4:d=1[v5]; \
[v0][v1][v2][v3][v4][v5]concat=n=6:v=1:a=0,format=yuv420p[v]" -map "[v]" -map 6:a -shortest output7.mp4
该选项指定每个图像的持续时间(以秒为单位)并循环图像。我们添加一个音频文件,然后添加一些配置,这将添加淡入淡出效果。-t-loop 1-i freeflow.mp3filter_complex
我们使用的一些图像具有不同的尺寸,因此我们使用 with 将图像调整为特定尺寸,使它们均匀。 淡入或淡出图像,设置淡入或淡入的持续时间并指定淡入淡出的开始时间。scalepadfadedst
使用https访问 shotstack.io/learn/use-ffmpeg-to-convert-images-to-video/
标签:视频,ffmpeg,参考,FFMPE,图像,jpg,mp4,文章,out From: https://www.cnblogs.com/zhangruipeng/p/17461673.html