1. Дмитрий Корниенко: > Конечно одни и те-же ноты запускаются заново (естественно, в пределах одной части)... если бы можно было менять громкость, накладывая ноты с помощью педали сустейна, это был бы полный бред (хотя наверное отдельные кривые программисты где-то так и делают), ни один акустический инЧитать

    Дмитрий Корниенко: > Конечно одни и те-же ноты запускаются заново (естественно, в пределах одной части)… если бы можно было менять громкость, накладывая ноты с помощью педали сустейна, это был бы полный бред (хотя наверное отдельные кривые программисты где-то так и делают), ни один акустический инструмент так не реагирует. > Просто в моей практике встречались и такие иструменты, которые каждый раз выделяли новый войс. :О > > 2. Voice Stealing «хитро» крадет слои из близлежащих нот (а что — разумно!), но нажатые «музыкально» (далеко от кучи), даже если они час назад были нажаты и держались, все равно будут звучать. > Cомневаюсь, что есть смысл «красть» отдельные слои из ноты — а если например в слое какой-нибудь визгливый звук, но у него очень длинная атака? > Неверно выразился (запутался сам) — я имел ввиду ноты. Ессно, отдельные слои из нот никто никуда не «крадет». 🙂 Верное замечание. > Это возможно, раз тон-генератор имеет принципиальную возможность отличать ещё не отпущенные клавиши от запущенных в сустейн по педали. > Нужно будет еще потестить… > Ну ёлки… чего «тормозит»-то — поток MIDI сообщений 3 КБайт/c по шине ~300 МБайт/c, или может текстовый интерфейс 40×8 символов? 😉 Cм. выше про таймеры и прерывания (для сведения, меня этому в институте обучали, предмет такой был — проектирование микропроцессорных систем и средств). > Я к чему веду. Во многих ямахинских синтах с полифонией 60 и выше (EX, MOTIF, A-серия), если синт играет (особенно с включенными MIDI Time Sync, Arp, Seq), у него начинает подтормаживать UI (перерисовочки, передвижение курсора, реакция на функциональные клавиши и т.п.). Если отдельный проц считает звук (DSP), а отдельный занимается и МИДИ, и UI, тогда налицо влияние одного на другое… Или я чего-то недопонимаю? Ваши знания никто не ставит под сомнение. Наоборот — они весьма кстати. Просто хочется разобраться. Я сам программист, только более «высокого уровня» (драйвера и ядра ОС не писал ишо, щас на вэб-технологиях сижу — т.е. выше некуда). 🙂

    See less
  2. Дмитрий Корниенко: > Вот сейчас на своём Motif ES нажал педаль сустейна, взял низкую ноту на Ap:Full Grand и ещё целую минуту молотил по всем верхним нотам вверх-вниз, не отпуская педаль - нижняя нота так и осталась звучать. > А Вы попробуйте нажать педаль сустейна, взять высокую ноту и колотить поЧитать

    Дмитрий Корниенко: > Вот сейчас на своём Motif ES нажал педаль сустейна, взял низкую ноту на Ap:Full Grand и ещё целую минуту молотил по всем верхним нотам вверх-вниз, не отпуская педаль — нижняя нота так и осталась звучать. > А Вы попробуйте нажать педаль сустейна, взять высокую ноту и колотить по нижним… Будет ли высокая звучать? А если держать нажатой верхнюю и колотить нижние? Кстати, провел тест на EX5 ————————— Взял пресетный звук (P1:97) St:SwellStrings (чтобы долго не искать 🙂 ), так как по своей природе он более «висячий», нежели рояль. Звук имеет 3 слоя, все звучат одновременно — т.е. зоны полностью пересекаются по всех длине клавиатуры. Для пущести эксперимента растянул на максимум Release Time для AEG на всех 3 слоях. Итак, Тест 1: «Нижний дрон». Нижнюю клавишу держим и «топим» средние и верхние. По-всякому пробовал, с педалью и без, всей площадью руки до локтя нажимал почти пол-клавиатуры и так по быстрому вверх-вниз. Звук стоял пипец (фильмы-ужасов). 🙂 Результат — звучит «нижний дрон» как ни в чем не бывало. При полифонии 126 слоев делим на 3 = 42 ноты максимум. Я точно нажимал больше… НО, если нижнюю клавишу отпустить (уравнять в правах остальными), то она уже крадется. Тест 2: «Верхний дрон». ВЕРХНЮЮ клавишу держим и «топим» средние и нижние. Остальное см. Тест 1. 🙂 Результат — звучит, гад!!!! И тот же прикол с нажатой и опущенной верхней клавишей, что и в тесте 1. ВЫВОДЫ Приходит на ум следующее: 1. Может они просто не выделяют новые войсы на одну и ту же ноту, а используют предыдущий (ретриггер типа)? Таким образом перегрузить синт становится сложнее. Кстати, по звуку у EX5 так и получается — если быстро нажимать один и тот же аккорд с макс. Release или с педалью, то он громче не становится (держится на своем уровне). Во всяком случае с SwellStrings. 2. Voice Stealing «хитро» крадет слои из близлежащих нот (а что — разумно!), но нажатые «музыкально» (далеко от кучи), даже если они час назад были нажаты и держались, все равно будут звучать. Получается нажатые клавиши сортируются по удалению одна от другой и имеют приоритет над опущенными, но еще звучащими вне зависимости от того, которая когда была нажата. Насколько я понял «верх» и «низ» равные в правах. Короче, синт пытается «озвучить» наиболее фокусные ноты. 🙂 Так что оказывается не все так просто. И скорее всего на МОТИФАх используется аналогичный механизм. > > > В МОТИФАх никогда не замечал каких-то пауз (не вызванных перегруженностью событиями в секвенсоре). > О-о, пришлось много раз народу помогать в оптимизации композиций на первых МОТИФах. У друзей и знакомых тоже таких проблем куча было, на мотифаторе в свое время тоже завались примеров было :). И все, кто покупали мотиф (первый) всегда обращались за помощью — как с этим бороться (особенно те, которые пересели с коргов). Так что это не я придумал… Понятное дело, что если не грузить его, то все будет пучком. А вот если в композиции 100% квантайз на всех партиях (некоторые и таким страдают), тогда начинаются пляски с таймингом, особенно со встроенного секвенсора. 🙂 А ведь часто достаточно партию сместить на 1-2 тика взад-вперед и все будет гут. Как яркий пример из демок MOTIF ES могу вспомнить IbizaTrance (c 00:50..01:02, обратите внимание на бочку). Думаю там можно было оптимизнуть… 😉 Я понимаю, что большинство «глюков» можно победить зная особенности синта, но факт остается фактом — миди перегружается не так поздно, как бы хотелось. : > В процессорах SuperH есть единственная шина общего назначения — она такая-же «MIDI-шина», как скажем «файловая шина» или «шина пользовательского интерфейса» 🙂 Дык и видно как одно влияет на другое (в смысле тормозит). Кстати, какая скорость обработки данных у этого проца? Просто интересно.

    See less
  3. Дмитрий Корниенко: > Sergey Marchenko: > > Шина там не факт, что 31.25. > Да НЕТ там никаких шин, кроме процессорной. То, что вы называете "MIDI шина", это интерфейс (внешний. > МИДИ-шина - имеется ввиду шина данных процессора, который обрабатывает МИДИ и другие утилитарные функции. Оно же не в кучеЧитать

    Дмитрий Корниенко: > Sergey Marchenko: > > Шина там не факт, что 31.25. > Да НЕТ там никаких шин, кроме процессорной. То, что вы называете «MIDI шина», это интерфейс (внешний. > МИДИ-шина — имеется ввиду шина данных процессора, который обрабатывает МИДИ и другие утилитарные функции. Оно же не в куче со звуковыми потоками идет. Впрочем называйте ее как хотите. 🙂 > > Вообще-то последние ноты всегда остаются. > Естественно! Вопрос в том, что при этом делать с первыми — если вы взяли низкую ноту, она останется звучать, даже если вы потом наиграете ещё 128 других нот. Где? :О На всех ямахах, которые знаю, вроде реализован обычный FIFO-стек. Проверю дополнительно, о результатах доложу. > > > > Особенно заметно на 4-слойных звуках. > Где, в EX5? Там вообще и процессор и DSP довольно слабые, и ОС плохо оптимизирована 🙁 В МОТИФАх тоже, правда в ES в меньшей степени.

    See less
  4. Дмитрий Корниенко: > Нет там внутри никакой "шины" со скоростью 31.25 Кбит/c - есть стандартный встроенный процессор Hitachi/Rehesas SH3 ; есть работающая на нём ОС и части кода, отвечающие за отдельные задачи в реальном времени; и есть таймеры и прерывания, по которым выделяются ресурсы процессора.Читать

    Дмитрий Корниенко: > Нет там внутри никакой «шины» со скоростью 31.25 Кбит/c — есть стандартный встроенный процессор Hitachi/Rehesas SH3 ; есть работающая на нём ОС и части кода, отвечающие за отдельные задачи в реальном времени; и есть таймеры и прерывания, по которым выделяются ресурсы процессора. > Я вообще-то вспоминал о МИДИ протоколе вообще. Шина там не факт, что 31.25. Может больше, а может реально и меньше (на интерфейс идет часть МИДИ-шины). В синт оно все равно быстрее 31.25К не придет… Другое дело, что потом с этим происходит (буферизация, фильтрация, приоритезация, передача на исполнение и т.д.). > Dynamic Voice Allocation вообще не причём — он отвечает за уже звучащие ноты и просто интеллектуално отрубает «старые» при нехватке аппаратных «голосов» — так, чтобы это было наименее заметно (низкие ноты всегда остаются и т.п.) Вообще-то последние ноты всегда остаются. А он молниеносно работает? Особенно, когда много слоев одновременно освобождаются-загружаются. «Меня терзают смутные сомнения…». Особенно заметно на 4-слойных звуках.

    See less
  5. sergiy: > >Скорее всего проблема в чересчур жёсткой квантизации, в очень большом количестве контроллеров и т.п. > > А они что, не "достаточно быстро обрабатываются"? Проблема в том, что протокол МИДИ по своей природе - последовательный. Это раз. Базовая скорость ограничена в 31.25 Kбит/сек. Во-вторыЧитать

    sergiy: > >Скорее всего проблема в чересчур жёсткой квантизации, в очень большом количестве контроллеров и т.п. > > А они что, не «достаточно быстро обрабатываются»? Проблема в том, что протокол МИДИ по своей природе — последовательный. Это раз. Базовая скорость ограничена в 31.25 Kбит/сек. Во-вторых, шина миди для ямахинских синтов достаточно узка уже в течение последних 8-10 лет (т.е. ограничено число одновременно проходящих данных/сообщений). Просто пока полифония была 32 это не было так заметно, а вот когда стало 64-128 — начались глюки. Короче, Dynamic Voice Allocation часто не справлялся с возросшими потоками МИДИ-данных и числом распределяемых AWM-слоев. Первые серьезные проблемы начались с EX5, потом перекочевали в МОТИФ (первый), потом в МОТИФ Рэк (там вообще серьезный глюк был), потом подправили в ES. Но я иногда слышу «перегруз» и на ES и даже на демках XS. Просто теперь, чтобы его достичь нужно больше постараться. 🙂 Ямаха не одинока с этой проблемой. Намного бОльшие «лыжи» с таймингом я слышал на старых E-MU… :О

    See less
  6. Павел: > Вот. А зачем Алесис туда кучу ручек делал? > Пресеты, пресеты... > :-)) Дык вдруг отвалятся раньше времени... Нужно экономить циклы руления. :)

    Павел: > Вот. А зачем Алесис туда кучу ручек делал? > Пресеты, пресеты… > :-)) Дык вдруг отвалятся раньше времени… Нужно экономить циклы руления. 🙂

    See less
  7. Овал: > То есть внутренне представление контроллеров не успевает за изминениями по Midi-сообщениям, и их надо ускорить? Не совсем, я имел ввиду функцию сглаживания (лаг) изменений контроллера внутри синта с регулируемой степенью скорости функции. Например, задаешь для BC lag = 1s, и задав два сообщеЧитать

    Овал: > То есть внутренне представление контроллеров не успевает за изминениями по Midi-сообщениям, и их надо ускорить? Не совсем, я имел ввиду функцию сглаживания (лаг) изменений контроллера внутри синта с регулируемой степенью скорости функции. Например, задаешь для BC lag = 1s, и задав два сообщения BC=0, потом за ним BC=127, в результате получили бы через 1 секунду плавное изменение с 0 до 127 внутри синта с максимально возможной для него плавностью изменения. При малых значениях лага позволило бы сократить миди-траффик и улучшить плавность контроллеров, как мне кажется. Но это так — мечты… 🙂

    See less
  8. Овал - МЕГАРЕСПЕКТ! Если бы еще операционку переписать, чтобы можно было задавать скорость (степень) сглаживания изменений контроллеров, тогда и не так остро нужно было ускорять МИДИ-интерфейс, а трафик бы освободился для бОльшего кол-ва контроллеров. Но все равно, отличная работа!

    Овал — МЕГАРЕСПЕКТ! Если бы еще операционку переписать, чтобы можно было задавать скорость (степень) сглаживания изменений контроллеров, тогда и не так остро нужно было ускорять МИДИ-интерфейс, а трафик бы освободился для бОльшего кол-ва контроллеров. Но все равно, отличная работа!

    See less
  9. Рома все правильно сказал. Но учтите, что K4 уже 16-битный, а не 8-битный, так что вышевспомненная "винтажность" уже теряется немного. ИМХО К1 в паре с хорошим внешним фильром будет "позадористее" звучать, нежели K4, хоть в последнем он тожн неплохой (особенно для цифрового фильтра того времени).

    Рома все правильно сказал. Но учтите, что K4 уже 16-битный, а не 8-битный, так что вышевспомненная «винтажность» уже теряется немного. ИМХО К1 в паре с хорошим внешним фильром будет «позадористее» звучать, нежели K4, хоть в последнем он тожн неплохой (особенно для цифрового фильтра того времени).

    See less