录音时播放音频音量会变小
Playing audio while record will get a low volume
我使用audiounit录制语音,使用audioqueue播放音频数据。当我设置:
[session setCategory:AVAudioSessionCategoryPlayAndRecord error:&error];
播放的音频音量会很小。但是当我设置:
[session setCategory:AVAudioSessionCategoryMultiRoute error:&error];
虽然音量会正常。但是iOS麦克风输出的音频数据不会一样长。前者设置音频数据长度为4096,后者输出长度为3760和3764。这会导致我编码音频数据时崩溃。
我找到解决方案说在打开录音机之前先打开音频播放器,然后问题就解决了。不幸的是,我必须先打开录音机。所以我不知道怎么设置audiencesession能不能把音量调大,音频数据长度一样。
3760-3764 是由于从 48k 重采样到您的 44.1k 采样率。
使用 circular/ring buffer/fifo 来避免编码问题(例如,只有当 buffer/fifo).
此外,请在启用 AudioSession 之前尝试设置您喜欢的采样率。
我使用audiounit录制语音,使用audioqueue播放音频数据。当我设置:
[session setCategory:AVAudioSessionCategoryPlayAndRecord error:&error];
播放的音频音量会很小。但是当我设置:
[session setCategory:AVAudioSessionCategoryMultiRoute error:&error];
虽然音量会正常。但是iOS麦克风输出的音频数据不会一样长。前者设置音频数据长度为4096,后者输出长度为3760和3764。这会导致我编码音频数据时崩溃。
我找到解决方案说在打开录音机之前先打开音频播放器,然后问题就解决了。不幸的是,我必须先打开录音机。所以我不知道怎么设置audiencesession能不能把音量调大,音频数据长度一样。
3760-3764 是由于从 48k 重采样到您的 44.1k 采样率。
使用 circular/ring buffer/fifo 来避免编码问题(例如,只有当 buffer/fifo).
此外,请在启用 AudioSession 之前尝试设置您喜欢的采样率。