当前位置: 首页 > 知识库问答 >
问题:

如何确定AudioFormat使用什么参数?

呼延鸿畅
2023-03-14

我这里有一个WAV文件:http://uppit.com/slpmuzpywxhs/202.wav

我需要使用以下参数基于声音文件的属性构造Java AudioFormat对象

浮动样本速率,int sampleSizeInBits,int 通道,布尔符号,布尔大端。

所以我的问题是:如何分析WAV文件以确定这些值?

编辑:多亏了杰克特找到解决方案!

共有1个答案

殳经略
2023-03-14

您可以查看波头以确定格式为:

  • 22050 采样率
  • 每个样本 8 位
  • 字节序 - 与8位无关,但也可以说小字节序。
  • 1 通道

我通过下载文件,右键单击并在mac上选择“获取信息”找到了这个信息。还有很多其他方法可以找到这个。

如果我为此编写代码,我可能不想硬编码这些值。谷歌给我找到了这个:

AudioInputStream stream = AudioSystem.getAudioInputStream("202.wav");
AudioFormat format = stream.getFormat();
 类似资料:
  • 我读过关于如何确定活动路由的问题,但我仍然不清楚如何用参数确定活动路由? 现在我是这样做的: 在我的组件中: 这将起作用,因为我将用户名作为字符串传递。有没有办法通过传递正确的参数来做到这一点??

  • 我正在做一个图形项目,涉及使用3D纹理对以直线网格形式存储的数据进行一些体绘制,我对glTexImage3D的宽度、高度和深度参数有点困惑。对于一维纹理,我知道你可以使用这样的东西: GLTEXAGE1D(GL_纹理_1D,0,GL_RGB,256,0,GL_RGB,GL_无符号_字节,数据); 其中宽度是每个颜色流的256个可能值。在这里,我仍然使用无符号字节形式的颜色(这里纹理的主要目的仍然是

  • 问题内容: 我使用Entity Framework 4.2,并希望调用具有输入参数的存储过程。我用来调用存储过程。 但是,文档缺少用于正确映射参数的正确的调用语法。我的google-foo让我失望了,我们将不胜感激。 即我有一个程序 我试着用 和 但是它们都失败,并 在“ @ p1”附近 出现 错误语法 错误 。 问题答案: 根据您的基础数据库提供程序,可以使用以下两种方法之一。 或者 您还可以指

  • 问题内容: 据我一直了解,适当的主要情况是: 实施。因此,如果我正在编写一个类,并且出于任何原因都没有扩展,那么我将通过首先测试,然后比较元素来实现。 对于特殊情况的重要(算法?)优化,它 不会 更改语义,而只会更改性能。例如,进行测试,并对和非列表使用略有不同的二进制搜索。 我不认为这两种情况都代表代码味道。但是,在其他情况下是否明智使用呢? 问题答案: 无法控制的旧版代码或API是的合法用例。

  • 我有一个批次处理作业在数据流运行在gcp下版本apache-梁[gcp]==2.19.0的数据流运行。我为作业创建了一个自定义模板。作业正在按预期运行,但我还想添加最大作业持续时间。我在wait_until_finish()方法中找到了持续时间(毫秒)参数,它应该是可用的。问题是:如何让模板化批处理作业在运行时间超过持续时间时自动停止?我不需要保存任何数据,我只希望工作运行时间过长时停止。我已经实

  • 我看到了带有各种参数的Spring MVC控制器处理程序方法。例如: null 所以, 什么决定参数列表? 为什么Spring controller处理程序方法没有固定签名? Spring如何处理这些变化的参数列表? 是否可以输入任意类型的参数?