【问题标题】:How to process audio (wav) using java-openal如何使用 java-openal 处理音频(wav)
【发布时间】:2019-11-29 17:16:38
【问题描述】:

我正在尝试从 .wav 获取更多信息 例如,使用分贝或 RMS 将 .wav 切成小块。 或提高 .wav 的分贝 如果我也能得到频率信息就完美了。 .wav 是单声道的。

我可以使用urish/java-openal 播放我的 .wav。由 Uri Shaked 创建。 我是否查看 OpenAL 文档? 还是我应该找到另一个音频库? 我更喜欢 Java 而不是 C。我不擅长 C。

【问题讨论】:

    标签: java openal audio-processing


    【解决方案1】:

    首先使用一些库打开 WAV 文件并使用原始音频波填充一个数组,该数组将采用 PCM 格式...参见Reading wav file in Java ... WAV 格式很简单,因此您可以编写自己的代码解析 WAV 文件并查看 44 字节标头和 PCM 音频有效负载,请参阅下面的 WAV 规范链接

    一旦你有了整数数组,我建议你简单地打印到控制台……根据你发送整数数组的位置,你可能需要先将它转换成浮点数……通常整数从 0 到一些不等2 的幂,例如 2^16 - 1 ... 通常您只会对这些整数的一小部分感兴趣,而不是对整个文件感兴趣...这称为样本窗口,其中每个整数都是源音频的样本已从其模拟源(例如麦克风)数字化为离散整数,以表示某一时刻音频曲线的高度

    通常要获得将阵列或阵列的一部分发送到 FFT 调用的频率...这会将信号从其时域转换到频域...在该转换过程中它既不会丢失也不会获得信息...一旦在频域中,您可以将其发送到反向即逆变换以获得原始时域信号...here is how to parse the frequency domain data

    请注意,您可以使用命令行工具 FFMEG 对音频(和视频)进行大量操作......它也可以作为一个库提供,您可以从代码中调用它(以各种语言)

    OpenAL 是一个很好的库,用于渲染音频或从麦克风捕获音频

    祝你好运,欢迎来到 DSP 的世界

    这里有一些 WAV 规范的详细信息

    http://tiny.systems/software/soundProgrammer/WavFormatDocs.pdf http://soundfile.sapp.org/doc/WaveFormat/ http://www.labbookpages.co.uk/audio/javaWavFiles.html https://blogs.msdn.microsoft.com/dawate/2009/06/23/intro-to-audio-programming-part-2-demystifying-the-wav-format/ http://soundfile.sapp.org/doc/WaveFormat/
    http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/Samples.html http://soundfile.sapp.org/doc/WaveFormat/#craig@ccrma.stanford.edu http://unusedino.de/ec64/technical/formats/wav.html http://www.drdobbs.com/database/inside-the-riff-specification/184409308 http://www.gamedev.net/page/resources/_/technical/game-programming/loading-a-wave-file-r709 http://www.topherlee.com/software/pcm-tut-wavformat.html http://www.labbookpages.co.uk/audio/javaWavFiles.html http://www.johnloomis.org/cpe102/asgn/asgn1/riff.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-26
      • 1970-01-01
      • 1970-01-01
      • 2011-03-04
      • 1970-01-01
      • 2012-12-07
      相关资源
      最近更新 更多