ios - 如何在 iOS 中枚举家庭视频?

标签 ios swift video

我了解如何使用 PHPhotoLibrary 枚举照片库中的图像和视频,但通过 iTunes 添加的视频作为“家庭视频”,只能通过“家庭视频”部分下的新电视应用可见,不要出现在该枚举中。

还有其他查询方式吗?

最佳答案

好吧,看来您唯一可以尝试使用的就是 Media Player API。

https://developer.apple.com/documentation/mediaplayer/mpmediaquery

A query that specifies a set of media items from the device's media library by way of a filter and a grouping type.

这可能行得通,因为我假设您同步的电影是媒体库的一部分,而不是照片库的一部分。

首先,您需要将 NSAppleMusicUsageDescription 添加到您的 Info.plist。然后我们可以使用 MPMediaQuery 并过滤出家庭视频项目。

let predicate: MPMediaPropertyPredicate = MPMediaPropertyPredicate(value: MPMediaType.homeVideo.rawValue, forProperty: MPMediaItemPropertyMediaType)

let query: MPMediaQuery = MPMediaQuery.init()
query.addFilterPredicate(predicate)

let items = query.items

for item : MPMediaItem in items!
{
    // Here is your home video
}

查看 MPMediaTypeHomeVideo 项:https://developer.apple.com/documentation/mediaplayer/mpmediatype/mpmediatypehomevideo

现在 items 应该包含您所有的家庭视频。

编辑:我对其进行了测试,它适用于 iOS 12,但是 title 似乎是空的。您可以使用 assetURL 属性访问视频文件本身。

关于ios - 如何在 iOS 中枚举家庭视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51689305/

相关文章:

ios - 为什么它不能在 swift 2 的 Playground 上显示任何东西?

c++ - 如何确定媒体文件的持续时间?

node.js - nodejs快速获取mp4文件缩略图

ios - 适用于 iOS 的基于 GPU 的 SIFT 特征提取器?

ios - Xcode 8.0 Command/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc 失败,退出代码为 1

ios - 谷歌分析 3.08 IOS idfa 类丢失,不会收集 idfa

swift - swift toInt() 中的用户输入返回 nil

ios - 自动布局问题 : iOS 7 vs iOS8

json - 无法解析通用 Codable

c# - 将文本添加到视频中并保存输出