Tag: wav

如何使用Java将wav文件拆分为更小的块?

我有一个非常庞大的WAV文件,大小约为100MB。 我想使用Java来读取这个wav文件,并将其分成每2秒音频的较小块。 是否可以在Java中执行此操作? 你能告诉我一个我能用它实现的API吗? 谢谢,Snehal

如何在16khz 16bit mono little-endian中转换或录制.wav文件?

我只是在java中实现sphinx4语音识别。我需要的是如何录制声音或将任何声音.wave文件转换为16khz 16bit mono little-endian文件。 我已经搜索了很多这个..但是我没有具体的指导..希望任何人从堆栈溢出家庭可以帮助我或给我一个适当的指导。 1)。 我只需要在wave文件中用16khz 16bit单声道小端文件格式或2)录制音频。 我需要使用java中16khz 16bit单声道小端格式的任何采样率转换预先录制的文件。 我需要实现上述function之一..所以任何人都可以帮我解决这个问题…提前感谢 我用第一个选项创建了带有上述配置的wav文件,并在android中使用了以下代码。 package com.varma.samples.audiorecorder; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import android.annotation.SuppressLint; import android.app.Activity; import android.media.AudioFormat; import android.media.AudioRecord; import android.media.MediaRecorder; import android.os.Bundle; import android.os.Environment; import android.view.View; import android.widget.Button; public class RecorderActivity extends Activity { private static final int RECORDER_BPP =16; private […]

java wav播放器添加暂停并继续。

我有这个代码从播放和停止的文件夹播放wav文件。 我该如何添加暂停并继续? 它看起来像你的代码大多是代码请添加更多详细信息看起来你的代码大多是代码请添加更多详细信息看起来你的代码大多是代码请添加更多详细信息看起来你的代码大多是代码请添加更多细节 import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import java.applet.AudioClip; import java.net.URL; public class JukeBox extends JFrame { private JComboBox musicCombo; private JButton stopButton, playButton; private AudioClip[] music; private AudioClip current; public JukeBox(String title) { super(title); getContentPane().add(new JukeBoxControls()); } public static void main(String [] args) { JukeBox myf = new JukeBox (“WAV […]

如何从wav文件中获取PCM数据?

我有一个.wav文件。 我想从该声音文件中获取PCM数据,以便我可以从声音中获取单个数据块并对其进行处理。 但我不知道该怎么做。 谁能告诉我怎么做? 到目前为止我做到了这一点: public class test { static int frameSample; static int timeofFrame; static int N; static int runTimes; static int bps; static int channels; static double times; static int bufSize; static int frameSize; static int frameRate; static long length; public static void main(String[] args) { try { AudioInputStream ais = AudioSystem.getAudioInputStream(new File(“music/audio.wav”)); […]

在没有临时文件的情况下将音频流转换为Java中的WAV字节数组

给定一个调用的InputStream in其中包含压缩格式的音频数据(如MP3或OGG),我希望创建一个包含输入数据的WAV转换的byte数组。 不幸的是,如果您尝试这样做,JavaSound会向您发出以下错误: java.io.IOException: stream length not specified 我设法通过将wav写入临时文件然后将其读回来使其工作,如下所示: AudioInputStream source = AudioSystem.getAudioInputStream(new BufferedInputStream(in, 1024)); AudioInputStream pcm = AudioSystem.getAudioInputStream(AudioFormat.Encoding.PCM_SIGNED, source); AudioInputStream ulaw = AudioSystem.getAudioInputStream(AudioFormat.Encoding.ULAW, pcm); File tempFile = File.createTempFile(“wav”, “tmp”); AudioSystem.write(ulaw, AudioFileFormat.Type.WAVE, tempFile); // The fileToByteArray() method reads the file // into a byte array; omitted for brevity byte[] bytes = fileToByteArray(tempFile); tempFile.delete(); return bytes; […]

如何从我的wav文件中绘制声音数据?

首先,这是为家庭作业或…项目。 我无法理解如何在Java中为项目绘制声音数据波的想法。 我必须完全从头开始使用UI进行这项任务,所以基本上都是制作一个.wav文件编辑器。 我遇到的主要问题是将声音数据输入要绘制的图形中。 目前我正在绘制一个随机生成的值数组。 到目前为止,我有一个运行并validationwav文件的迷你程序,实际上它是一个wav文件。 我正在使用FileInputStream读取它并validation:RIFF字节(0-3),FileLength(4-7),WAVE字节(8-11),然后是格式块格式(从RIFF块的末尾开始) ;并将索引定位到它的末尾,并给出格式0-3,格式块4-7的长度,然后是波形文件的所有规范的下一个16字节,并将它们存储在适当的命名变量中。 一旦我到达DATA块并且它的长度超过了我的所有声音数据,这就是我不确定如何将每个字节存储为声音数据的字节,甚至将其转换为与振幅相关的值。声音。 我认为validation是相似的,所以它会是相同的,但它似乎不是那样的…要么那么,或者我一直在使一些非常简单的事情复杂化,因为我已经盯着这几天了。 任何帮助表示赞赏谢谢。

javax.sound.sampled.UnsupportedAudioFileException:加载wav文件时无法从输入文件中获取音频输入流

我正在使用java 6 ,我正在尝试加载wav文件,以获得其持续时间如下: public static double getAudioFileDuration(File file) { try { AudioInputStream stream = AudioSystem.getAudioInputStream(file); // At present, ALAW and ULAW encodings must be converted // to PCM_SIGNED before it can be played AudioFormat format = stream.getFormat(); if (format.getEncoding() != AudioFormat.Encoding.PCM_SIGNED) { format = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED, format.getSampleRate(), format.getSampleSizeInBits(), format.getChannels(), format.getFrameSize(), format.getFrameRate(), true); // big endian […]

如何从java中的字节数组中编写WAV文件?

我想从字节数组编写Wav文件,我也想从输入wav文件中分割通道 Java Sound API显示您可以从TargetDataLine录制音乐,并作为示例显示正在写入字节数组的数据。 但是将这个字节数组写入自己的文件是相当无用的,因为它不是WAV文件格式,不能在其他应用程序中播放。 如何使用javax.sound.sampled包编写声音文件?

用Java读取wav文件

我想用Java读取wav文件,我将用K-means对它们进行分类。 我如何读取Java中的wav文件并将它们分配到一个数组或类似的东西(你可以建议它的想法)来对它们进行分类? 编辑:我想使用API​​来读取wav文件和K-means。

Java程序为音频文件创建PNG波形

如何使用Java将Wav文件转换为PNG波形图像文件? java MyProgram.class [path to wav file] [path where to write png file] 预期成绩: 保存在指定路径中的Png是传入的wav文件的波形。