В общем мне было просто интересно написать что-либо на лиспе и как-бы взялся за то, что мне интересно. По этому рациональность выбранных средств не сильно волнует.
В общем задача взять звук, обработать и вывести в реальном времени.
Пока-что просто пытаюсь выводить звук без изменений.
Написал биндинги к нужным функциям. Вроде работают.
То есть я нормально создаю клиент и подключаюсь к джек серверу
иникиализирую входной и выходной порт
нормально передаю callback функцию.
Но при попытке инициализировать работу путем:
(jack-activate client)
у меня лисп сегфолтится( использую SBCL на gentoo_amd64).
Исходник вот: ftp://kawais.org.ua/incoming/jack.lisp
Аналогичная программа на С работает безупречно.
Пробовал писать простенкие примеры с callback функциями и тоже работают.
Честно говоря даже не знаю, как это дело дальше копать. Посоветуйте что-нибудь, пожалуйста.
Сервер джека при этом пишет:
20:16:00.125 JACK connection change.
20:16:00.126 JACK connection graph change.
20:16:00.126 XRUN callback (1).
subgraph starting at qjackctl timed out (subgraph_wait_fd=17, status = 0, state = Running, pollret = 0 revents = 0x0)
**** alsa_pcm: xrun of at least 1958.740 msecs
20:16:00.328 JACK connection change.
ЗЫ пример вот от сюда http://www.valkama.se/article/lisp/sbcl-sy-1/
сегфолтится также.