使用 QAudioRecorder 时禁用创建 wav 文件
Posted
技术标签:
【中文标题】使用 QAudioRecorder 时禁用创建 wav 文件【英文标题】:Disable creating wav file when using QAudioRecorder 【发布时间】:2017-03-21 21:47:26 【问题描述】:我正在开发应用程序,女巫可以从麦克风中采样音频。我使用 QAudioRecorder 和 QAudioProbe 进行采样。一切正常。但我刚刚意识到 QAudioRecorder 将录制的音频保存到我的文档中。也许我应该改用 QAudioInput。如果必须,我会再做一次。但是,有没有办法禁用该音频文件的创建?我有我的样品。我的硬盘上不需要它们。谢谢你的帮助。
【问题讨论】:
您可以将输出位置更改为临时文件或/dev/null
,但如果您不想记录某些内容,使用名称中包含“Recorder”的类似乎有点奇怪.
我知道这很奇怪。但是这个解决方案让我可以控制有多少样本将传递给 fft(我需要固定大小的数组)。 QAudioInput 只有毫秒的时间信号。
它不是有线IMO,因为它记录,只是不直接到文件。
【参考方案1】:
不幸的是,QAudioRecorder
固有的存储位置,您必须使用较低级别的方式来“捕获音频”而不将其存储到磁盘。
这是使用QAudioInput
的最小示例:http://doc.qt.io/qt-5/qtmultimedia-multimedia-audioinput-example.html
【讨论】:
感谢您的建议。当缓冲区已满时,我没有找到任何发出信号的方法。当缓冲区被填满时,程序将其复制到合并数组中,用于 50% 的重叠。这是我功能齐全的程序...唯一的问题是在 GitHub 上创建了 file。我不知道如何使用 QAudioInput 做到这一点。以上是关于使用 QAudioRecorder 时禁用创建 wav 文件的主要内容,如果未能解决你的问题,请参考以下文章