我想玩一个PCM_UNSIGNED11025.0Hz,8bit,mono,1bytes/frame文件描述here(1)和here(2).第一种方法可行,但我不想依赖于sun.*东西。第二个结果只播放了一些前导帧,听起来更像是点击。不可能是IO问题,因为我正在从ByteArrayInputStream播放。请分享您对为什么会发生这种情况的想法。TIA。 最佳答案 我不确定为什么您链接到的第二种方法会启动另一个线程;我相信音频无论如何都会在自己的线程中播放。问题是您的应用程序在剪辑播放完之前就结束了吗?importjavax.soun
是否有一个好的方法可以在Java中获得像样的、可靠的数字采样声音播放?我的请求列表很短:从.wav文件之类的文件中加载内存中的数字化样本(例如,从jar中捆绑的资源)以非阻塞方式播放它们当我同时播放多个样本并且它们在时间上相交时,它们应该得到适当的混合如果有以下这些就好了,但事实上我可以没有它:从.ogg或类似的压缩格式播放(显然没有在Java中实现占用大量CPU的解码器)在同一样本仍在播放时再次播放它不应停止给定样本的先前播放,但第二个副本应该开始并与第一个副本正确混合我试过臭名昭著的JavaSoundAPI,但发现它完全不可靠,似乎无法满足我的最小愿望list。我遇到的问题:在带有
我想在代码中提供的URL获取声音文件并播放它(它是mp3格式)。我查看了一些与此问题相关的StackOverflow问题,他们都说要获取mp3plugin.jar,所以我做了。在Eclipse中,我将其添加为配置构建路径下的外部jar(因为它位于我的下载文件夹中,不确定这是否是放置它的最佳位置)。我再次运行它,它仍然给我这个错误:javax.sound.sampled.UnsupportedAudioFileException:couldnotgetaudioinputstreamfrominputstreamatjavax.sound.sampled.AudioSystem.getA
我意识到这可能相对小众,但也许这就是为什么无论如何都要问这个问题的原因。我正在寻找一个硬件多输入录音控制台(例如AlesisIO26)来接收Adat光管8channel输入以进行信号处理。由于我还没有获得设备并且需要弄清楚这是否可行(预算问题),我想问一下是否有人有在Java中利用所有这8个输入获取数据的经验?我已经看到大量使用Javax.sound.sampled库录制声音的示例,但我找不到任何关于多声道的信息超过2。我感兴趣的是将8个声道单独作为单声道源进行采样对它们执行一些简单的DSP。硬件设备会被视为一个调音台吗?8个channel表示为8条线?我希望我的术语正确。如果有人能指
当我使用JavaSound或第三方声音捕捉工具捕捉并将其记录到文件中时。然后读回文件修改它,有什么办法可以消除我的java应用程序的“背景噪音”。例如主要人物说话时的道路交通/空气噪音?谢谢 最佳答案 去除背景噪音非常困难。如果它是均匀的噪声,例如飞机上的“白”噪声,则有一些算法可以去除这些频率分量。但是,如果噪音不均匀且本质上与您的良好录音相似,例如人们在后台说话、街道噪音等,很难将它们分开。对此已有大量研究。至少,您需要确切地知道什么是好的音频,什么是坏的音频。例如。如果您正在捕获语音,可能会有特殊的音频修复软件可用于将语音与其
我正在使用binauralbeats做一些工作并且正在尝试构建一个Java应用程序,该应用程序可以以略有不同的频率播放两种声音...大约25-30Hz的差异。在一个完美的世界中,我想给Java两个整数输入,比如440和410,让Java播放440Hz和410Hz的音调。鉴于我在javax.sound.*类中看到的内容,Java似乎只支持相当于钢琴音符的...A4@440Hz,然后是A-sharp-4@466.164Hz,在另一个方向上,G-sharp-4@415.305Hz。虽然“相邻”通常在产生双耳节拍的范围内,但我正在努力实现对音调频率的更多控制。由于简单的音频合成只不过是频率、强
我正在使用以下代码通过java声音API播放声音文件。Clipclip=AudioSystem.getClip();AudioInputStreaminputStream=AudioSystem.getAudioInputStream(stream);clip.open(inputStream);clip.start();Clip.start()方法调用立即返回,系统在后台线程中播放声音文件。我希望我的方法暂停,直到播放完成。有什么好的方法吗?编辑:对于所有对我的最终解决方案感兴趣的人,根据Uri的回答,我使用了以下代码:privatefinalBlockingQueuequeue=n
谁能给我指出正确的方向,说明为什么这段代码不能连续播放这段音频?它播放一次然后停止。finalClipclip=AudioSystem.getClip();finalAudioInputStreaminputStream=AudioSystem.getAudioInputStream(newFile("Alarm_Police.wav"));clip.open(inputStream);clip.loop(Clip.LOOP_CONTINUOUSLY); 最佳答案 如果您正在运行更大的应用程序,则此答案可能不适用。但是对于仅使用那段
我最近用HeadFirstJava中的代码实现了一个MIDIBeatbox,并且真的很想用Java的MIDI功能做更多的事情。我想我可以从向现有代码添加更多非打击乐器开始,但我似乎无法找到可用乐器及其int键的简单列表。JDK附带的Soundbank是否存在这样的列表? 最佳答案 像这样运动吗?importjavax.sound.midi.*;importjavax.swing.*;classInstruments{publicstaticvoidmain(String[]args)throwsMidiUnavailableExce
你能建议我如何写一首播放歌曲的作品吗?我尝试了以下代码片段,但出现此异常:importsun.audio.*;importjava.io.*;classtester{publicstaticvoidmain(Stringargs[])throwsException{InputStreamin=newFileInputStream("tester.mp3");AudioStreamas=newAudioStream(in);AudioPlayer.player.start(as);}} 最佳答案 如前所述,JavaSound默认不支持