2017-10-10 5 views
0

J'essaie d'obtenir le mediaType à partir d'un AVAssetTrack mais je ne reçois jamais un de ces journaux.Impossible d'interroger MediaType AVAssetTrack

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

        if (track1.mediaType == AVMediaTypeAudio) { 

         NSLog(@"AVMediaTypeAudio"); 

        } 

        if (track1.mediaType == AVMediaTypeVideo) { 

         NSLog(@"AVMediaTypeVideo"); 

        } 

mais voici un journal des pistes (tableau). cela me montre l'information dont j'aurais besoin, mais je ne peux pas l'interroger.

NSLog(@"%lu: %@", indexPath.row ,cell.videoPlayer.currentItem.asset.tracks); 

"<AVAssetTrack: 0x1c0018ff0, trackID = 1, mediaType = soun>", 
"<AVAssetTrack: 0x1c0018d90, trackID = 2, mediaType = vide>" 

J'ai fait quelque chose de mal?

Répondre

2

Essayez la méthode isEqual.

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

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

    NSLog(@"AVMediaTypeAudio"); 

} 

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

    NSLog(@"AVMediaTypeVideo"); 

}