Fancybox - как установить качество видео Youtube по умолчанию

Есть ли способ установить качество видео Youtube по умолчанию при отображении видео с помощью Fancybox? Я попытался указать параметр строки запроса &hd=1 в URL-адресе видео, как это было предложено Youtube, но похоже, что это игнорируется, когда Fancybox встраивает видео... Иногда он встраивает 260p, иногда 320p, иногда 480p, и я понятия не имею, как это изменить параметр.

http://www.youtube.com/watch?v=VRT0OhHnOzo&autoplay=1&hd=1

Если URL-адрес вводится непосредственно в браузере, тогда yotube отображает HD-версию при указании параметра &hd=1.


person Primoz Rome    schedule 30.01.2013    source источник
comment
какую ширину/высоту вы настроили для своей области fancybox? Я нашел этот комментарий На самом деле, я только что смог понять это: я просто увеличил контейнер fancybox, и это сработало. Я понимаю, что высота и ширина каким-то образом мешают режиму HD. Что касается устаревшего параметра, вы абсолютно правы. Тем не менее, он отлично работает в браузерах Chrome, FF, Safari и Opera. Браузеры IE никуда не годятся, но в этом нет ничего удивительного, верно? Что я заметил, так это то, что параметр hd устанавливает для видео разрешение 720, даже если рассматриваемое видео также доступно в разрешении 1080 или 4K.   -  person KennyPowers    schedule 30.01.2013
comment
Я использую 853x480px, но для некоторых видео он выбирает только размер видео 260p. Я хотел бы заставить его использовать минимум 480p или предпочтительно HD!   -  person Primoz Rome    schedule 30.01.2013
comment
Сейчас я попытался изменить размер области fancybox, но встроенное видео по-прежнему имеет разрешение 260p, поэтому я не думаю, что это решение.   -  person Primoz Rome    schedule 30.01.2013


Ответы (1)


Хорошо, я нашел решение с помощью этого вопроса.

Код, который я использовал и работал с Fancybox 2:

$('.fancybox-media').fancybox({
    openEffect  : 'none',
    closeEffect : 'none',
    width : 1000,
    height : 563,
    helpers : {
        media: true
    },
    youtube : {
        autoplay: 1,
        hd: 1,
        vq: 'hd720'
    }
});

Ключевым моментом является часть youtube:... Вы также можете поставить vq: '1080', тогда качество видео будет 1080p.

person Primoz Rome    schedule 30.01.2013
comment
в helpers/jquery.fancybox-media.js нет такого параметра, как vq, поэтому он не может работать так, как вы хотели. Даже если вы настроите media helper hd = 1, это не сработает. Все, что вам нужно, это иметь ширину/высоту больше или равную ширине/высоте HD. Я не уверен, что можно заставить youtube hd. Если у вас есть живой пример, пожалуйста, дайте мне знать, так как мой не работает, как вы сказали. - person KennyPowers; 30.01.2013
comment
Это не совсем так. Я связался с создателем fancybox2, и он ответил мне, что я могу поместить параметры vq в медиа-помощник, и &vq=value будет добавлено к URL-адресу видео Youtube, который затем используется в атрибуте src iFrame. Приведенное выше решение определенно работает, я протестировал и реализовал его с последней версией Fancybox2 (с медиа-помощником). - person Primoz Rome; 30.01.2013
comment
не могли бы вы загрузить его куда-нибудь? jsfiddle наверное? Благодарность! - person KennyPowers; 30.01.2013
comment
Также проверьте developers.google.com/youtube/2.0/migration#vq_to_q и developers.google.com/youtube/player_parameters ... hd устарело и не работать в Chromeless Player - person JFK; 31.01.2013
comment
Вот jsfiddle jsfiddle.net/KwRaE/5, но он не работает, потому что не не хочу загружать внешние ресурсы (Fancybox csss/js). Если вы знаете, как это исправить, сделайте это, чтобы я мог опубликовать это в своем ответе. - person Primoz Rome; 31.01.2013