在
Flow ● Slow and Fast Motion应用程序中可以看到我正在尝试实现的完美示例.
可以通过向上或向下拖动曲线上的点来更改视频的播放速度.该视频也可以保存在此状态.
我正在寻找一种动态加速/降低视频的方法,以便在播放视频时可以更改播放速率.
我查了什么
> AVPlayer的播放速度属性,但它只适用于播放速率(0.50,0.67,0.80,1.0,1.25,1.50和2.0)的几个值,并且无法保存视频
> AVMutableComposition的scaleTimeRange(..)属性.但是,当您要逐渐减慢慢/快速运动的视频时,它不起作用.
>使用CAEAGLLayer和CADisplayLink在屏幕上显示视频帧.但是,我尝试实现慢/快动作的许多尝试都没有成功.
所有这些都花了我几个月的时间,我开始怀疑我是否能够完成这一切.
因此,任何建议将是非常有价值的.
解决方法
在IOS中,MPNowPlayingInfoCenter对象包含一个“nowPlayingInfo”字典,其内容描述正在播放的项目.建议您以“currentplaybackrate”开始播放,然后设置速度.在开发者论坛上看到这个
thread.
您可能最终会出现类似于this(但这是javascript)的视频播放速率已经增加了4.
document.querySelector('video').playbackRate = 4.0; document.querySelector('video').play();
video{width:400px; height:auto;}
<video controls preload="true" autoplay> <source src="http://www.rachelgallen.com/nature.mp4" type="video/mp4" > </video>