如何在颤动中压缩视频



如何在flutter中压缩视频?我使用image_picker从图库中挑选视频,在iOS上,它将视频从30MB压缩到10MB,但在android中没有压缩。有没有一种方法可以使用飞镖来控制视频的大小或质量?flutter中是否有压缩视频的现有包?

更新:由于我最初的回答(如评论中所指出的(,还有另一个包https://pub.dev/packages/flutter_video_compress更友好的API

请参阅另一个类似问题的答案:

https://pub.dartlang.org/packages/flutter_ffmpeg非常好,并且有很好的文档说明

import 'package:flutter_ffmpeg/flutter_ffmpeg.dart';
 final FlutterFFmpeg _flutterFFmpeg = new FlutterFFmpeg();
 _flutterFFmpeg.execute("-i file1.mp4 -c:v mpeg4 file2.mp4").then((rc) => print("FFmpeg process exited with rc $rc"));

检查rc代码,如果成功,打开file2.mp4,它是压缩/处理的文件。

使用video_compress

如何使用

将其添加到包的pubspec.yaml文件中:

dependencies:
  video_compress: ^2.1.0

并导入:

import 'package:video_compress/video_compress.dart';

视频压缩

MediaInfo mediaInfo = await VideoCompress.compressVideo(
  path,
  quality: VideoQuality.DefaultQuality, 
  deleteOrigin: false, // It's false by default
);

您可以在此处了解有关此软件包的更多信息。

最新更新