2013-06-22 3 views
5

Я использовал ту же разметку, что и на примере демонстрационной страницы, но параметр по умолчанию не работает. Я не вижу автозапуска субтитров. Мне нужно перейти вручную к выбору субтитров и выбрать трек.video.js Как сделать субтитры видимыми по умолчанию?

<track kind="subtitles" src="" srclang="en" label="English" /> 
    <track kind="subtitles" src="" srclang="it" label="Italian" default /> 

Что я делаю неправильно? или это ошибка?

ответ

0

Я испытываю такое же поведение с последними версиями video.js версии 4.1.

По умолчанию субтитры были видны в версии 3.x - их больше нет в версии 4.x! Пользователь должен вручную щелкнуть значок субтитров и выбрать язык субтитров, чтобы субтитры были видны! Параметр по умолчанию задан точно так же, как и с версией 3.x, которая правильно отображала субтитры без вмешательства пользователя.

0

Параметр по умолчанию, кажется, ничего не делает в 4.1.0 прямо сейчас. Для него подана проблема here.

Кроме того, из моего понимания API, нет отличного способа (без компиляции собственного проигрывателя с большей функциональностью трека, представленной через export.js), чтобы программно выбрать трек по умолчанию, который вы хотите «безопасным» способом прямо сейчас или.

Моя рекомендация заключалась бы в том, чтобы отменить комментарий, упомянутый в ошибке, выполнить некоторые испытания и (при условии, что все это работает) отправить запрос на перенос на репортаж videojs, позволяющий выбрать трек по умолчанию.

0

Попробуйте удалить srclang="en" с английских субтитров. Хотя это ошибка, удаление, похоже, устранило проблему для комментатора «Crixo» на этом issue page.

3

Вы можете использовать javascript (jQuery), чтобы автоматически запускать событие click для меню заголовка, когда плеер готов. Это отобразит заголовок, не нажимая его вручную.

videojs("vdoPlayer", {}, function(){ 
    // Player (this) is initialized and ready. 
    $("li.vjs-menu-item").eq(2).trigger('click'); 
}); 

Возможно, вам придется изменить значение eq() в зависимости от того, какой пункт меню вы нажимаете. используйте console.log ($ ("li.vjs-menu-item"). eq (2) .text()); для определения того, какое меню есть.

+1

Это работает только для меня в Firefox. IE10 и Chrome, похоже, не могут найти файл li.vjs-menu. Я попытался изменить индекс eq(), но это, похоже, не проблема. Если вы получили это, чтобы работать в других больших двух браузерах, я бы хотел услышать, как это сделать. – Alpinist1974

1

Это работало отлично для меня на IPad (Chrome, Safari) и Windows, 7 PC (FF, Chrome):

<track kind="captions" src="demo.captions.vtt" srclang="en" label="English" default></track> 

Я использую videojs 4.6.2, может быть, это было зафиксировано, так как этот вопрос был спросил.