AVR & MIDI

Обсуждаем контроллеры компании Atmel.
Ответить
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

Имеется огромное желание воспроизводить midi мелодии на AVR
не могу понять как вытягивать ноты (определенной октавы), длительности нот, паузы между нотами из файла midi
в инете вразумительного ответа не сыскал :(
может кто уже занимался подобным вопросом и имеет опыт в данном деле ?
буду весьма признателен :))
Tell Me The Truth
Реклама
Вымогатель припоя
Сообщения: 506
Зарегистрирован: Пн авг 31, 2009 22:10:50
Откуда: СК

Сообщение Шурики »

Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2365
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград

Сообщение Dmitry Dubrovenko »

FreshMan писал(а):как вытягивать ноты
Я же Вам уже давал ссылку на программу. Более вразумительного я пока не встречал.
Альтернативные пути:
- Открывать миди-файл в музыкальном редакторе, и переписывать ноты вручную,
- Изучить спецификацию миди-файлов, и написАть свою программу.
ICQ нет, и, в ближайшее время, не будет.
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2512
Зарегистрирован: Пн апр 06, 2009 19:33:29
Откуда: Молдова, Кишинев

Сообщение BCluster »

http://www.last.h16.ru/file_format/
это описание формата midi-файла. Вообще файлы все равно придется перерабатывать скорее всего, ибо они в большинстве своем имеют несколько дорожек, а это я думаю авр не сможет :)
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

у меня стоит задача играть моно-мелодии
елы-палы неужели никто до сих пор не сделал прогу которая вытягивает ноты из миди ? неужто я первый кто задумал сие сделать ? :roll:
да......, трудно быть первопроходцем ! :))
Tell Me The Truth
Реклама
Вымогатель припоя
Сообщения: 506
Зарегистрирован: Пн авг 31, 2009 22:10:50
Откуда: СК

Сообщение Шурики »

Ну дали же выше ссылку на формат MIDI.
И "дорожка" (трек называется) в данном случае никакого отношения к моно, стерео, квадро, 2.1, 5.1, 7.1 и какие ещё там есть не имеет.

Смысл подсказки в том, что нужно в любом нотном MIDI-редакторе открыть файл и будет видно, что или все инструменты в одном треке, или раскиданы по разным трекам ("дорожкам").
Можно ещё в НЕХ-редакторе открыть и по формату файла будет видно, к какому типу миди он относится.
Далее - ноты есть, в описании формата частоты звука есть.

А насчёт первопроходимца: стоите Вы один в чистом поле, все давно ушли вперёд, а следы снегом замело. И волки воют...

И ещё: так как миди просто описывает труд "простого" музыканта (куда нажать, когда дунуть/ стукнуть/ дёрнуть), то фактически, что можно оттуда вычленить - это частоты нот мелодии. А вот синтезировать шаблоны инструментов - это отдельно. их в миди-файле нет, поэтому он такой небольшой.

Прочтите документацию, выложите файл миди и можно дальше смотреть и обсуждать
Реклама
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

Шурики писал(а):то фактически, что можно оттуда вычленить - это частоты нот мелодии.
а инфа о длительности нот, пауз между нотами там есть ?
Tell Me The Truth
Вымогатель припоя
Сообщения: 506
Зарегистрирован: Пн авг 31, 2009 22:10:50
Откуда: СК

Сообщение Шурики »

Там всё есть.

Задается музыкальный темп.
Задаётся музыкальный размер.
Далее музыкальная запись делится на такты. Один такт соответствует музыкальному размеру.
Каждая нота имеет свою длительность 1, 1/2, 1/4, 1/8, 1/16... (список ограничен)
Каждая пауза то же самое.
Ноты и паузы, находящиеся внутри такта, должны попасть в его границы.
Паузы между нотами задаются не отсутствием нот на данном месте, а именно указанием пауз разной длительности в этом месте.
Теперь, ноты написаны в англицкой интерпретации: А - до, В - ре и т.д.
Еще есть три знака бемоль, диез (#) и бекар. Первый понижение на пол-тона, второй - повышение на полтона, третий - играть ноту как есть.
Тона - это частоты "чистых" нот, без полутонов, т.е. от до до си. Частоты в описании.

Это коротенько, без нюансов.

Вообще, нотная азбука очень логична, просто находка для программистов. Нужно просто один раз уразуметь и приколоться (я сейчас всё это пишу из памяти, а изучал лет 25 назад). Кстати, много нюансов я не писал, дабы не загромождать текст.

Музыкальная тональность (типа си-бемоль или фа-диез), насколько я помню, внутри файла не задаётся, т.к. с неё толку нет.
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

Шурики писал(а):Вообще, нотная азбука очень логична, просто находка для программистов. Нужно просто один раз уразуметь и приколоться
можна у вас проконсультироваться по данному вопросу ?
Tell Me The Truth
Вымогатель припоя
Сообщения: 506
Зарегистрирован: Пн авг 31, 2009 22:10:50
Откуда: СК

Сообщение Шурики »

Так яж про тож.

Давайте для разбора выберем один миди файл и будем его пилить всем миром.

Попутно будет понятно о чём речь.
Сейчас куча документации может вогнать в ступор, а когда задачи будут решаться по мере поступления, будет яснее чего куда прикручено.
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

упс..... :oops:
я думал говоря о нотной азбуке вы имеете ввиду то как читать ноты с нотного стана :))
скажу вам откровенно, я начал читать о MIDI формате......, при чтении меня сразу бросает в ступор от такого большого количиства новой мне инфи аж спать охота :)
Tell Me The Truth
Вымогатель припоя
Сообщения: 506
Зарегистрирован: Пн авг 31, 2009 22:10:50
Откуда: СК

