问题标签 [avaudiosession]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
44325 浏览

ios - 如何以编程方式感知 iPhone 静音开关?

我似乎无法在 SDK 中找到如何以编程方式感知 iPhone 上的静音按钮/开关。当我的应用程序播放背景音乐时,它会正确响应音量按钮,而无需我遵循任何代码,但是,当我使用静音开关时,它只会继续播放。

如何测试静音的位置?

(注意:我的程序有自己的静音开关,但我希望物理开关覆盖它。)

0 投票
4 回答
6795 浏览

ios - 降低 iPod 音量以播放应用声音(如原生 SMS 应用)

我制作了一个 iPhone 应用程序,可以在锻炼时使用。它会发出铃声,表示您(用户)应该从锻炼程序的一个步骤切换到下一步。我设计了该应用程序,以便您在使用该应用程序时可以在 iPod 上听音乐,并且我希望在音乐上播放的音调足够清晰。我已经得到了这个工作......有点......

当音乐响亮时,很难听到音调。我的理想解决方案类似于 iPod 应用程序处理传入的文本消息或电子邮件的方式。音乐音量降低,声音播放,然后音乐音量逐渐减弱。

以下是我迄今为止尝试过的方法:

  1. 我以前AudioServicesPlaySystemSound玩的声音。

    我像这样初始化声音:

    我在适当的时间使用以下方法播放声音:

    这可以很好地播放声音,但是在嘈杂的音乐中很难听到。继续尝试 2...

  2. 我尝试降低 iPod 的音量,播放声音,然后将音量恢复到之前的水平。

    如果当前步骤还剩 1 秒,请开始降低音量:

    这是fadeVolumeOut:方法:

    然后,当该步骤结束时,播放警报声并将音量淡入:

    这是alertAndFadeVolumeIn方法:

    并且fadeVolumeIn:基本上与fadeVolumeOut:上述相反。

    这有效,音量淡出,声音播放,然后音量淡入。问题是音量降低了与 iPod 相同的量,所以它不会让听音乐变得更容易.

  3. 我切换到AVAudioSession播放声音,并设置会话,以便在使用应用程序时继续播放 iPod 音乐。这是我初始化会话的方式:

    为了播放声音,我[self.player play]会在适当的时候打电话。再次,音量随着 iPod 音量的降低而降低,并且音调不再容易听到。

  4. 我试着[[MPMusicPlayerController applicationMusicPlayer] setVolume:1.0f];在警报声响起之前把它放好。这有好坏参半的结果。第一次声音像我希望的那样以最大音量播放,但随后的音量要低得多。此外,音乐不会顺利淡出。似乎iPodMusicPlayer并且applicationMusicPlayer正在共享相同的卷。这是使用的结果[AVAudioSession sharedInstance];吗?有没有另一种方法来初始化一个AVAudioSession

  5. 接下来,我尝试使用AVAudioSession“闪避”:

    不幸的是,当音频会话被激活时,iPod 音乐会“躲避”,这是在 viewController 以我的方式加载后立即出现的。

  6. 最后,我更改了我的代码,以便在步骤结束前一秒激活音频会话,在步骤结束时播放声音,一秒后停用会话。此时我已经删除了所有的淡入淡出代码。以下是相关的代码片段:

    ...

    ...

    这将我带到了我真正陷入困境的地步。这在第一步结束后完美运行。iPod 音量降低,声音响亮,然后 iPod 音量在一秒钟后逐渐减弱。然而,第二次踏步结束时声音会稍微小一些,第三次几乎听不见,第四次无声。然后,第五次,它再次大声播放,循环重复。

    最重要的是,激活和停用似乎是相当繁重的操作,它们会导致计时器略微卡顿。

有没有人试图做类似的事情?有没有首选的方法来通过 iPod 音乐播放声音?

0 投票
7 回答
10876 浏览

audio - 结合 AVAudioSessionCategoryPlayAndRecord 的低录音音量

当我设置:

…录音和播放效果很好,只是播放音量比我在没有录音和设置 PlayAndRecord 的情况下播放相同的声音时低 60% 左右。

