Макс /MSP JavaScript искажение возможно?

Я пытаюсь помочь другу выяснить, возможно ли реализовать алгоритмы DSP в Max/MSP javascript. Ему сказали об этом в классе, и он попросил моей помощи, но я не могу найти способ обработать реальные образцы.

TL; DR Можно ли получить образцы и вернуть их в Max / MSP, используя JavaScript? Спасибо

2 ответа

Нет, это не так, поскольку он предназначен только для обработки сообщений, а не для векторов сигналов. Возможно, вы смешали JavaScript с Java - есть mxj~ объект, который позволяет использовать Java 6 (не выше!) для разработки алгоритмов обработки сигналов. Посмотрите учебное пособие, с которым каждый начинает изучать, как использовать Java: http://pcm.peabody.jhu.edu/~gwright/stdmp/docs/WritingMaxExternalsInJava.pdf

Вы можете написать алгоритмы DSP, используя Макс gen~ а также codeboxсинтаксис для которого напоминает JavaScript или C.

DSP в Max работает с высоким приоритетом, чтобы избежать пропадания звука, который js объект не делает, но можно сгенерировать код с помощью JavaScript и загрузить его в gen~ пример. Вы можете найти пример этого в комплекте с самим Максом: поиск файла с именем gen~.dynamicexpr.maxpat

Хотя я не использую javascript, как делюки сказал, что теперь вы можете использовать gen~ написать код DSP.

Вот искажение gen~ использовать функцию tanh для моего собственного проекта:


    tanh_dist(input, amp, offset)
    {
        pass1 = input + offset;
        pass2 = pass1 * amp;
        pass3 = tanh(pass2);
        return(dcblock(pass3));
    }

Я также сделал образец патча, чтобы показать вам, как его использовать (в кодовом поле). Просто скопируйте следующий текст и вставьте в пустое окно max patch:

----------begin_max5_patcher----------
1168.3ocyW8tbiZCD+y3mBF9TROWOHAXG2qsyzGf9Db4FOxfLVWAACH74bYx
8r2U+ALXv13j3zlOPFu+jzt6uc0tZedhky5r8zRG6ey9K1VVOOwxRIRJvx7a
KmTx9vDRoZYNgYooTtvYpFSP2KTxy1rojJdjWCjSDgaY73UEzPgVA3kAybmZ
iWH+hBbk+yyelq8WM6gWkx3ITgRSnCBypD0RcMRYQZst9a+Jx0QJ6kISjel9
F8CRZ94cBWzAmve9rf2EeX9qwE1jjAGbsstIqHknLx4FIfgvRgEHU4rZkBmv
AgnKFrl6K+piUX704m3994xCLaAIkJnEqnbx5DZadQeDhmxoZSwwYpsyZBO1
w9q2ZZJnOMgOPdCvSnkKj4.uy7zh+C3IN86fp6cgH7ovD5OsQv0ryvBttGxV
lGbdV.OHKf5yBANmxSKYwbRxqyOiIL9Ouru3gvp5TK0+J3RwzzpDAKbKgyoI
6HELBWzNXcwPt+qJjaHBHv+5HC5OhHgifM7cWp9WP82qIzNPAOry6WFZLcLw
SLVEOwH+ymc5M1rSzkyNaaTzBimYbMnTDKgtiVTxx3sTgkCIOukXqVaQxGeK
ScPOLsQDiqE41HpftiUueuFojBfZD.uTUnrTm8yqS5jGSVDsfWwTlhVHDYLl
jJFvgzxxbRndyQk4y.lu9.bZ2hbt5lybcgf4lLHYwwZJAhzwIYg+CMpsg6jk
S4LddAsDZMSDFOnANhtg.2xVsIiKJY+PYGpaoCfuwXmCBJ8DkS7Wv8zjFWHt
fEkwkFQm3gTbs5fzo.8yWZ6LpUvI4CrYHSAHlS.VBNYU4ZRgLbYtpiqAEYYI
cgZ1WBciv.myfBNcYQQV9oAKXwaOydWmAfom6rUHkqp3ZzUPlgXUIYWW1VPR
RLWW6d76IP2VhfJX5P.1sATWtaaYXQVRRG+Uira.jHHSOj9cVjXam24HQfky
xqShbZhxQrXZonqLAItrqjRwSZRuknp0laxqDzz7DvK5tfNOlt8011E15H+b
E35Vjiws8ZCLPgNeSGKcAtGNtLW+RctcA5Wt6TMjOwyOzcfrpKraJgbS3BzE
3B8KwtgTA5+MTA9BTA1Cci4B7GHWDBsojqrkF6TQ+2+anNqpKUzeNtbDrhX7
dPOWmbvtSSMdGo1i6xLZJy6RT1QJZf1cp9x.anNSAgucUDqTbGz+rRL0Flic
psdn76ej+7iba3ubfEQ1+gsZM1exf+4CfX.TuneQdBsP7.DoRtSsr6MHET3w
D76hBWK6lqv7tWB9xiEOxA+BY1VssglBJGK+3c+mc9Xti.lwEqWfVndyhO5g
5W6eoaInSFxcGNj6Oj6d3MDIL9oZdnrWI9v7PYVUQXcpioLscWKGZFJX7lWT
8kljPa7Hucds1f2HsAe85tI1.9J3AzMxFPWgMLLOXDpkXlXRcfcSYzCPcr4Y
FipmYsrsYcBSBcH8n2fZiUOKFodPuQ8DLR839F0i+HzSmzNmrhH8nenODEi5
qX22jhQiPw98XVcB5QSxJUwQSvdzzq8mb8zSsd7DqpoUGZRUYCjIuL4eArSi
FpB
-----------end_max5_patcher-----------

Они выпустили API node.js с Max 8. Теперь вы можете.

Другие вопросы по тегам