Você está aqui: Java ::: Pacote javax.sound.midi ::: Synthesizer - MIDI Synthesizer - Sintetizador MIDI |
Como retornar a relação de canais no Sintetizador MIDI do Java usando o método getChannels()Quantidade de visualizações: 834 vezes |
A especificação MIDI 1.0 define 16 canais, nos quais podemos gerar sons, trocar instrumentos, definir volume, etc. No Java, esta relação de canais pode ser obtida por meio de uma chamada ao método getChannels() da classe Synthesizer. Este método retorna um vetor de objetos da classe MidiChannel. É importante, antes de usar cada um dos canais retornados, verificar se se ele não está vazio, ou seja, null. Se um canal for retornado como null, não seremos capazes de enviar mensagens MIDI para ele. Veja um trecho de código no qual obtemos um objeto Synthesizer e acessamos a lista de canais usando o seu método getChannels(): package arquivodecodigos; import javax.sound.midi.MidiChannel; import javax.sound.midi.MidiSystem; import javax.sound.midi.MidiUnavailableException; import javax.sound.midi.Synthesizer; public class Estudos{ public static void main(String[] args) throws MidiUnavailableException{ // obtemos o Sintetizador Synthesizer sintetizador = MidiSystem.getSynthesizer(); // o abrimos sintetizador.open(); // obtemos a lista de canaix MidiChannel[] canais = sintetizador.getChannels(); // vamos mostrar a quantidade de canais int quantCanais = canais.length; System.out.println("Quantidade de canais: " + quantCanais); // vamos verificar quais canais estão ativos for(int i = 0; i < quantCanais; i++){ if(canais[i] != null){ System.out.println("Canal " + i + " ativo."); } else{ System.out.println("Canal " + i + " INATIVO."); } } // fechamos o sintetizador sintetizador.close(); } } Ao executar este código Java nós teremos o seguinte resultado: Quantidade de canais: 16 Canal 0 ativo. Canal 1 ativo. Canal 2 ativo. Canal 3 ativo. Canal 4 ativo. Canal 5 ativo. Canal 6 ativo. Canal 7 ativo. Canal 8 ativo. Canal 9 ativo. Canal 10 ativo. Canal 11 ativo. Canal 12 ativo. Canal 13 ativo. Canal 14 ativo. Canal 15 ativo. |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
C++ - C++ Windows API GUI - Como criar sua primeira aplicação de interface gráfica usando C++ e WinAPI |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |