我知道这个话题已经被提出来了,但我从来没有从页面上得到任何东西。我的答案的一个线索是,我需要将GIF拆分成每个帧,但如何拆分呢?与此相关的一些代码将不胜感激。非常感谢。
发布于 2016-04-05 02:36:42
使用GIFLIB读取gif动画。GIFLIB提供了一个方便的"slurp“函数,它可以将整个文件读取到结构体中,然后您可以很容易地从其中检索帧。这已经有一段时间了,但是IIRC从一个gif帧构建SDL_Texture
时,您需要从每个像素的调色板中查找颜色。由于gif没有固定的帧速率,因此您还需要存储每个帧的各个延迟时间。有关gif文件格式的详细描述,请阅读this,它将帮助您理解gif文件格式。
也就是说,我建议不要将笨重的GIF格式用于动画(和其他大多数东西),因为它非常需要空间,而且你可能无法很好地同步你的音频。我建议四处寻找一种播放“真正的”视频格式的方法--看看this project。
https://stackoverflow.com/questions/36267833
复制相似问题