Тут є деякі оманливі та неправильні рекомендації, тож давайте підведемо підсумки, у чому полягає проблема та які рішення є.
TL; DR
Останні версії Ubuntu з 12.10 (Quantal) містять виправлену версію бібліотеки. Якщо ви все ще стикаєтесь із проблемами із синім відео (НЕ включаючи групи Blue Man ), ознайомтеся з цією відповіддю - ім’я бібліотеки Flash Player повинно бути libflashplayer.so
інакше libvdpau не застосовуватиме вирішення. Ви також можете подивитися на /etc/vdpau_wrapper.cfg
файл. Там ви можете відключити обхідні шляхи, застосовані libvdpau.
Якщо у вас є Oneiric (11.10) або Precision (12.04), встановіть виправлений libvdpau:
sudo add-apt-repository ppa:tikhonov/misc
sudo apt-get update
sudo apt-get install libvdpau1
В іншому випадку ви можете змінити бібліотеку Flash Player:
cd /usr/lib/flashplugin-installer || cd /usr/lib/adobe-flashplugin/
sudo perl -pi.bak -e 's/libvdpau/lixvdpau/g' libflashplayer.so
Прочитайте весь пост, перш ніж коментувати.
Проблема
Flash Player з версії 11.2 використовує апаратне прискорення відео на більшості платформ. На жаль, прискорення в Linux не просто не підтримується, а суттєво порушується. Flash Player замінює кольори у відео на таких умовах:
- Ви використовуєте досить новий графічний процесор Nvidia з підтримкою VDPAU .
- Ви використовуєте поточну версію бінарного драйвера Nvidia (старіші версії не підтримують VDPAU).
- У вас встановлений
libvdpau1
пакет.
- Програвач на сайті використовує Stage Video - тому впливають лише YouTube та кілька інших гравців.
Дивіться пояснення П’єра-Лупа Гриффайса з Nvidia .
Це не помилка у драйверах Nvidia. Nvidia знає про цю проблему, і вони вже створили рішення. На драйвер Nouveau, ймовірно, це не впливає, оскільки підтримка декодування відео ще не закінчена .
Це не помилка в libvdpau. libvdpau - просто обгортка, яка дозволяє відеоплеєрам використовувати розшифровку VDPAU (див . пояснення Стівена Уоррена ).
Це не конкретна помилка Ubuntu. Зачіпаються й інші розподіли, наприклад, Arch .
Помилка дуже можливо у Flash Player - хоча Adobe намагається звинувачувати Nvidia та некомпетентних користувачів. Про помилку Adobe було кілька звітів, усі вони були відхилені як "CannotReproduce":
Офіційного виправлення від Adobe не буде, оскільки Flash Player на базі NPAPI отримує лише патчі безпеки до 2017 року. Сподіваємось, до цього часу нам не знадобиться Flash Player.
Обхідні шляхи
Використовуйте libvdpau 0,5
Доступний в офіційних сховищах з Ubuntu 12.10 libvdpau 0.4.1-6
Ця версія libvdpau включає описане нижче Стівен Уоррен.
Дивіться оголошення про випуск
Встановлення виправленого libvdpau (належний патч)
Стівен Уоррен створив приємний патч для libvdpau , який виявляє Flash Player і застосовує обхідні способи лише для нього. Патч можна керувати за допомогою /etc/vdpau_wrapper.cfg
файлу.
Патч libvdpau виправляє кольори та дозволяє Flash Player використовувати VDPAU для апаратного накладання, що все ще надає деякі переваги продуктивності.
Щоб обгортка працювала, їй потрібно розпізнати використання Flash. Таким чином, бібліотека флеш повинна бути названа libflashplayer.so
і плагін обгортка повинна бути включена в Firefox (в about:config
, dom.ipc.plugins.enabled.libflashplayer.so
і dom.ipc.plugins.enabled
повинна бути встановлена true
).
Для точних (12.04) та Oneiric (11.10) ви можете встановити виправлений libvdapu з PPA Максима Тиконова, використовуючи наступні команди:
sudo add-apt-repository ppa:tikhonov/misc
sudo apt-get update
sudo apt-get install libvdpau1
Зміна повинна набути чинності після перезавантаження (або, можливо, раніше).
Не дозволяйте Flash Player знайти libvdpau
(Via Daniel Mario Vega на Launchpad )
Знайдіть libflashplayer.so
у вашій системі - для Ubuntu це або в тому /usr/lib/adobe-flashplugin/
випадку, якщо у вас встановлений adobe-flashplugin
пакет, або /usr/lib/flashplugin-installer/
в flashplugin-installer
пакет. Зверніться до веб-переглядача, about:plugins
якщо у вас виникли проблеми з пошуком файлу ( може знадобитися невелике налаштування у випадку Firefox ).
Виконайте такі команди - якщо припустимо, що ви встановили flashplugin-installer
або adobe-flasplugin
:
cd /usr/lib/flashplugin-installer || cd /usr/lib/adobe-flashplugin/
sudo perl -pi.bak -e 's/libvdpau/lixvdpau/g' libflashplayer.so
Зміна набирає чинності після перезавантаження браузера.
Це дозволить змінити бінарний Flash Player для пошуку неіснуючої бібліотеки "lixvdpau" замість "libvdpau". Тому він взагалі не намагатиметься використовувати презентацію VDPAU.
Команда створює резервну копію двійкового файлу libflashplayer.so.bak, якщо у вас виникли проблеми.
Вам потрібно запускати цю команду щоразу, коли є оновлення Flash Player, оскільки ваші зміни будуть перезаписані.
Завдяки цьому способу ви можете увімкнути прискорення HW, встановити libvdpau1, і це дуже просто застосувати порівняно з виправленням libvdpau.
Використовуйте Google Chrome з PepperFlash
Починаючи з версії 20, Google Chrome постачає Flash Player 11.3 «Pepper» із підтримкою PPAPI (замість 11.2 на NPAPI, що використовується Firefox та ін.). PepperFlash, схоже, не впливає на цю проблему, оскільки, здається, використовує повне апаратне прискорення.
PepperFlash можна використовувати з Chromium , але, на жаль, жоден інший браузер не підтримує PPAPI.
Вимкнути апаратне прискорення Flash Player
Найпростіше і найменш нав'язливе виправлення - відключити прискорення HW Flash Player у налаштуваннях дисплея - клацніть правою кнопкою миші на Flash, виберіть Налаштування…
Це, однак, не так просто, оскільки вікно "Налаштування" не відповідає у складеному менеджері (Compiz, стандарт Unity) і якщо браузер показує смуги прокрутки.
Щоб відключити прискорення обладнання, відкрийте будь-яке відео (наприклад, на YouTube) на повноекранному екрані, а потім відкрийте вікно Налаштування…. Або ви можете тимчасово перейти на Unity 2D або інший некомпозитний WM.
Зміна набирає чинності після оновлення.
Недолік: це вимикає прискорення HW у програвачі Flash навіть для векторних та растрових карт. Деякі Flash-ігри та фільми можуть мати більш низьку продуктивність та / або гіршу графіку.
Видаліть libvdpau
Якщо ви хочете, щоб увімкнено прискорення HW у програвачі Flash Player, ви можете видалити libvdpau із системи, що фактично не дозволяє Flash Player використовувати VDPAU.
Виконати:
sudo apt-get remove libvdpau1
Недолік: Настільні програвачі (наприклад, Totem та Mplayer) також не зможуть використовувати апаратне декодування відео. Це призведе до більшого використання процесора під час відтворення. Також може вплинути на ефективність відтворення відео (наприклад, скинуті кадри або повністю заморожена картинка), особливо якщо у вас більш повільний процесор і ви переглядаєте 1080p відео.
Увімкнути апаратне декодування відеоплеєра Flash Player
Більшість користувачів повідомили, що це призводить до дуже частих збоїв Flash Player (можливо, через проблеми з одночасністю декодування), але якщо вам пощастило, спробуйте.
Це також той самий метод, який використовував аддон Flash-Aid . Це не покращить її.
Виконати:
sudo mkdir /etc/adobe
echo -e "EnableLinuxHWVideoDecode=1" | sudo tee /etc/adobe/mms.cfg > /dev/null
Це створить файл /etc/adobe/mms.cfg із EnableLinuxHWVideoDecode=1
вмістом. Це єдиний спосіб, як насправді примусити Flash Player розшифрувати відео на GPU, і це офіційно не підтримується Adobe.
Щоб скасувати це, запустіть:
sudo rm /etc/adobe/mms.cfg
щоб видалити файл mms.cfg.
Ви можете спробувати покращити стабільність Flash Player за допомогою VDPAU_NVIDIA_NO_OVERLAY=1
змінної середовища, див. Форуми Nvidia .
Замініть програвачі Flash
(За рекомендацією bowser на Launchpad )
Використовуйте FlashVideoReplacer Firefox доповнення, Literna Mágica або інше рішення для заміни стандартних гравців в Flash , з вбудованим відео плеєр плагін (як тотем - totem-mozilla
- або VLC - mozilla-plugin-vlc
). Немає Flash Player, немає проблем.
Patch libvdpau (vdpau_trace hack)
Існує неофіційний патч від Nvidia, який виправляє помилку Flash Player на рівні libvdpau, взломивши vdpau_trace.
Зауважимо, що вищезгаданий пластир Стівена Уоррена технічно перевершує і його слід використовувати замість цього.
Не обхідні шляхи
Наступні рішення працюватимуть лише частково або вони можуть мати деякі застереження.
Увімкніть HTML5 на YouTube
Увімкнення програвача HTML5 на веб- сайті http://www.youtube.com/html5 не працюватиме з усіма відео; деякі відео YouTube просто недоступні для програвача HTML5 (наприклад, через відсутність підтримки реклами). Однак відео HTML5 є приголомшливим, і ви все одно повинні ним користуватися.
Перехід на Flash Player 11.1
У ПП 11.1 відомі вразливості, які зафіксовані в 11.2. Якщо ви хочете ризикувати, то ви повинні знати, у що ви потрапляєте.
Якщо ви все ще хочете знизити версію, спробуйте Flash Player 10.3, який все ще підтримується - ви можете отримати його в архіві Adobe
Перехід на інший графічний процесор
Здається, що дуже мало процесорів Nvidia не постраждало, зокрема Quadro 2000 та GeForce GT 430. Обидва мають набір функцій VDPAU C , але в іншому випадку це впливає і на більшість наборів графічних процесорів C. Якщо у вас є будь-який з вищезгаданих графічних процесорів, повідомте нам на Launchpad, чи впливає ця помилка на вас.