AVPlayer 播放 m3u8 流时如何捕获图像?

2023-12-14

I use AVPlayer玩一个m3u8文件,我想在这些代码中捕获图像:

AVAssetImageGenerator *gen = [[AVAssetImageGenerator alloc] initWithAsset:self.player.currentItem.asset];
gen.appliesPreferredTrackTransform = YES;
NSError *error = nil;
CMTime actualTime;
CMTime now = self.player.currentTime;
[gen setRequestedTimeToleranceAfter:kCMTimeZero];
[gen setRequestedTimeToleranceBefore:kCMTimeZero];
CGImageRef image = [gen copyCGImageAtTime:now actualTime:&actualTime error:&error];
UIImage *thumb = [[UIImage alloc] initWithCGImage:image];
NSLog(@"%f , %f",CMTimeGetSeconds(now),CMTimeGetSeconds(actualTime));

NSLog(@"%@",error);
if (image) {
    CFRelease(image);
}

但它不起作用。错误是:

Error Domain=AVFoundationErrorDomain Code=-11800 "The operation could not be completed" UserInfo=0x7fadf25f59f0 {NSUnderlyingError=0x7fadf25f1670 "The operation couldn’t be completed. (OSStatus error -12782.)", NSLocalizedFailureReason=An unknown error occurred (-12782), NSLocalizedDescription=The operation could not be completed}

我该如何解决?
多谢。


AVAssetImageGenerator可能需要本地资产。也许你会更幸运添加一个AVPlayerItemVideoOutput给你的AVPlayer,寻找所需地点并呼叫copyPixelBufferForItemTime:itemTimeForDisplay:在视频输出上。

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

