我当前正在使用cloud_firestore:^ 0.13.7和video_player:^ 0.10.12 + 2!当我显示来自Firestore的视频(已经成功上传到Firebase)时,他们实际上一起工作得很好。但是有时候,并非总是如此,在显示视频时会出现奇怪的宽高比问题。
firestore的视频效果很好。但是,视频的纵横比是如此奇特,而视频却可以很好地播放而不会出现错误。例如,当我上传长宽比为300 * 400像素的视频时,长宽比为300 * 200或类似300 * 150(我无法找到缩小视频的确切长宽比)的丑陋视频会在我的应用中播放。此外,这种怪异的缩小并非总是会发生,而只是在某些时候会不可预测地发生。下面的代码段是我如何在应用中播放Firestore视频的方法:
ClipRRect(
borderRadius: BorderRadius.circular(40.0),
child: Column(children: [
Center(
child: FutureBuilder(
future: _controller.initialize(),
builder: (context, snapshot) {
if (snapshot.connectionState == ConnectionState.done) {
if (_controller.value.initialized) {
return AspectRatio(
aspectRatio: _controller.value.aspectRatio,
child: GestureDetector(
onTap: () {
if (!_controller.value.isPlaying) {
setState(() {});
_controller.initialize();
}
},
child: VideoPlayer(
_controller,
),
),
);
} else {
return Center(
child:
Image.asset('assets/images/logo_edit1.png'));
}
} else {
return Center(
child: Image.asset('assets/images/logo_edit1.png'));
}
},
),
),
FloatingActionButton(
onPressed: () {
setState(() {
_controller.value.isPlaying
? _controller.pause()
: _controller.play();
});
},
child: Icon(
_controller.value.isPlaying
? Icons.pause
: Icons.play_arrow,
),
heroTag: null,
),
]),
),
奇怪的是,视频收缩并非总是发生,而且并非所有视频都发生,这都是完全不可预测的。 希望有人能弄清楚为什么发生这种奇怪的视频收缩现象,并能告诉我适当的解决方案。
清晰的答案非常感谢!!!预先感谢您[: