在具有透明背景的 flutter 上播放视频

play video on flutter with transparent background

我在 blender 上做了一些复杂的 3d 动画,我想在 flutter 上播放它们。问题是,当我将动画导出到视频中并将其放在我的 flutter 应用程序中时,透明背景消失了。我正在使用 video_player 在 flutter 上播放视频,我使用的视频扩展名是 .webm,因为这是我所知道的唯一可以在 flutter 上读取并具有透明背景但应用程序在视频。

当前播放器插件在 Android 上使用 ExoPlayer。我在 repo 上找到了这个 issue

我得到的结论是视频播放器插件不是最好的主意。所以我一直在寻找 flutter 如何管理 gif 并且它可以完美地管理 alpha 通道,因为它可以管理图像上的 alpha 通道。但下一个问题是如何控制 gif,为此我使用 gifimage 插件,它可以很好地再现动画。最后一个问题是从 blender 导出到 gif,blender 不能导出 gif 格式,所以你应该用 Qt 动画编解码器导出到 quicktime 格式,然后将其转换为 gif。如果由于某种原因 gif 的第一帧保留为 gif 的背景,您应该使用 photoshop 编辑 gif,并在时间轴中将第一帧更改为不消失。