如何在flutter中从视频路径生成缩略图

问题描述 投票:0回答:1

我有内部存储中所有视频文件的列表。现在我想将每个视频显示为图块,并将视频缩略图显示为图块的前导。

如何为这些视频生成缩略图?

flutter dart flutter-dependencies
1个回答
-3
投票

对于其他人。使用 video_player 插件作为缩略图。它与这些库非常有效,也适用于 ios。只需创建 statefullWidget 作为项目(如果您想在列表中显示,请使用该小部件作为项目)。请参阅下面的示例。

class _VideoItemState extends State<VideoItem> {
VideoPlayerController _controller;

@override
void initState() {
super.initState();
_controller = VideoPlayerController.network(widget.video.file.path)
  ..initialize().then((_) {
    setState(() {});  //when your thumbnail will show.
  });
}

@override
void dispose() {
super.dispose();
_controller.dispose();
}

@override
Widget build(BuildContext context) {
return ListTile(
  leading: _controller.value.initialized
      ? Container(
          width: 100.0,
          height: 56.0,
          child: VideoPlayer(_controller),
        )
      : CircularProgressIndicator(),
  title: Text(widget.video.file.path.split('/').last),
  onTap: () {
    Navigator.push(
      context,
      MaterialPageRoute(
        builder: (context) =>
            VideoPlayerPage(videoUrl: widget.video.file.path),
      ),
    );
  },
);
 }
}
© www.soinside.com 2019 - 2024. All rights reserved.