2016-04-22 11 views
0

Ich muss meinen Code von AVAudioPlayer zu ändern, weil es Rückspulen unterstützt und AVAudioPlayer nicht. Ich habe Probleme mit diesen vier Codezeilen, die den Ton suchen, der mit einem Schieberegler spielt. Hier ist der Code, ich habe:Wie würde ich diese vier Codezeilen von AVAudioPlayer in AVPlayer konvertieren?

func changeAudioTime() { 

    //musicPlayer is declared as AVAudioPlayer and I want to change it to AVPlayer and I named the variable player 

    musicPlayer.prepareToPlay() 
    musicPlayer.currentTime = NSTimeInterval(slider.value) 
    musicPlayer.numberOfLoops = -1 
    slider.value = Float(musicPlayer.currentTime) 

} 
+0

einfach diesen Link verweisen kann es ihm helfen, https: // github .com/davestitz/iOS-AvPlayer-Demo und https: // gi thub.com/mikeMTOL/KSVideoPlayer –

Antwort

1

Für die Zeit bei der Einrichtung sowohl den Fall, dass Sie diese verwenden können:

self.player.seekToTime(CMTimeMake(Int64(slider.value),1)) 
slider.value = Float(CMTimeGetSeconds(self.player.currentTime())) 

Für Schleifen Sie so versuchen können, da es keine direkte Methode der Schleife , bis Sie wiederholen möchten Sie können Flag/Beobachter gesetzt und das Lied zu wiederholen, wenn Wiederholung ausgeschaltet ist, können Sie nicht Beobachter ausführen können/suchen

NSNotificationCenter.defaultCenter().addObserver(self, 
selector: "playerItemDidReachEnd:",name: AVPlayerItemDidPlayToEndTimeNotification, 
object: self.player.currentItem) 

func playerItemDidReachEnd(notification: NSNotification) { 
    self.player.seekToTime(kCMTimeZero) 
    self.player.play() 
}