【问题标题】:AVFoundation AVAudioPlayer stop is pausing - Objective-CAVFoundation AVAudioPlayer 停止正在暂停 - Objective-C
【发布时间】:2015-12-16 21:18:28
【问题描述】:

显示此代码相当困难,因为它在代码中并不明显。我有一些动作,比如-(IBAction)PlaySound1:(id)sender;-(IBAction)PlaySound2:(id)sender; 以及音频文件。我的声音一切正常。我也有-(void)Stop;。当按下播放声音 1 时,它会调用方法 Stop 并停止声音 2。与声音 2 相同。

我遇到的问题是,当您播放声音 1 并停止声音 2 时,当您播放声音 2 时,它会从停止的地方开始。

在我的 (void) 我有 [PlaySound1 stop] //and [PlaySound2 stop]

如果有人可以提供帮助,那就太好了。如果有不清楚的地方,请对此发表评论,我会尝试更好地解释它。

谢谢:)

【问题讨论】:

  • 你在使用多个 avplayer 吗?你如何播放 sound1 和 sound2?
  • 我正在使用多个是。有没有办法用 1 个播放器来播放多个声音文件?目前我正在为每个按钮使用 IBActions,并且在我使用 [PlaySound1 play] 和 [PlaySound2 play] 的方法中
  • 是的,您可以使用一个 AVPlayer,因为您不需要保留每个音轨的位置,您可以将声音替换为 [AVPlayer replaceCurrentItemWithPlayerItem:playerItem] 之类的内容,然后播放它
  • 好的,谢谢大家的帮助。问题现已排序。再次感谢

标签: ios objective-c avaudioplayer


【解决方案1】:

停止 AVAudioPlayer 不会重置播放头。

stop 方法不会将 currentTime 属性的值重置为 0。换句话说,如果您在播放过程中调用 stop,然后调用 play,则播放会从中断点恢复。

要从头恢复播放,请在调用 play 之前将 currentTime 属性设置为 0.0。

例子-

playSound2.currentTime = 0.0;
[playSound2 play];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多