问题标签 [audio]

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 回答
93289 浏览

mysql - 在数据库中存储媒体文件的最佳方式是什么?

我想在数据库中存储大量的声音文件,但我不知道这是否是一个好习惯。我想知道这样做的利弊。

我还考虑了与这些文件建立“链接”的可能性,但也许这会带来比解决方案更多的问题。欢迎任何这方面的经验:)

注意:数据库将是 MySQL。

0 投票
6 回答
8514 浏览

directx - DirectSound 是 Windows 的最佳音频抽象层吗?

DirectSound 是 Windows 的最佳音频抽象层吗?将我的应用程序从构建到特定芯片组的非常糟糕的声音实现切换到抽象层。

应用程序是本机 Winform,.net 3.5。DirectX/DirectSound 是可能的选择,但有点担心开销。还有其他选择吗?或者考虑其他事情是愚蠢的?

0 投票
4 回答
4113 浏览

linux - Linux 中的音高识别

是否有任何免费软件工具或组合可以让我识别录制的演唱会的音高?

这个想法是在时间线上显示某种带有当前音高的图表以及标准音符(C3、C#3、D 等)的标记。我不需要音高校正,也不需要实时完成。

我知道曾经有一个 Rosegarden 插件可以做到这一点,但它已经丢失了。

0 投票
4 回答
3422 浏览

browser - 将音频流式传输到浏览器

我有大量的音频以非常自定义的格式存储在我的网络服务器上,除了我自己的应用程序之外,其他任何东西都无法重播这些音频。该应用程序是一个 Win32 应用程序,可以连接到我的 Web 服务器并流式传输和重播该音频。

我真的很希望能够在浏览器中进行流式传输和重播,但不知道从哪里开始。理想情况下,我希望该技术是跨平台的(与我当前的 Win32 应用程序不同)和跨浏览器(IE 6 及更高版本和 Firefox)。

我目前的想法是查看以下内容:

  • Flash,但不是只重放 mp3 音频吗?
  • Java,VM 仍然可以免费使用吗?
  • 将音频转换为 Web 服务器上的 WAV 文件,然后使用其他人的插件重播该文件。出于性能原因,我宁愿将转换保留在 Web 服务器之外,但仍然是一种选择。
  • 编写我自己的自定义插件来完成完整的流和重播操作。

任何指导都是最有用的。

请注意,音频不是音乐,简单地转换为另一种音频格式并非易事。存储的音频也经常(每分钟)变化,需要不断转换。

0 投票
6 回答
9629 浏览

audio - 最佳语音压缩算法/格式

我们有一些原始语音音频,需要通过互联网分发。我们需要体面的质量,但它不需要具有音乐质量。我们主要关心的是消费者的可用性(即他们可以播放什么以及在哪里播放)和下载的大小。我的经验表明,mp3 不会产生最佳的语音音频压缩数字,但我不知道最好的选择是什么。最终,我们希望将转换过程自动化,以允许消费者选择他们想要的质量与尺寸水平。

0 投票
4 回答
394 浏览

java - Java中用于将文本与音频链接的数据结构

我想编写一个程序,在其中播放读取文本的音频文件。我想以绿色突出音频文件播放的当前音节,以红色突出当前单词的其余部分。我应该使用什么样的数据结构来存储音频文件以及告诉程序何时切换到下一个单词/音节的信息?

0 投票
1 回答
829 浏览

c# - Bass.dll 多次播放 PushStream

我正在使用一个pushStream,它充满了音频数据。将所有数据推送到流后,我正在使用 Bass.BASS_ChannelPlay(playPushStream, false) 播放它,效果很好,但只有一次。我该怎么做才能多次播放(一个接一个)?

将位置重置为 0 并使用 Loop Basflag 什么也没做。

0 投票
4 回答
7217 浏览

audio - 带限波形生成

我正在编写一个软件合成器,需要以 44.1 kHz 采样率实时生成带限、无混叠波形。锯齿波形现在就可以了,因为我可以通过将两个锯齿混合在一起来产生脉冲波,一个倒相和相移。

到目前为止,我已经尝试了以下方法:

  1. 在启动时以不同的带限频率预计算一个周期的完美带限波形样本,然后播放混合在一起的两个最接近的波形样本。我猜工作正常,但感觉不是很优雅。需要大量样本,否则会听到它们之间的“间隙”。插值和混合也是相当 CPU 密集型的。

  2. 整合一系列直流补偿正弦脉冲以获得锯齿波。听起来不错,除了如果您没有完全正确地获得直流补偿(我发现这真的很棘手),波会从零漂移。可以通过向积分器添加一点泄漏来减少 DC 问题,但随后会丢失低频。

所以,我的问题是:通常的做法是什么?任何建议的解决方案在 CPU 方面都必须是高效的,因为它必须实时完成,同时针对许多声音。

0 投票
3 回答
530 浏览

audio - 获取 MP3 音频压缩库

我想知道在哪里可以找到 MP3 库,以便在操作系统中实现。

0 投票
2 回答
7624 浏览

open-source - 寻找用于编辑 AAC 元数据(M4A 文件)的开源库

我正在寻找一个开源库,用于编辑 M4A 文件中的 AAC 元数据(如 iTunes 中所示)。具体来说,我需要能够添加专辑封面标签。它应该类似于 id3lib,它适用于 MP3 文件上的 ID3 标签。