我一直在尝试用Java获取Clip的特定帧的音量。如果重要,它是WAV文件格式。
我尝试了以下操作,假设clip
是Clip
个对象而i
是任意int
。我得到的只是-1.0,相当于AudioSystem.NOT_SPECIFICED
if(clip.isOpen())
{
clip.setFramePosition(i);
System.out.println(clip.getLevel());
}
我通过播放来检查剪辑是否已加载,这有效。任何人都可以帮我解决这个问题吗? 此代码段的代码来自:
AudioInputStream ais;
Clip clip;
int i = 6; //Arbitrary value
ais = AudioSystem.getAudioInputStream(new File("C:\Arbitrary\Path\File.wav"));
clip = AudioSystem.getClip();
clip.open(ais);
if(clip.isOpen())
{
clip.setFramePosition(i);
float level = clip.getLevel();
System.out.println(level);
}