有一个mp4文件,其大小为1.1 MB
。现在我想将字幕刻录到它,然后将其转换为gif
。
这是我的步骤。
由于我不需要音频,因此我将音频和尺寸更改从1.1MB
移至784KB
。
# remove audio
ffmpeg -i input.mp4 -c copy -an input_nosound.mp4
为了调整reulst gif的大小,我调整了输入mp4文件的大小。现在它的大小从784KB
更改为298KB
。
# resize
ffmpeg -i input_nosound.mp4 -s 250x150 -c:a copy input_resize.mp4
这一步很正常。该尺寸从298KB
更改为290KB
。
ffmpeg -i input_resize.mp4 -vf ass=subtitles.ass output.mp4
轻轻加速视频也可以将尺寸从290KB
缩小到247KB
。
ffmpeg -i output.mp4 -an -filter:v "setpts=0.8*PTS" output_speed.mp4
我将mp4转换为gif。 gif的大小为3MB
。
ffmpeg -y -i output_speed.mp4 -vf palettegen palette.png
ffmpeg -y -i output_speed.mp4 -i palette.png -filter_complex paletteuse -r 8 animation.gif
我使用https://github.com/kornelski/giflossy/来压缩gif。最后,output.gif为1.5MB
。不过我认为它也太大了。是否有任何可接受的压缩方式小于1MB
。
另外,我对ffmpeg
不熟悉所以如果你认为我的问题不好请告诉我。