dart 如何保存用相机包录制的视频到Flutter中的画廊?

c3frrgcw  于 2023-06-27  发布在  Flutter
关注(0)|答案(3)|浏览(137)

我正在使用camera package在应用程序中录制视频。如果录制的视频保存到应用程序缓存目录,如何保存到图库?我能够得到'XFile',但我真的不知道如何从那里去。

final file = await _cameraController.stopVideoRecording();
print(file.path); // /data/user/0/com.example/cache/REC804616628562956211.mp4

此外,我应该在复制文件后将其从缓存中删除吗?我该怎么做?

cvxl0en2

cvxl0en21#

我自己解决了这个问题。我使用gallery_saver package将录制的视频保存到画廊。然后我可以使用dart:io从缓存中删除视频文件。

final video = await _cameraController.stopVideoRecording();
await GallerySaver.saveVideo(video.path);
File(video.path).deleteSync();
0mkxixxg

0mkxixxg2#

上面的解决方案对我来说并不奏效。录制的视频保存在我的手机里,但没有保存在我同事的手机里。我推荐gallery_saver和image_picker包。你可以在这里查看示例:https://pub.dev/packages/gallery_saver
视频被记录并保存。使用相机插件,我面临另一个问题,通过自拍相机的视频变暗了。

yqkkidmi

yqkkidmi3#

gallery_saver已经两年没有维护了。我只是用gal package代替。

import 'package:gal/gal.dart';

await Gal.putVideo(path);

相关问题