如何从资源 URL 保存视频

2024-02-08

我想将视频从资源 URL 保存到我的应用程序文档中。我的资产网址如下:-

"assets-library://asset/asset.MOV?id=1000000394&ext=MOV"

我试过这个:-

NSString *str=@"assets-library://asset/asset.MOV?id=1000000394&ext=MOV";
NSData *videoData = [NSData dataWithContentsOfURL:[NSURL URLWithString:str]];
[videoData writeToFile:mypath atomically:YES];

但在第二行 [NSData dataWithContentsOfURL:[NSURL URLWithString:str]] 我因为这个原因导致程序崩溃:-由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[NSURL 长度]:发送到实例的无法识别的选择器

我想知道如何访问资产视频网址。

谢谢你的帮助。


我认为你最好的选择是使用该方法

getBytes:fromOffset:length:error:

of

ALAssetRepresentation

您可以像这样获取资产的默认表示形式

ALAssetRepresentation *representation = [someVideoAsset defaultRepresentation];

所以我的脑海中应该是这样的(我不在我的 Mac 身边,所以这个hasn't经过测试)

ALAssetsLibrary *assetLibrary=[[ALAssetsLibrary alloc] init];
[assetLibrary assetForURL:videoUrl resultBlock:^(ALAsset *asset) {
    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];
    [data writeToFile:filePath atomically:YES];
} errorBlock:^(NSError *err) {
    NSLog(@"Error: %@",[err localizedDescription]);
}];

