[英]Change volume java using jlayer?
我搜索并阅读了其他主题,但仍然无法解决我的问题。 我有一个Java主类和一个Java JFrame。 我想添加jslider来改变我的mp3播放器中的音量。 我该怎么办?
my_player2_func
class my_player2_func {静态Player播放器;
static void play() {
try {
FileInputStream fe = new FileInputStream(my_player2_main.str);
player = new Player(fe);
} catch (Exception ex) {
System.out.println(ex);
}
new Thread(new Runnable() {
@Override
public void run() {
try {
player.play();
} catch (Exception ex) {
System.out.println(ex);
}
}
}).start();
}
static void stop() {
if (player != null)
player.close();
} }
my_player2_main
public my_player2_main() {
initComponents();
}
static String str;
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
my_player2_func.play();
}
private void jSlider1StateChanged(javax.swing.event.ChangeEvent evt) {//what should i do here?}
JLayer是解码器 。 按照其定义,它对音量一无所知,这就是播放声音的音频硬件的工作。
您的问题源于您正在使用Player和defaul JavaSoundAudioDevice类的事实,这些类是作为播放MP3的简短示例,而不是作为完整的音频播放器的基础。
您将必须复制或修改JavaSoundAudioDevice的源代码(JLayer源代码的一部分),并对其进行破解以支持音量控制。 等等,您可以控制音量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.