YandexAudio
YandexAudio — JavaScript-библиотека, предназначенная для воспроизведения аудиоданных в браузере. Работа YandexAudio базируется на технологиях html5 audio и flash. Библиотека предоставляет удобный интерфейс для добавления этих технологий на страницу и управления их настройками. При этом YandexAudio решает основные проблемы, связанные с использованием audio и flash – неполная поддержка браузерами, трудная отладка ошибок и др.
Основные возможности YandexAudio:
- автоматическое определение поддерживаемых браузером технологий;
- подключение flash-плеера на страницу с возможностью отображения видимого flash-апплета;
- автоматическая перезагрузка плеера при возникновении ошибки (например из-за заблокированного flash-содержимого);
- предзагрузка следующего трека, параллельно с воспроизведением текущего;
- детектирование и использование технологий Web Audio API;
- эквалайзер (с готовым набором пресетов) с возможностью настройки количества и частоты полос пропускания.
Подключение
Существует 2 способа подключения данной библиотеки:
- npm - если ваш проект использует сборку скриптов с помощью browserify или аналога, то можно просто подключать
библиотку как npm-пакет
var YandexAudio = require('YandexAudio')
; - скрипт - достаточно подключить основной файл скрипта (dist/index.js или dist/index.min.js - минифицированную версию) в тело страницы и далее использовать глобально доступный объект spec/Audio.md.
Использование
Создание экземпляра плеера:
var audioPlayer = preferredPlayerType flashOverlayElement; audioPlayer;
- preferredPlayerType - предпочитаемый тип плеера. Может принимать значения:
"html5"
,"flash"
или любое ложное значение (false, null, undefined, 0, ""). Если выбранный тип плеера окажется недоступен, будет запущен оставшийся тип. Если параметр не передан, либо указано ложное значение, то API автоматически выберет поддерживаемый тип плеера. - flashOverlayElement - HTMLElement, в который требуется встроить flash-апплет. Передается в том случае, если необходимо отобразить видимый flash-апплет для отключения различных блокировщиков flash'а.
Запуск воспроизведения
audioPlayer;
Управление воспроизведением
audioPlayer; // пауза audioPlayer; // продолжение воспроизведения audioPlayer; // остановка воспроизведения и загрузки трека console; console; console; console; console; console;
Прослушивание событий
audioPlayer; var { return { console; }; }; audioPlayer; audioPlayer; audioPlayer; audioPlayer; audioPlayer; audioPlayer; audioPlayer; audioPlayer; audioPlayer; audioPlayer; audioPlayer;
Прелоадер
В большинство команд управления можно передать вторым аргументом 1
, чтобы они применялись к прелоадеру вместо текущего плеера.
Для прослушивания событий плероадера следует использовать префикс ya.music.Audio.PRELOADER_EVENT
.
// Следует обратить внимание, что обещание разрешится, когда трек начал загружаться, а не когда загрузился audioPlayer; audioPlayer; audioPlayer; // остановка загрузки трека console; console; console; // Два похожих метода, но первый является сахаром для audioPlayer.getSrc(1) == src, а второй проверяет успех начала загрузки console; console; var { return { console; }; }; audioPlayer; audioPlayer; audioPlayer; audioPlayer; audioPlayer;