问题标签 [avasset]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - AVURLAsset 错误获取 http 代码
在资产加载过程中发生错误时,我必须处理 HTTP 状态:
视频文件 URL 的HTTP 状态为410 Gone 。在这种情况下,需要从 API 重试文件,但会返回错误:
如何检索响应的 HTTP 代码或更详细的错误信息?
objective-c - 清除 AVPlayer 缓存
1) 我正在从服务器播放播放器上的视频。每次在应用上播放视频都会增加应用内存。因此,如果我观看视频 10 次,则应用内存中的视频大小会增加 10 倍。我为此使用 AVPlayer。
2) 停止流式传输 - 假设我开始观看视频并在几秒钟后停止。我注意到即使在我停止视频后,整个视频也会被下载。我取消了加载 AVAsset,清除了 AVPlayer 和 AVPlayerItem。它仍然在后台流动。
ios - avplayitem 总是处于未知状态
刚刚发现一个很奇怪的问题,
从本地存储加载 mp3 文件时,
avplayitem 总是处于未知状态,如果文件放在文件夹中,则无法播放。
方式1:
方式2:
输出:
但是如果 mp3 文件在应用程序包中,way2 代码运行良好,即使状态仍然未知,
我确定 app bundle &document 中的文件是同一个文件,它可以在任何其他软件中播放,
通过使用方式 2,捆绑文件和文档文件之间的唯一区别是,
如果 mp3 文件放在 bundle 中,这个函数可以返回元数据
但使用文档 url 返回 nil
objective-c - AVAssetImageGenerator - 获取错误代码 -11800
我尝试过同步执行此操作:
并且异步:
无论哪种方式,我都会得到AVFoundationErrorDomain Code=-11800
-NSLocalizedFailureReason=An unknown error occurred
和一个零图像。
知道我做错了什么吗?
编辑
这是我刚刚尝试过的第三个选项,但产生的错误相同:
ios - iOS 通过 AVAssetWriter 反向音频
我正在尝试使用 AVAsset 和 AVAssetWriter 在 iOS 中反转音频。以下代码有效,但输出文件比输入文件短。例如,输入文件有 1:59 的持续时间,但输出 1:50 具有相同的音频内容。
更新:
如果我直接在第一个循环中编写样本while
- 一切都很好(即使writerInput.readyForMoreMediaData
检查)。在这种情况下,结果文件的持续时间与原始文件完全相同。但是,如果我从 reversed 中写出相同的样本NSArray
- 结果会更短。
ios - iOS:收到“304 Not Modified”响应时 AVPlayerItem 中的错误
这是一个非常奇怪的错误。
我有一个 tableView,每个单元格都使用一个AVPlayer
从远程服务器流式传输视频(想想类似 Vine 的时间轴)。因此,当我滚动时,被重复使用的单元格会使用新视频重新配置其播放器。
问题是:如果我非常快速地来回滚动,让相同的视频进出屏幕,AVPlayer 发送的请求最终会发生变化,包括 HTTP 标头If-None-Match
和If-Modified-Since
,其余时间都不存在。它系统地使服务器返回304 Not Modified
响应。
这似乎不喜欢 AVPlayer 的 playerItem,它将其状态更改为AVPlayerItemStatusFailed
(有趣的是,AVPlayer 的状态仍然是AVPlayerStatusReadyToPlay
)。错误是AVErrorUnknown
(-11800) 和 OSStatus -12983 (在任何地方都没有记录,并且在整个 iOS SDK 中没有标题)。
那是它变得奇怪的时候:无论我接下来做什么,AVPlayer 和它的 playerItem 都被不可撤销地烧毁了。即使我用其他资产重新配置它们,它们也只会返回此状态并显示黑框。更奇怪的是:即使我初始化了另一个 AVPlayer、AVPlayerItem和AVAsset,它也不会再播放了,我必须杀死并重新启动应用程序。
在这一点上,我很无知。知道这里发生了什么吗?阻止播放器在其连接中包含这些标头将修复它,但它不会暴露其请求序列化程序。
ios - iOS-如何使用 AVAsset 或 AVURLAsset 获取 .mp4 文件的持续时间
我知道之前已经回答了视频类型问题的持续时间,但是我在.mp4
使用AVAsset
和 by获取文件的持续时间时遇到了真正的麻烦AVURLAsset
。我正在使用以下代码
但是每次它返回时,0
我还导入了以下内容headers
我还尝试了一些我知道的其他代码,但没有一个对我有用。如果我通过播放我的视频可以正常工作iExplorer
,我的路径很好,但不知道我错过了什么。我想分享一下我发现我AVAssets
的加载不正确请建议我应该怎么做。
ios - 裁剪区域与 iOS 中的选定区域不同?
这是 github 上的链接https://github.com/spennyf/cropVid/tree/master自己尝试一下,看看我在说什么,测试需要 1 分钟。谢谢!
我正在拍摄一个带有正方形的视频,以显示将裁剪 vid 的哪一部分。像这样:
现在我正在做一张纸,正方形上有 4 条线,顶部和底部有半条线的差异。然后我使用我将发布的代码裁剪视频,但是当我显示视频时,我看到了这个(忽略背景和绿色圆圈):
如您所见,有超过四行,所以我将其设置为裁剪某个部分,但当我使用相机中显示的相同矩形和用于裁剪的相同矩形时,它会添加更多?
所以我的问题是为什么裁剪的大小不一样?
这是我如何裁剪和显示:
这是进行裁剪的代码:
这是其余的裁剪代码:
所以我的问题是,当我使用完全相同的坐标和正方形大小时,为什么视频区域与裁剪/相机区域不同?
ios - 等待 Xcode 方法完成
我正在使用 generateCGImagesAsynchronouslyForTimes 制作一些图像并将它们保存到 a NSMutableArray
,现在当函数generateCGImagesAsynchronouslyForTimes
完成时我想使用这个数组中的图像,在所有图像都生成完成后,我怎样才能拥有我想要执行的代码。我只想把它放在completionHandler
代码块中,但我不想让它运行多次,我只想在这个方法完成后运行一次。
编辑
这都在里面- (BFTask *)createImage:(NSInteger)someParameter {
我应该把它分配给什么?
ios - AVAssetImageGenerator 性能问题
我正在尝试创建一个视频库。
要显示视频,我使用的是UICollectionView
. 每个UICollectionViewCell
都有一个带有视频缩略图的背景。为了生成视频缩略图,我使用了一种具有逻辑的方法:
我注意到generateCGImagesAsynchronouslyForTimes
它不能完全异步工作。此方法调用之间存在时间间隔。当我加载表格视图单元格时,这会导致很大的延迟。如果我评论行[generator generateCGImagesAsynchronouslyForTimes:[NSArray arrayWithObject:[NSValue valueWithCMTime:time]] completionHandler:handler]
,则没有可见的滞后(也没有图像)。
我该如何解决这个性能问题?