5
A
回答
16
我想它和它不是太糟糕了。
在計時器剛剛更新
playbackTimer=[NSTimer scheduledTimerWithTimeInterval:0.5
target:self
selector:@selector(myMethod:)
userInfo:nil
repeats:YES];
}
-(void)myMethod:(NSTimer*)timer {
float total=audioPlayer.duration;
float f=audioPlayer.currentTime/total;
NSString *str = [NSString stringWithFormat:@"%f", f];
playbackProgress.progress=f;
NSLog(str);
}
0
添加週期性時間觀察並更新滑塊 - 斯威夫特這將是這樣的 -
func addPlayBackSlider()
{
playbackSlider = UISlider(frame:CGRect(x:10, y:300, width:300, height:20))
playbackSlider?.minimumValue = 0
let duration : CMTime = playerItem.asset.duration
let seconds : Float64 = CMTimeGetSeconds(duration)
playbackSlider?.maximumValue = Float(seconds)
playbackSlider?.isContinuous = true
//If you want to manually set progressBar
playbackSlider?.addTarget(self, action: #selector(AddAudioController.playbackSliderValueChanged(_:)), for: .valueChanged)
//Here is the Observer
player!.addPeriodicTimeObserver(forInterval: CMTimeMakeWithSeconds(1, 1), queue: DispatchQueue.main) { (CMTime) -> Void in
if self.player!.currentItem?.status == .readyToPlay {
let time : Float64 = CMTimeGetSeconds(self.player!.currentTime());
self.playbackSlider!.value = Float (time);
}
}
}
//If you want to manually set progressBar
func playbackSliderValueChanged(_ playbackSlider:UISlider)
{
let seconds : Int64 = Int64(playbackSlider.value)
targetTime = CMTimeMake(seconds, 1)
print(targetTime)
player!.seek(to: targetTime)
if player!.rate == 0
{
player?.play()
playButton!.setTitle("Pause", for: UIControlState.normal)
}
}
相關問題
- 1. 用於AvAudioPlayer播放進度的UIProgressBar
- 2. 延遲播放AVAudioPlayer
- 3. 播放AVAudioPlayer和SystemSoundID
- 4. AVAudioPlayer不播放MP3?
- 5. AVAudioPlayer不播放聲音IOS
- 6. AVAudioPlayer不能播放從url
- 7. AVAudioPlayer不播放聲音
- 8. AVAudioPlayer不播放MP3音效
- 9. AVAudioPlayer在播放時崩潰
- 10. AVAudioPlayer不播放音頻
- 11. AVAudioPlayer失去「播放」狀態
- 12. 播放AVAudioPlayer導致延遲
- 13. AVAudioPlayer不會重複播放
- 14. AVAudioPlayer不播放我的MP3
- 15. AVAudioPlayer不播放MP3文件
- 16. 播放下一首歌AVAudioPlayer
- 17. 播放多種音樂AVAudioPlayer
- 18. 如何使用AVAudioPlayer更新播放音頻的播放時間使用AVAudioPlayer
- 19. MP3播放器進度條
- 20. MPMoviePlayerNotification播放進度通知?
- 21. iPhone SDK:使用核心音頻更改播放速度AVAudioPlayer
- 22. 如何使用AVAudioPlayer在iPhone/iPad上播放播放列表
- 23. 當MPMoviePlayer播放時,AVAudioPlayer在靜音模式下播放
- 24. AVAudioPlayer正在播放而不被稱爲播放。
- 25. 當Youtube播放時,AVAudioPlayer無法在背景上播放
- 26. 開始播放.mp3用AVAudioPlayer播放中途
- 27. 使用AVAudioPlayer播放當前播放歌曲的藝術作品
- 28. 如何在AVAudioPlayer中播放歌曲的二進制數據
- 29. 使用AVAudioRecorder和AVAudioPlayer錄製和播放
- 30. Swift 3 - AVAudioPlayer不播放聲音
希望這有助於:) – Shawon91 2017-09-13 12:40:45
添加不幸的是,定期時間觀察者僅適用於AVPlayer,而不適用於AVAudioPlayer。 – 2017-09-14 18:46:14