Внимание! Эта статья устарела.Теги: #тестирование на #pandora.com #voximplant #hd audio #аудиозаписи #аудиоплееры #разработка веб-сайтов #тестирование ИТ-системВы можете ознакомиться с более свежими статьями здесь или прочитать блог на нашем сайте .
Недавно мы запустили новую функциональность на нашей платформе VoxImplant, которая позволяет вам HD-аудиоконференции , а также проигрывать mp3 и ogg файлы при звонках из SDK или SIP в широкополосном режиме (раньше всё было 8КГц, теперь всё 48КГц).Концептуально нужно было через платформу воспроизвести аудио в конференцию и послушать, как это все работает в зависимости от количества участников.
Нам захотелось придумать интересный способ протестировать все это дело и, немного подумав, мы нашли довольно нестандартный вариант — использование онлайн-радио.
Надеюсь, что это вас хоть немного заинтриговало, так что добро пожаловать под кат.
Пандора и API
Для тех, кто не знает, Pandora.com — это американское онлайн-радио, которое можно слушать только в США.Разумеется, нахождение в США подтверждается по IP, поэтому зарегистрироваться с помощью какого-нибудь TunnelBear не составит большого труда.
В сервисе вы выбираете станции по своему вкусу по имени исполнителя, а затем он создает плейлист на основе своих умных алгоритмов.
В целом концепция такая: подключаемся к радио, оно нам выдает mp3, мы проигрываем их в конференцию VoxImplant, и все участники конференции слушают музыку.
К счастью, Pandora также обнаружила API, который хоть и неофициальный, но вполне рабочий.
https://6xq.net/pandora-apidoc/json/
Интеграция с VoxImplant
Подключиться к API можно напрямую из скрипта VoxImplant; напомню, они написаны на JavaScript и выполняются нашим движком, оттуда вы легко сможете делать http-запросы к внешним веб-сервисам.Наши сервера расположены по всему миру, поэтому для тестирования мы использовали те, что находятся в США, чтобы Пандора не ругалась.
В итоге у нас получился такой сценарий: https://gist.github.com/aylarov/ee7f509ca182e8437b2abed9d415f2f1 , вы можете увидеть использование Promise и Blowfish.encrypt, этот функционал включается с помощью дополнительных JS-файлов — es6-обещание И Blowfish.js в Правиле приложения перед основным скриптом.
Основной сценарий воспроизводит в конференции mp3-файлы, URL-адрес которых предоставляется API Pandora. На уровне платформы mp3 превращается в поток реального времени в кодеке Opus (48КГц), при этом правда в моно, так как со стерео в WebRTC есть ряд нюансов, связанных с эхоподавлением, и даже в случае аудиоконференция, стерео работает не очень хорошо.
Клиент для тестирования
Используя Web SDK, компания VoxImplant создала приложение, которое подключается и осуществляет звонок на конференцию, и даже имеет возможность переключения треков и радиостанций.Ну а дальше сидим и слушаем музыку :) Вы можете посмотреть демо и послушать музыку здесь .
P.S. Конечно, это не единственный метод, который мы использовали для тестирования конференций; регулярные звонки, где люди общались, также не были отменены.
-
Изучение Разработки Веб-Сайтов Wordpress
19 Oct, 24 -
Говорим О Том, Как Структурировать Код
19 Oct, 24 -
Управление Ktorrent Из Консоли
19 Oct, 24 -
Куда Вы Перенесли Свой Сайт С Mchost?
19 Oct, 24 -
Спутник Под Управлением Ос Android
19 Oct, 24