2013-03-16 2 views
1

Я создаю звуковое приложение в Ruby, которое требует воспроизведения с низкой задержкой воспроизведения. До сих пор я использую SDL, который отлично подходит для прототипа, но у него почти нет достаточной производительности для того, что мне нужно.Воспроизведение звука с низкой задержкой с Ruby

Я попытался использовать жемчужину ruby-jack, но он не кажется достаточно полным, чтобы вставить любой звук в порт воспроизведения (и документация дико неполна).

Если он сильно изменится, я нахожусь на OS X (но мне нужно что-то порядочно кросс-платформенное), и я (в настоящее время) воспроизвожу небольшие WAV-файлы, но больше форматов будет лучше. Я также не хочу, чтобы вы также хотели вызвать системное приложение для этого.

Доступен полный исходный код моей заявки on Github; Главными особенностями этого являются in a gist, для тех, кто хочет посмотреть.

+0

Как вы используете SDL для воспроизведения образцов/дорожек? Если в ruby-коде нет избыточных уровней или указаний, не следует ожидать никаких проблем с производительностью. Вы пытаетесь запустить воспроизведение в потоке? Вопрос должен быть обновлен с дополнительной информацией, чтобы получить разумный ответ. –

+0

Я отправлю ссылку на код, который у меня уже есть, но основные моменты указаны в https://gist.github.com/Jashank/5179273 – Jashank

ответ

0

Я не уверен, если у меня есть правильный ответ для вас, но я считаю, что стоит потратить ваше время на изучение rbSFML. Это является обязательным для SFML, мультимедийной библиотеки, которая растет в популярности.

Перейти здесь rbSFML http://groogy.se/mainsite/rbsfml/

SFML главная страница http://www.sfml-dev.org/

Желание у меня было больше информации для вас!

+0

Я пробовал SFML раньше, много лет назад, но я не уверен, что такое латентность воспроизведения; Кроме того, rbSFML недоступен как драгоценный камень, и [кажется, не компилируется для меня] (https://github.com/Groogy/rbSFML/issues/49). – Jashank

Смежные вопросы