我正在使用jlGui播放音频文件的BasicPlayer(它基于Javasound)。该文件位于Samba共享中,我正在使用Jcifs访问它。它给了我一个InputStream。NtlmPasswordAuthenticationauth=newNtlmPasswordAuthentication(...);SmbFilef=newSmbFile(...);SmbFileInputStreamaudioIn=newSmbFileInputStream(f);intbufSize=8096;//shouldIusef.length()here?audioBIS=newBufferedIn
我得到错误的频率,我不明白为什么我得到错误的值。因为我已经按照指令计算,然后是stackoverflow。我用过FFThttp://introcs.cs.princeton.edu/java/97data/FFT.java.html和复杂的http://introcs.cs.princeton.edu/java/97data/Complex.java.htmlaudioRec.startRecording();audioRec.read(bufferByte,0,bufferSize);for(inti=0;i我正在获取21000、18976、40222、30283等值...请帮我..
我试图根据本教程(http://wiki.lwjgl.org/index.php?title=OpenAL_Tutorial_1_-_Single_Static_Source)在LWJGL3中加载声音,但我发现一个问题,即WaveData类很可能不存在于旧版本的LWJGL2.X中。因为我什至无法编译代码。有没有其他方法可以使用openAL在lwjgl中加载声音...在LWJGL2中,我曾经使用过paulscode声音系统(http://www.paulscode.com/forum/index.php?topic=4.0),但我不确定它现在是否适用于较新版本的LWJGL3。感谢您的回答
我想比较两个音频文件,例如mp3和wav。我用musicg通过指纹比较。Waverecord1=newWave(music1.toString());Waverecord2=newWave(music2.toString());FingerprintSimilaritySimilarity=record1.getFingerprintSimilarity(record2);System.out.println(Similarity.getSimilarity());musicg只能在wav上工作,所以我使用JAVE将mp3转换为wavFiletemp=newFile("temp.wav
我在转换WAV文件的音频格式时遇到问题。我正在用我的麦克风录音,录音格式如下:PCM_SIGNED44100.0Hz,16位,单声道,2字节/帧我想把上面的格式转换成,ULAW8000.0Hz,8位,单声道,1字节/帧我正在使用下面的代码,InputStreamis=request.getInputStream();AudioInputStreamais=AudioSystem.getAudioInputStream(is);AudioFormatoldFormat=ais.getFormat();AudioFormatnewFormat=newAudioFormat(AudioFor
我有以下代码片段:Filefile=newFile(sourceFile);AudioInputStreamin=AudioSystem.getAudioInputStream(file);AudioInputStreamdin=null;AudioFormatbaseFormat=in.getFormat();AudioFormatdecodedFormat=newAudioFormat(AudioFormat.Encoding.PCM_SIGNED,baseFormat.getSampleRate(),16,baseFormat.getChannels(),baseFormat.g
我有一个非常大的WAV文件,大约有100MB。我想用Java来读取这个wav文件,并将它分成更小的block,每2秒的音频。在Java中可以做到这一点吗?你能给我推荐一个我可以用来实现它的API吗?提前致谢,斯内哈尔 最佳答案 您可以使用AudioInputStream及其AudioFileFormat成员(其中包含一个AudioFormat实例)知道要写什么(格式,采样率),你可以使用AudioSystem写出来。根据格式的采样率,您可以找出2秒内有多少字节的音频,然后循环从AudioInputStream读取那么多字节,将它们写
我想知道如何从音频文件中获取诸如振幅之类的音乐信息?假设我们有一个原始音频文件,我想从文件中提取数据,从而生成一条曲线,例如http://www1.icsi.berkeley.edu/Speech/mr/nearfar.html.一旦我得到这条曲线,我将进行FFT等。我一直在尝试在JavaSound中寻找解决方案,但到目前为止我只知道我可以使用AudioInputStream将数据倒入byte[]。但是我如何将byte[]转换为包含有关声音的实际信息的double[]?在这种情况下,double[]中的值表示振幅。谁能提供一个解决方案来解决Java中的这个问题?
您好,我需要将wav音频文件的采样率从44.1kHz降低到8kHz。我必须使用字节数组手动完成所有工作……这是出于学术目的。我目前正在使用2个类,Sink和Source,来弹出和压入字节数组。一切顺利,直到我到达需要使用线性插值对数据block进行下采样的部分。由于我正在从44100赫兹下采样到8000赫兹,我该如何插入一个包含大约128000000字节的字节数组?现在我根据i%2==0、i%2==1和i%80==0弹出5、6或7个字节,并将这5、6或7个字节的平均值推送到新文件中.结果确实是一个比原来小的音频文件,但它不能在windowsmediaplayer上播放(说是读取文件时出
我正在研究一个分析声音文件音高的程序。我遇到了一个非常好的API,称为“TarsosDSP”,它提供了各种音高分析。但是我在设置它时遇到了很多麻烦。有人可以告诉我一些关于如何使用这个API(特别是PitchProcessor类)的快速指示吗?一些代码片段将不胜感激,因为我在声音分析方面真的很陌生。谢谢编辑:我在http://husk.eecs.berkeley.edu/courses/cs160-sp14/index.php/Sound_Programming找到了一些文档其中有一些示例代码展示了如何设置PitchProcessor,......intbufferReadResult=