Не могу запросить AVAssetTrack's MediaType

Я пытаюсь получить mediaType из AVAssetTrack, но я никогда не получаю один из этих журналов.

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>"

Я сделал что-то неправильно?

1 ответ

Решение

Попробуйте метод isEqual.

AVAssetTrack *track1 = cell.videoPlayer.currentItem.asset.tracks.firstObject;

if ([track1.mediaType isEqual:AVMediaTypeAudio]) {

    NSLog(@"AVMediaTypeAudio");

}

if ([track1.mediaType isEqual:AVMediaTypeVideo]) {

    NSLog(@"AVMediaTypeVideo");

}
Другие вопросы по тегам