Я быстро переадресую свой AVAudioPlayer
, установив значение rate
. Однако я не могу понять, как перемотать назад.Есть ли способ перемотки музыки, используя свойство rate в Swift?
Я создаю приложение для ди-джеев, в котором музыкальная игра rate
меняется при повороте проигрывателя, что ускоряет перемотку вперед и назад (пока слышишь звук).
Это мой текущий метод поворота поворотного стола. Как перемотать AVAudioPlayer
?
override func touchesMoved(touches: Set<UITouch>, withEvent event: UIEvent?) {
for touch in touches {
let location = touch.locationInNode(self)
let node = self.nodeAtPoint(location)
//this is for the left turntable
if node.name == "lefttt" {
//lets user rotate left turntable when there is one finger on turntable.
let dy = leftTurntable.position.y - location.y
let dx = leftTurntable.position.x - location.x
let angle2 = atan2(dy, dx)
leftTurntable.zRotation = angle2
let delta = (angle2 - previousAngle)
if delta > 0 {
// Code to rewind music goes here....
print("rotateleft")
} else {
//This code works perfectly and fast forwards the music when spinning turntable to right
print("rotateright")
musicPlayer.rate = 2.0
musicPlayer.play()
}
previousAngle = angle2
}
Вы пытались добавить 2.0 в musicPlayer.currentTime вместо подстановки? Возможно, он начинает отсчет с оставшегося времени. –
Да, я попытался добавить и все еще быстро вперед. – coding22