Есть поток сигнала из генератора, исходник - функция. Зачем пытаться называть поток сэмплом, я не понимаю. Но вы делаете именно это
Вы наверно хотели сказать "по формулам"? Это ключевой момент!!! Потому что функция - это, грубо говоря, зависимость сигнала описанная кривой в плоскости X/Y. Любой сэмпл - это эквивалент табличной функции. А вот если функция не табличная, а просчитывается по формуле, тогда да, это реальная генерация. Но в движке FM внутри формулы SIN (X) нет никаких арифметических просчётов. Есть уже просчитанная табличная функция, которая проигрывается как сэмпл.
Если бы какой-то генератор генерил в рилтайме сам СИНУС по формулам (в данном случае ряд Тейлора), то такой генератор я бы точно не назвал сэмпл плеером, ромплером итд... Хотя по факту выходящий поток из любого генератора - это поток отсчётов, то ест сэмплов, которые в результате формируют волну.... это странно отрицать. Не формулы же поступают из генератора на фильтр, на ревер и на другие тракты, а именно поток сэмплов. Но это не значит, что генератор на основе формул, является сэмпл плеером. Но где он такой генератор? )) В генерации FM чипа всё иначе. Там как раз по формульным функциям ничего не генерируется. То, что выглядит как logSIN(x) - это не генерация по формулам, это готовая таблица с сэмплами. Если бы вместо logSin(x) просчитывалась формула, которая указана в мануале, и в неё ещё подствлялась формула для просчёта ряда Тейлора, вот это была бы тру генерация по формулам. Но этого не происходит! А табличная функция тут эквивалетна сэмпл плееру. Остальные преобразования уже в глобальной формуле FM синтеза используют обработку этого сэмпла, а именно EXP транформацию. Но сама генераця на основе сэмпл-плеера уже произошла, так что трансформция экспонентой - это тоже не генерация, а всего лишь выпрямление формы сигнала к первоначальному виду (формально, тоже табличная функция, только она никак не осуществляет генерацию чего-то нового напрямую, а просто выпрямляет ранее изогнутый сигнал). В этом Ваша путаница с функциями и сэмплами. Вы думаете, что в FM сама генерация синуса вычисляется по формулам, но это не так. Вас сбивают формулы из мануалов, которые Вы не правильно трактуете. Часть из них просчитана заранее. А часть из них не относится к генерации напрямую. У Вас всё смешалось в кучу, и Вы никак не можете понять причём тут сэмплы, отчёты, волны, функции, логарифмы и экспоненты.
мануала по чипу OPL где черным по белому написано, что вычисляется первая волна синусоиды
)))) я не знаю какие мануалы Вы читаете, но то, что я читал... там нет информации о том, что "ВЫЧИСЛЯЕТСЯ первая волна синусоиды". Вы постоянно своими формулировками вводите народ в заблуждение. Там представлена формула, но основе которой была заранее ЕДИНОЖДЫ вычислена четверть логарифмически трансформированного синуса, потом записана в таблицу сэмплов. Именно об этом там говорится. Ничего там не вычисляется, не обманывайте нас. Нет там слов относительно непосредственно ВЫЧИСЛЕНИЯ первой волны синусоиды в рилтайме. И пруфы Вы не можете предоставить.
Но вы продолжайте мне объяснять что там идет просчет отдельный всех 4 волн.
Оооо... ну это уже последняя стадия. Уважаемый, baloo, о четверти засемплированного синуса я в этой теме говорил ещё до того, как Вы зашли сюда на огонёк. Вы перекрутили мои слова задом наперёд, и теперь пытаетесь мне доказать то, что я утверждал ещё до вашего прихода.... Это гениально! Нужно иметь талант, чтоб всё так перекрутить, и попытаться выставить меня идиотом.
Вы опять ничего не поняли из того, что мной было описано в этой теме выше. Хотя не знаю, куда ещё более доходчиво и более аргументированно можно излагать факты из разных источников.
Но вы продолжайте мне объяснять что там идет просчет отдельный всех 4 волн.
Опять Вы ничего не поняли )) Я-то как раз говорил не о просчёте, а о банальном чтении сэмплов из памяти. О каком-то выдуманном просчёте на основе этих сэмплов доказываете мне Вы! А я на примере разницы между ПРОСЧЁТОМ и ЧТЕНИЕМ ИЗ ПАМЯТИ показал, на сколько не целесообразно использовать просчёт! Где Вы там увидели, что я утверждал о просчёте? Не обманывайте, так не хорошо
Я показал Вам длинную формулу (ряд Тейлора), на основании которой в математике высчитывается синус, без каких-либо табличных данных. Если подставить эту формулу в ту, что была в мануале FM чипа, то можно просчитать значение синуса только для определённого диапазона, в данном случае именно четверть синуса. Если просчитать эти две формулы вместе, то и получится та самая таблица сэмплов четверти синуса, которая зашита в ROM синта. Вот это называется просчёт, который был сделан заранее. А дальше синт ничего не просчитывает, а просто "проигрывает" эти просчитанные заранее значения. И дальше после того, как проиграл - выравнивает логарифмическую синусоиду обратно в нормальный вид зеркальной кривой, то есть экспонентой. Данный процесс выравнивания непосредственно к факту проигрывания сэмплов не имеет никакого отношения. Это как VST синтом сгенерит сигнал, а дальше на микшере поставить шейпер, и изменить форму этог сигнала - получится трансформированный сигнал. Если этот трансформированный сигнал сохранить как сэмпл, потом засунуть в сэмплер, проиграть, и на микшере снова произвести шейпинг-обработку зеркальной кривой, то сигнал из трансформированного вида превратится в первоначальный. Именно это и происходит в FM движке (на данном этапе опускаю факт модуляции). Засунули трансформированный синус, проиграли, выровняли трансформаци обратно... ВСЁ!!! Это реализовано и в других ромплерах/сэмплерах, я уже проводил аналогии, но Вы ничего не смогли понять!!! Обработка и генерация - два независимых процесса. Пока Вы этого не осознаете, мы дальше не сможет продвинуться. Так что синус да, проигрывается из ROM (а если быть точнее логарифмически изогнутый синус, но всё так же проигрывается из ROM). Тупо проигрывается как в сэмпл плеере. Вы же выдумали какие-то дополнительные вычисления на основе таблицы из ROM, но до сих пор никак не смогли аргументировать, какие именно это вычисления, для чего они нужны, и как они реализованы, и в мануале этого нету... из чего я делаю вывод, что Вы не компетентны в этой теме. Мало того, дал кучу цитат и ссылок с просьбой прокомментировать, как другие люди описывают чтение синусов из памяти, а не какую-то волшебную генерацию, но так как Вы не смогли ничего противопоставить, делают вывод, что опять же слова о дополнительном просчёте говорят о Вашей не компетентности в этом вопросе. Уже молчу о том, что Вы просто четверть синуса хотели заменить обычной частью параболы, о чём я уже три раза выше сказал, но Вы не смогли дельно аргументировать, из чего я опять таки делаю вывод, что Вы не компетентны в этом вопросе. И много чего ещё аргументировал, но не услышал такого же аргументированного возражения в ответ. Значит делаю вывод, что вы согласились, что все Ваши доводы до этого были ложными. Поэтому давайте закроем тему FM генерации в рамках обсуждения CS1x и AN1X. Давайте сойдемся на том, что у Вас нет времени разгребать все мои аргументы, или Вы устали, или надо идти и пилить очередной синтюк. Я приму любые отмазки. Только пожалуйста не надо поверхностно перепрыгивать и игнорировать все сказанные аргументы, оставлять ключевые моменты без комментариев, и при этом перекручивать слова задом наперёд. Такой диалог заходит в тупик.
----------
По поводу Серума - не нашёл, где говорится о рилтайме именно для FFT генерации. И вряд ли найду, потому что это Вейвтейбл синтезатор, а не Аддитивный. Это вообще разные типы синтеза, которые никак не связаны. Упоминается рилтайм относительно WARP, рилтайм относительно разных манипуляций итд. Но относительно FFT - нет. Единственное место, где я увидел упоминание рилтаймового FFT - это Ваши голословные заявления, не подкреплённые линками. Вы привели цитату на инглише, в которой не было слова "рилтайма", и говорите - вот он "рилтайм"... Не бред ли? )) .
FFT генерация в Серуме есть, но как отдельная "офлайновая" примочка для создания короткого лупа, не более (хотя и реагирует на изменения сигнала довольно быстро, но уж точно не в рилтайме без лагов). (И я думаю Вы догадываетесь на основе чего генерятся синусы для аддитивного синтеза )))) но это так, поржать, к данному обсуждению не имеет отношения). Так вот... про офлайн генерацию однопериодного лупа...именно поэтому Вы не смогли ответить, почему когда я меняю параметр FFT гармоник и фазы - сигнал прерывается, вместо того, чтоб генериться беспрерывно! И врядли сможете аргументироват. Точно так, как и то, почему пила (SAW) на самых нижних октавах ведёт себя как сэмпл, а именно обрезана по спектру, хотя в теории любая пила имеет бесконечный спектр. Вы на этих двух вопросах и запнётесь, никогда не сможете ответить аргументировано!!! И ссылку не приведёте, где говорится, что FFT в Серуме генерится в рилтайме в качестве осциллятора. Когда ответите на ранее заданные вопросы с пруфлинками, тогда и продолжим. Пока я вижу полную некомпетенцию в данном вопросе.
Уже молчу про WARP-инг который у Вас вместо изменения сэмпла вдруг почему-то изменяет FFT кривые волн. Ну Вы и сказочник. Тоже давайте скрин, где Вы крутите варпинг, и меняется именно FFT гармоники, а не сам просчитанные сэмпл. Причём при активации функции варпинга появляется алисинг на высоких нотах (видимо отключается оверсемплинг), что характерно кусочку сэмпла, и было бы немыслимо при FFT просчёте. Но Вас, я так понимаю, это тоже не смущает, видимо тоже найдётся очередной сказочный аргумент.
Последнее редактирование: