iOS:在特定时间播放音频文件并在特定持续时间后停止

标签 ios audio avaudioplayer

我的应用程序有一个长度为 500 微秒的音频文件。我希望应用程序用户以微秒 100 播放音频(通过按下按钮),并且音频将在微秒 150 处自动停止。这是我迄今为止所做的代码:

    AVAudioPlayer *audioPlayer = [[[AVAudioPlayer alloc]
                   initWithContentsOfURL:[NSURL fileURLWithPath:filePath]
                   error:nil] autorelease];
    [audioPlayer setCurrentTime:100.00f];
    [audioPlayer play];

你能帮我完成停止部分吗?谢谢

最佳答案

您可以创建一个具有所需播放间隔的 NSTimer 实例,然后在计时器触发时停止音频。在主线程上以及代码中适用区域的某个位置创建计时器,您可以在其中获取audioPlayer 的引用。确保你处理中断,IE,用户以某种方式暂停或停止音频,或者如果audioPlayer在某个地方被释放,你的应用程序进入后台,或者任何你需要处理的事情,通过无效和处置计时器。有关 NSTimer 的信息,请参阅文档。 http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/nstimer_Class/Reference/NSTimer.html

关于iOS:在特定时间播放音频文件并在特定持续时间后停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12752405/

相关文章:

Java Sound 背景噪音消除

ios - 按下后退按钮时音频停止播放

ios - 从相机获取 yuv 平面格式图像 - iOS

ios - 在 UILabel 中覆盖 "text"在 iOS 6 中不起作用

javascript - JavaScript API 问题

iphone - 如何在下载的同时开始播放AVAudioPlayer?

iphone - 即使类别是 AVAudioSessionCategoryPlayback,AVAudioPlayer 也会在屏幕锁定时停止播放

ios - Xcode iOS 14 WidgetKit 并不总是附加到调试器

ios - 如何在 Objective C 中将 NSLog 分类为错误、警告、消息和故障类型

c# - 在 OSX 上使用 MONO 播放声音的最简单方法