Flash / HTML5 видео плеер Kernel Team v5.x

Содержание

1. Общая информация
2. Установка плеера
3. Включение плеера в HTML код страницы сайта
4. Режим Flash / HTML5
5. JavaScript API плеера
6. Список файлов для плеера

1. Общая информация

Видео плеер Kernel Team разработан с учетом основных требований монетизации ресурса. Плеер поддерживает возможность использования огромного количества рекламы в различных местах и при различных событиях, например: pre-roll, post-roll реклама, реклама на паузе или остановке видео, рекламная ссылка в контролбаре плеера, логотип со ссылкой и т.д.

Плеер работает в двух режимах: обычный режим и "embed" режим. Обычный режим предназначен для использования плеера на "родном" сайте. Режим "embed" включается в том случае, если ваш плеер загружается c другого ресурса. В этом режиме конфигурация рекламы плеера не может быть перекрыта извне, таким образом, если кто-то показывает embed код с вашим видео на другом сайте, ваша реклама не может быть перекрыта или удалена. Более того, настройка плеера в "embed" режиме осуществляется вами в одном месте, таким образом, если вы захотите изменить настройки рекламы - эти настройки мгновенно отразятся на всех сайтах, которые используют ваш embed код.

Видео плеер Kernel Team может использоваться бесплатно без каких-либо ограничений.

2. Установка плеера

Для установки плеера вам необходимо выполнить следующие шаги:

Важно! Любые SWF файлы, которые используются в плеере через API должны быть реализованы на ActionScript3.

3. Включение плеера в HTML код страницы сайта

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

4. Flash vs HTML5 mode

Видео плеер Kernel Team поддерживает базовый HTML5 режим для проигрывания ваших видео на мобильных устройствах. Плеер использует следующий алгоритм для определения, в каком режиме показывать видео:

Режим Описание Условия
Flash По умолчанию. Работает для большинства десктопных устройств. Браузер должен поддерживать Flash.
HTML5 видео Отображается встроенный в браузер HTML5 плеер. Данный режим поддерживает только JavaScript рекламу (через JS API плеера). Работает на большинстве мобильных устройств. (a) Браузер не поддерживает Flash.
(b) Видео имеет MP4 контейнер (h264 кодек).
(c) Браузер поддерживает проигрывание MP4 формата.
Встроенный режим видео Отображается простая ссылка на MP4 файл. Работает на большинстве мобильных устройств. (a) Браузер не поддерживает Flash.
(b) Видео имеет MP4 контейнер (h264 кодек).
(c) Браузер не поддерживает проигрывание MP4 формата.

Важно! HTML5 / Встроенный режимы могут использоваться только с MP4 файлами. Все современные мобильные устройства поддерживают проигрывание MP4 файлов.

5. JavaScript API плеера

JavaScript API используется для указанию плееру embed кода, который должен отображаться внутри плеера (если переменная инициализации embed = 1). Для того, чтобы указать плееру embed код, вам необходимо добавить следующую JavaScript функцию на странице с плеером:

function getEmbed() {
    return '%EMBED_CODE_GOES_HERE%';
}

В данной функции необходимо заменить токен %EMBED_CODE_GOES_HERE% на embed код, который вы хотите вывести в плеере. Существует несколько вариаций embed кодов:

Важно! Если вы не объявляете функцию getEmbed() и не возвращаете плееру embed код - то плеер сгенерит его самостоятельно исходя из переменных инициализации, которые переданы ему самому. В этом случае размеры плеера в embed коде будут установлены такие же, как и при отображении плеера у вас на странице. Вы можете использовать функцию getEmbed() для выдачи embed кода с другими данными, например, размерами.

Плеер поддерживает JavaScript колбэки на многие события. Вы можете использовать эти колбэки по своему усмотрению:

var player_obj = kt_player('kt_player', '/kt_player/kt_player.swf', '600', '400', flashvars, params);
player_obj.listen('ktVideoStarted', function() {alert('Video started');});
player_obj.listen('ktVideoPaused', function() {alert('Video paused');});
player_obj.listen('ktVideoStopped', function() {alert('Video stopped');});
player_obj.listen('ktVideoScrolled', function(time) {alert('Video scrolled to ' + time + ' seconds');});
player_obj.listen('ktVideoProgress', function(time) {alert('Video played to ' + time + ' seconds');});
player_obj.listen('ktVideoFinished', function() {alert('Video finished');});
player_obj.listen('ktFullScreenActivated', function() {alert('Player goes to full screen mode');});
player_obj.listen('ktFullScreenDeactivated', function() {alert('Player goes to normal mode');});
player_obj.listen('ktPreRollStarted', function() {alert('Configured pre-roll ad started');});
player_obj.listen('ktPreRollFinished', function() {alert('Configured pre-roll ad finished');});
player_obj.listen('ktPostRollStarted', function() {alert('Configured post-roll ad started');});
player_obj.listen('ktPostRollFinished', function() {alert('Configured post-roll ad finished');});

player_obj.listen('ktVideoFormatChanging', function(format) {
    alert('Video format is attempted to be changed to: ' + format);
    // этот обработчик может использоваться для показа пользователю HTML содержимого при попытке переключить формат
    // функция должна вернуть 'true' (как строку), если вы хотите чтобы плеер отменил действие по умолчанию
});

player_obj.listen('ktToolbarLogoClick', function() {
    alert('User clicked on toolbar logo text');
    // этот обработчик может использоваться для показа пользователю HTML содержимого при попытке кликнуть на рекламную текстовку в тулбаре
    // функция должна вернуть 'true' (как строку), если вы хотите чтобы плеер отменил действие по умолчанию
});

При необходимости инициализации перехвата событий плеера извне, вы можете определить функцию kt_player_loaded, которая вызывается после инициализации плеера:

function kt_player_loaded(player_obj) {
    // настройка перехвата событий
    player_obj.listen(...);
}

Во время инициализации плеер изменяет CSS стили его DIV-контейнера, чтобы можно было легко показывать внутри контейнера HTML слои поверх плеера (например, рекламу, всплывающие баннеры, доп. меню). Таким образом, можно добавлять слои с абсолютным позиционированием в DOM структуру контейнера.

стиль контейнера {
    width: 600px;
    height: 400px;
    position: relative;
    overflow: hidden;
}

Дополнительное API по управлению плеером:

// получить DIV-элемент контейнера
player_obj.container();

// запустить проигрывание
player_obj.play();

// приостановить проигрывание
player_obj.pause();

6. Список файлов для плеера

Данный список перечисляет все файлы, которые поставляются вместе с плеером и их предназначение:

Имя файла Описание
.htaccess Содержит правила mod_rewrite, согласно которым все запросы на плеер с других доменов переключают плеер в "embed" режим.
btn_play.jpg Кнопка начала проигрывания, которая показывается в центре плеера в HTML5 / встроенном режиме.
embed.php Файл редиректа на плеер в "embed" режиме. Работает совместно с .htaccess.
embed.xml Файл настройки переменных инициализации плеера в "embed" режиме. Заполняя его, вы настраиваете поведение вашего плеера для посетителей других доменов.
configure_en.html (configure_ru.html) Конфигуратор плеера, позволяет визуально настроить плеер и получить его HTML код для вставки.
expressInstall.swf Файл инсталляции Flash плеера, предоставленный Adobe.
kt_player.js JavaScript файл для подключения плеера на страницу.
kt_player.swf Файл плеера.
demo/crossdomain.xml Этот файл нужно копировать в корень всех доменов (и субдоменов), с которых плеер загружает какие-либо данные.
demo/float.xml Пример файла настройки всплывающих баннеров.