Пример →
JavaScript API
API для общения с плеером через JavaScript.Скачать uppod_api.js
Как это работает: в тело страницы включается .js файл, который позволяет командовать плеерами и получать различные события и данные.
Требования:
- каждый плеер в HTML должен иметь уникальный идентификатор id в теге object (если используете тег embed, то нужно также указать параметр name для него). id должен начинаться с буквы и содержать слово player.
- каждому плееру нужно передать идентификатор id параметром uid в списке параметров flashvars. Добавление uid в код плеера можно включить в настройках.
- связь с плеером возможна только после его загрузки и инициализации (прихода от него события init)
- если вы не используете готовый uppod_api.js, то учтите, что нужны все методы из него (uppodGet, uppodSend, uppodEvent - пусть даже пустые).
- старайтесь не использовать тег embed при подключении плеера
плеер → uppodEvent(playerID,событие) | события плеера | init - загрузка start - старт play - пуск pause - пауза stop - стоп seek - перемотка loaded - файл загружен end - конец воспроизведения download - скачивание quality - переключение качества error - ошибка (файл не найден) ad_end - окончание рекламы pl - загрузка плейлиста volume - изменение громкости fullscreen - полноэкранный режим exitfullscreen - выход из полноэкранного режима metadata - метаданные (запрос get[metadata]) next - следующий файл из плейлиста |
uppodSend(playerID,команда) → плеер | команды плееру | эта функция командует плеером, например uppodSend("videoplayer","play"); play - пуск (иногда может требовать небольшой timeout) pause - пауза toggle - переключение (play/pause) stop - стоп startN - запуск определенного файла из плейлиста, например - start3, start21 (нумерация начинается с 1), для запуска файла с конца плейлиста используется подчеркивание - start_1 (запускает первый файл с конца). Если файл находится в папке, то следует сперва открыть папку (аналогично через startN), затем запустить файл (порядковый номер файла считается в самой папке) vN - установка громкости звука 0-100 (v0 - v100) file:URL - запуск нового файла на воспроизведение (file:http://site.ru/file.mp3) pl:{} - добавление позиции в плейлист newpl:URL или newpl:JSON - обновление плейлиста poster:URL - загрузка заставки (если плеер не запущен) text:TEXT - вывести на экран текст c возможность закрыть (с крестиком в углу) text2:TEXT - вывести на экран текст без возможности закрыть alert:TEXT - вывести на экран текст, который закроется самостоятельно через несколько секунд xtext - закрыть текстовое сообщение xpl - закрыть открытый плейлист (при расположении внутри) random - установить режим случайного воспроизведения, повторный его вызов отключает seek:sec - перемотка на заданный момент времени (секунды) shift:10 - перемотка относительно точки воспроизведения (-10 секунд перематывает назад) comment:TEXT - вывод название (не работает, если после comment использовать команду file - нужно посылать comment после file) sss - скриншот экрана ppp - скриншот плеера quality - переключает качество, если оно включено (кнопка) quality:2 - переключает качество на указанную позицию в выпадающем списке (номер сверху от 1) next - следующий трек prev - предыдущий трек showplaylist - показать внутренний плейлист time0 - обнулить время (режим audio) screenshot - динамическое получение скриншота scale+ - увеличить видео scale- - уменьшить видео scale - масштабировать видео stretch - растягивать видео repeat - переключает автоповтор autoplay - переключает автозапуск следующего файла в плейлисте clear - очистить память плеера (аналог хоткея 000, подтверждение не выводится) up - подняться на уровень вверх из открытой папки плейлиста but[1]:on и but[1]:off - включение/выключение своих кнопок (в квадратных скобках номер кнопки) smoothing:1/0 - включение/выключение сглаживания видео sub:link - обновить субтитры (если субтитры уже работают) thumbs:link - обновить миниатюры (если миниатюры уже работают) новое normalscreen - отключение полноэкранного режима, если он включен |
uppodGet(playerID,команда) ↔ плеер | запросы плееру (возвращает результат) | getpl - возвращает номер проигрываемого файла из плейлиста getv - возвращет громкость звука getposition - возвращает текущее время воспроизведения getduration - возвращает длительность getstatus - возвращает статус (play 1, pause 0, stop -1), после первого обращения статус будет возвращаться каждый раз при изменении его пользователем getfull - возвращает статус полноэкранного режима (вкл. 1, выкл. 0), после первого обращения статус будет возвращаться каждый раз при изменении его пользователем getbytestotal - возвращает вес файла в байтах getbytesloaded - возвращает загруженный вес файла в байтах getprocent - возвращает процент загрузки 0-1 gettext - возвращает текстовое сообщение, если оно есть getaspect - возвращает пропорции видео (ширина / высота) gethlsbitrate - возвращает текущий битрейт HLS gethlslevel - возвращает текущий уровень HLS get[var] - возвращает значение заданного параметра |
Для остановки работающего плеера при запуске другого, а также поочередного запуска плееров на странице, используйте Uppod.AJAX
При работе с JS API по протоколу HTTPS нужно добавить в файл crossdomain.xml строку allow-access-from domain="site.com" secure="false" (пример можно найти тут)