【发布时间】:2017-12-14 03:38:09
【问题描述】:
我似乎无法从我拥有的 URL 中获取视频的高度。每次我记录 playerLayer.videoRect.bounds.size.the 高度返回 0.000。关于如何根据视频调整 playerLayer 高度的任何帮助将不胜感激。
我将 playerLayer 的高度设置为视图高度的一半,只是为了显示视频。
这是我编辑的代码:
NSURL *videoURL = [NSURL URLWithString:self.videoURL];
self.player = [AVPlayer playerWithURL:videoURL];
AVAssetTrack* track = [[AVAsset assetWithURL:videoURL] tracksWithMediaType:AVMediaTypeVideo].firstObject;
CGSize size = CGSizeApplyAffineTransform(track.naturalSize, track.preferredTransform);
CGFloat videoWidth = size.width;
CGFloat videoHeight = size.height;
NSLog(@"%f wide, %f high)", videoWidth, videoHeight);
self.playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.player];
self.playerLayer.frame = CGRectMake(0, self.navigationController.navigationBar.bottom, self.view.bounds.size.width, videoHeight);
[self.view.layer addSublayer:self.playerLayer];
[self.player play];
self.player.actionAtItemEnd = AVPlayerActionAtItemEndNone;
【问题讨论】: