我正在使用自定义选项构建FFMpeg以减少android上的.so文件的最终大小。我想将mp4文件转换为gif。我已经设置了一些选项,因为我正在对mp4视频和aac音频进行其他处理。现在我被困在成功将mp4视频转换为gif。
以下是我指定的选项
--disable-everything
--enable-decoder=mpeg4,mpegvideo,aac,gif
--enable-parser=aac,mpeg4video,mpegaudio,mpegvideo,gif
--enable-demuxer=mpegvideo,aac,mov,gif
--enable-muxer=mp4,gif,mov
--enable-protocol=file
--enable-encoder=mpeg4,mov,gif
--enable-filter=scale,fps,copy,palettegen,vflip,paletteuse,crop
成功运行此命令需要添加哪些其他选项?
ffmpeg -y -i input.mp4 -vf "fps=15,scale=320:-1:flags=lanczos" -pix_fmt rgb24 output.gif
答案 0 :(得分:0)
启用日志后,我发现我缺少h264的解码器。这是更新的选项。将h264添加到解码器,解析器,编码器,解复用器,复用器(虽然添加到所有这些都是不必要的但它可以工作)arm的组合.so文件小于3MB。
--disable-everything
--enable-decoder=mpeg4,mpegvideo,aac,gif,h264
--enable-parser=aac,mpeg4video,mpegaudio,mpegvideo,gif,h264
--enable-demuxer=mpegvideo,aac,mov,gif,h264
--enable-muxer=mp4,gif,mov,h264
--enable-protocol=file
--enable-encoder=mpeg4,mov,gif,h264
--enable-filter=scale,fps,copy,palettegen,vflip,paletteuse,crop