Where videoUrl是您尝试复制的视频的资源 URL,并且filePath是您尝试将其保存到的路径。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从资源 URL 保存视频 的相关文章

  • SpriteKitPhysicsBody非矩形碰撞

    pipeUp physicsBody SKPhysicsBody rectangleOfSize pipeUp size 在此编码中我使用了rectangleOfSize对于碰撞物理体 但如果我想按像素仅使用图像的形状 我应该使用什么而不是
  • Objective C UIImagePNGRepresentation内存问题(使用ARC)

    我有一个基于 ARC 的应用程序 它从 Web 服务加载大约 2 000 个相当大 1 4MB 的 Base64 编码图像 它将 Base64 解码后的字符串转换为 png图像文件并将其保存到磁盘 这一切都是在一个循环中完成的 我不应该有任
  • 我什么时候应该对 IBOutlet 使用弱或强限定符? [复制]

    这个问题在这里已经有答案了 可能的重复 ARC 下 IBOutlets 应该强还是弱 https stackoverflow com questions 7678469 should iboutlets be strong or weak
  • 如何处理 Xcode“嵌入应用程序扩展”构建阶段

    通过添加新目标创建 共享扩展 时 Xcode 在应用程序目标设置的应用程序 构建阶段 选项卡中添加名为 嵌入应用程序扩展 的构建阶段 可以删除此阶段 但如果您尝试通过按左上角的 来添加它 您会发现可用选项中未列出 嵌入应用程序扩展 为什么会
  • 当您感兴趣的任务完成时,是什么让完成处理程序执行该块?

    我一直在询问并试图了解完成处理程序是如何工作的 我用过很多 也读过很多教程 我将在这里发布我使用的代码 但我希望能够创建自己的代码 而无需使用其他人的代码作为参考 我理解这个完成处理程序 其中调用者方法 void viewDidLoad n
  • 应用程序未通过协同设计验证?

    我在提交 iPhone 申请时遇到问题 我看到了一些类似的问题 但没有找到答案 当我存档项目并单击 验证 时 收到错误消息 应用程序未通过协同设计验证 签名无效 或者未使用 Apple 提交证书进行签名 我假设我在协同设计部分做错了什么 我
  • 我应该在哪个方法中设置 UITextField 的委托?

    在 viewDidLoad 或 init 方法中设置 UITextField 的委托是一个好习惯吗 我尝试在 init 方法中将委托设置为 self 但它没有调用相应的委托方法 当我将代码移动到 viewDidLoad 中时 它注册为将 s
  • 如何通过辅助功能 API 获取当前所选文本的全局屏幕坐标。

    我需要帮助来了解字典应用程序如何在任何应用程序上按 CMD CTRL D 时显示所选文本的以下弹出对话框 我想实施 我的可可应用程序具有相同的功能 我的应用程序将在后台运行 并显示有关所选文本的一些热键的建议 我已经实现了热键捕获 我只需要
  • 如何消除禁用的 UIButton 的灰色外观

    我有一个 UIButton 我希望它处于禁用状态时与处于正常状态时看起来完全相同 现在它看起来有点灰色 不要使用enabled属性或setEnabled NO方法 而是使用 myButton setUserInteractionEnable
  • 如何从通讯录 ios 以编程方式编辑电话号码值

    我正在尝试在 iOS 中以编程方式替换特定联系人的特定电话号码 获取联系人表单地址簿 我不知道为什么我无法保存新的电话号码并刷新地址簿以显示更改 我正在这样做 BOOL changeContactPhoneNumber NSString p
  • 使用GCD实现并发读独占写模型

    我试图了解使用 Grand Central Dispatch GCD 实现控制资源访问的并发读独占写模型的正确方法 假设有一个 NSMutableDictionary 被大量读取并且偶尔更新 确保读取始终与字典状态一致的正确方法是什么 当然
  • iOS 以编程方式将 AVI 转换为 MP4 格式

    我的应用程序中有一个查询 因为我想将 AVI 格式的视频转换为 MP4 电影格式 所以有没有什么方法可以以编程方式执行此操作 任何代码片段将不胜感激 你需要使用AVAssetExportSession将视频转换为 mp4格式 下面方法转换
  • iphone opencv - 模板匹配

    我已经在我的 iphone 项目中实现了这个 OpenCV 构建 http aptogo co uk 2011 09 opencv framework for ios http aptogo co uk 2011 09 opencv fra
  • 删除 UINavigationBar 下的 1px 边框 - 不起作用

    IBOutlet var navBar UINavigationBar self navBar setBackgroundImage UIImage forBarMetrics UIBarMetrics Default self navBa
  • 使用 Objective C 将 RGB 彩色图像更改为灰度图像

    我正在开发一个将彩色图像更改为灰度图像的应用程序 然而 有些图片显示出来是错误的 我不知道代码有什么问题 也许我输入的参数有误 请帮忙 UIImage c UIImage imageNamed downRed png CGImageRef
  • xcode 4 垃圾收集已删除?

    我正在学习 Xcode 和 Objective C 但是我正在阅读的书使用的是旧版本 3 2 的 Xcode 其中一章完全致力于内存和泄漏 说我需要通过 项目设置 gt 构建 打开垃圾收集 但是 我找不到垃圾收集设置 它已被删除还是我只是错
  • 在 iPhone 中保存会话数据

    我想将数据存储在应用程序中的不同点 以便应用程序中的对象可以访问这些数据 类似于 php 中的 session 或全局变量 我知道我可以使用 NSUserDefaults 但我不确定如何继续向它添加值然后访问它 例如 首先我想存储登录期间使
  • 如何使用libxml解析来解析xml数据

    这是一个我想使用libxml解析来解析的xml结构 我如何获取 campaign 标签的属性值 即ID对于 图像 标签 即url and size 如果我使用这些值 我可以提取 code 标签和 name 标签的值 static const
  • 如何连续关闭 2 个模态视图控制器?

    我有 2 个以模态方式呈现的视图控制器 A presents B which presents C 当我解雇C时 我也想解雇B 但我不知道该怎么做 解雇C self dismissModalViewControllerAnimated YE
  • 一旦 webapp 添加到主屏幕,是否可以强制 iphone/ipod 更新 apple-touch-icon?

    我使用 safari 的所有推荐链接和元标记创建了一个网络应用程序 例如

