|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.03.2010, 11:33 | #1 |
Регистрация: 24.03.2010
Сообщений: 7
|
Работа со "значением" миди
Доброго времени суток. У меня возникла необходимость работы с миди файлами. Я могу проиграть его, могу сделать, что-то вроде пианино, но не как не могу выполнить следующие… Воспроизводя миди файл мне необходимо получать его значение в настоящий момент времени (как я понял, он воспроизводится этой функцией -midiOutShortMsg(hmidi, i), где i значение воспроизводимого звука), а весь миди файл вызывается из буфера кусками именно в таком виде. Если у кого, то есть, какая ни будь информация, поделитесь, буду очень благодарен…
|
24.03.2010, 15:41 | #2 |
Регистрация: 24.03.2010
Сообщений: 7
|
Если понятнее, то скажем при проигрывании миди файла у меня какой то элемент менял параметр(скажем visible у кнопки) появляясь исчезая в такт
|
25.03.2010, 21:00 | #3 |
Регистрация: 24.03.2010
Сообщений: 7
|
возможен вариант обработки событий (event) которые закодированы в миди, он тоже пригоден. Вообще выслушаю любые предложения, так же буду рад литературе, на эту тему.
|
27.03.2010, 13:01 | #4 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Не постите много постов подряд, используйте кнопку "Правка".
Что касается миди, я делал пианино, файлы читать не пробовал. Как вы воспроизводите файл? Функцией типа SoundPlay? Тогда не получиться ничего, нужно файл читать на низком уровне, тогда будет доступ ко всем данным. Поищите исходники может есть где-то чтения миди файлов, чтобы самому не писать.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог |
27.03.2010, 15:09 | #5 |
Регистрация: 24.03.2010
Сообщений: 7
|
За несколько сообщений подряд я прошу прощенья. Миди воспроизводил функцией MCISendString(PChar('play ' + FileName), nil, 0, 0); да она не подходит для этого. Не чего на низком уровне не нашел, хотя в тупике (и в поиске)уже дней 10. Очень нужна помощь. В проигрывании файла(звуковом) нужды нет, необходимо получать для обработки инструмент и время. Работать мне нужно с ударными, т.е. высота тона мне тут не столь важна(она постоянна для каждого инструмента).
|
28.03.2010, 12:15 | #6 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Ну тут задача сводится к чтению формата MIDI файла. Есть два пути - писать свою реализацию и воспользоваться уже готовой. Я уверен, что существуют готовые, если бы это было что-то редкое и никому не нужное, то пришлось бы конечно разбирать формат самому, но т.к. это MIDI, то конечно же существуют готовые решения, вопрос стоит только в их платности/бесплатности. Поищите на torry.net компоненты для чтения MIDI, может найдете то, что вам нужно.
з.ы. Вот что я нашел на Торри Раздел Аудио на Torry Один из компонентов с низкоуровневым доступом Исходники работы с MIDI файлами
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог Последний раз редактировалось mutabor; 28.03.2010 в 12:31. |
29.03.2010, 11:32 | #7 |
Регистрация: 24.03.2010
Сообщений: 7
|
Спасибо огромное, нашел по ссылкам много полезного, буду разбираться.
|
11.04.2010, 12:59 | #8 |
Регистрация: 24.03.2010
Сообщений: 7
|
Мне еще раз необходима помощь. Алгоритм программы будет примерно такой: берем байт, раскладываем на биты, читаем нужные нам биты, формируем свой список событий и их времени. Как в делфи можно реализовать перевод байта в биты? пролазил по инету и нечего не нашел, сразу прошу прощения если вопрос где то поднимался уже.
|
12.04.2010, 02:27 | #9 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Код:
пыщь
|
12.04.2010, 09:21 | #10 |
Регистрация: 24.03.2010
Сообщений: 7
|
Спасибо, буду побывать
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
"ОКРВВЕРХ", "ОКР", "ЕСЛИ". Как бы их связать. | Каравай | Microsoft Office Excel | 13 | 17.02.2010 09:53 |
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" | aleksei78 | Microsoft Office Excel | 13 | 25.08.2009 12:04 |
блок "cont" с права не принимает значение "margin: 10px;" которое описано в body | tabikA | HTML и CSS | 5 | 24.02.2009 21:50 |
Под прикрытием "кризиса" наши доблестные "управители" хотят утопить нас в радиоактивных отходах | mihali4 | Свободное общение | 1 | 17.01.2009 01:43 |