2015-06-07 4 views
0

Я пытаюсь сделать часть программного обеспечения с помощью C++, которая воспроизводит аудио-образ .wav при нажатии определенного MIDI-ключа. Лучший способ, которым я думал об этом, - использовать инструкцию if (если есть более простой способ, я бы это оценил, но я довольно новичок в программировании, поэтому, пожалуйста, держите его простым).Сообщение MIDI-сообщения в C++

Посмотрев онлайн, я узнал, что разные MIDI-клавиши соответствуют различным сообщениям NOTE ON (например, NOTE ON 60 будет соответствовать среднему C), поэтому в основном я просто ищу, как сказать «когда NOTE ON 60 принимается, воспроизводите файл X.wav ". Я также узнал, что статус для NOTE ON равен 9n, так это означает, что компьютер получит 9x60 (используя пример 60 = пример C)?

После этого я просто должен был бы узнать, как играть звуковой образец, который я считаю, было бы следующее, используя sndfile.h:

SNDFILE *sndFile = sf_open("Sample1.wav"). 

Любая помощь будет очень высокую оценку.

+0

Проблема в том, что ваш английский немного выключен. На самом деле то, что вы хотите сказать, - это «**, когда ** ПРИНИМАЕТСЯ 60-й прием, воспроизводит файл X.wave« _ »и« когда »сильно отличается от« if », по крайней мере, в программировании на C++. Как таковой, это вопрос большой. –

+0

Ну ладно, я сейчас отредактирую. –

ответ

0

вы можете использовать PortAudio это все, что вы можете работать с миди и ваших звуковых файлов

+0

Ах, отлично! И как бы я закодировал «когда NOTE ON 60 получен, воспроизведите файл X.wav» с помощью PortAudio? Большое спасибо за ваш ответ, кстати! –

0

вы можете реализовать функцию потока с Portaudio и проверить с portMidi, что когда банкнота c4, например нажата, воспроизведение, что файл смотрите там документацию

Смежные вопросы