Как обрезать черные полосы или увеличить на Youtube и других сайтах Видео?

9530
cloneman

Многие настольные программы (VLC, MPC) имеют возможность «увеличивать», «обрезать черные полосы» или обрезать до определенного соотношения сторон. Как мы можем сделать это в полноэкранном режиме на Youtube или других сайтах Flash Video?

Я зритель, а не создатель / издатель видео.

iOS может сделать это (двойное нажатие для увеличения, которое удаляет черные полосы, глубина масштабирования не настраивается).

afaik, Настольные компьютеры (и устройства Android), не могут сделать это на лету. Единственный «обходной путь», который я нашел, - это F11 и масштабирование всей веб-страницы - в основном фальшивый полноэкранный режим и масштабирование веб-страницы сверх размера экрана.

Пример использования: просмотр 4: 3 флэш-видео из Интернета на широкоэкранном мониторе.

Поиск всех креативных решений (при необходимости доступ к YouTube с использованием небраузеров для масштабирования)

0
[Moyea Youtube Player] (http://www.softpedia.com/get/Multimedia/Video/Video-Players/Moyea-Youtube-Player.shtml) позволяет воспроизводить видео без браузера и имеет некоторую поддержку для сохранения. [Minitube] (http://www.addictivetips.com/windows-tips/minitube-for-windows-brings-youtube-player-without-flash-to-desktop/) также делает это - вы действительно потратили какое-то время на исследование этот? Dave 11 лет назад 1
Это интересные замены браузера, но я не вижу функции для увеличения любого из них с целью удаления черных полос. cloneman 11 лет назад 0

2 ответа на вопрос

2
Dave

Посмотрите это в Firefox - установите Greasemonkey и добавьте этот скрипт . Позволяет переключаться между соотношениями (4: 3 и 16: 9).

Код обновляется с этого (для Firefox и Chrome)

// ==UserScript== // @name Youtube Aspect Remake // @description Adds buttons to toggle 4:3 and 16:9 aspect ratios on youtube, probs to the great work of scupizzaboy who mades this script. I've just changed the buttons to make them more adapt at the new youtube design. Original Script: http://userscripts.org/scripts/show/101165 // @namespace NoXPhasma // @include http://youtube.*/* // @include http://*.youtube.*/* // @include https://youtube.*/* // @include https://*.youtube.*/* // @version 9 // @date 2012-15-03 // ==/UserScript==  function setAspectWide() { document = unsafeWindow.document; var player = document.getElementById('movie_player'); var flashvars = player.getAttribute('flashvars').split('&'); for (var i = 0; i < flashvars.length; i++) { if (flashvars[i].indexOf('keywords') == 0) { var keywords = flashvars[i].split('=')[1].split(','); var found = false; for (var j = 0; j < keywords.length; j++) { if (decodeURIComponent(keywords[j]) == 'yt:stretch=4:3') { keywords[j] = encodeURIComponent('yt:stretch=16:9'); found = true; } } if (found == false) { keywords.push(encodeURIComponent('yt:stretch=16:9')); } flashvars[i] = 'keywords=' + keywords.join(','); } } player.setAttribute('flashvars', flashvars.join('&')); player.src += ""; }  function setAspectNarrow() { document = unsafeWindow.document; var player = document.getElementById('movie_player'); var flashvars = player.getAttribute('flashvars').split('&'); for (var i = 0; i < flashvars.length; i++) { if (flashvars[i].indexOf('keywords') == 0) { var keywords = flashvars[i].split('=')[1].split(','); var found = false; for (var j = 0; j < keywords.length; j++) { if (decodeURIComponent(keywords[j]) == 'yt:stretch=16:9') { keywords[j] = encodeURIComponent('yt:stretch=4:3'); found = true; } } if (found == false) { keywords.push(encodeURIComponent('yt:stretch=4:3')); } flashvars[i] = 'keywords=' + keywords.join(','); } } player.setAttribute('flashvars', flashvars.join('&')); player.src += ""; }  function fixWindowBox() { document = unsafeWindow.document; var player = document.getElementById('movie_player'); var flashvars = player.getAttribute('flashvars').split('&'); for (var i = 0; i < flashvars.length; i++) { if (flashvars[i].indexOf('keywords') == 0) { var keywords = flashvars[i].split('=')[1].split(','); var found = false; for (var j = 0; j < keywords.length; j++) { if (decodeURIComponent(keywords[j]) == 'yt:crop=16:9') { found = true; } } if (found == false) { keywords.push(encodeURIComponent('yt:crop=16:9')); } flashvars[i] = 'keywords=' + keywords.join(','); } } player.setAttribute('flashvars', flashvars.join('&')); player.src += ""; }  var target = document.getElementById('watch-actions');   var group = document.createElement('span'); group.setAttribute("class", "yt-uix-button-group"); target.appendChild(group);  var button = document.createElement('input'); button.setAttribute("class", "start yt-uix-tooltip-reverse yt-uix-button yt-uix-button-default yt-uix-tooltip"); button.setAttribute("style", 'width:17px;height:2.77em;padding:0px 6px'); button.setAttribute("value", '4:3'); button.setAttribute("title", "Stretch to 4:3"); button.addEventListener('click', setAspectNarrow, false); group.appendChild(button);  var button = document.createElement('input'); button.setAttribute("class", "middle yt-uix-tooltip-reverse yt-uix-button yt-uix-button-default yt-uix-tooltip"); button.setAttribute("style", 'width:24px;height:2.77em;padding:0px 6px'); button.setAttribute("value", '16:9'); button.setAttribute("title", "Stretch to 16:9"); button.addEventListener('click', setAspectWide, false); group.appendChild(button);  var button = document.createElement('input'); button.setAttribute("class", "end yt-uix-tooltip-reverse yt-uix-button yt-uix-button-default yt-uix-tooltip"); button.setAttribute("style", 'width:24px;height:2.77em;padding:0px 6px'); button.setAttribute("value", 'Zoom'); button.setAttribute("title", "Fix Windowboxing"); button.addEventListener('click', fixWindowBox, false); group.appendChild(button); 
Интересно. У меня была другая версия этого скрипта, в которой не было почтового ящика zoom / fix. Я собираюсь попробовать это на следующей неделе; хотя он не допускает точного масштабирования, так что это подход «все или ничего». cloneman 11 лет назад 0
-1
A.Chandrasekaran
// Youtube has made some changes and old code does not work. This update fixes that. // // Youtube Aspect GreaseMonkey JavaScript; updated: 19-SEP-2014 (ACS) // // ==UserScript== // @name Youtube Aspect // @description Adds buttons to toggle 4:3 and 16:9 aspect ratios on youtube // @namespace scupizzaboy - "fixed" by Kocayine // @include http://youtube.*/* // @include http://*.youtube.*/* // @include https://youtube.*/* // @include https://*.youtube.*/* // @grant none // ==/UserScript==  function setAspectWide() { var player = document.getElementById('movie_player'); var flashvars = player.getAttribute('flashvars').split('&'); for (var i = 0; i < flashvars.length; i++) { if (flashvars[i].indexOf('keywords') == 0) { var keywords = flashvars[i].split('=')[1].split(','); var found = false; for (var j = 0; j < keywords.length; j++) { if (decodeURIComponent(keywords[j]) == 'yt:stretch=4:3') { keywords[j] = encodeURIComponent('yt:stretch=16:9'); found = true; } } if (found == false) { keywords.push(encodeURIComponent('yt:stretch=16:9')); } flashvars[i] = 'keywords=' + keywords.join(','); } } player.setAttribute('flashvars', flashvars.join('&')); player.parentNode.innerHTML = player.parentNode.innerHTML; }  function setAspectNarrow() { var player = document.getElementById('movie_player'); var flashvars = player.getAttribute('flashvars').split('&'); for (var i = 0; i < flashvars.length; i++) { if (flashvars[i].indexOf('keywords') == 0) { var keywords = flashvars[i].split('=')[1].split(','); var found = false; for (var j = 0; j < keywords.length; j++) { if (decodeURIComponent(keywords[j]) == 'yt:stretch=16:9') { keywords[j] = encodeURIComponent('yt:stretch=4:3'); found = true; } } if (found == false) { keywords.push(encodeURIComponent('yt:stretch=4:3')); } flashvars[i] = 'keywords=' + keywords.join(','); } } player.setAttribute('flashvars', flashvars.join('&')); player.parentNode.innerHTML = player.parentNode.innerHTML; }  var target = document.getElementById('watch8-secondary-actions');  var button = document.createElement('input');  button.name = 'setAspectNarrow';  button.setAttribute("class", "start yt-uix-tooltip-reverse yt-uix-button yt-uix-button-default yt-uix-tooltip"); button.type = 'button';  button.value = '4:3';  button.addEventListener('click', setAspectNarrow, false); if (target != null) target.appendChild(button);  var button = document.createElement('input');  button.name = 'setAspectWide';  button.setAttribute("class", "start yt-uix-tooltip-reverse yt-uix-button yt-uix-button-default yt-uix-tooltip"); button.type = 'button';  button.value = '16:9';  button.addEventListener('click', setAspectWide, false); if (target != null) target.appendChild(button); 
Хотя этот блок кода может ответить на этот вопрос, было бы лучше, если бы вы могли объяснить, почему это происходит. DavidPostill 9 лет назад 0
YouTube добавил дополнительную кнопку («... Еще»), и эти кнопки Aspect Ratio должны быть перемещены за пределы этой кнопки. Сегодня исправлена ​​ошибка в первых двух строках комментариев, чтобы она работала, и несколько строк упростили. A.Chandrasekaran 9 лет назад 0
Огромное спасибо. Можете ли вы добавить 5: 4, пожалуйста? 9 лет назад 0