Hey, und zwar möchte ich das man in einer Menü Auswahl sein Mikrofon auswählen kann.
Das klappt alles, und dort werden auch nur Geräte angezeigt die kompatibel sind, bzw. mit denen man halt
sprechen kann.
[CODE lang="java" title="Um die Geräte Namen in einer Liste zu speichern"]
public ArrayList<String> getMicroDevies(){
ArrayList<String>microDeviceList=new ArrayList<String>();
Mixer mixer = null;
Mixer.Info[]mixerInfos=AudioSystem.getMixerInfo();
for(int i = 0; i < mixerInfos.length; i++) {
mixer = AudioSystem.getMixer(mixerInfos);
Line.Info[] microInfo = mixer.getTargetLineInfo();
for(int a = 0; a < microInfo.length; a++) {
try {
TargetDataLine micro = (TargetDataLine) AudioSystem.getLine(mixer.getTargetLineInfo()[0]);
micro.open();
microDeviceList.add(""+mixerInfos);
microList.put(""+microDeviceList.get(microDeviceList.size()-1), micro);
micro.close();
} catch (LineUnavailableException e) {
}catch(ClassCastException ey) {
}
}
}
return microDeviceList;
}
[/CODE]
[CODE lang="java" title="Mikrofon auswählen"]
nMicro.addActionListener(ex->{
try {
microList.get(mikroname).open();
} catch (LineUnavailableException e1) {
}
microList.get(mikroname).start();
microList.get(mikroname).close();
System.out.println(mikroname+" ausgewählt");
});
[/CODE]
die microList HashMap speichert den Namen von dem Gerät ab und eben die TargetDataLine,
wenn ich jetzt über den Namen von dem Gerät auf die TargetDataLine zugreife
sprich ich wähle ein anderes Mikro aus zum sprechen, dann schaltet sich aber
automatisch das Standart Gerät von Windows wieder ein..
wie kann ich jetzt ein neues "Standart Gerät" auswählen , damit ich über ein anderes Mikrofon sprechen kann, gibt es dafür eine Möglichkeit ?
Das klappt alles, und dort werden auch nur Geräte angezeigt die kompatibel sind, bzw. mit denen man halt
sprechen kann.
[CODE lang="java" title="Um die Geräte Namen in einer Liste zu speichern"]
public ArrayList<String> getMicroDevies(){
ArrayList<String>microDeviceList=new ArrayList<String>();
Mixer mixer = null;
Mixer.Info[]mixerInfos=AudioSystem.getMixerInfo();
for(int i = 0; i < mixerInfos.length; i++) {
mixer = AudioSystem.getMixer(mixerInfos);
Line.Info[] microInfo = mixer.getTargetLineInfo();
for(int a = 0; a < microInfo.length; a++) {
try {
TargetDataLine micro = (TargetDataLine) AudioSystem.getLine(mixer.getTargetLineInfo()[0]);
micro.open();
microDeviceList.add(""+mixerInfos);
microList.put(""+microDeviceList.get(microDeviceList.size()-1), micro);
micro.close();
} catch (LineUnavailableException e) {
}catch(ClassCastException ey) {
}
}
}
return microDeviceList;
}
[/CODE]
[CODE lang="java" title="Mikrofon auswählen"]
nMicro.addActionListener(ex->{
try {
microList.get(mikroname).open();
} catch (LineUnavailableException e1) {
}
microList.get(mikroname).start();
microList.get(mikroname).close();
System.out.println(mikroname+" ausgewählt");
});
[/CODE]
die microList HashMap speichert den Namen von dem Gerät ab und eben die TargetDataLine,
wenn ich jetzt über den Namen von dem Gerät auf die TargetDataLine zugreife
sprich ich wähle ein anderes Mikro aus zum sprechen, dann schaltet sich aber
automatisch das Standart Gerät von Windows wieder ein..
wie kann ich jetzt ein neues "Standart Gerät" auswählen , damit ich über ein anderes Mikrofon sprechen kann, gibt es dafür eine Möglichkeit ?