AVPlayer 播放 m3u8 流时如何捕获图像? 的相关文章

  • Java:ImageIcon 与 Image 的区别

    谁能以菜鸟的方式向我解释一下两者之间有什么区别图像图标 and ImageJava 中的类 对象 谢谢 它们的性质和应用是不同的 Image http docs oracle com javase 6 docs api java awt I
  • UICollectionView 自动滚动到 IndexPath 处的单元格

    在加载集合视图之前 用户设置集合视图数组中的图像数量 所有单元格都不适合屏幕 我有 30 个单元格 但屏幕上只有 6 个 问题 如何在加载 UICollectionView 时自动滚动到具有所需图像的单元格 新的 编辑过的答案 将其添加到v
  • 修补应用内购买黑客;卡在第四步

    正如我们许多人所知 苹果最近出现了一种情况 黑客可以免费获得任何应用内购买 苹果最近发布了这个文件 http developer apple com library ios releasenotes StoreKit IAP Receipt
  • NSString – 静态还是内联?有性能提升吗?

    如果我写的话会有任何性能提升吗 NSString helloStringWithName NSString name static NSString formatString Hello return NSString stringWith
  • 确定 SceneKit 中 SKVideoNode 的视频大小/长宽比

    如何从 AVPlayer 获取视频的视频大小来设置节点的几何大小 例如 我有一个具有宽度和高度的 SCNPlane let planeGeo SCNPlane width 5 height 5 所以现在我实例化我的视频播放器 let vid
  • 使用 iPhone 中的地图视图读取当前位置名称

    我读取了当前位置的纬度和经度值 然后成功将该位置固定在 iPhone 中 现在我想使用这个纬度和经度值读取该地名 我使用以下代码来读取查找当前位置 void mapView MKMapView mapView1 didUpdateUserL
  • 在横向中自动调整 UITableCells 内容的大小

    在 UITableView 中 我通过 UILabels 将内容添加到单元格中 定义最佳尺寸 与单元格宽度允许的一样大 我注意到只有tableView contentSize width是可靠的 因为cell contentView bou
  • 使用 openCV 对图像中的子图像进行通用检测

    免责声明 我是计算机视觉菜鸟 我看过很多关于如何在较大图像中查找特定子图像的堆栈溢出帖子 我的用例有点不同 因为我不希望它是具体的 而且我不确定如何做到这一点 如果可能的话 但我感觉应该如此 我有大量图像数据集 有时 其中一些图像是数据集的
  • 如何知道我的应用程序使用了多少 iCloud 空间?

    有没有办法查看我的应用程序正在备份到 iCloud 的内容以及它消耗了多少内存 Settings gt iCloud gt Storage Backup gt Manage Storage将显示正在备份的总计内容 iOS 会备份位于应用程序
  • GeoFire Swift 3 - 保存和更新坐标

    我正在尝试使用 GeoFire 将坐标存储到 Firebase 数据库中 我不确定如何更新新坐标 因为它们每秒都会更改 更新 随着childByAutoId 它正在为每辆自行车生成一个新的唯一 ID 如何引用这个唯一的自行车 ID 例如 用
  • 是否可以使用 Firebase 安排推送通知? [复制]

    这个问题在这里已经有答案了 我已经阅读了我能找到的所有文档 但仍然不知道这是否可行 如果我是用户 我可以安排特定时间的推送通知吗 Example 1 我是用户并打开应用程序 2 我允许通知并转到 pickerView 或其他任何内容 并设置
  • 如何使用AudioKit保存音频文件?

    我有音频文件 我给它做了一些效果 let pitchshifter AKPitchShifter self audioPlayer pitchshifter shift 10 AudioKit output pitchshifter 如果我
  • 在 iOS 上将 NSString 转换为 NSDate 的正确方法?

    我一直在使用此方法将常规 NSString 对象转换为 NSDate 但尝试向 Apple 提交更新 但遭到拒绝 在 iOS 中还有什么其他方法可以做到这一点 NSString date str 2011 08 12T12 20 00Z N
  • UIButton的高亮状态由什么控制事件开始和结束

    我正在创建类似钢琴的视图UIButton作为钢琴键 什么UIControlEvents当按钮获得和失去突出显示状态时 我应该监听以获得回调吗 我试图创建子类UIButton并添加属性观察者highlighted并且运行良好 然而 有时我需要
  • 在 Android 中调整可绘制对象的大小

    我正在为进度对话框设置一个可绘制对象 pbarDialog 但我的问题是我想每次调整可绘制的大小 但不知道如何调整 这是一些代码 Handler progressHandler new Handler public void handleM
  • 在 iOS 中,如何创建一个始终位于所有其他视图控制器之上的按钮?

    无论是否呈现模态或用户执行任何类型的转场 有没有办法让按钮在整个应用程序中 始终位于顶部 而不是屏幕顶部 有什么方法可以让这个按钮可拖动并可捕捉到屏幕上吗 我正在以苹果自己的辅助触摸作为此类按钮的示例 您可以通过创建自己的子类来做到这一点U
  • UIImageJPEGRepresentation 在视网膜显示屏上提供 2x 图像

    我有这段代码 它创建一个图像 然后向其添加一些效果并缩小其大小以使其largeThumbnail UIImage originalImage UIImage imageWithData self originalImage thumbnai
  • react-native - 图像需要来自 JSON 的本地路径

    你好社区 我正在react native中开发一个测试应用程序 并尝试从本地存储位置获取图像 我实际在做什么 我将图像直接链接源提供给 var 并在渲染函数中调用此方法 react 0 14 8 react native 0 23 1 np
  • 在 iOS 7 Safari 中,如何区分通过边缘滑动与后退/前进按钮的 popstate 事件?

    在 iOS 7 Safari 中 现在有两种后退 前进导航方式 使用底部的传统后退 前进按钮箭头或从屏幕边缘滑动 我正在使用动画在 ajax 应用程序中的页面之间进行转换 但如果用户通过边缘滑动进行导航 我不想触发该转换 因为这本身就是一个
  • PFQueryTableViewController 错误

    我正在遵循在线教程 使用 Parse 作为后端创建照片共享应用程序 我已经运行了两次教程 两次都从头开始创建应用程序 但在同一位置仍然出现相同的错误 我到处寻找解决方案 但仍然没有运气 我正在使用 PFQueryTableViewContr