我需要获得高音量峰值(以检查用户是否对麦克风吹气),因为我开始了录音会话。但如果没有设置 AVAudio..PlayandRecord,我无法同时播放任何声音。这就是我实现这个命令的原因。

有什么帮助吗?

谢谢克里斯

0 投票
1 回答
489 浏览

cocoa-touch - 我无法追踪这个泄漏。音频工具箱

我在这里查看了大量的论坛帖子和问题。虽然我很乐意接受这个建议: http: //www.cocos2d-iphone.org/forum/topic/2003我想我只是不像这个社区那样信任“他们”。

所以,我问,如果当我将视图推送到根视图控制器时它似乎只发生一次,这是否是一个“微不足道的泄漏”?

图片来自 Instruments

0 投票
0 回答
1778 浏览

iphone - AVAudioSession 无法按照 Apple 的描述工作

我的游戏有 3 首背景歌曲。我希望游戏在播放 ipod 音乐时将背景音乐设置为关闭,否则它将播放最后播放的音乐。当muser打开ipod音乐改变音乐时,ipod音乐应该消失并且背景音乐播放。问题是,我第二次尝试这样做(将音乐从 ipod 更改为游戏内)第一首歌曲会播放,但其他两首不会。

这是愚蠢的行为,它不会以任何我试图解决问题的方式起作用。这是我当前的代码....

在 drawRect 循环中:

在 startAnimation 方法中:

在 stopAnimation 方法中:

在 initWithCoder 方法中:

此方法还加载声音文件并将循环数设置为 -1。当然,它使用 AVAudioPlayer。

感谢您的任何帮助。

0 投票
5 回答
7622 浏览

ios - 如何让 MPMoviePlayerController 忽略静音开关

我想使用播放视频,MPMoviePlayerController但我希望它忽略静音开关,类似于 Youtube 视频播放器的行为。

有任何想法吗?

0 投票
1 回答
646 浏览

iphone - MPMoviePlayerController 播放问题

MPMoviePlayerController在后台播放音频流时遇到问题。在前台它正在播放音频就好了,但是当应用程序进入后台时,声音消失了,时间还在继续。我已经初始化了AVAudioSessionwithAVAudioSessionCategoryPlayback并将所需的背景模式放入 info.plist 文件中的音频。我也设置了player.useApplicationAudioSession = YES;. 这里可能存在什么问题?提前致谢 :)

0 投票
1 回答
4728 浏览

iphone - 在 iOS、AVAudioRecorder 或其他东西上监听麦克风输入?

我想知道是否有一种方法可以“收听”而不录制并显示麦克风的输入电平?

Apples SpeakHere 样本进行录制和播放,我想知道是否有一个更轻的版本,只是“听”而不实际录制和保存文件。

0 投票
1 回答
414 浏览

iphone - 如何在 iPad 中检查 inputAvailable 的类型?

我正在我的 iPad 应用程序中实现录音功能。我想提示用户将耳机与麦克风连接以获得更好的性能。为此,我需要检查用户是否已将耳机与麦克风连接。

在 AVAudioSession 中有一个方法 inputIsAvailable。但是这个方法对于 iPad 的内置麦克风也返回“是”。所以,请建议如何检测带麦克风的耳机是否连接到设备?

0 投票
2 回答
6439 浏览

objective-c - 在 AppDelegate.m 中设置 AVAudioSession 类别

所以我不想问这个问题,但我花了相当多的时间搜索苹果的文档和谷歌,但无济于事。我只是想在 applicationDidFinishLaunching 时为我的应用设置一次 AVAudioSession 类别。我有一个播放音频流的应用程序,我希望它在应用程序进入后台时继续播放,所以我尝试使用播放类别。这是我的 AppDelegate.m 代码:

使用此代码,只要我按下主页按钮,音频就会淡出,将应用程序置于后台。非常感谢任何帮助,我希望对于以前做过此操作的任何人来说,这都是一种快速修复类型的答案。