问题标签 [javasound]

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 投票
4 回答
13594 浏览

java - 将 Midi 音符编号转换为名称和八度音阶

有谁知道 Java 世界中存在将 midi 音符编号映射到特定音符名称和八度音阶编号的任何东西。例如,参见参考表:

http://www.harmony-central.com/MIDI/Doc/table2.html

我想将 60 号 midi 音符映射到 octave 4 中相应的音符名称 (MiddleC)。我可以为此编写一个实用程序类/枚举,但这会相当乏味。有人知道吗?

我专门用它来用 Java 编写 Tenori-On/Monome 克隆,到目前为止一切都很好......

解决方案

这就是我最终使用的:

0 投票
2 回答
2527 浏览

java - 在 Java 中生成正弦波时背景中的噪声

当我运行以下代码时,我在后台得到了轻微的失真(听起来像嗡嗡声)。由于其微妙的性质,它让人相信字节转换存在某种混叠。

AudioFormat = PCM_SIGNED 44100.0 Hz,16 位,立体声,4 字节/帧,大端

注意:代码假设(现在)数据是大端的。

0 投票
5 回答
4238 浏览

audio - 快速音频输入/输出

这是我想要做的:

我想让用户给我的程序一些声音数据(通过麦克风输入),然后保持 250 毫秒,然后通过扬声器输出回来。

我已经使用 Java Sound API 完成了这项工作。问题是它有点慢。从发出声音到再次从扬声器中听到声音的时间至少需要 1-2 秒,我什至还没有尝试实现延迟逻辑。理论上应该没有延迟,但确实存在。我知道您必须等待声卡填满其缓冲区或其他任何东西,并且样本大小和采样率与此有关。

我的问题是:我应该继续沿着 Java 路径尝试这样做吗?如果可能的话,我想将延迟降低到 100 毫秒。有没有人有使用 Java 的 ASIO 驱动程序的经验?应该是更快了。。

另外,我是一个 .NET 人。这是否与 .NET 相关?C++呢?我正在寻找合适的技术在这里使用,也许是如何使用您建议的技术平台读/写音频输入/输出流的一个很好的例子。谢谢你的帮助!

0 投票
3 回答
81915 浏览

java - Java中的音频音量控制(增加或减少)

如何使用 Java 增加传出 wav 音频流的音量?我遇到了各种 Java TTS 引擎和合成语音的输出量的问题。我可以使用 API 调用或 doo-hickey.jar 来提高音量吗?

0 投票
4 回答
5220 浏览

java - Java - 从 .wav 中删除标头

我正在使用以下代码将 .wav 文件读入字节数组。

有没有一种简单的方法可以在读入字节数组之前或之后删除 .wav 标头?

0 投票
1 回答
58 浏览

java - 我在哪里可以提交有关 FOSS Java Sound 实现 org.classpath.icedtea.pulseaudio.PulseAudioSourceDataLine 的错误报告?

我对 Sun 的 OpenJDK、IcedTea、GNU CLASSPATH 和 Linux 发行版分发的 OpenJDK 版本之间的区别感到非常困惑。所以为了简单起见,我可以在哪里提交关于 org.classpath.icedtea.pulseaudio.PulseAudioSourceDataLine 的上游错误报告?谢谢你的帮助。

0 投票
2 回答
7343 浏览

java - 使用 Java 将 WAV 文件读入样本数组时即时转换采样率

我有一组简短的 WAV 文件,我想使用各种数字信号处理算法在 Java 中处理这些文件。为此,我需要获取一个 int 值样本数组,以 11025 Hz 帧速率编码。

源文件有几种不同的采样率,包括 11025 Hz 和 44100 Hz。这是我试图用来阅读它们的代码:

问题是,代码不能正确处理不同的采样率。因此,对于 44100 Hz 帧速率,我得到的样本数量是 11025 Hz 帧速率的四倍。我希望生成的样本数组使用 11025 Hz 帧速率,而不考虑源文件的帧速率。在读取 AudioInputStream 时,我尝试强制 Java 为我转换帧速率,但出现类似于以下异常的异常:

我阅读了 Java Sound API 教程:http: //java.sun.com/docs/books/tutorial/sound/converters.html。Java Sound API 似乎不支持我的操作系统(Windows 7)的这种转换。而且我想避免对任何外部库的依赖。有什么办法可以自己进行采样率转换吗?

0 投票
3 回答
8879 浏览

java - Java 播放声音。有默认的系统声音吗?

嗨,我正在尝试编写一个可以播放莫尔斯电码的应用程序。我只是想知道java中是否有默认的系统声音,比如一些哔声,还是我必须从互联网上下载一些声音文件?

0 投票
1 回答
532 浏览

swing - java swing客户端的网络音频播放器?

我正在尝试实现和实时音频流摆动桌面应用程序。尝试使用 java.net 类获取音频字节,然后将其送入播放。

只是尝试盲打海底认为水箱会破裂:((

帮助或任何建议?

0 投票
1 回答
2642 浏览

java - 如何从视频文件中提取音频并将其制作为 JavaSound AudioInputStream?

我知道需要使用 JMF 来处理视频,但是 JMF api 非常混乱且难以理解。我看到了这样事情,但我想做的恰恰相反。