如何防止播放多个直播音频?

mimi

我目前正在制作一个实时流音乐应用程序,并且我已经使用了所有按钮并可以从中播放声音。

但是,如果正在播放一种声音,则当我按下另一个按钮时,它只会播放原始声音,而不是停止播放原始声音,请帮助我如何解决此问题?

非常感谢

- (IBAction)Play1:(id)sender {

    NSString *stream = @".mp3"
    ;

    NSURL *url = [NSURL URLWithString:stream];

    NSURLRequest *urlrequest = [NSURLRequest requestWithURL: url];

    [Webview1 loadRequest:urlrequest];
    AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];

    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];

    [[AVAudioSession sharedInstance] setActive: YES error: nil];

    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];

    [audioPlayer play];

    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];


}
比约恩·罗奇(Bjorn Roche)

实施此行为取决于您。我建议您跟踪可能正在播放的任何AVAudioPlayer,并在创建和启动新的AVAudioPlayer之前将其停止。

例如,您可以使用属性来存储您创建的每个AVAudioPlayer。然后,在创建新的之前,请停止旧的。

有很多方法可以做到这一点。假设每个按钮都有一个URL,这是一个可能的过程:

// note that audioPlayer is a property. It might be defined like this:
// @property (nonatomic,strong) AVAudioPlayer *audioPlayer

- (IBAction)button1Pressed:(id)sender {
    NSString *stream = @"url1.mp3";
    [self playUrl:[NSURL URLWithString:stream]];
}

- (IBAction)button2Pressed:(id)sender {
    NSString *stream = @"url2.mp3";
    [self playUrl:[NSURL URLWithString:stream]];
}

- (void) playUrl:(NSURL *) url {
    //stop a previously running audioPlayer if it is running:
    [audioPlayer pause]; //this will do nothing if audioPlayer is nil
    //create a new one and start it:
    audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];
    [audioPlayer start];
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

流直播音频live555

来自分类Dev

移动和网络直播音频(广播)流传输的最佳协议是什么?

来自分类Dev

JS-防止同时播放多个音频文件

来自分类Dev

如何同时播放多个音频文件

来自分类Dev

Java 如何停止播放多个音频循环

来自分类Dev

如何使用js音频api播放多个音频

来自分类Dev

如何从直播中保存和存储音频?

来自分类Dev

如何使用ionic Media插件顺序播放多个音频

来自分类Dev

如何在React Native中播放多个音频?

来自分类Dev

如何添加多个彼此停止的音频播放按钮?

来自分类Dev

QMediaPlayer。如何播放带有多个音频的视频?

来自分类Dev

Javascript循环播放多个音频

来自分类Dev

如何设置Icecast服务器在网络中广播音频?

来自分类Dev

如何设置Icecast服务器在网络中广播音频?

来自分类Dev

如何使用javascript随机播放音频标签中的多个音频文件?

来自分类Dev

如何链接多个HTML5音频文件(如平滑播放列表)的播放?

来自分类Dev

使用.Net MVC,如何列出多个播放不同文件的HTML音频播放器?

来自分类Dev

如何在没有音频的情况下直播YouTube

来自分类Dev

如何播放特定孩子的音频?

来自分类Dev

如何在Android下级设备中播放rtsp直播?

来自分类Dev

在Ipad或触摸设备上播放多个音频

来自分类Dev

依次播放多个音频文件

来自分类Dev

多个音频播放器彼此暂停

来自分类Dev

静音可同时播放多个音频

来自分类Dev

使用AVAudioPlayer播放多个音频文件

来自分类Dev

Firefox 中的多个音频播放器

来自分类Dev

如何遍历多个音频文件并使用javascript依次播放它们?

来自分类Dev

Objective-C:如何在DiracLE中控制多个音频播放器的音量

来自分类Dev

如何在Windows Vista / 7上管理多个音频播放设备?

Related 相关文章

  1. 1

    流直播音频live555

  2. 2

    移动和网络直播音频(广播)流传输的最佳协议是什么?

  3. 3

    JS-防止同时播放多个音频文件

  4. 4

    如何同时播放多个音频文件

  5. 5

    Java 如何停止播放多个音频循环

  6. 6

    如何使用js音频api播放多个音频

  7. 7

    如何从直播中保存和存储音频?

  8. 8

    如何使用ionic Media插件顺序播放多个音频

  9. 9

    如何在React Native中播放多个音频?

  10. 10

    如何添加多个彼此停止的音频播放按钮?

  11. 11

    QMediaPlayer。如何播放带有多个音频的视频?

  12. 12

    Javascript循环播放多个音频

  13. 13

    如何设置Icecast服务器在网络中广播音频?

  14. 14

    如何设置Icecast服务器在网络中广播音频?

  15. 15

    如何使用javascript随机播放音频标签中的多个音频文件?

  16. 16

    如何链接多个HTML5音频文件(如平滑播放列表)的播放?

  17. 17

    使用.Net MVC,如何列出多个播放不同文件的HTML音频播放器?

  18. 18

    如何在没有音频的情况下直播YouTube

  19. 19

    如何播放特定孩子的音频?

  20. 20

    如何在Android下级设备中播放rtsp直播?

  21. 21

    在Ipad或触摸设备上播放多个音频

  22. 22

    依次播放多个音频文件

  23. 23

    多个音频播放器彼此暂停

  24. 24

    静音可同时播放多个音频

  25. 25

    使用AVAudioPlayer播放多个音频文件

  26. 26

    Firefox 中的多个音频播放器

  27. 27

    如何遍历多个音频文件并使用javascript依次播放它们?

  28. 28

    Objective-C:如何在DiracLE中控制多个音频播放器的音量

  29. 29

    如何在Windows Vista / 7上管理多个音频播放设备?

热门标签

归档