Примусити HTML5 на відео YouTube


119

Щодо блогу API Youtube, вони експериментують зі своїм новим програвачем HTML5 Video Player.

Мабуть, щоб відтворити відео в html5, ви повинні використовувати код вбудовування iframe:

<iframe class="youtube-player" type="text/html" width="640" height="385"
  src="http://www.youtube.com/embed/VIDEO_ID" frameborder="0">
</iframe>

Але якщо клієнт не приєднався до пробної версії HTML5 , програвач автоматично повернеться до флеш-плеєра, навіть якщо браузер клієнта може підтримувати HTML5-відео.

Як змусити відтворювати відео HTML5, якщо браузер його підтримує, навіть якщо користувачі ще не залучені до пробної версії HTML5?

Інакше як відключити спалах спалаху?

Редагувати:

Можна примусити програвач HTML через посилання на Youtube Video , але мені потрібна така функція для вбудованих відео.


Що робити, якщо ви мали б виявити HTML5 Capability за допомогою js та реалізувати відповідний код api youtube відповідно. Або я повинен сказати, якщо HTML5 Video не підтримується, не реалізовуйте ютуб api, як це вдалося б до Flash.
Девід Хобс

Відповіді:


179

Я знайшов рішення:

Ви повинні додати html5=1в src атрибут iframe:

<iframe src="http://www.youtube.com/embed/dP15zlyra3c?html5=1"></iframe>

Відео буде відображатися у вигляді HTML5, якщо він є, або резервне копіювання у програвачі flash.


1
хм - зараз це не працює (ті ж види), дивно. Цікаво, чи працює вона лише на певних серверах youtube?
UpTheCreek

1
Не працює при додаванні &html5=1до кінця відео, яке не вбудовується: /
Moshe Revah

1
Додавання &html5=1(або &html5=trueщось подібне) до кінця гіперпосилання (не вбудованого в рамку відео), схоже, не працює в IE без Flash.
Райан

1
Відео YouTube з рекламою автоматично використовуватиме Flash Player
1313

8
Я думаю, що всі звіти упереджені. Ніхто не сказав, якщо він / вона знаходиться в "html5 бета-версії youtube", і це, мабуть, ключовий фактор. Коли я залишаю html5 beta, здається, що? Html5 = 1 нічого не робить. Кожне відео йде спалахом.
Пол Бревчинський

20

Відтворення відео YouTube у форматі HTML5 залежить від налаштування за адресою https://www.youtube.com/html5 для кожного браузера. Chrome надає перевагу відтворенню HTML5 автоматично, але навіть останні Firefox та Internet Explorer все ще використовують Flash, якщо він встановлений на машині.

Параметр html5 = 1 зараз нічого не робить (більше). (Зверніть увагу, він навіть не вказаний на https://developers.google.com/youtube/player_parameters .)


Щойно перевірив, я вибрав програвач HTML5 на youtube.com/html5 , але якщо & html5 = 1 не вказано як параметр вбудованого програвача, спалах завантажується, коли я вказую, що завантажений програвач HTML5. ОС: Linux, Firefox 33 64bit.
Цар

Я щойно перевірив html5=1Firefox 33.0.2, і він працює добре (і не вимагає, щоб користувачі вмикали налаштування HTML5 на YouTube). Без цього YouTube за замовчуванням надсилає версію Flash.
Саймон Схід

Параметр все ще працює, але включення його на сторінці html5 робить youtube за замовчуванням html5, що краще.
алан

4

Я спробував використовувати код вбудовування iframe, і з'явився програвач HTML5, проте чомусь iframe повністю порушив мій сайт.

Я заплутався зі старим кодом вбудовування об'єкта, і він працює чудово. Тож якщо у вас проблеми з iframe ось код, який я використав:

<object width="640" height="360">
<param name="movie" value="http://www.youtube.com/embed/VIDEO_ID?html5=1&amp;rel=0&amp;hl=en_US&amp;version=3"/>
<param name="allowFullScreen" value="true"/>
<param name="allowscriptaccess" value="always"/>
<embed width="640" height="360" src="http://www.youtube.com/embed/VIDEO_ID?html5=1&amp;rel=0&amp;hl=en_US&amp;version=3" class="youtube-player" type="text/html" allowscriptaccess="always" allowfullscreen="true"/>
</object>

сподіваюся, що це комусь корисно


YouTube <object>є застарілим станом на кінець січня. Використовуйте <iframe>замість цього.
Самуель Ель

<object>як і раніше працює, насправді iframe просто містить його.
RozzA

2

Якщо ви використовуєте вбудовуваний api для iframe, ви можете поставити html5:1як один із playerVarsаргументів, наприклад:

player = new YT.Player('player', {
    height: '390',
    width: '640',
    videoId: '<VIDEO ID>',
    playerVars: {
        html5: 1
    },
});

Всього працює.


0

Вбудований тег використовується для додавання іншого src документа до поточного html-елемента.

У вашому випадку відео з YouTube, і нам потрібно вказати тип HTML (4 або 5) для браузера зовні за посиланням

тому додайте? html = 5 до кінця посилання .. :)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.