随机推荐

  • 如何在画布上绘制像素字体而不使用抗锯齿

    我有一个像素艺术字体 在 ttf 文件中 我发现它的原始分辨率为 8 像素 CTX font 8px mainfont 当我执行 fillText 时 字体在 Firefox 中显示完美 但在 chrome 中显示模糊 firefox ch
  • 如何在 Linux 中以编程方式检测 IP 地址更改?

    有没有办法使用 C 以编程方式检测 Linux 中本地计算机上的 IP 地址更改 给你 这不需要轮询就可以完成 它只监听 RTM NEWADDR 但如果需要的话应该很容易更改为支持 RTM DELADDR include
  • 通过反射检测本机对象

    我正在使用基于反射的对象翻译器 它基本上循环遍历对象的属性 并将值分配给翻译对象上具有相同名称 类型的属性 对象A Name 乔 翻译为 ObjectB Name 乔 我需要提出一个特殊情况 当属性是自定义类时 例如 对象A 地址 我希望我
  • Bash、grep 在具有指定字符串的两行之间

    Example a43 test1 abc cvb bnm test2 kfo 我需要 test1 和 test2 之间的所有行 普通的 grep 在这种情况下不起作用 你有什么建议吗 打印自test1 to test2 包括触发线 awk
  • Delphi中如何将一个数组附加到另​​一个相同类型的数组?

    如何在不使用迭代语句的情况下将一个数组附加到另 一个相同类型的数组 for or while循环 在德尔福 在最新的 Delphi 版本 XE7 中 您可以使用 运算符或Concat附加数组的例程 Link 官方帮助 没有提到 否则编写您自
  • 如何防止内联函数绑定到旧状态值

    在使用钩子的 React 组件的项目中 我试图了解如何正确避免调用绑定到旧状态值的回调 下面的示例说明了这个问题 但不是我正在处理的代码 import React useState useEffect from react import R
  • Blazor 服务器和实体框架。如何避免对数据库的多次冲突调用

    Summary 在我的 Razor 页面中 单个用户操作会触发两个事件 这些事件会导致对 EF 的调用 从而导致错误 System InvalidOperationException HResult 0x80131509 消息 A 在上一个
  • 限制pytest中要执行的测试用例的数量

    一点背景 我正在使用 Jenkins 执行我的测试用例 我现在正在使用 Jenkins 进行一些 POC 而且 就我而言 有 500 多个测试用例 需要一个小时才能执行 我只想执行一个测试用例 只是为了知道我在执行 Jenkins POC
  • 如何将 datagridview 行添加到 xml 文件?

    我是 c 的初学者 我创建了一个dataGridView1 in a Form我添加了一些行和列 不使用DataSet and Datatable 现在我需要发送数据dataGridView1到一个 xml 文件 xml 文件应该updat
  • OpenStack 中的通知

    我感兴趣的是如何向其他应用程序通知 openstack 中的事件 例如 我不想在我的应用程序中知道 nova 中的实例何时被挂起或恢复 是否有任何网络钩子或类似的东西我可以在哪里获得该信息 我正在查看有关通知的官方文档 但我无法从中得出任何
  • VB.NET 将查询字符串解析为数组

    我有这个字符串 1 True 2 150 minutes 3 True 4 True 5 Continuing to smoke 我怎样才能将它放入数组或对象中 如下所示 1 gt True 2 gt 150 minutes etc 我已经
  • Jfreechart:在 x 轴上显示周数的天数

    我正在使用 JFreeChart 显示一个月中每一天的值 现在我想让我的 x 轴显示一个月中的几周而不是几天 目前 我的图表的 y 轴值是 double x 轴值是 int Timestamp ts a getTimestamp Doubl
  • PDO - 致命错误:在非对象上调用成员函数 fetch() [重复]

    这个问题在这里已经有答案了 如果我尝试运行以下 PHP 代码 我会得到一个 调用非对象上的成员函数 fetch 你知道为什么吗 我在另一个网站上使用相同的代码 它运行得很好
  • z-index 属性不起作用

    嗨 伙计 我有以下代码 当我单击某个按钮时我不会这样做fadeTo只有内容没有 some tag在这种情况下fadeTo涉及 some tag div div div div content width 100 height 100 out
  • 6000万条条目,精选某月的条目。如何优化数据库?

    我有一个包含 6000 万条条目的数据库 每个条目包含 ID 数据源ID 一些数据 DateTime 我需要选择特定月份的条目 每个月包含大约 200 万个条目 select from Entries where time between
  • Watir Webdriver(0.9.1) 不再打开 Firefox 实例

    在将 Watir Webdriver v0 9 1 用于 Rails 以及 Selenium Webdriver 2 53 1 时 Firefox 在打开时 browser Watir Browser new firefox 被称为 然而现
  • 推荐一种在Java中将同步方法转为异步的更好方法

    类中有一些同步运行的方法 我希望它们异步运行 第一个想法是包装它 并使用 switch 枚举来决定应该调用哪个函数 但对于调用的每个方法 我都需要包装类中的一个新方法和一个新的枚举 它看起来像这样 public class QueuedSh
  • 如何为工作表制作下拉列表

    我的工作簿中共有五张工作表 我的任务是在第一个工作表中创建一个组合列表按钮 该按钮将能够指向其他四个工作表 如果用户选择工作表名称之一 则该按钮将自动激活所选工作表 尽管可能会添加工作表 但不太可能删除工作表 我什至不确定如何让工作表名称显
  • 在 Selenium Android Webdriver 测试中使用 Xpath 和 CSS 查找元素有困难

    我想使用 Selenium WebDriver 自动化 Android Web 应用程序 并且我运行了一个简单的程序来打开 google 页面并搜索术语 当找到具有名称和 ID 的元素时 它运行完美 但是 尝试使用 Xpath 和 Css
  • AVPlayer 播放 m3u8 流时如何捕获图像?

    I use AVPlayer玩一个m3u8文件 我想在这些代码中捕获图像 AVAssetImageGenerator gen AVAssetImageGenerator alloc initWithAsset self player cur