|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
09.07.2013, 09:49 | #1 |
Пользователь
Регистрация: 09.07.2013
Сообщений: 18
|
Воспроизведение звуков в С++ Builder 6
Добрый день Уважаемые программисты!
Необходима Ваша помощь. Требуется: Воспроизвести 7 стандартных музыкальных нот средствами С++ Builder 6 или еще как нибудь. Смотрел функции MesageBeep и PlaySound. Последние позволяют воспроизводить только внешние файлы музыки. Как можно реализовать воспроизведение музыкальных нот? Заранее спасибо! Последний раз редактировалось Pir; 09.07.2013 в 10:00. |
09.07.2013, 10:37 | #2 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Читайте про Beep()
|
09.07.2013, 12:17 | #3 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
WaveForm API.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
15.07.2013, 15:45 | #4 |
Пользователь
Регистрация: 09.07.2013
Сообщений: 18
|
С воспроизведением нот разобрался. Действовал через миди: midiOutOpen(&Out,0,0,0,0);
Msg= (0x90 + (20 * 0x100) + (0x7f * 0x10000)); midiOutShortMsg(Out,Msg); Получил достаточно хорошее звучание нот. Большое спасибо. Есть еще 1 вопрос. Воспроизведение нот делаю в цикле в зависимости от введенных значений чисел следующим образом (кусок кода): __fastcall TForm1::MidiOutOpen(int m_num) { if(m_num == 1) { midiOutOpen(&Out,0,0,0,0); Msg= (0x90 + (20 * 0x100) + (0x7f * 0x10000)); midiOutShortMsg(Out,Msg); stopForSecond(); } else if(m_num == 2) { midiOutOpen(&Out,0,0,0,0); Msg= (0x90 + (24 * 0x100) + (0x7f * 0x10000)); midiOutShortMsg(Out,Msg); stopForSecond(); } и т.д... Все компилируется на ура, но вот при запуске звучит только один звук(видимо первый). Получается что не отрабатывается цикл? Помогите пожалуйста. |
20.07.2013, 11:04 | #5 |
Пользователь
Регистрация: 09.07.2013
Сообщений: 18
|
Не у кого нет никаких решений?Помогите плиз
|
20.07.2013, 11:35 | #6 |
Заблокирован
Регистрация: 17.07.2013
Сообщений: 104
|
|
24.07.2013, 12:57 | #7 |
Пользователь
Регистрация: 09.07.2013
Сообщений: 18
|
Большое спасибо за помощь!Так и буду использовать!
|
30.07.2013, 18:53 | #8 |
Пользователь
Регистрация: 09.07.2013
Сообщений: 18
|
Доброго дня всем!
Кто подскажет? Если писать код для миди Msg= (0x90 + (20 * 0x100) + (0x7f * 0x10000)); midiOutShortMsg(Out,Msg); где 20- определенная музыкальная нота, как вместо числа 20 поставить нецелое число? например 20,89 или любое другое. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Воспроизведение звуков | roulis2844sasha | PHP | 1 | 20.04.2012 09:57 |
Воспроизведение звуков наложеных друг на друга | fate | Общие вопросы Delphi | 6 | 22.06.2011 09:19 |
Программное воспроизведение звуков | Олег* | Microsoft Office Word | 13 | 26.03.2011 13:53 |
Воспроизведение звуков и gif анимации | Парфеншество | Помощь студентам | 0 | 17.10.2010 15:19 |
Воспроизведение нескольких звуков одновременно | GodSmack | Общие вопросы Delphi | 3 | 13.08.2009 02:28 |