2013-12-09 1 views
2

Я работаю над программой группового аудио-чата в локальной сети (что помогает учащимся в классе разговаривать в случайной группе, а не всегда рядом с ними).Ruby gem для микрофона и динамика

Он просто прошел гладко, пока я не могу найти драгоценный камень, чтобы получить доступ к микрофону и динамику. Кто-то предлагает мне win32 api на windows или какую-то команду оболочки в Linux. Но я надеюсь, что смогу сделать это с рубином, если это возможно.

Может ли кто-нибудь дать мне базу решений на рубиновой жемчужине, чтобы получить доступ к микрофону и динамику? Если я пропущу любую необходимую деталь, сообщите мне.

Заранее благодарен.

ответ

3

Вы можете попробовать Ruby-PortAudio

Этот пакет содержит Рубиновые привязок к апи Portaudio. PortAudio - это кросс-интерфейс для вашего аудиооборудования.

Пакет ruby-portaudio поддерживает как PortAudio apis: blocking, так и неблокирующий. Блокирующий API позволяет Ruby-скриптам итеративно заполнять буфер образца , который затем записывается в аудиооборудование (более поздние версии будут также поддерживают чтение из буфера). Неблокирующий api позволяет программам Ruby выступать в качестве контроллеров для аудиопотоков, определяемых внешним обратным вызовом . Поскольку функция обратного вызова может быть запущена в прерывании, это невозможно реализовать в Ruby, но не . Однако вы можете написать свою функцию обратного вызова в расширении C, или вы можете создать свой собственный, используя LLVM или LibJIT, как в http://github.com/jvoorhis/Motivik.

+0

Другой драгоценный камень, связанный с PortAudio, - https://github.com/nanki/ffi-portaudio –

+0

Спасибо, что посмотрю. –

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

  • Нет связанных вопросов^_^