Запустить VAST без (стандартного) игрока?

Ответ на этот вопрос будет чрезвычайно оценен!

Во всяком случае, это первый раз, когда я вижу тег VAST. Теперь идея состоит в том, чтобы запустить/реализовать его без использования или использования обычного игрока. Можно ли это сделать только с помощью событий JavaScript? И как именно?

Тег выглядит следующим образом: http://example.com/www/delivery/vst.php?zoneid=000&id=website

<VAST version="2.0">
    <Ad id="VPAID">
        <InLine>
            <AdSystem version="1.0">AD COMPANY</AdSystem>
            <AdTitle>VPAID Ad Manager</AdTitle>
            <Impression/>
            <Creatives>
                <Creative sequence="1">
                    <Linear>
                        <Duration>00:00:15</Duration>
                        <MediaFiles>
                            <MediaFile delivery="progressive" width="640" height="480" scalable="true" type="application/x-shockwave-flash" apiFramework="VPAID">
                                <![CDATA[
                                http://example.com/www/admanager/AdManager.swf?zoneid=000&id=website&ft1=10&ft2=40&ft3=5&ft4=30&ft5=0.5&ft6=10&ft7=20&ht1=5&ht2=40&ht3=5&ht4=30&ht5=0.5&ljt=example.com&vtid=v_00000_hashid
                                ]]>
                            </MediaFile>
                            <MediaFile delivery="progressive" width="640" height="480" scalable="true" type="application/javascript" apiFramework="VPAID">
                                <![CDATA[
                                http://example.com/www/admanager/ad-manager.js#zoneid=000&id=website&ft1=10&ft2=40&ft3=5&ft4=30&ft5=0.5&ft6=10&ft7=20&ht1=5&ht2=40&ht3=5&ht4=30&ht5=0.5&ljt=example.com&vtid=v_00000_hashid
                                ]]>
                            </MediaFile>
                        </MediaFiles>
                    </Linear>
                </Creative>
            </Creatives>
        </InLine>
    </Ad>
</VAST>

Ответ 1

Вы можете использовать Google IMA SDK, чтобы обрабатывать выборку и обработку ответа. Это хорошо для любых совместимых со стандартами VAST или VMAP, а не только для DFP.

Вы можете использовать SDK IMA без видеопроигрывателя, если хотите. Я изменил Google начало примера здесь и удалил элемент видео: < а2 >

Контейнер для объявления может быть div:

var adDisplayContainer =
new google.ima.AdDisplayContainer(document.getElementById('adContainer'));

Диспетчер объявлений требует элемент видео (или что-то, реализующее некоторый API-интерфейс видеоэлемента), но это может быть пустой элемент видео:

adsManager = adsManagerLoadedEvent.getAdsManager(document.createElement('video')); 

В примере, который я использовал, есть VPAID, как в вашем примере. Там прокомментирован тэг видеообъявлений.

Использование встроенной интеграции с игроком может быть проще. Google предоставляет плагин для использования SDK с video.js.

Ответ 2

Да, возможно полностью реализовать VAST в Javascript, используя только HTML5 и без необходимости специализированного игрока.

В качестве примера рассмотрим videojs-vast-plugin. Он использует этот проект для разбора ресурса VAST, а затем использует videojs, чтобы фактически воспроизвести объявление. Он поддерживает только предварительные объявления, но его можно расширить, чтобы добавить поддержку других видов рекламы.

Конечно, вы можете написать свою собственную парсинговую библиотеку VAST, а вместо videojs используйте Media Element (эфирное видео или аудио), чтобы воспроизвести фактический Объявления. VAST не требует ничего, что уже не присутствует в Javascript и HTML5.