5

我写了这个要点来转换从这个令人难以置信的网站下载的 gif 数据,并将其转换为可以使用 MPMoviePlayerController 播放的 mp4。

问题是,我必须下载整个 gif 然后开始转换。我想在获取数据时进行转换,我相信,但无法确认,通过传入- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data.

有没有人尝试过这个或知道一个例子?

4

1 回答 1

1

我知道增量适用于 jpeg 和 png。它的编码有点复杂,但您应该能够在此处或 Apple 的网站上找到示例代码。无法知道它会对动画 GIF 做什么。如果它不能满足您的需求,您肯定可以找到一个开源 libgif 库,您显然需要将其移植到 iOS。我在一个项目中使用了 libjpeg turbo 来获得 JPEG 的增量解码。

您引用的 Quartz 方法的一个问题是它总是从图像开始逐步解码。因此,如果您像我一样拥有一个非常大的图像,那么随着下载大小的增加,每次请求增量图像所需的时间就越长。我实际上为此烧毁了一个 DTS 事件——Apple 工程师同意如果他们缓存中间图像会很好,这样每个请求都会建立在最后一个图像上,但他们现在没有。

于 2012-11-23T13:13:56.800 回答