2019独角兽企业重金招聘Python工程师标准>>>

今天在修改项目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

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

  1. 关于微信小程序开发环境苹果IOS真机预览报SSL协议错误问题解决方案

    关于微信小程序开发环境苹果IOS真机预览报SSL协议错误问题解决方案 参考文章: (1)关于微信小程序开发环境苹果IOS真机预览报SSL协议错误问题解决方案 (2)https://www.cnblog ...

  2. JavaScript+HTML设置视频预览图

    第一种: 设置video属性poster <video class="videoContent" controls poster="img/poster.png&q ...

  3. Vant上传多个图片或视频,更改视频预览图

    需求 vant上传多个视频或图片 图片和视频都有预览图 最终成果 过程 最开始是准备通过自定义预览样式,通过 preview-cover 插槽可以自定义覆盖在预览区域上方的内容.但问题是会修改每一个上 ...

  4. 如何将php改成mp4,PHP 将视频转成 MP4 并获取视频预览图(用到ffmpeg)

    搜索热词 下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. flv_convert_get_thumb('input.avi','outpu ...

  5. windows 电脑图片/视频不展示预览图

    文章目录 windows 电脑图片/视频不展示预览图 描述 可能原因及解决办法 1. Windows的缩略图预览功能被禁用 2. 缩略图预览功能卡住 3. 重新安装Windows Media Play ...

  6. Android 10.0获取本地视频及其预览图

    打开本地视频选择器 private void openLocalVideo(){Intent intent = new Intent();intent.setAction(Intent.ACTION_ ...

  7. 视频捕获:预览、截图、录像(MP4 软/硬编码)、推流,一网打尽

    问题来由:     公司项目要对接很多厂家的视频采集卡,每个厂家都提供了 SDK.     这些 SDK 基本上都是 VC 封装的.VC2008 .VC2010. VC2012,都有.还有的竟然用 . ...

  8. HTML5-video标签-实现点击预览图播放或暂停视频

    HTML5-video标签-实现点击预览图播放或暂停视频 刚刚参加工作,开始更多的接触到一些新的知识,促使我开始了解html5和css3的新特性.这时我才真的发现到html5和css3的强大. 之前关 ...

  9. java 视频预览_java在上传视频时生成预览图

    在圣品上传时往往需要生成一张预览图(缩略图),如果在非特殊情况下让用户单独上传,会造成工作压力,此时可以用视频中某一帧作为封面图,实现方式如下: public class ImageUtil { /* ...

最新文章

  1. 从Excel中导入数据时,提示“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”的解决办法...
  2. 程序员成熟的几个标志
  3. 《CSS世界》读书笔记(十一)
  4. 【C 语言】一级指针 易犯错误 模型 ( 判定指针合法性 | 数组越界 | 不断修改指针变量值 | 函数中将栈内存数组返回 | 函数间接赋值形参操作 | 指针取值与自增操作 )
  5. linux进程看门狗使用方式,Linux系统中基于看门狗的精细化进程监控方法及系统的制作方法...
  6. 征集.NET中国峰会议题
  7. matlab自考本科真题,行政管理学自考专科试题及答案
  8. 卷积神经网络的卷积核大小、个数,卷积层数如何确定呢?
  9. 【CCCC】L2-010 排座位 (25分),,并查集+二维矩阵判定关系
  10. OSChina 周二乱弹 —— 我国领先世界的IT技术
  11. 《OpenGL编程指南(原书第9版)》——第1章 1.0OpenGL概述
  12. 中学生怎样学计算机编程6,中学生学电脑编程有什么好处
  13. 又一个吊打百度网盘的开源神器,还是99年妹子开发的
  14. XP系统的机械硬盘无法读取,Ntoskrnl.exe损坏硬盘锁定还是坏道?
  15. 企业级项目分享:购物车模块(一)2021-06-08
  16. ssm整合(整合配置)
  17. 一文了解 AI 商品模型训练平台
  18. proteus四人抢答器_74HC147+373+4511数字四路抢答器电路Proteus仿真设计与调试
  19. 【如何使用Excel实现包含关系】
  20. 关于h5绘制canvas生成图片的注意点!

热门文章

  1. 基于BIND软件实现互联网DNS解析
  2. thinkphp 控制器继承
  3. 推荐一个css帮助手册的版本 同时提供chm和在线
  4. sql出现无法启动(model数据库)
  5. 研究Ajax(二)WebService实现加 减 乘 除
  6. java 生产者消费者_Java多线程:线程间通信—生产者消费者模型
  7. 《『若水新闻』客户端开发教程》——19.自定义TextView(2)
  8. SQL2005中row_number( )、rank( )、dense_rank( )、ntile( )函数的用法(1)
  9. flash(as3.0)在线聊天室
  10. eclipse 自动提示卡断问题