随机推荐

  • iOS 推送通知中的多行标题

    我正在为一个具有 iOS 和 Android 版本的应用程序集成 FCM 目前 对于 iOS 我想以多行形式发送标题 我该怎么做呢 我正在尝试使用 Firebase 控制台进行测试 但似乎没有什么对我有用 我尝试过这些 n br n r n
  • Python-请求如何在发布之前调用js函数来计算一些值?

    我使用请求 2 2 1 来登录网址http tx3 netease com logging php action login 但是这个url的登录逻辑与Django的csrf token机制不同 即 当你获取这个url时 有两个导入值for
  • jQuery Spinner:非数值

    我正在使用 jQuery Spinner 设置了最小值 0 和最大值 500 如何防止用户在输入框中直接输入非数字值 或0 500范围之外的值 当用户使用微调器按钮时 最小值和最大值起作用 但在输入表单中键入内容时则不起作用 You can
  • 如何使用 Spring Boot 通过电子邮件发送文件而不先将其存储在存储中? [复制]

    这个问题在这里已经有答案了 我正在开发一个 Spring Boot 应用程序 在我的项目中 我正在创建一个 xlsx 文件 然后我必须使用 Spring Boot 通过电子邮件发送 我可以使用 apache poi 创建该文件 但稍后通过邮
  • 忽略 CalledProcessError

    我正在使用subprocess模块和check output 在我的Python脚本中创建一个虚拟shell 它对于返回零退出状态的命令运行良好 但是对于不返回零退出状态的命令 它会返回异常 而不打印在普通shell的输出中显示的错误 例如
  • Javascript 函数的工作方式类似于 ActionScript 的 Normalize(1)

    我需要一个返回 xy 点标准化数字的公式 类似于 actionscript 的 normalize 函数 var normal x pt1 x pt2 x y pt1 y pt2 y normal Normalize 1 this I do
  • 带有构建和源子目录的 Makefile

    我正在尝试申请this https stackoverflow com questions 4036191 sources from subdirectories in makefile and this https stackoverfl
  • 从也是渲染目标的纹理中采样

    我知道这在技术上不受支持 据我所知 这是未定义的行为 但是从也被写入的纹理中采样真的是一件非常可怕的事情吗 我问这个问题是因为我需要从深度纹理中读取数据 我也需要写入该深度纹理 如果我不能这样做 这意味着我将不得不复制深度纹理 如果这没什么
  • DataGridView 数据绑定

    我举一个简单的例子来解释我想要的 我定义了一个名为Student 它有两个性质 Name and Subjects public class Student public string Name public List
  • 无法使用 kafkajs 连接到种子代理

    我正在尝试使用kafkajs为了创建一个卡夫卡消费者 但是 连接到 kafka 时出现错误 BrokerPool Failed to connect to seed broker trying another broker from the
  • Django Rest Framework 在创建记录后设置一个只读字段

    我在用着Django 2 x and Django REST Framework 我有一个模型contact作为外键 class AmountGiven models Model id models UUIDField primary ke
  • YouTube API v3 TotalResults 字段在不应该返回的情况下返回了 1 000 000

    1 我正在使用 YouTube API v3 当我发送此请求时 https www googleapis com youtube v3 search part id type video key MY KEY maxResults 50 p
  • NSArray 中的 NSString

    我正在尝试从 Array 创建一个字符串 但是 如何生成它是有条件的 如下所述 NSArray array NSArray arrayWithObjects Hello World nil array componentsJoinedByS
  • 仿蓝牙人机界面设备

    我想知道应用程序是否有可能通过 Android 设备的蓝牙模拟人机接口设备 在我的上下文中 这将是一个模拟鼠标的应用程序 应该被计算机识别为蓝牙鼠标 理想情况下 这应该可以在 java 中实现 我知道这个问题过去已经被问过好几次了 但我想知
  • 如何在 Maven 之上通过 Netbeans 创建/使用类库?

    这似乎是一个愚蠢的问题 但我有点依赖 Netbeans 7 1 向导 似乎没有选择可以做到这一点 我的网络应用程序是用 Maven 构建的 我想将它的一些包分解成一个独立构建和维护的类库 特别是 JPA 部分 但这不重要 然后我想从原始 W
  • 开发一个Android应用程序以支持英语和阿拉伯语“布局对齐”

    我正在开发一个 Android 应用程序来支持 En Ar 但我面临一个问题 如果用户从 En 更改为 Ar 用户界面的对齐方式必须从 从左到右 变为 从右到左 例子 文本视图 编辑文本 这是在恩 但在 Ar 中应该是 编辑文本 文本视图
  • 在嵌入式c中通过RS232处理ASCII命令

    我的微控制器有一个 RS232 接口 带有一组预定义的命令 有数百个命令 例如PRESSURE 50可设定压力为50 LIMIT 60可以将限制设置为 60 目前 这是使用一系列嵌套的 switch 语句来处理的 但这似乎是一个不优雅的解决
  • Android Room 数据库忽略问题“尝试了以下构造函数,但它们无法匹配”

    我的实体类 Entity tableName student data class Student var name String var age Int var gpa Double var isSingle Boolean Primar
  • 使用 gulp 运行 Protractor 和 selenium 时出现问题

    我是量角器的新手 也是 gulp 任务的新手 我有 gulp 文件 如下所示 use strict var global app files spec e2e spec js folders specs specs var gulp req
  • 如何从资源 URL 保存视频

    我想将视频从资源 URL 保存到我的应用程序文档中 我的资产网址如下 assets library asset asset MOV id 1000000394 ext MOV 我试过这个 NSString str assets librar