2013-03-26 3 views
0

Я использую VideoJS, версия, размещенная на CDN, отлично работает, но я хочу использовать VideoJS офлайн и изменять CSS, поэтому я сам принимаю это.Подпись VideoJS, вызывающая неопределенную ошибку

Я получаю неопределенную ошибку на videojs.js:

this.player.textTrackDisplay.addComponent(this); 

Я знаю, что мой файл captions.vtt правильно, так как он работает с демо HTML-файл. Моя надбавка:

<div id="mainVideoList"> 
     <video id="mainVideoOne" class="video-js vjs-default-skin" width="956" height="538" autoplay preload="auto" loop data-setup="{}"> 
      <source type="video/mp4" src="assets/Penguins.mp4"> 
      <track kind="subtitles" src="src/videojs/captions.vtt" default> 
     </video> 
    </div> 

Видео воспроизводится отлично, но ошибка выбрана, и никаких титров не отображается.

Спасибо.

EDIT: ошибка возникает только в том случае, если я устанавливаю титры по умолчанию, а элементы управления не видны.

+0

Почему бы не продолжать использовать версию CDN и включить ваш собственный файл 'custom-videojs.css' после того, как вы включили оригинальный CSS видео? Таким образом, вы можете иметь собственный CSS и продолжать использовать CDN. Беспроигрышная. –

+0

Поскольку сайт должен работать автономно без подключения к внешнему миру. – mrEmpty

+0

Это имеет смысл. Тогда CDN не будет работать. Ваш вопрос подсказывал, что это связано с CSS: * но я хочу изменить CSS, поэтому я принимаю это сам. * –

ответ

0

К сожалению, функциональные главы вы ищете не (пока) работают в videojs версии 4.x - это известная проблема:

https://github.com/videojs/video.js/issues/676

Старые версии 3.х сделал работа, однако. Я успешно использовал v3.2 для доставки видео с главами (даже работал в IE6), но более ранние версии проигрывателя не были ни доступны, ни отзывчивы (без особых усилий).

Чтобы быстро справиться с неперехваченным TypeError (не имея достаточно времени, чтобы справиться с этим более подробно), я добавил следующий лейкопластырь:

if (typeof component === 'undefined') return; 

функции

vjs.Component.prototype.addChild 

просто перед линией:

this.children_.push(component); 

(в неминифицированной версии v4.3, которую я использую, это будет вокруг линии 1660).

Это, очевидно, не делает ничего, чтобы исправить неисправную функциональность Chapters, но поймает ошибку, которая будет выброшена.

Я предлагаю проверить эту ссылку, время от времени, так как представляется, (наконец) быть некоторое движение вперед по этому вопросу в течение последних нескольких месяцев: https://github.com/videojs/video.js/issues/676

Смежные вопросы