我正在尝试为https://github.com/ginsweater/gif-h创建一个最小用法示例
但是,从大小为vector<uint8_t>
的{{1}}开始,第二个GifWriteFrame调用会引发访问冲突读取位置异常
我的尝试
imageWidth*imageHeight
对于上述几点,发布的代码只是一个最小的示例。怎么了?
答案 0 :(得分:0)
这有效
#include <vector>
#include <cstdint>
#include <gif.h>
int main()
{
int width = 100;
int height = 200;
std::vector<uint8_t> vi1(width * height * 4, 0);
std::vector<uint8_t> vi2(width * height * 4, 255);
auto fileName = "bwgif.gif";
int delay = 100;
GifWriter g;
GifBegin(&g, fileName, width, height, delay);
GifWriteFrame(&g, vi1.data(), width, height, delay);
GifWriteFrame(&g, vi2.data(), width, height, delay);
GifEnd(&g);
return 0;
}