gpt4 book ai didi

ios - 获取从 iPhone 获取的 Gif 图像的 NSData 时无法获取 Gif 图像帧数

转载 作者:可可西里 更新时间:2023-11-01 06:07:01 28 4
gpt4 key购买 nike

从iPhone获取Gif图片的NSData时无法获取Gif图片帧数

我正在从设备中检索 Gif 图像并希望将其转换为 NSData,以便我可以检索 Gif 帧。

现在我正在做:

                CGDataProviderRef provider = CGImageGetDataProvider(largeImage.CGImage);
NSData* gifOriginalImageData = CFBridgingRelease(CGDataProviderCopyData(provider));

CGImageSourceRef src = CGImageSourceCreateWithDataProvider(provider, NULL);
size_t size = CGImageSourceGetCount(src);

or
CGImageSourceRef src = CGImageSourceCreateWithData((CFDataRef)gifOriginalImageData, NULL);
size_t size = CGImageSourceGetCount(src);

但这里的“大小”(Gif 帧计数)在每种情况下都为 0。 为什么?

如果我从包中加载相同的 Gif 图片

                NSURL *url = [[NSBundle mainBundle] URLForResource:@"crad" withExtension:@"gif"];
NSData* gifOriginalImageData = [NSData dataWithContentsOfURL:url];
CGImageSourceRef src = CGImageSourceCreateWithData((CFDataRef)gifOriginalImageData, NULL);
size_t size = CGImageSourceGetCount(src);

它给出了实际的“大小”(Gif 帧数)

最佳答案

试试这个

ALAssetRepresentation *rep = [asset defaultRepresentation];
Byte buffer = (Byte)malloc(rep.size);
NSUInteger buffered = [rep getBytes:buffer fromOffset:0.0 length:rep.size error:nil];
NSData *data = [NSData dataWithBytesNoCopy:buffer length:buffered freeWhenDone:YES];

从该数据中获取帧

关于ios - 获取从 iPhone 获取的 Gif 图像的 NSData 时无法获取 Gif 图像帧数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26237626/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com