audio – 向前跳30秒

我有一个audio播放器播放从核心date检索的audio。 播放和暂停工作正常。 我试图实现一个“跳转30秒”button,并寻求任何指针,我将如何去做。

代码为我的“播放/暂停”button

@IBAction func playPressed(sender: AnyObject) { let play = UIImage(named: "play") let pause = UIImage(named: "pause") if audioPlayer.playing { pauseAudioPlayer() audioPlayer.playing ? "\(playButton.setImage( pause, forState: UIControlState.Normal))" : "\(playButton.setImage(play , forState: UIControlState.Normal))" }else{ playAudio() audioPlayer.playing ? "\(playButton.setImage( pause, forState: UIControlState.Normal))" : "\(playButton.setImage(play , forState: UIControlState.Normal))" } } 

这样的事情呢?

 @IBAction func skipForward30SecondsPressed(sender: AnyObject) { var currentTime = audioPlayer.currentTime audioPlayer.stop() audioPlayer.playAtTime(currentTime + 30.0) // plus 30 seconds } 

对于iOS我们需要使用CMTime。 只有CMTime可以被馈送给玩家以从当前位置向前或向后跳转。 现在,如果玩家正在运行任何stream,则当前stream位置可以使用玩家的currentTime属性。

祝你好运。 如果您有任何进一步的问题,请告诉我。

获取玩家的当前时间,并加上当前时间的30秒。然后让玩家在当前时间(当前时间+30)播放。

 var currentTime = player.currentTime player.playAtTime(currentTime + 30.0) 

如果你想使用滑块来改变当前时间,你可以使用player.currentTime = TimeInterval(slider.value) * player.duration来获取它。

迅速3

 player.play() player.currentTime=60 

第二个单位根本不需要停下来