我正在尝试从AVAssetTrack获取mediaType,但我从未获得其中一个日志。
AVAssetTrack *track1 = cell.videoPlayer.currentItem.asset.tracks.firstObject;
if (track1.mediaType == AVMediaTypeAudio) {
NSLog(@"AVMediaTypeAudio");
}
if (track1.mediaType == AVMediaTypeVideo) {
NSLog(@"AVMediaTypeVideo");
}
但这是轨道(数组)的日志。这向我展示了我需要的信息,但我无法查询。
NSLog(@"%lu: %@", indexPath.row ,cell.videoPlayer.currentItem.asset.tracks);
"<AVAssetTrack: 0x1c0018ff0, trackID = 1, mediaType = soun>",
"<AVAssetTrack: 0x1c0018d90, trackID = 2, mediaType = vide>"
我做错了吗?
答案 0 :(得分:2)
尝试isEqual方法。
AVAssetTrack *track1 = cell.videoPlayer.currentItem.asset.tracks.firstObject;
if ([track1.mediaType isEqual:AVMediaTypeAudio]) {
NSLog(@"AVMediaTypeAudio");
}
if ([track1.mediaType isEqual:AVMediaTypeVideo]) {
NSLog(@"AVMediaTypeVideo");
}