首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AVMutableComposition - scaleTimeRange的性能问题

AVMutableComposition - scaleTimeRange的性能问题
EN

Stack Overflow用户
提问于 2017-02-22 13:36:16
回答 1查看 715关注 0票数 2

我正在使用scaleTimeRange:toDuration:来产生高达10倍的快速运动效果,我注意到当视频在10倍的AVPlayer上播放时,视频就会开始口吃。

我还注意到,在OSX的QuickTime上,同样的构图很流畅。

另一个问题说,原因是硬件上的限制,但我想知道是否有办法解决这个问题,以便快速运动效应在整个视频的长度上平稳地发生。

视频规格

  • 格式: H.264,1280x544
  • FPS : 25
  • 数据大小:26
  • 数据速率: 1.17 Mbit/s
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-05 11:25:17

我有一种感觉,用scaleTimeRange:toDuration在10倍播放你的视频,只会将你的数据速率乘以10,使它达到10 10Mbit/s,osx机器可以处理,但iOS设备却不能。

换句话说,你正在制作的视频需要以每秒300帧的速度回放,这对AVPlayer来说太难了。

如果我不知道您的other question,我会说解决方案是使用AVAssetExportSession导出您的AVComposition,这将导致您的高FPS视频被采样到更容易处理30 FPS,然后使用AVPlayer播放。

如果AVAssetExportSession不能工作,您可以尝试自己应用加速比效果,方法是使用AVAssetReader从源视频读取帧,并使用AVAssetWriter将十分之一的帧写入输出文件(不要忘记设置正确的表示时间戳)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42393013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档