Я пытался использовать ffmpeg для сжатия размера файла видео, чтобы я мог загрузить его в хранилище firebase.
Я запустил код в Windows cmd, и он работает. Но когда я запускаю его на флаттере, качество видео ужасное. Я также указал много значений для параметра -crf, но качество выходного видео и размер файла всегда одинаковы.
int processSuccess = await _flutterFFmpeg.execute(["-i", "file1.mp4", "-crf", "23", "fileoutput.mp4"]);
Мне пришлось изменить пакет на видео, так как при импорте по умолчанию выполнение не удалось, так как не удалось найти параметр -crf.
flutter_ffmpeg:
git:
url: git://github.com/tanersener/flutter-ffmpeg.git
ref: v0.2.1
path: packages/flutter_ffmpeg_video
Я делаю что-то не так с аргументами выполнения или импорт, который я использую, не является правильным пакетом. Извините, я очень новичок в ffmpeg.
Спасибо за помощь.

В итоге для сжатия использовал flutter_video_compress. Хорошо работает https://pub.dartlang.org/packages/flutter_video_compress
Я вижу, что вы используете video пакет flutter_ffmpeg, который, к сожалению, не включает библиотеки под лицензией GPL, такие как x264. Если вы используете пакет с лицензией GPL, такой как min-gpl, https-gpl или full-gpl, то ваше выходное видео будет закодировано с x264 и будет иметь лучшее качество.
Используйте пакет flutter_ffmpeg 21 упаковка в соответствии с вашими требованиями.
Конфигурация
В Android отредактируйте файл android/build.gradle и определите имя пакета в переменной ext.flutterFFmpegPackage.
ext {
flutterFFmpegPackage = "<package name>"//e.g "full-gpl"
}