在Flutter中如何减小视频录制的大小?

3

我正在使用 Flutter camera 插件 来录制视频。但是录制出来的视频文件太大了,一分钟大约有20MB。请问有什么方法可以减小文件大小吗?其中一个方法是减小分辨率,请问如何操作?另外,我已经将 VideoEncodingBitRate 更改为3000000,像这样:mediaRecorder.setVideoEncodingBitRate(3000000);

1个回答

1

为了减小大小,你可以采用以下两种方法之一或同时采用:

分辨率

你可以在示例中看到它们controller = CameraController(cameras[0], ResolutionPreset.medium);,将其更改为ResolutionPreset.low或其他自定义值(不一定要使用preset

编码

你可以使用不同的编码算法,例如使用此插件的FFmpeg https://pub.dartlang.org/packages/flutter_ffmpeg。还可以参考这个问题和它的答案how to reduce size of video before upload to server programmatically in android


2
ResolutionPreset.high、ResolutionPreset.medium和ResolutionPreset.low都给我提供了相同大小的视频。在这3个选项中,我得到的视频大小大约为21 MB。 - divyanshu bhargava

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接