计算循环次数并停止播放音频

Posted

技术标签:

【中文标题】计算循环次数并停止播放音频【英文标题】:count the number of loops and stop playing the audio 【发布时间】:2013-10-07 09:28:04 【问题描述】:

我有一个 4 秒的小视频文件,它会一次又一次地播放。为此我已经使用了

[player setRepeatMode:MPMovieRepeatModeOne];

但在第一个循环之后,我希望停止音频,只播放视频。我尝试设置 [player setUseApplicationAudiosession:NO];

但它不起作用。

有什么帮助吗?

【问题讨论】:

【参考方案1】:

没有直接的方法来静音或调整 MPMoviePlayerController 的音量。您需要做的就是控制设备的音量。 获取 MPMoviePlayerPlaybackDidFinishNotification 并在具体检查中编写以下代码

[[MPMusicPlayerController applicationMusicPlayer] setVolume:0];

【讨论】:

如何获取循环次数? 您可以维护一个整数计数器并在 MPMoviePlayerPlaybackDidFinishNotification 中递增以找出当前播放次数,因为没有直接的方法可以找出确切的循环次数【参考方案2】:

我认为没有现成可用的选项来计算循环数。

我建议扩展播放器并制作自己的方法来播放声音 X 次。

为此,您可以连续播放 X 次无需重复模式的声音。要检测声音已完成播放,请检查 MPMusicPlayerControllerPlaybackStateDidChangeNotification 和 beginGeneratingPlaybackNotifications。基于此,您一次又一次地播放它并减少您想要播放它的次数。

【讨论】:

以上是关于计算循环次数并停止播放音频的主要内容,如果未能解决你的问题,请参考以下文章

如何让用户选择 AVAudioPlayer 播放音频的循环次数

除了播放按钮外,重复(循环)UIButton

swift中的音频播放器没有获得音量和音高的价值

如何在播放/暂停控制功能中停止无限循环

停止录音并继续播放音频

Android - 查找当前是不是正在播放音频并停止它