Pergunta

Estou a planear criar o meu próprio metrônomo (instrumento woodblock) usando Java que pode definir o seu bpm, volume, etc. E eu tentei mais de 16 canais (MIDI especificação 1.0) obtidos a partir getChannels() mas não há woodblock ouvida todos.

Aqui está o código retirado http://www.jsresources.org

  /*
   * Turn the note on on MIDI channel 1.
   * (Index zero means MIDI channel 1)
   */
  MidiChannel[] channels = synth.getChannels();
  channels[0].noteOn(nNoteNumber, nVelocity);

  /*
   * Wait for the specified amount of time
   * (the duration of the note).
   */
  try
  {
   Thread.sleep(nDuration);
  }
  catch (InterruptedException e)
  {
  }

  /*
   * Turn the note off.
   */
  channels[0].noteOff(nNoteNumber);

Qualquer um nada sobre isso tem? obrigado.

Foi útil?

Solução

Dependendo do seu sintetizador, os sons de percussão será no canal 10 ou canal 16 (índices de 9 ou 15 em sua matriz). Os sons xilogravura seria números de nota 76 e 77, e você provavelmente iria querer usar um valor velocidade da nota de 128 (para o volume máximo).

Eu não olhei para o código que você está usando, mas você também pode precisar chamar um método para ligar o sintetizador antes que você pode jogar qualquer coisa. Também, desde que você está jogando uma nota de percussão, você pode ser capaz de enviar a nota correspondente off mensagem imediatamente após a nota na mensagem (para que você não tem que descobrir a duração do fixo nota percussão). A maioria dos sintetizadores MIDI que eu tenho jogo usado todo o som de percussão mesmo depois de receber a nota off mensagem.

Outras dicas

a xilogravura é um instrumento de percussão. você deve ouvi-lo quando você tocar a nota certa em um canal que tenha sido atribuída uma bateria ou percussões patch. (Em um percussões ou tambores remendo, cada nota desempenha um instrumento diferente:. Bloco de madeira, caixa de bateria, oi-tom, clave, etc)

Use (por exemplo) esta MIDI geral (GM) referência para procurar manchas . Você precisa canalizar 10 para percussão GM e número da nota 76 para Hi bloco de madeira ou 77 para o bloco de madeira Low.

Além disso, instrumento 116 é um teclado completo (qualquer passo de 1 a 128) bloco de madeira. Eu acredito que deve funcionar em qualquer-percussão não (ou seja, não 10, ou possivelmente 16) do canal.

Nota:. GM parece ser baseada em 1, enquanto que a sua API parece ser baseado em 0, de modo que você pode ter que subtrair um alguns desses valores

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top