Разработчики Chromium пояснили (https://codereview.chromium.org/176883018/#msg6) почему, поддержка привлечения GPU для ускорения декодирования видео не может быть по умолчанию включена в Chrome/Chromium для Linux. В качестве основной причины упоминаются проблемы с оценкой качества GPU-драйверов в условиях большого разнообразия дистрибутивов Linux. Например, один и тот же драйвер может стабильно работать в окружении одного дистрибутива, но демонстрировать проблемы в окружении другого.
Отслеживание и проверка всех возможных конфигураций и поддержание чёрного списка проблемных систем требует значительных усилий и превращается для разработчиков в кошмар, поэтому проще оставить поддержку аппаратного ускорения декодирования в категории экспериментальных возможностей, для которых не гарантируется стабильность и которые пользователи могут включить на свой страх и риск. Предложение ввести вместо чёрного списка белый список с заведомо работающими конфигурациями также не нашло отклика среди разработчиков Chromium из-за опасения, связанного с общим состоянием поддержки видеоакселерации в Linux.URL: http://linux.slashdot.org/story/14/03/04/1926233/google-wont...
Новость: http://www.opennet.me/opennews/art.shtml?num=39242
Это не нужно. Аппаратное ускорение имеет смысл только на мобильных девайсах для экономии батарейки (хотя на самом деле ещё неизвестно что будет больше жрать - CPU или GPU), на десктопах же уже давно FullHD без проблем раскодируется на одном ядре, это безпроблемней, проще и безопаснее.
> а десктопах же уже давно FullHD без проблем раскодируется на одном ядре, это безпроблемней, проще и безопаснее.на обычных ноутбуках -- тоже. [ну то есть недобуки -- в расчёт брать не будем если].
не больше чем 15%~30% нагрузки на одно ядро.
> не больше чем 15%~30% нагрузки на одно ядро.На i7-3632QM CPU @ 2.20GHz запросто отжирает 100% одного ядра. Само декодирование действительно не так много ест, зато масштабирование и какой-то странный способ рисования картинки на пару отжирают всё время.
Используйте нормальные плееры с эффективным масштабированием.
> Используйте нормальные плееры с эффективным масштабированием.Читайте текст новости. Речь про браузер. Чисто софтовую и не оптимальную реализацию плеера в браузере сравнивают с standalone видеоплеерами, которые как раз и используют GPU для ускорения ресурсоёмких операций. Издавна для этого использовался XVideo, но по разным причинам в браузере его использовать не выйдет, а другие технологии они не хотят включать. О том и новость.
> На i7-3632QM CPU @ 2.20GHz запросто отжирает 100% одного ядра. Само декодирование действительно не так много ест, зато масштабирование и какой-то странный способ рисования картинки на пару отжирают всё время.может быть Google Chrome действительно так делает..
...но Firefox например -- вот какие показывае результаты HD-видео воспроизведения с Ютуба на ноутбуке [flash-player не установлен, и какие-либо расширения -- тоже. всё по умолчанию]:
http://i2.minus.com/i5Z2EOeWti2fP.png
http://i7.minus.com/ibs7rqztaqw8DD.pngноутбучный процессор: Intel i3 Sandy Brigde [то есть процессор бюджетного ноутбука].
(да, на данном видео оказалась загрузка одного ядра -- действительно больше чем 15~30% (то есть ваша правда) .. но всё равно это не такая уж прям фатальная ситуация..)
а с учётом всех ядер процессора -- общая средняя загрузка всей системы -- 17~18% (см. опять скриншоты "i5Z2EOeWti2fP.png" и "ibs7rqztaqw8DD.png" ).
Попробовал и я, в Iceweasel 27. В устоявшемся режиме одно ядро грузится процентов на 50. Во время рекламы переваливает за сотню. Но то же видео во Flash-плеере отъедает процентов 15, а в Mplayer'е ещё меньше. Было бы здорово, если HTML5 Video достигло по потреблению хотя бы Flash плеера.> а с учётом всех ядер процессора
Мне не нравится такая арифметика. У меня с учётом HT 8 ядер. Получается, что 100% загрузка одного -- это всего 12,5%.
> Мне не нравится такая арифметика. У меня с учётом HT 8 ядер.
> Получается, что 100% загрузка одного -- это всего 12,5%.ну если у тебя комп не нагревается -- то что может не нравиться-то? :-)
> ну если у тебя комп не нагревается -- то что может не
> нравиться-то? :-)Греется. Причём хоть и ненамного больше, но хватает, чтобы вентилятор переходил на высокие обороты.
> На i7-3632QM CPU @ 2.20GHz запросто отжирает 100% одного ядра.Видео? С ютуба?
> какой-то странный способ рисования картинки
Xorg strikes back?
>> На i7-3632QM CPU @ 2.20GHz запросто отжирает 100% одного ядра.
> Видео? С ютуба?Наврал немного. За 100% только реклама переваливает, а видео в среднем 50% ест.
>> какой-то странный способ рисования картинки
> Xorg strikes back?Не вникал.
> Xorg strikes back?если в кране нет воды — значит, выпили иксы!
>>на десктопах же уже давно FullHD без проблем раскодируется на одном ядреСказки то не рассказывай. У меня целерон 2х1100Мгц (санди бридж) Продолжать?
Без лагов фильмы больше 10 гигов проигрывает только vlc, в вебе тормозит все выше 720p влючительно с полной загрузкой обоих ядер (но это косяк флеша).
> Сказки то не рассказывай. У меня целерон 2х1100Мгц (санди бридж) Продолжать?Простите, я возможно непонятно выразился. Я имел в виду одно ядре _процессора_, а не убогого калькулятора.
> в вебе тормозит все выше 720p влючительно с полной загрузкой обоих ядер (но это косяк флеша)https://github.com/i-rinat/libvdpau-va-gl/blob/master/doc/kn...
>>>на десктопах же уже давно FullHD без проблем раскодируется на одном ядре
> Сказки то не рассказывай. У меня целерон 2х1100Мгц (санди бридж) Продолжать?
> Без лагов фильмы больше 10 гигов проигрывает только vlc, в вебе тормозит
> все выше 720p влючительно с полной загрузкой обоих ядер (но это
> косяк флеша).Вообще, общий размер файла для плеера значения большого иметь не должен. Хотя могут конечно быть какие-то ограничения. Если, скажем, где-то в 32 разрядной переменной хранится текущая позиция в файле, то... 4 Гб максимум. Или даже 2.
Собственно, декодирование видео хорошо работало (и работает) на старых intel с частотой порядка 400MHz (ядро, разумеется, одно). Проверял с видео DVD (MPEG2, PAL 720x576, с масштабированием к правильным пропорциям (аппаратно)). Загрузка CPU порядка 80% ... Linux, mplayer, cvidix (без X, в консоли, можно даже текстовой или fb, графика хорошая - видео оверлей). Звук, разумеется, тоже проигрывался :-) samplerate 48000 , 2 channels. Аппаратного декодирования на видеоплате, естественно, не было.
Спрашивается, чем грузит ядра идиотская поделка под названием firefox? И прочий флеш. С помощью утубы >:-)
Ну и как правило обычно я в таких случаях для регулярного так сказать просмотра ставил режим декодирования в половинном разрешении (360x288) - всё-таки немного меньше загружает CPU, а особых дефектов я почему-то не замечал... :-)
Можно и с X сервером вообще...
> Собственно, декодирование видео хорошо работало (и работает) на старых intel с частотой
> порядка 400MHz (ядро, разумеется, одно). Проверял с видео DVD (MPEG2, PAL
> 720x576, с масштабированием к правильным пропорциям (аппаратно)).О господи. Ты бы ещё с Intel Indeo загрузку процессора проверял.
Вот же ты дурак-дураком, а...
На блобе нвидии пусть включают сразу. А амдшники ссзб.
всего навсего нужно сделать ЧЕКБОКС, который по умолчанию ВЫКЛЮЧЕН. Кому надо, поставят хромиум и САМИ У СЕБЯ ВКЛЮЧАТ, если будет глючить, то ВЫКЛЮЧАТ ТОЖЕ САМИ
> всего навсего нужно сделать ЧЕКБОКС, который по умолчанию ВЫКЛЮЧЕН. Кому надо, поставят
> хромиум и САМИ У СЕБЯ ВКЛЮЧАТ, если будет глючить, то ВЫКЛЮЧАТ
> ТОЖЕ САМИЭто слишком просто в наше то время. Это уже не современный подход к разработке
Да! Нужно вкорячть в браузер бенчмарк проверяющий, при каждом запуске, все возможности системы.
>> всего навсего нужно сделать ЧЕКБОКС, который по умолчанию ВЫКЛЮЧЕН. Кому надо, поставят
>> хромиум и САМИ У СЕБЯ ВКЛЮЧАТ, если будет глючить, то ВЫКЛЮЧАТ
>> ТОЖЕ САМИ
> Это слишком просто в наше то время. Это уже не современный подход
> к разработкену я-то не в курсе современных тенденций в разработке анальных зондов
Это слишком просто с точки зрения реализации, но слишком сложно для пользователя. Вот так должна звучать формулировка в ее современной трактовке.
Верно. Современному пользователю доверять включение чекбокса неразумно, а то мало ли чего.
У этих амдешников с открытым драйвером radeon видео html5 в firefox работает через gstreamer vdpau.
А что так? В пакете с Google Chrome лежит libffmpegsumo.so, судя по названию она используется для мультимедиа контента. Разве трудно собрать FFMPEG с поддержкой VDPAU и VAAPI?
Ну так собери. Проблема в мэйнтейне бинарных пакетов.
> Ну так собери. Проблема в мэйнтейне бинарных пакетов.Через dlopen(). Так поступает Skype. Не во всех дистрибутивах Linux есть libpulse.so.0, поэтому зависимости от этой библиотеки нет. dlopen() проверяет есть ли она в системе, если есть то звук идёт через неё, если нет то через libasound2. Skype же не Open Source, и его не пересобрать для избавления от ненужной зависимости. Google Chrome хоть и не проприетарный, но для бинарных сборок было бы неплохо сделать проверку на наличие в системе libvdpau или libva.
Ещё мне нравится libsdl с официального сайта - вообще зависимостей нет, всё через dlopen()! Ну то есть нет иксов - будет работать через directfb, и наоборот. А бинарники из дистрибутивов имеют длинный список зависимостей, так как в бинарных дистрибутивах их компилируют с максимально большим количеством включенных опций. Если в системе нет directfb - всё, не поиграешь. EGL для драйвера NVIDIA скорее всего будет собран так же, чтобы работать и в иксах, и в Wayland.
Как раз таки проприетарный! А вот Chromium нет...
>Google Chrome хоть и не проприетарный
А подход — да.
Хромиум (в подавляющем большинстве) пишут те, кто собирает именно хром.
Собсно потому и сабж имеет место.
Перевожу — им нужно именно динамическое определение возможностей целевой системы, а не статическое (собрал сам с чем тебе надо). А это сложно. Потому нафиг.
Разработчики Flash Player-а это "осилили", версия 11.2 пользуется libvdpau и успешно ускоряет HD-видео на NVIDIA. На компьютерах пользователей ATi/AMD и Intel может не быть libvdpau, но флеш работает. И это классно, и редко в какой программе бывает. Обычно программы выдают ошибку "не найдена зависимость" и не стартуют.А хотя libvdpau притягивают по зависимостям мультимедиа-кодеки, и вряд ли найдётся такой линукс, где этой библиотеки нет. Поэтому приведу ещё пример. В твоей системе есть libhal? Уверен что нет - в новых дистрибутивах Linux вместо него udev. Flash Player использует libhal для вывода DRM-контента, но почему-то не падает и не ругается на то что библиотеки нет.
Вот бы ещё в Google Chrome сделали всё так же... Причём не только VDPAU, но ещё и VAAPI. И чтобы как флеш плеер, не валилось на системах, где какой-то одной библиотеки нет. Нереального в этом нет ничего: во-первых флеш, во-вторых ffmpeg всё давно умеет, даже не надо писать или накладывать патчи.
> Разработчики Flash Player-а это "осилили"но выключили декодирование, так как даже на nVidia оно было нестабильным. Его нужно руками включать.
а меня вообще поражает с каких это пор линуксоидов дегенератами-вантузятниками считают?
кому надо, тот поставит, настроит, доустановит,… была б сама возможность предусмотрена.
спасибо разрабам (или кто там рулит то?) г3, подход как к олигофренам достал уже.
> Разработчики Flash Player-а это "осилили",И что? Понятно же, что проигрывание роликов — это как раз основное его применение.
Чего о хроме не скажешь.
Я ж написал уже — лень им этим заниматься, вот и всё.
> На компьютерах пользователей ATi/AMD и Intel может не быть libvdpau, но флеш работает.Ну я вон смотрю через
[I] x11-libs/libvdpau-va-gl
Available versions: (~)0.1.0^t[1] (~)0.2.1^t[2] (**)9999^t[1] (**)9999[2] {test}
Installed versions: 9999^t[1](19:59:36 28.02.2014)
Homepage: https://github.com/i-rinat/libvdpau-va-gl/
Description: VDPAU driver with VA-API/OpenGL backend.
Отлично работает. А почему не падает даже без неё? Так libvdpau_softpipe.so жеж.
# ls /usr/lib64/vdpau
libvdpau_nouveau.so libvdpau_nouveau.so.1.0.0 libvdpau_softpipe.so.1 libvdpau_trace.so libvdpau_trace.so.1.0.0 libvdpau_va_gl.so.1
libvdpau_nouveau.so.1 libvdpau_softpipe.so libvdpau_softpipe.so.1.0.0 libvdpau_trace.so.1 libvdpau_va_gl.so
> Обычно программы выдают ошибку "не найдена зависимость" и не стартуют.Это когда ставишь уже скомпилированную программу, рассчитанную на статическую линковку.
При этом с битыми зависимостями.
Но тут вопрос тоньше — даже если и зависимости есть, и/или динамическая линковка, и библы присутствуют, это не значит, что это всё дело не показывает тебе пустой квадрат.
> В твоей системе есть libhal? Уверен что нет - в новых дистрибутивах Linux вместо него udev. Flash Player использует libhal для вывода DRM-контента, но почему-то не падает и не ругается на то что библиотеки нет.В моей системе есть это:
media-libs/hal-flash
Available versions: 0.2.0_rc1
Homepage: http://github.com/cshorler/hal-flash http://build.opensuse.org/package/show/devel:openSUSE:Factor...
Description: A libhal stub library forwarding to UDisks for www-plugins/adobe-flash to play DRM contentзыж
к чему это я?
пусть юзают ffmpeg/gstreamer/этк и не морочают людям голову.
раз это опенсорсный проект, то почему нет?
А-а-а-а! Так вот где собака порылась то!
Проект то открытый, а подход проприетарный.
windows way. Таким образом при отсутствии контроля можно получить dll hell. Но по большей части меньше геморроя.
Кстати говоря, если кто-нибудь ещё не знает. libvdpau-va - библиотека для того видеокарта ATi/AMD или Intel заработала с VDPAU. Она расчитана на Flash Player, но вообще может работать ещё на чём-нибудь. https://www.linux.org.ru/forum/development/8868495Устанавливаем так. Устанавливаем -devel версии пакетов VAAPI и VDPAU, компилируем программу, запускаем браузер:
VDPAU_DRIVER=va_gl LIBVA_DRIVER_NAME=i965 firefox
если вспомнить все твои комментарии (на всех форумах) -- то мне даже страшно представить какой у тебя там на твоём компьютере программный Ад происходит..
У меня мало программ. Нет ни одной CAD, например. Нет нормального 3D-редактора. Нет аналогов программ ABBYY - FineReader и Lingvo. Нет нормальной программы для вёрстки - Scribus неполноценен. Мало эмуляторов - только сега, Playstation 1 и 2, амига и спектрум. Знаю людей, которые гораздо лучше меня разбираются в том, какие программы есть для линукса. Смотрят Freshmeat, Phoronix, Sourceforge и Github, а я плохо знаю английский язык для этого.
> libvdpau-vaМда, неудачное название получилось, плохо гуглится, да и постоянно обрезают. Надо было придумать что-нибудь в духе "stravakob".
эта библиотека есть в репах ubuntu: http://packages.ubuntu.com/ru/trusty/libvdpau-va-gl1
> эта библиотека есть в репах ubuntu: http://packages.ubuntu.com/ru/trusty/libvdpau-va-gl1Или в "oibaf PPA". Последний, кстати, работает и с дебианом, как ни странно.
у хрома нет апаратного ускорения и под виндой. хотя может быть он просто сам по себе проц сильно грузит. например амд e-350 даже 720 валит с ног страшной нагрузкой. в хроме. а вот тот же 1080 уже в эксплорере 10 и 70% по ядрам не даёт.
гугль расписался в немощи
> гугль расписался в немощиДа какое там ускорение... Даже веб-фоторедактор в г+ не заработает без активации флага chrome://flags/#ignore-gpu-blacklist
Это линукс не готов для аппаратного ускорения. В остальных системах все давно работает из коробки а тут до сих пор какие-то сношения с костылями нужны. Причем сношения могут помочь а могут и нет.
Смотри анонимный комментарий выше — в венде тоже нету. Кстати, фирефокс, насколько я заметил, на амд е350 играет 720п легко, не напрягая проц. Просто ты онанимный болтун-вантузятник, не видавший линукса.
> Смотри анонимный комментарий выше — в венде тоже нету. Кстати, фирефокс, насколько
> я заметил, на амд е350 играет 720п легко, не напрягая проц.
> Просто ты онанимный болтун-вантузятник, не видавший линукса.Зато под вендой заводится на раз-два. А какие нужно проводить обряды и какие мантры зачитывать чтобы оно завелось под линуксом? Хотя бы ютуб. vdpau не пашет, HWAcccelerateEnable = 1 (или как его там, забыл уже) в настройках флэша тоже не дает результата. В статистике созерцаю software video decoding и video rendering. На 1080p в динамичных сценах лютый фреймдроп, мой c2d e8400 загружен почти на 100%. Дрова на невидию нормальные, блоб свежий.
То-то те китайские HTPC-коробочки, в которых стоят чипсеты, хоть как-то поддерживающие Linux (типа AMLogic) за свои $100 вовсю крутят 1080p под XBMC своими VPU. А Intel NUC стоит втрое дороже и без RAM
> Это линукс не готов для аппаратного ускорения. В остальных системах все давно
> работает из коробкиЯ и вижу! В виндах WebGL файрфокса блеклистит комплектные системные драйвера, потому что глюк на глюке и глюком погоняет. И даже "апдейт" через винапдейт ставит какую-то некромансию, которая тоже в блеклисте. Как минимум для интелского интеграта. Надо самому топать на сайт интеля, качать оттуда, и вот тогда наконец WebGL заработает и в винде. Изкоробочное ускорение. С кучей багов, бэть...
а в чем сбсна сырбор.. залез да включил. кому надо знают где, кому не надо не знают про линукс вообще
РЕБЯТА ПОДСКАЖИТЕ, как включить GPU-ускорение в firefox??
У МЕНЯ КАК ТО БЫЛА КАКАЯ ТО ВЕРСИЯ, ПО УМОЛЧАНИЮ ОТОБРАЖАЛСЯ ФРАПС В firefox, А СЕЙЧАС НЕТ, УЖЕ ВСЕ ПЕРЕПРОБЫВАЛ В about:config НИЧО НЕ ПОМАГАЕТ...
http://old.computerra.ru/gid/rtfm/browser/354055/
> РЕБЯТА ПОДСКАЖИТЕ, как включить GPU-ускорение в firefox??
> У МЕНЯ КАК ТО БЫЛА КАКАЯ ТО ВЕРСИЯ, ПО УМОЛЧАНИЮ ОТОБРАЖАЛСЯ ФРАПС
> В firefox, А СЕЙЧАС НЕТ, УЖЕ ВСЕ ПЕРЕПРОБЫВАЛ В about:config НИЧО
> НЕ ПОМАГАЕТ...Какого чёрта ты тут орёшь?
layers.acceleration.*
включено, но фрапс не появляется
Вариант сделать галочку в настройках не рассматривался?
У GPU больше задержки чем у CPU, GPU в хроме можно врубать на больших фрагментах данных
тока про 4k не надо забывать
>драйвер может стабильно работать с одной видеокартой в окружении одного дистрибутива, но демонстрировать проблемы в окружении другого дистрибутиваВся суть экосистемы линукса
> Вся суть экосистемы линуксачеловек, который употребляет слово «экосистема» в таком контексте, обычно записной мудак.
Мне такая аналогия кажется вполне уместной. А можешь поподробнее мысль раскрыть?
чисто эмпирические наблюдения. есть некоторое количество слов и выражений, употребление которых даёт почти единичную вероятность того, что человек — мудак.также намекаю, что я не одинок в этом мнении. не надо разговаривать речекряком.