я массив заполнен объектов javax.sound.sampled.Line.Info всех в настоящее время attatched микрофоныКак играть записывать звук на// с javax.sound.sampled.Line
Info[] sourceInfos = AudioSystem.getSourceLineInfo(Port.Info.MICROPHONE);
Использование их я могу получить линии всех микрофонов
for (Info sourceInfo : sourceInfos) {
Line sourceLine = AudioSystem.getLine(sourceInfo);
// record sound from those lines
}
То же самое относится и к оратору
Info[] sourceInfos = AudioSystem.getSourceLineInfo(Port.Info.SPEAKER);
for (Info sourceInfo : sourceInfos) {
Line sourceLine = AudioSystem.getLine(sourceInfo);
// play sound on those lines
}
Теперь я просто нужно е настроить, как воспроизводить звук на линии и как записывать звук из линии. Здесь я застрял и не смог найти решение.
Так просто, чтобы сказать, вопрос в том, как я могу читать/писать в строку?
Благодаря
Baschdi
Как бы узнать, принадлежит ли микшер к микрофону или динамику? – Basti
Я добавил код для выбора микшера, только если он поддерживает микрофон. В основном вам нужно перебирать смесители для этого. Теперь просто проверьте код. И еще одно замечание: код, который вы пытались реализовать с использованием интерфейса Line, должен использовать DataLine. Один из способов - использовать микшер, который я вам показал. Пожалуйста, прочитайте ссылку, чтобы лучше понять иерархию классов https://docs.oracle.com/javase/tutorial/sound/sampled-overview.html –