Сообщение Шурики »

До завтра подождёт, а нотная азбука, она та, что читается с нотного стана и она очень плотно связана с миди. Поэтому в процессе будет видно.
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

Шурики, насколько я в курсе то в обсуждаемом формате есть партии разных инструментов (пинанино, флейта, барабан и т.д.)
какой же инструмент выбирать мне чтобы я на МК мог воспроизводить простенькие моно мелодии ?
Tell Me The Truth
Друг Кота
Аватара пользователя
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск

Сообщение pyzhman »

Для начала выберем зуделку. Просто пищалку. :)) До фортепьяны еще доберемся. Если доберемся. Вернее, если у Шуриков хватит нервов. :))
Docendo discimus
Контактная информация:
Вымогатель припоя
Сообщения: 599
Зарегистрирован: Ср янв 06, 2010 10:01:46

Сообщение metan »

FreshMan писал(а):в инете вразумительного ответа не сыскал
В инете может и нету, а прям на этом сайте искали? Ключевые слова в наличии так-то...
Вот на мой взгляд, обалденный по качеству изложения и исполнения, и по полноте материал (мой пламенный респект и уважуха автору):
Midi player для AVR
Вымогатель припоя
Сообщения: 506
Зарегистрирован: Пн авг 31, 2009 22:10:50
Откуда: СК

Сообщение Шурики »

FreshMan писал(а):Шурики, насколько я в курсе то в обсуждаемом формате есть партии разных инструментов

какой же инструмент выбирать мне чтобы я на МК мог воспроизводить простенькие моно мелодии ?
Да, в одном миди файле могут быть различные инструменты.
На попробовать можно выбрать рояль (хорошо, пианино) без других инструментов.

Задача следующая:
1. Разобраться с общим форматом миди
2. Перевести кусок нотной записи в набор частот определённой положительности и паузы между ними.
3. проиграть эту мелодию на пищалке просто как набор частот

Пока так

Статья, кстати, действительно хорошая. Стоит посмотреть.
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2365
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград

Сообщение Dmitry Dubrovenko »

FreshMan писал(а):насколько я в курсе то в обсуждаемом формате есть партии разных инструментов
Не так.
Есть просто "партии" (без "инструментов").
Каким тембром (инструментом) будет она воспроизводится, определяет специальная команда.
Но ещё это очень сильно зависит от оконечного устройства, на котором это всё будет воспроизводится.
И хотя сейчас соответствие в/у команд определённым инструментам стандартизировано, но не факт, что "гитара" с одного устройства, будет звучать также, как с другого.
Короче говоря, для "зуделки", Вам надо брать партию "Мелодия".
P.S.: А если нарвётесь на файл формата midi-0, так там всё в одну кучу свалено.
ICQ нет, и, в ближайшее время, не будет.
Контактная информация:
Вымогатель припоя
Сообщения: 506
Зарегистрирован: Пн авг 31, 2009 22:10:50
Откуда: СК

Сообщение Шурики »

Согласен, Это написано для упрощения картины, т.к. ранее уже говорилось о том, что в файле только ноты и действия, а какой инструмент это только указывается. Звучание самого инструмента находится отдельно в банках памяти у устройства-синтезатора.

Надо просто постепенно добраться до цели, поэтому некоторые подробности откладываются на потом.

Вот пока как раз задача добраться до мелодии - тоже раньше написано.
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2365
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград

Сообщение Dmitry Dubrovenko »

Шурики писал(а):пока как раз задача добраться до мелодии
Вот если, в ранее указанной программе, выбрать режим ручного редактирования, то появится окно со списком всех треков, которые можно подключать-отключать. И, если автор миди-файла не поленился дать вразумительные названия трекам (обычно так и делается, ибо так удобнее в секвенсоре работать), остаётся выбрать трек "Мелодия", а остальные заглушить.
Правда программа выдаёт либо хекс, либо текстовой, но для чановского синтезатора, и, для других целей, его ещё обработать надо будет.
А ТС я бы всё-таки рекомендовал сперва изучить азы нотной грамотности. :)
ICQ нет, и, в ближайшее время, не будет.
Контактная информация:
Вымогатель припоя
Сообщения: 506
Зарегистрирован: Пн авг 31, 2009 22:10:50
Откуда: СК

Сообщение Шурики »

И снова согласен, к тому и клоню. Как раз на основе нотной записи и начать разбираться что есть кто, а потом плавно перейти к нотам в миди-файле, понять соответствие этих двух типов записи партитуры музыки - нотный и компьютерный. Провести параллели, так сказать.
Ответить

Вернуться в «AVR»