iOS截取视频预览图,截图方向错误的解决

    今天在修改项目bug的时候遇到了,截图视频预览图的时候总是方向不对,竖屏录制的视频(好像是竖屏录制截图出的错,记不太清楚了?)截图出来总是向左旋转了90度。

    开始我查看图片的imageOrientation属性,发现都是Up,然后我试着查看图片的width和height,发现无论是对的还是错的,width和height都是一样,oh,shit!

    后来我发现了appliesPreferredTrackTransform这个属性,默认是false(Objective-C中为NO),只要将其设置为true,在进行截图就会发现,方向正常了。

    截图代码如下:

NSURL *url = [[NSURL alloc] initWithString:@"Your video url"];
AVURLAsset *urlAsset = [[AVURLAsset alloc] initWithURL:url options:nil];
AVAssetImageGenerator *imageGenerator = [[AVAssetImageGenerator alloc] initWithAsset:urlAsset];
imageGenerator.appliesPreferredTrackTransform = YES;    // 截图的时候调整到正确的方向
CMTime time = CMTimeMakeWithSeconds(1.0, 30);   // 1.0为截取视频1.0秒处的图片,30为每秒30帧
CGImageRef cgImage = [imageGenerator copyCGImageAtTime:time actualTime:nil error:nil];
UIImage *image = [UIImage imageWithCGImage:cgImage];


转载于:https://my.oschina.net/are1OfBlog/blog/497098

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值