Какие кодеры / декодеры / мультиплексоры / демультиплексоры / парсеры / фильтры мне нужно включить в FFMpeg для преобразования видео mp4 в gif? - PullRequest
0 голосов
/ 21 июня 2020

Я создаю FFmpeg с настраиваемыми параметрами, чтобы уменьшить окончательный размер файла apk на android. Я хочу просто преобразовать файл mp4 в gif. Ниже указаны мои параметры

 --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

Какие еще параметры мне нужно добавить для успешного выполнения этой команды?

ffmpeg -y -i input.mp4 -vf "fps=15,scale=320:-1:flags=lanczos" -pix_fmt rgb24 output.gif

или этой команды

ffmpeg -y -i input.mp4 output.gif

После Я добавил модуль в Android Studio. Запускаю команду FFmpeg. Я получаю эту ошибку:

2020-06-21 12:16:09.883 8871-9102/com.example.myapplication W/mobile-ffmpeg: [graph 0 input from stream 0:0 @ 0x7088243f40] sws_param option is deprecated and ignored
2020-06-21 12:16:09.885 8871-9102/com.example.myapplication W/mobile-ffmpeg: Incompatible pixel format 'rgb24' for codec 'gif', auto-selecting format 'rgb8'
2020-06-21 12:16:09.885 8871-9102/com.example.myapplication E/mobile-ffmpeg: Output pad "default" with type video of the filter instance "Parsed_scale_1" of scale not connected to any destination
2020-06-21 12:16:09.885 8871-9102/com.example.myapplication E/mobile-ffmpeg: Error reinitializing filters!
2020-06-21 12:16:09.885 8871-9102/com.example.myapplication E/mobile-ffmpeg: Failed to inject frame into filter network: Invalid argument
2020-06-21 12:16:09.886 8871-9102/com.example.myapplication E/mobile-ffmpeg: Error while processing the decoded data for stream #0:0

Я также попытался включить ПОЛНУЮ библиотеку, и в этом случае все работало, как ожидалось.

Спасибо за вашу помощь.

...