Захват вывода звуковой карты пользователя в апплет Java - PullRequest
2 голосов
/ 06 апреля 2011

Я ищу способ захвата выходных звуковых карт пользователей и их потоковой передачи на сервер red5 через RTMP в режиме реального времени.

Использование перенаправления звука, например, с Windows Stereo Mix не вариант, так как его довольно сложно настроить, и он не работает согласованно между конфигурациями и версиями Windows.

Я открыт для всевозможных решений в этом направлении - может быть, даже с JNI / JNA?

Спасибо за ваши предложения!

Ответы [ 4 ]

0 голосов
/ 11 октября 2011

Хорошо - в Java определенно нет собственного способа захвата вывода звуковой карты из браузера. Можно использовать собственный интерфейс Java для написания специфического для платформы кода для перехвата строки и передачи необработанных аудиоданных в апплет для дальнейшей обработки.

0 голосов
/ 06 апреля 2011

См. Захват аудио в руководстве по Java.

Апплет должен иметь цифровую подпись и доверие конечного пользователя, прежде чем станет возможным перехват данных в звуковых линиях.

Если программное или аппаратное «звуковое зацикливание» не включено, оно может полностью выйти из строя (даже в полностью доверенном апплете).

0 голосов
/ 17 апреля 2011

Это не так тривиально, как может показаться.

Что нужно сделать [часть 1 - создание места для хранения информации]:

  • описать сервер, где хранить файл.(например: Google App Engine)
  • опишите, как вы хотите сохранить файл.(например: хранилище данных)
  • опишите, насколько важна целостность данных.(например: проще загрузить файл с существующим API загрузки, чем для потоковой передачи данных. Пример Apache FileUpload)

Допустим, максимальный размер файла составляет 1 МБ (пример .ogg)аудиофайл, который вы хотите загрузить в базу данных сервера.Если вы собираетесь создать загрузчик автоматизации, вы можете также создать веб-интерфейс, который вы можете использовать вручную.

Если вы хотите, чтобы на ваши вопросы ответили, то сформулируйте четкий вопрос, на который могут ответить люди.Если вы не укажете пределы, то это IMO непрофессионально, и, по крайней мере, я никогда не напишу сложное решение.


Извините, что мой первоначальный ответ был бесполезен для вас.Я пытался упростить проблему, но я упростил ее."Everything should be made as simple as possible, but not simpler." A. Einstein.

В качестве потенциального решения вашей проблемы я мог бы порекомендовать:

  • Screener - Java-программа, которая не только передает аудио, но ивключает в себя скринкаст видео.enter image description here

Если это не решит вашу проблему, то я надеюсь, что это как минимум полезно для вас.

0 голосов
/ 06 апреля 2011

Если вы открыты для использования JNI / JNA, почему бы не получить доступ к звуковому драйверу через C ++ или C, это было бы намного проще, потому что в любом случае вы собираетесь написать интерфейс на Java, но их реализация будет на C ++ или C.

...