ghostind
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Народ в мире зашевелился по поводу исчезновения флеша на YouTube и на github.com тут же была создана тема "Aggressive Flash no longer works due to YouTube change today" Один из участников темы (dinsdalepiranha) выложил пример скрипта https://github.com/YePpHa/YouTubeCenter/issues/2436#issuecomment-318830246 работающий совместно (параллельно) со скриптом YouTube Center (https://github.com/YePpHa/YouTubeCenter/wiki/Developer-Version). В самом скрипте видно, что "watch?v=" в реальном адресе загружаемого ролика подменяется на "embed/". (А я вчера подменял ручками на "v/"). На YouTube Help Forum пользователь JAOOTPYKHA пошел дальше и усовершенствовал код скрипта (на основе сообщений Alexander Nartov и Mardus). Его тело скрипта тут: https://productforums.google.com/d/msg/youtube/CUaTWvKhAuE/Efk79IhtAwAJ Там же из сообщений на YouTube Help Forum видно, что юзер dinsdalepiranha, на скрипт которого я ссылаюсь в начале этого поста, оказывается использовал всего лишь первоначальный код от Alexander Nartov. Но это и не сильно важно в конечном итоге )) У кого установлен YouTube Center как в виде расширения, так и в виде скрипта могут тоже пробовать данный скрипт - работает. Нужно только выбрать в Панели управления YouTubeCenter на вкладке Плейер ->Тип плейера -> Aggressive Flash, а в Greasemonkey установить скрипт, речь о котором ниже. Но вернемся к Pale Moon без YouTubeCenter. Режим Flash мы будем фиксировать с помощью HTML5 Media Tuner, выбрав при нажатии на иконку расширения режим "Без HTML5" (это, естественно, проделывается на странице YouTube). Затем копируем скрипт приведенный ниже в буфер обмена. Нажимаем на стрелочку Greasemonkey (правее обезьянки) и выбираем "Создать скрипт". В открывшемся окне нажимаем в самом низу кнопку "Использовать скрипт из буфера обмена". Скрипт вставится, нажимаем слева вверху окна на "Сохранить" и закрываем окно. Перезагружаем страницу с роликом YouTube. У меня флеш работает. (Greasemonkey версии 3.12.1beta7). Ну и теперь вариант скрипта от juneyourtech https://github.com/juneyourtech/GM_YT/blob/master/uTube_force_Flash.user.js (флеш загружается стабильно - после некоторой паузы с показом проигрывателя HTML5, в котором сообщается об отсутствии возможности загрузить видео): // ==UserScript== // @name uTube Force Flash // @namespace YT_flash_force // @description Force Flash player embed. Note, that the code might be buggy, and might cause conflicts with Flashblock. Acknowledgements to Alexander Nartov for providing the code, and to Victor Desfe and JAOOTPYKHA for improvements to it. This userscript requires, that HTML5 playback is switched off in about:config // @updateURL https://github.com/juneyourtech/GM_YT/raw/master/uTube_force_Flash.user.js // @version 0.2.2 // @icon http://youtube.com/favicon.ico // @include *.youtube.com/watch* // @grant GM_addStyle // ==/UserScript== // Notes: // * is a wildcard character // .tld is magic that matches all top-level domains (e.g. .com, .co.uk, .us, etc.) /* ____80_character_separator________________________________________________ */ /* Code to enable Flash Player, with huge thanks to Alexander Nartov for the bulk of the code, and Victor Desfe for the showinfo/autoplay line. Additional credits: JAOOTPYKHA for fixing height/width issues. • Errata: Make sure you have HTML5 switched off for this to work. */ window.setTimeout(function() { var embedFrame = document.createElement("iframe"); embedFrame.src = location.href.replace(/watch\?v=([^&]*).*/, "embed/$1"); embedFrame.src = embedFrame.src + ("?showinfo=0"); embedFrame.style = "width: 100%; height: 100%;"; var player = document.getElementById("player-api"); // grab the current dimensions of the player var wid = player.clientWidth; var hei = player.clientHeight; player.innerHTML = ""; // set the embedded player's dimensions to proper size embedFrame.style.height=hei+'px'; embedFrame.style.width=wid+'px'; player.appendChild(embedFrame); unsafeWindow.spf.dispose(); }, 3000); //next to showinfo: &autoplay=1 //disable static in player area (somewhat resource-intensive) GM_addStyle("DIV.ytp-error CANVAS.ytp-tv-static {display:none;}"); ----------------------------------------- Кому нужен автоплей + качество hd720 добавьте к коду две строчки: // change quality to 720p embedFrame.src = embedFrame.src + ("&autoplay=1&vq=hd720"); Видео будет воспроизводиться само (без нажатия на кнопку посередине экрана) и с качеством hd720. Не забываем, что для перехода в полноэкранный режим просмотра необходимо, чтобы в HTML5 Media Tuner был обязательно включен режим "Без HTML5". | Всего записей: 37 | Зарегистр. 28-04-2017 | Отправлено: 09:34 30-07-2017 | Исправлено: ghostind, 15:00 31-07-2017 |
|