问题标签 [avaudiofile]

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 投票
1 回答
429 浏览

ios - 从 .m4a 数据中过滤频率

我正在尝试分析声音文件(.m4a)以获取随时间变化的幅度并制作图表。我在网上找到了一些效果很好的代码(如下)。但是,我想另外过滤掉所有不在目标频率范围内的声音。例如,我只想绘制 1900-2100 Hz 之间的声音。我怎样才能做到这一点?

编辑

录音实际上是在更早的时间从设备的麦克风录制的。在录制阶段应用过滤器是否更容易?

0 投票
2 回答
124 浏览

java - 无法使用剪辑在java中播放声音

我想使用下面的代码在 java 中播放一些声音。那个声音是 WAV 格式的,所以我认为这个代码应该可以正常工作,但它不是播放声音,而是什么都不做。我的控制台上什至没有错误。所以有人可以帮我让这段代码播放声音。(这个声音包含在我的 src 文件的一个包中)

0 投票
1 回答
2333 浏览

avaudioengine - 将 AVAudioPCMBuffer 转换为另一个 AVAudioPCMBuffer

我正在尝试将确定的AVAudioPCMBuffer(44.1khz,1ch,float32,未交错)转换为另一个AVAudioPCMBuffer(16khz,1ch,int16,未交错)AVAudioConverter并使用AVAudioFile. 我的代码使用该库AudioKit和水龙头AKLazyTap在每个确定的时间获取一个缓冲区,基于此来源:

https://github.com/AudioKit/AudioKit/tree/master/AudioKit/Common/Taps/Lazy%20Tap

这是我的实现:

(请注意,AVAudioConverter并且AVAudioFile正在被重用,那里的初始化并不代表我的代码的真正实现,只是为了简化并使其更易于理解。)

frameCapacity设置为 512时,outputBuffer: AVAudioPCMBuffer音频被截断。有没有办法发现frameCapacity这个缓冲区的正确性?

使用 Swift 4 和 AudioKit 4.1 编写。

非常感谢!

0 投票
0 回答
573 浏览

python - AVAudioFIle 读取iOS swift Normalization

当我尝试使用 AVAudioFile.read() 快速读取音频文件时,所有幅度值都在 -1 和 1 之间。但是当我使用 librosa 库读取 python 中的值时,我得到不同的幅度值。我认为某种标准化在 iOS 中读取内容时完成。我想知道它是如何完成的,以便在 python 中我可以进行相同的调整

ios示例代码:

蟒蛇示例代码:

我在 python 中重新采样,因为默认情况下在 librosa.read() 之后打印 sr 给出 22050。所以两个代码打印的值是不同的。为什么?TIA

0 投票
1 回答
401 浏览

ios - 从浮点数组iOS Swift播放音频

我有 2 个浮点数组,一个代表左通道值,另一个代表右通道值。如何从这两个数组创建和播放音乐?(采样率 = 44100)TIA

0 投票
2 回答
878 浏览

ios - How do I write AVAudioCompressedBuffer to an AAC file in iOS?

I've successfully converted the AVAudioPCMBuffers from AVAudioEngine into AVAudioCompressedBuffers with an AAC format. Now I'm trying to write those buffers to a file but don't know how to do it. AVAudioFile only accepts AVAudioPCMBuffers.

Any help would be greatly appreciated!

0 投票
0 回答
78 浏览

swift - 是否可以合并两个不同的 AVAudioPlayer 曲目

我有两个 AVAudioPlayer 实例以不同的音量和速率播放两个不同的轨道(一个是乐器轨道,另一个是歌曲录制)。我想将这两个轨道合并为一个轨道。是否可以使用 AVAudioPlayer 来做到这一点,或者我应该采用其他方法吗?

0 投票
1 回答
3999 浏览

ios - 将 AVAudioPCMBuffer 写入压缩的 AVAudioFile

我们正在开发一个记录和保留麦克风输入的应用程序。使用AVAudioRecorder不是一种选择,因为需要实时音频处理。

AVAudioEngine使用它是因为它提供了对输入音频的低级访问。

我们的问题是录音很大。对于 5 小时的录音,输出音频文件为 1.2GB.caf格式。

有没有一种很好的方法来压缩写入它的音频文件?

默认采样频率为 44100Hz。我们将使用 AVAudioMixerNode 将输入下采样到 20Khz(在我们的例子中较低的质量是可以接受的),但输出的大小在大小上是不可接受的。

录音包含大量背景噪音。

有什么建议么?

0 投票
1 回答
1098 浏览

swift - 使用 Swift for MacOS 播放音频文件

我正在尝试使用 AVAudioFile、AVAudioEngine 和 AVAudioPlayerNode 简单地播放文件(在主包中或磁盘上)。

这是我正在做的事情:

我可以看到通道数,即 FrameCount。我什么都听不见。我究竟做错了什么?这是我在控制台中得到的:

0 投票
2 回答
1320 浏览

ios - 在音频引擎输入节点上安装水龙头时出错

每当代码到达时 inputNode.installTap(onBus: 0, bufferSize: 1024, format: recordingFormat) {[weak self] (buffer:AVAudioPCMBuffer, when:AVAudioTime),应用程序就会崩溃并出现以下错误

由于未捕获的异常“com.apple.coreaudio.avfaudio”而终止应用程序,原因:“所需条件为假:format.sampleRate == hwFormat.sampleRate”

在添加另一个水龙头之前,我厌倦了移除水龙头,我确保我不会添加多个水龙头。奇怪的是,该应用程序在低于 12 的 iOS 上运行良好,并且在所有模拟器上运行良好。

它仅在装有 iOS 12 的真实设备上崩溃。我尝试寻找解决方案,但找不到任何东西。