Bonjour à tous,

J'aimerai modifier le volume principale. Je suis sur Windows, donc si vous me proposez une librairie exclusivement tourné vers Windows cela ne me dérange pas.

En cherchant sur le net, j'ai trouvé ce code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
private void setVolume(int vol){
		final Port lineOut;
		try
		{
			if (AudioSystem.isLineSupported(Port.Info.LINE_OUT)) {
				lineOut = (Port) AudioSystem.getLine(Port.Info.LINE_OUT);
				lineOut.open();
			} else if (AudioSystem.isLineSupported(Port.Info.HEADPHONE)) {
				lineOut = (Port) AudioSystem.getLine(Port.Info.HEADPHONE);
				lineOut.open();
			} else if (AudioSystem.isLineSupported(Port.Info.SPEAKER)) {
				lineOut = (Port) AudioSystem.getLine(Port.Info.SPEAKER);
				lineOut.open();
			} else {
				System.out.println("Unable to get Output Port");
				return;
			}
 
			FloatControl controlIn = (FloatControl)lineOut.getControl(FloatControl.Type.VOLUME);
			float volume = 100 * (controlIn.getValue() / controlIn.getMaximum());
			System.out.println("LINE_OUT : volume = " + volume);
 
			controlIn.setValue((float)vol / 100);
		}
		catch(final Exception e)
		{
			System.out.println(e + " LINE_OUT");
		}
	}
Le problème c'est que ça ne fonctionne pas sur Windows 7. Apparemment ça fonctionne sur XP mais pas sur les windows suivant.

Est-ce que vous connaissez une solution pour que cela fonctionne sous Windows 7?

J'ai aussi trouvé NativeFMod qui permet d'utiliser FMod avec Java, mais est-il possible de changer le volume principal avec FMod ?

Merci d'avance pour votre aide