swift AVPlayer播放时视频被旋转
时间: 2023-07-13 07:21:57 浏览: 131
如果在使用AVPlayer播放视频时,视频被旋转了,可以尝试以下解决方法:
1.设置视频方向
可以通过AVAssetTrack的preferredTransform属性来获取视频方向,然后设置AVPlayerLayer的affineTransform属性来调整视频方向。例如:
```
AVAssetTrack *videoTrack = [[asset tracksWithMediaType:AVMediaTypeVideo] firstObject];
CGAffineTransform transform = videoTrack.preferredTransform;
playerLayer.affineTransform = transform;
```
2.设置视频填充模式
可以通过设置AVPlayerLayer的videoGravity属性来调整视频填充模式,这样也可以避免视频被旋转的问题。例如:
```
playerLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
```
3.设置AVPlayerItem的presentationSize属性
在创建AVPlayerItem时,可以设置presentationSize属性来告诉AVPlayerItem视频的实际大小,这样也可以避免视频被旋转的问题。例如:
```
AVAsset *asset = [AVAsset assetWithURL:url];
AVPlayerItem *item = [AVPlayerItem playerItemWithAsset:asset];
item.presentationSize = CGSizeMake(videoTrack.naturalSize.width, videoTrack.naturalSize.height);
```
希望以上解决方法可以帮助到你。
相关推荐
![.zip](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)