2017-01-19 13 views
0

Я хотел бы разработать приложение, которое позволит пользователю транслировать потоковое аудио со своего компьютера и транслировать его по сети.О производительности аудио-потокового приложения

Моей главной задачей является выполнение этого приложения. Я хочу, чтобы качество звука сохранялось как самое высокое, и я хотел бы как можно меньше «задержек».

Могу ли я достичь такого уровня производительности с помощью веб-языков, таких как AJAX, NodeJS или Ruby (Ruby on Rails?), Или я должен рассмотреть более низкоуровневые языки, такие как C/C++?

Спасибо!

ответ

0

Производительность звука приложения не сильно зависит от выбранного вами языка. Этот уровень производительности достигается за счет использования правильных протоколов для отправки аудиопотока по сети. Одна из распространенных ошибок заключается в использовании HTTP, который пользовательский TCP-протокол, потому что имеет много сертификатов, которые будут проверены, и это задерживает информацию от потоковой передачи в реальном времени. Лучший протокол, который используется всеми крупными компаниями, такими как Facebook, Instagram, Skype, Lync, является протоколом UDP, который является очень быстрым из-за минимального уровня проверяемых сертификатов.

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

Вы можете использовать Java, если хотите, у меня есть друзья, которые работают для 8x8 одной из лучших компаний в прямом эфире в США, и они использовали JAVA для создания серверов и клиентов.

+0

Итак, все технологии, такие как AJAX или NodeJS, используют протоколы HTTP для связи? Я не хочу заново изобретать колесо, поэтому знаете ли вы какие-либо хорошие веб-технологии, которые позволят мне использовать протоколы UDP? –

+0

У HTTP есть запросы, которые реализованы с использованием протоколов UTD, и все упомянутые технологии включают в себя HTTP-запросы –