gpt4 book ai didi

ios - 从服务器预加载视频文件以便在 MPMoviePlayerController 中播放

转载 作者:行者123 更新时间:2023-11-29 04:14:03 25 4
gpt4 key购买 nike

我的应用程序需要在不同时间从服务器下载大量视频,我想知道是否有办法下载视频数据并将其存储以供以后播放?我最初下载了视频数据并将其存储到 NSData(见下文)中,但这不能在 MPMoviePlayerController 中使用。

NSString *imageURL = [NSString stringWithFormat:@"%@%@",@"http://wildknowledge.co.uk",[mapPoint objectForKey:@"videopath"]];

[mapPoint setObject:[NSData dataWithContentsOfURL:[NSURL URLWithString:[imageURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]] forKey:@"videopath"];

然后我想我可以使用以下内容设置 URL 供以后使用:

NSString *imageURL = [NSString stringWithFormat:@"%@%@",@"http://wildknowledge.co.uk",[mapPoint objectForKey:@"videopath"]];

NSURL *movieURL = [[NSURL alloc] initFileURLWithPath:imageURL];
[mapPoint setObject:movieURL forKey:@"videopath"];

但显然 NSURL 只存储完整的 url 位置,而不存储该位置的数据,因此在播放视频时,它必须先对其进行缓冲,这是我不希望的。

那么谁能告诉我如何存储 NSURL 中的数据以供以后使用?

最佳答案

如果我是你,我会使用 NSFileHandle读取电影 block 并将它们直接保存到文件系统。这样您就永远不会将电影保留在内存中,因此您的应用程序不会崩溃,因为您永远不会超出可用内存。

当我必须下载一个大数据库(>700MB)时,我在应用程序中使用了这种方法,并且效果非常好。但是,根据电影大小,您可能需要添加验证机制以确保传输成功,例如 md5 校验和。

关于ios - 从服务器预加载视频文件以便在 MPMoviePlayerController 中播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13956523/

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