对于我来说,我想通过发布请求将视频发送到主机。
我完成了许多步骤:
1-我可以使用File
数据类型从图库中获取视频文件。 (使用image_picker)。
videoSelectorGallery() async {
VideoFile = await ImagePicker.pickVideo(
source: ImageSource.gallery,
);
_videoPlayerController = VideoPlayerController.file(VideoFile)..initialize().then((_) {
setState(() { });
});
print("You selected gallery video : " + VideoFile.path);
.
.
.
}
2-我将其更改为String64bytes。
.
.
.
// Convert from file to String64byte
videoBytes = await VideoFile.readAsBytesSync();
base64Video = base64Encode(videoBytes);
print(base64Video);
}
3-我随请求发送String64bytes。
.
.
.
var body = json.encode(
{
"shopName":...,
"description":...,
"typeID":...,
"video": base64Video // <---- String64bytes
}
);
.
.
.
问题:当我发送此请求时,它需要很长时间才能完成,原因是视频尺寸较大。
我认为最好的发送速度更快的方法是压缩视频,但我不知道如何进行搜索,因此我在搜索之前先使用flutter压缩视频,但我发现了一些方法,但仍然对我不起作用
任何人都知道beeter想法如何发送更快或更好的压缩方式?