【问题标题】:Java or C# library for signal analysis on the sound card用于声卡信号分析的 Java 或 C# 库
【发布时间】:2009-10-26 07:44:50
【问题描述】:

是否有使用 PC 声卡进行信号分析的 Java 或 C# 库?我对音乐混合不感兴趣,而对通用信号分析不感兴趣——看看 SIGVIEW——我对可以做到这一点的 Java 或 C# 库感兴趣。另一个例子是scEEG项目,通过分析声卡捕获的脑电波信号,努力构建声卡脑电图仪。

【问题讨论】:

    标签: c# java signal-processing soundcard


    【解决方案1】:

    您可以使用 JavaSound API(javax.sound.sampled 中的类)访问 Java 中的音频输入。上次我为此使用 .NET 时,您必须使用托管 DirectX API,这不是那么容易使用,但较新的 .NET 框架可能有更简单的 API。

    谈到信号处理,我想您必须更准确地了解您的要求。这是一个非常广泛的领域,它可能有也可能没有可用的库来执行您需要的分析或处理,但没人能猜到您在做什么。

    【讨论】:

    • 我正在“达到”的目的正是我所说的:信号通过我计算机音板的音频输入进入,然后 将其读取为八位字节流并为我提供了一系列对信号分析有用的转换和统计测量。
    • 根据您需要的转换和测量值(但显然不愿意与我们分享),您可能需要不同的库。我的水晶球今天不幸坏了。
    • 我对任何可用的东西都很感兴趣,对你的回答有创意,我很想知道我有什么选择。如果你知道更多的图书馆,那就更好了,你可以发布更多,他们网站的链接还可以,我一定会检查出来的。
    • 是的..javascript 非常适合播放音频。看看imeem。他们到处都有 javascript
    【解决方案2】:

    这取决于你想要什么样的信号处理,有像 irrklang (http://www.ambiera.com/irrklang/features.html) 这样的声音库可以做大量的操作等,还有一些只会改变基本的东西,比如节奏/pitch (http://www.surina.net/soundtouch/)。

    我以前亲自使用过 BASS (http://www.un4seen.com/),它很棒,但是它确实需要非商业用途的许可费,所以如果你将它用于商业用途,你可能需要多看看项目。它利用了使用硬件的 DirectSound API,因此它基本上是一个抽象 API。

    【讨论】:

    • 我对处理声音不感兴趣,声卡对我来说只是昂贵的专业信号采集卡的廉价等价物。我想用它来分析通用信号,就像示波器一样。
    【解决方案3】:

    取决于你想要做什么 Exocortex.DSP 进入 Math.NET 尝试等等。如果它足够或表现良好,值得调查。

    或者,使用专业人士使用的东西并与之互操作,英特尔 DSP 和数学内核包已经完成了一些工作,并进行了大量体面的尝试以轻松与其交互。此外,Java 或 C# 都做得不好在原始数组上,它们的实现通常比任何体面大小的数据集都要好一个数量级。

    [反对互操作管理世界的部分]

    【讨论】:

    • 好的...我查看了这些站点,但没有发现从声卡读取输入的参考。您能否向我提供您在何处找到此特定信息的链接?
    • 这一切都是从内存中处理 CLR 的灾难 :) 对于声音输入,去 CodePlex 上的 NAudio。
    【解决方案4】:

    查看NAudio。在从音频中提取数据方面看起来很实用

    【讨论】:

    • 我不想从音频中提取数据,我想处理进入声卡音频输入的通用信号,这意味着该信号不会被格式化为音频格式(pcm、mp3...)。从我在 NAudio 网站上看到的内容来看,该库专门用于分析音频格式,而我想捕获原始信号输入,并能够像示波器一样对其进行过滤——在其中查找和测量模式。
    【解决方案5】:

    我只熟悉 java 的东西。可悲的是,我不知道有什么好的、免费的、易于使用的信号处理库。我一直在使用这个和那个。

    捕获:

    • JavaSound API (http://java.sun.com/docs/books/tutorial/sound/capturing.html) 从声卡捕获声音。

    • Sphinx4 (http://cmusphinx.sourceforge.net/sphinx4/) 确实实现了捕获等等...然而,它是一个结构复杂的大项目

    DSP:

    • http://www.webkitchen.com/brainathlon 用于脑电图分析,并实现了一些信号处理例程(过滤器)

    • http://www.falstad.com/mathphysics.html 有很多小程序示例,即信号处理。代码并不总是很容易理解,但过去对我有帮助

    希望对你有帮助

    【讨论】:

      【解决方案6】:

      MATLAB 有一些功能强大的信号分析工具,可以很好地处理音频。不确定您是否可以开箱即用地为其提供实时流,但它应该很容易破解。 MATLAB 以交互式应用程序而闻名,但也有一个 embedded version

      【讨论】:

        猜你喜欢
        • 2011-03-27
        • 2012-04-01
        • 2011-01-09
        • 2018-12-23
        • 2020-10-11
        • 2021-12-12
        • 1970-01-01
        • 2011-03-19
        相关资源
        最近更新 更多