LINUX.ORG.RU

Сообщения ZenitharChampion

 

Объясните про старые процессоры AMD

Форум — Linux-hardware

Читаю статью на Википедии о процессоре Athlon 64. Первое ядро было Clawhammer/K8, и там были такие частоты (в скобках указана реальная частота):
2800+ (1800), 3000+ (2000), 3200+ (2000), 3300+ (2400), 3400+ (2200), 3500+ (2200), 3700+ (2400), 4000+ (2400)

Потом Newcastle/K8:
2600+ (1600), 2800+ (1800), 3000+ (2000), 3000 (1800), 3200+ (2200), 3200+ (2000), 3400+ (2400), 3400+ (2200), 3500+ (2200), 3800+ (2400)

Winchester/K8:
3000+ (1800), 3200+ (2000), 3500+ (2200), 3700+ (2200)

San Diego/K8:
3500+ (2200), 3700+ (2200), 4000+ (2400)

Venice/K8:
3000+ (1800) 512 Кбайт L2, 3200+ (2000) 1024 Кбайт L2, 3400+ (2200), 3500+ (2200), 3800+ (2400). А также был выпущен: 3000+ (2000) на Socket 754.

Почему, в первых ядрах, процессор 3000+ имел тактовую частоту 2000, а в последующих - 1800? У соседних процессоров тоже куда-то делись 200 МГц!

С процессорами AMD Athlon 64 FX - та же история. FX-51 — 2,2 ГГц; FX-53 — 2,4 ГГц; FX-55 — 2,6 ГГц; FX-57 — 2,8 ГГц; FX-60 — 2,6 ГГц; FX-62 — 2,8 ГГц; FX-64 — 3,0 ГГц.

Захочет покупатель обновить себе FX-55 до FX-60, и получит ровно то же самое?

 2005 год, ,

ZenitharChampion
()

Оверлей, показывающий, нажимаю ли я сейчас клавишу пробел, или нет

Форум — Games

Когда я играю в Super Meat Boy, иногда не срабатывает прыжок. «Да я же нажимал!». То же самое в Worms Armageddon, запущенный под Wine. Три раза хорошо нажал, но всё равно не сработало.

Хотелось бы схематичное изображение кнопки «Space», полупрозрачная картинка поверх игры. И когда нажимаю, она нажимается тоже. И я бы понял, это игра виновата или клавиатура.

Или, как вариант, по ssh зайти с нетбука и смотреть коды нажатых клавиш. actkbd позволял такое сделать, вроде.

 

ZenitharChampion
()

Команда patch не переименовывает файл

Форум — Development

Я тут последовательно обновляю ядро 3.16.7 до 3.16.85, и на 3.16.9 произошёл затык. Вот фрагмент патча:

--- a/drivers/gpu/drm/nouveau/core/subdev/gpio/nv92.c
+++ b/drivers/gpu/drm/nouveau/core/subdev/gpio/nv94.c
@@ -25,7 +25,7 @@
 #include "priv.h"
 
 void
-nv92_gpio_intr_stat(struct nouveau_gpio *gpio, u32 *hi, u32 *lo)
+nv94_gpio_intr_stat(struct nouveau_gpio *gpio, u32 *hi, u32 *lo)
 {
 	u32 intr0 = nv_rd32(gpio, 0x00e054);
 	u32 intr1 = nv_rd32(gpio, 0x00e074);

Как видите, патч переименовывает файл. Но файл остаётся под тем же именем. Патчинг производится командой patch -s -F0 -E -p1 --no-backup-if-mismatch -i $PATCH_DIR Почитал в мане описания параметров, вроде ни один не должен к такому приводить. Может наоборот, надо что-то добавить?

 

ZenitharChampion
()

Нашёл старый Wine Prefix. Как узнать, какая версия Wine с ним использовалась?

Форум — General

Сабж

 ,

ZenitharChampion
()

Подправить код bootsplash для Linux > 3.10

Форум — Development

Вот этот код не собирается на Linux 3.11 и выше:

static int splash_proc_register(void)
{
	proc_splash = create_proc_entry("splash", 0, 0);
	if (proc_splash) {
		proc_splash->read_proc = splash_read_proc;
		proc_splash->write_proc = splash_write_proc;
		return 0;
	}
	return 1;
}

Причина описана здесь. Как исправить так, чтобы работало?

Компилятор говорит вот что:

../drivers/video/bootsplash/bootsplash.c: In function ‘splash_proc_register’:
../drivers/video/bootsplash/bootsplash.c:1901:16: error: implicit declaration of function ‘create_proc_entry’ [-Werror=implicit-function-declaration]
  proc_splash = create_proc_entry("splash", 0, 0);
                ^
../drivers/video/bootsplash/bootsplash.c:1901:14: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
  proc_splash = create_proc_entry("splash", 0, 0);
              ^
../drivers/video/bootsplash/bootsplash.c:1903:14: error: dereferencing pointer to incomplete type ‘struct proc_dir_entry’
   proc_splash->read_proc = splash_read_proc;

Файл вот он.

 

ZenitharChampion
()

Веб-камера и Linux

Форум — Multimedia

Всем привет. У меня есть веб-камера SVEN IC-305. Я её использую как видеорегистратор: видео с неё идёт в файл, который, при необходимости, будет просмотрен.

 v4l2-ctl --device=/dev/video0 -D
Driver Info (not using libv4l2):
	Driver name   : uvcvideo
	Card type     : USB2.0 Camera
	Bus info      : usb-0000:00:02.1-2
	Driver version: 1.1.0
	Capabilities  : 0x04000001
		Video Capture
		Streaming

Полное инфо

Есть несколько проблем:

  1. Как я понял, на ней есть микрофон. VLC, при помощи которого я осуществляю запись, видит устройства hw0 и hw1, но со второго отказывается записывать звук. Версия VLC 2.2.4, с пульсой не скомпилена. Тыкания в pavucontrol не принесли результата. Я тогда выключил PulseAudio, после чего устройство hw1 пропало вообше (осталось только hw0). Устройство hw1 также недоступно в alsamixer (кнопка F5 для смены звуковой карты не активна), нет его и в YAST → Устройства → Звук, а также его не видно в /dev/snd. Что же это тогда такое? Может это и не вебка вовсе, а какое-нибудь dummy? Если это всё-таки вебка, как можно с неё получить звук через PulseAudio и заставить ALSA её увидеть?
  2. Фокусное расстояние выставляется неправильно, картинка размыта. Нагуглил команду сброса фокусного расстояния для камер Logitech: v4l2-ctl --device=/dev/video0 --set-ctrl=focus_auto=0 Попробовал - не работает. --help к команде выдаёт, что можно вывести список доступных параметров по --list-ctrl, и вот что доступно:
 v4l2-ctl --device=/dev/video0 --list-ctrls
                     brightness (int)    : min=0 max=100 step=1 default=30 value=30
                       contrast (int)    : min=0 max=100 step=1 default=57 value=57
                     saturation (int)    : min=0 max=4 step=1 default=2 value=2
                          gamma (int)    : min=1 max=8 step=1 default=3 value=3
           power_line_frequency (menu)   : min=0 max=2 default=1 value=1
                      sharpness (int)    : min=0 max=100 step=1 default=10 value=10

Как же сделать нормальное фокусное расстояние? И да, sharpness крутил, это как наложение эффекта «резкость» в Фотошопе, это не то.

 , , , ,

ZenitharChampion
()

Так много ядер в Raspbian?

Форум — Development

Привет. Чё-то какая-то фигня: в репозитории актуального Raspbian 10 (который баризуется на Debian 10 «Buster») доступно два ядра:

  • raspberrypi-kernel (версия 4.19). Внутри - как специфичные для RPi файлы, так и само ядро и модули. Пакет с заголовочными файлами называется raspberrypi-kernel-headers
  • linux-image (версия 4.9) с префиксом -rpi и -rpi2 (для разных моделей, наверное). В этих пакетах тоже есть специфичные для RPi файлы, так что оно загрузится и будет работать. Пакеты с «заголовками»: linux-headers-common (пакет для архитектуры all, ну то есть noarch, в пакете содержатся *.h-файлы), linux-headers-rpi и linux-headers-rpi2 (пакеты для архитектуры armhf, содержат в себе .config, include/generated/autoconf.h и include/config/auto.conf для конкретного linux-image)

Второго варианта как будто не должно быть, но он есть. Как будто в репозитории, в директории pool/main/l/linux, лежат пакеты для jessie (3.16), stretch (4.9) и booster (4.19), а в директории dists, в файле со списком пакетов для booster, прописаны все эти файлы. Все их видно в Synaptic, если поискать linux-. А ещё есть ошмётки ядра 4.18 (только headers, без image, как будто не до конца удалили).

Ещё можно установить наиболее свежее ядро в обход пакетной системы командой sudo rpi-update. Используется форк ядра от разработчиков Raspbian. Правда, заголовки почему-то не «подтягиваются» вместе с бинарниками, а как их доустановить я так и не нашёл...

Итого три ядра.

 , , ,

ZenitharChampion
()

Переименовать /dev/sda2 в /dev/sda1

Форум — Linux-install

Я установил на HDD несколько операционных систем. Разделы были не по-порядку - для примера, я любил уменьшить большой раздел /dev/sda2, чтобы сделать /dev/sda5. Однажды я переустанавливал Windows XP (на /dev/sda1) и он мне все разделы построил по-порядку! Было sda1, sda2, sda5, sda6, sda3, sda4 - стало sda1, sda2, sda3, sda4, sda5, sda6. Инсталлятор винды просто переименовал sda5 в sda3, оставив тип файловой системы прежним - ext4.

Сейчас у меня возникла необходимость сделать так же. Это можно сделать через fdisk или parted? У меня CF-карточка на 32 Гб, которую я подключил к старому компьютеру вместо жёсткого диска. На /dev/hda1 - FAT16 и DOS, на /dev/hda2 - ext2 и Linux. Возникла необходимость вытащить /boot на отдельный раздел в начале диска. Я при помощи GParted всё сдвину вправо и сделаю маленький /boot мегабайтов на 16, но он будет называться /dev/hda3. Таким образом, будет hda3, hda1, hda2. Надо чтобы по-порядку.

 , , , ,

ZenitharChampion
()

Загрузить Linux с CD, затем подгрузить ядро и initrd уже установленной на хард ОСи

Форум — Linux-install

Я давно такой трюк проворачивал, лет 10 назад наверное. Загружаешь LiveCD или установочный DVD, переключаешься в однопользовательский режим по «init 1». Затем вводишь пару команд (монтируешь раздел, вводишь путь до vmlinuz и initrd), а следующей командой грузишь установленную на хард ОС. А та система, которая была загружена ранее, выгружается из памяти.

Я уже всё позабывал, как называется эта возможность?

 , ,

ZenitharChampion
()

Подключить к Raspberry Pi 4 - видеокарту. Возможно ли?

Форум — Linux-hardware

Через несколько дней после релиза Raspberry Pi 4, энтузиаст из Польши сумел подрубиться к PCI Express 1x на устройстве. Отдельный разъём не предусмотрен, но он сделал.

Значит, можно подключить NVIDIA RTX 2080 Ti, а затем установить линуксовый драйвер для ARMv7? NVIDIA уже давно делает драйверы для ARM. Или помешает отсутствие писишного Биоса?

 , ,

ZenitharChampion
()

Помогите разобраться в джунглях драйверов AMD

Форум — Multimedia

Все мои знания по драйверу AMD ограничиваются этими. «run-файл можно конвертнуть в DEB, а после установки надо выполнить „aticonfig --initial -f“, чтобы „иксы“ не пытались использовать драйвер radeon вместо fglrx, а ещё нужно грузиться с опцией nomodeset или radeon.modeset=0 (или добавить это в /etc/modprobe.d/любой_файл.conf)».

Сейчас всё стало сложно и запутанно. Драйвер radeon я понимаю: драйвер в ядре, драйвер в libdrm, драйвер в Mesa, и драйвер в «иксах». А с amdgpu какие-то дебри и джунгли.

Mesa 20.1-dev RADV vs. RADV+ACO vs. AMDVLK vs. AMDGPU-PRO Vulkan Radeon Linux Gaming Performance

4 реализации Vulkan! Долбануться можно, 4 реализации Vulkan... А сколько реализаций OpenGL и OpenCL? Объясните, пожалуйста, как начать пользоваться драйвером amdgpu. И, если можно, описание каждой из реализаций Vulkan, OpenGL и OpenCL.

И ещё такой вопрос. Как разгонять? На примере Radeon HD RX580. Раньше было просто, например так: aticonfig --odsc=600,900, где нужно подставить нужные частоты GPU и памяти.

 ,

ZenitharChampion
()

Компиляция ядра: KABI: symbol changed crc

Форум — Development

Я решил скомпилировать более новое ядро в openSUSE. Компилировал при помощи SRPM-ки, чтобы получить RPM-файлы. Вдруг я получил стену ошибок (несколько тысяч строк) «KABI: symbol имя_символа(/путь/к/файлу) changed crc from 0xзначение to 0xзначение». После этого, rpmbuild сказал «так, у тебя отсутствует файл /usr/src/packages/SOURCES/IGNORE-KABI-BADNESS, значит я компиляцию прерву».

KABI: symbol zl10036_attach(drivers/media/dvb-frontends/zl10036) changed crc from 0x7bee6f74 to 0x14ba431f
KABI: symbol zl10039_attach(drivers/media/dvb-frontends/zl10039) changed crc from 0x98f2cb62 to 0xfc167c9c
KABI: symbol zl10353_attach(drivers/media/dvb-frontends/zl10353) changed crc from 0x87af1d8e to 0x565435ce
KABI: aborting due to kabi changes.
+ res=1
+ '[' 1 -ne 0 ']'
+ '[' 0 -eq 0 -a '!' -e /usr/src/packages/BUILD/kernel-default-3.16.7/kabi/x86_64/ignore-default -a '!' -e /usr/src/packages/SOURCES/IGNORE-KABI-BADNESS ']'
+ echo 'Create a file IGNORE-KABI-BADNESS in the kernel-source' 'directory to build this kernel even though its badness is' 'higher than allowed for an official kernel.'
Create a file IGNORE-KABI-BADNESS in the kernel-source directory to build this kernel even though its badness is higher than allowed for an official kernel.
+ exit 1
ошибка: Неверный код возврата из /var/tmp/rpm-tmp.9281 (%install)


Ошибки сборки пакетов:
    Неверный код возврата из /var/tmp/rpm-tmp.9281 (%install)

Все эти ошибки я видел и в процессе компиляции. Иногда они были редко, иногда часто, иногда отсутствовали.

В чём может быть причина?

P.S. Может проигнорировать и сделать touch /usr/src/packages/SOURCES/IGNORE-KABI-BADNESS? Или это всё же была весомая причина для прерывания компиляции?

P.P.S. Как тогда в openSUSE продолжить компиляцию с того же места? Чтобы не компилировать всё заново.

 , ,

ZenitharChampion
()

Правило HAL

Форум — Desktop

В CentOS 6 есть как старая системная служба HAL, так и новая - udisks. А вот в SLED 11 есть только HAL. Мне надо правило, чтобы в SLED флешка с exfat монтировалась с определёнными параметрами. А именно, те параметры, которые я использую для NTFS (они есть ниже).

Правило для NTFS-3G
Правило для exfat (попробовал внести изменение в рабочее правило для NTFS)

Это не работает! Монтируется всё равно с дефолтными параметрами:

$ mount
/dev/sda2 on / type ext3 (rw,data=journal,acl,user_xattr)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
debugfs on /sys/kernel/debug type debugfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,mode=1777)
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/sda4 on /windows type ufsd (rw,uid=1000,gid=100,dmask=0002,fmask=0003)
securityfs on /sys/kernel/security type securityfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
/dev/sdb1 on /media/disk-2 type exfat (rw,nosuid,nodev)

Если это важно, модули ядра называются exfat_core и exfat_fs

 ,

ZenitharChampion
()

Банковские дебетовые карты VISA и Mastercard без привязки к номеру телефона

Форум — Talks

У каких банков есть?

 

ZenitharChampion
()

Умный маскарадинг

Форум — Admin

На рабочем месте недоступен проводной интернет, поэтому используется 4G-модем.

Есть 4 рабочих места. Во времена Windows XP, каждый из компьютеров был подключен по Ethernet к 5-типортовому свичу. Свич, как известно, не выдаёт IP-адреса, поэтому на каждый компьютер я вбил вручную 192.168.1.[1-4] вот здесь. Шлюз оставался пустым, так как не стояло задачи раздавать интернет, а только локальная файлообменная сеть.

К компьютеру 192.168.1.1 подключен тот самый 4G-модем. На компьютере 192.168.1.2 сейчас стоит полностью обновлённая Windows 7, и поэтому я туда вбил шлюз 192.168.1.1. На остальных двух компах система не обновлена, так что там шлюз по-прежнему не указан.

Я попытался поменять свич на роутер. Возникли проблемы с тем самым компом, в который вставлен модем. Почему-то шлюз роутера (который ведёт в никуда, так как Ethernet-кабель не вставлен в соответствующий разъём) становился главнее шлюза модема. Соответственно, не работал интернет. Попытался починить - интернет заработал, но компьютер «выпал» из локальной сети. В общем, я вернул обратно свитч.

Я вот думаю. Купить роутер с USB-портом, и вставить туда 4G-модем. А в настройках роутера указать, чтобы интернет раздавался только на два первых компа.

Подключил к последнему, не занятому порту свича, Raspberry Pi (он у меня на работе записывает видео с веб-камеры при помощи motioneye). На нём поднял dnsmasq с таким конфигом:

interface=eth0
dhcp-range=eth0,192.168.1.2,192.168.1.8,72h

IP-адреса прекрасно раздаются. Наверное, это глупо - делать роутер из RPi, учитывая, что больше 30 мегабит из него не выжать (у меня 3 модель, в 4 мдели уже пофиксили). Но ведь файловый обмен идёт не через RPi, а непосредственно между компами - RPi раздаёт им только адреса.

Теперь я хочу раздать интернет. Причём по-умному. Вот как я это делаю сейчас:

sudo sysctl net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

Интернет из ppp0 раздаётся вообще во все сетевые интерфейсы: eth0, wlan0, и во все IP-адреса на этих интерфейсах. А мне надо, чтобы 192.168.1.4 и 192.168.1.5 не получали интернет.

P. S. Ещё было бы здорово какую-нибудь веб-морду, как на настоящем роутере. Но это уже из области фантастики - мне было бы достаточно настроить «умный маскарадинг», и ничего больше. В веб-морде я бы хотел отрубать и давать интернет, ставя галочки. Может быть самба-шару можно было бы конфигурировать там же, ну и motioneye.

 ,

ZenitharChampion
()

Лагает Google Chromium на Raspberry Pi 3

Форум — Desktop

Недано я обновил на Raspberry Pi 3 флеш-карту и зарядник, установил более новую ОС Raspbian 10 вместо 8 версии, которая была установлена на старой карточке.

Браузер лагает. Вот знаете, когда на винде копируешь файл на флешку, то он стабильно копируется на скорости, ну там 300 кбайт/сек, а в линуксе показывает 100500 мегабайт в секунду, потом в течение минуты 0 байт в секунду, и так на протяжении всего копирования. Так же и браузер. 30 секунд работает нормально, потом всё тормозит и «ожидание кэша».

Как это можно победить? На прошлой системе так тоже было, но хотя бы ютюб не лагал. А теперь смотришь стрим, и раз в 30 секунд он встаёт на паузу и потом снова продолжается. И постоянно приходится нажимать по кнопке «в эфире», а то отставание уже составляет минуты.

 , ,

ZenitharChampion
()

Unigine SDK 2.10

Новости — Проприетарное ПО
Группа Проприетарное ПО

Состоялся релиз Unigine SDK 2.10. Unigine Engine — мультиплатформенный 3D-движок, разработанный одноимённой компанией UNIGINE. Движок используется для создания игр, систем виртуальной реальности, программ интерактивной визуализации, различных трёхмерных имитаторов (обучающих, медицинских, военных, транспортных и пр.). Также на основе Unigine создана серия популярных бенчмарков для GPU: Heaven, Valley, Superposition.

Основные изменения:

  • новая система ландшафта — более детальная, быстрая, изменяемая в реальном времени через API, поддерживает бинокли;
  • система плагинов для UnigineEditor;
  • высокоуровневая система физики для автомобилей;
  • более разнообразные и реалистичные облака;
  • улучшены API для C++ и C#;
  • обновления IG — адаптивное качество, легкая настройка;
  • новый инструмент для сборки проектов;
  • инструмент для оптимизации текстур;
  • интеграция Teslasuit (VR-костюм с тактильной обратной связью).

>>> Полный список изменений и подробности (англ.)

 , , ,

ZenitharChampion
()

Raspbian 10, проприетарный драйвер GPU, и браузер Chromium

Форум — Linux-hardware

В ноябре 2017 года, в Raspbian Linux появился открытый драйвер для GPU. Файлы библиотек не пересекаются: проприетарные файлы называются libEGL.so и libGLESv2.so, а открытые - libEGL.so.1 и libGLESv2.so.2. Но разработчики операционной системы на всякий случай переименовали проприетарные в libbrcmEGL.so и libbrcmGLESv2.so. Переключиться между открытым и закрытым можно в sudo raspi-config. Приятно, что в недавно вышедшем Raspbian 10 эту возможность оставили для Raspberry Pi 3, хоть и написано, что это Legacy Driver.

Я пользуюсь браузером Chromium в связке с открытым драйвером. Работает нормально. Бывают тормоза и лаги, похожие на своппинг. Видео на YouTube аппаратно ускоряется, но иногда вышеозвученные лаги мешают и воспроизведению видео тоже. И дело не в аппаратном декодере: лаги раз в минуту могут быть как на 144p, так и на 1080p.

При переключении на закрытый драйвер, аппаратное ускорение видео работает тоже (для открытого и закрытого используются одни и те же MMAL и OpenMAX IL). Однако обычное ускорение (плавный скроллинг и т.д.) не ускоряется аппаратно, а используется llvmpipe. Браузер слинкован с libEGL.so.1 из Месы. Если активен проприетарный драйвер, то Меса начинает работать софтварно. Надо, чтобы браузер был слинкован с libEGL.so. Может где-то есть сборки?

P.S. Вообще, замедление работы от софтварного OpenGL ES очень маленькое, и поэтому не критичное. И чаще всего я пользуюсь открытым драйвером, тогда как проприетарный драйвер мне нужен очень редко, например для запуска старых игр.

P.P.S. На официальном форуме спрашивал, ответа не дали

 , ,

ZenitharChampion
()

Обновление War Thunder 1.95 «Северный ветер» с новой игровой нацией Швеция

Новости — Игры
Группа Игры

Состоялся релиз игры War Thunder 1.95 «Северный ветер», включающий в себя новую игровую нацию Швеция.

( читать дальше... )

>>> Подробности

 gaijin entertainment, , ,

ZenitharChampion
()

Вопрос про Raspberry Pi проприетарный OpenGL ES от Broadcom, и немного (много) ЖЖ

Форум — Desktop

Купил новую SD-карту, установил туда Raspbian 10 от 26 сентября 2019 года. Установку выполнил, удалив FAT32 при помощи fdisk, и сделав dd с образом. При первом запуске, программа установки расширила границы rootfs на весь диск и перезагрузила систему. Затем система была готова к работе. Появился мастер первого запуска, который спросил «а нет ли чёрной рамки на моём мониторе», а ещё про язык и не помню про что ещё.

Мне захотелось потестировать Месу. Последний раз я её тестировал ещё в Raspbian 8, там была версия 13. А тут 19.2-rc1.

Запустил Майнкрафт 1.12.2. Особо быстрее не стало. На этом испытание было закончено, потому что я не знаю, что запустить ещё. В теории, можно скомпилировать Aquaria.

Браузер Chromium что-то не очень резво воспроизводил видео 1080p. Хотя говорили, что в свежеустановленной системе даже ничего настраивать не придётся. Хорошо что есть omxplayer и youtube-dl.

Мне на глаза попалось руководство «плавный YouTube 1080p в Chromium». Первая команда скрипта удаляет пакет rpi-chromium-mods, вторая вписывает параметры запуска вида --enable-чтонибудь и --disable-чтонибудь. Запустил скрипт. Ютюб действительно стал планее. Но не идеален: раз в минуту фризы. omxplayer + youtube-dl снова выручают, даже стримы можно смотреть в их связке.

Спустя время я заметил, что в той инструкции есть ошибка. Первая команда удаляет пакет успешно, а вторая команда не вписывает параметры в файл конфигурации. Ошибка синтаксиса в скрипте, из-за чего sed ругается и ничего не делает. Конфиг не пополнился настройками! Ну, я внёс эти параметры вручную. Что получилось? А получилось странное... В chrome://gpu всё стало очень красиво. Hardware video decoding теперь Enabled и зелёненький (хотя раньше писал, что в линуксе это вообще не поддерживается). Но само видео превратилось в слайдшоу, как будто OpenGL моделируется софтварно. А когда было написано, что аппаратное декодирование не поддерживается, то всё прекрасно ускорялось аппаратно. Как же так? Upd: оказалось, что вместе с rpi-chromium-mods снеслось дополнение h264ify, а я думал, что оно всё ещё присутствует в моей системе. Поэтому пункт про установку этого дополнения я проигнорировал, сразу перейдя ко второму пункту - увеличение размера VRAM. Вернул обратно h264ify - и всё стало плавно!

В общем, я сделал как было. А фризы возможны из-за плохого блока питания (или кабеля), из-за чего иногда появляется значок молнии (подробнее об этом здесь, в разделе «Проблемы питания»). Планирую поменять на такой.

Итак, Месу потестировал, ускорение видео в браузере потестировал. Теперь мне стало интересно: можно ли включить в Raspbian 10 - проприетарный драйвер OpenGL ES? Оказалось что можно. В sudo raspi-config в Advanced Options можно выбрать или опенсорсный драйвер на базе Mesa, или Legacy OpenGL ES driver.

Ютюб не изменился. omxplayer работает прекрасно, как и раньше. Майкрафт конечно же перестал работать, потому что он требует OpenGL + GLX (это поддерживает только Mesa, а проприетарный драйвер не поддерживает ни то, ни другое, а только OpenGL ES и EGL). Я погонял Quake 3 и демосцену. Работает прекрасно.

Вот только с запуском Квейка возникла проблема. Сначала игра не нашла файлы libEGL.so и libGLESv2.so. Я компилировал бинарник игры, доступный по ссылке выше, ещё в Raspbian 8. Ну, не проблема, доустановил libgles2-mesa-dev и libegl1-mesa-dev. Файлы появились. Игра начала запускаться, но после сообщения libEGL warning: DRI2: failed to authenticate игра стартовать отказалась. Кстати, это же предупреждение стало появляться при запуске Chromium с проприетарным драйвером, но не возникает с Месой. Тогда я зашёл в /opt/vc/lib. И я с удивлением увидел, что libEGL.so и libGLESv2.so были переименованы в libbrcmEGL.so и libbrcmGLESv2.so! Зачем?! И кстати, оказывается, можно было не устанавливал -dev пакеты, а просто сделать симлинки этих файлов в правильные имена...

Поиграл в Квейк, после чего запустил Chromium и увидел сообщение, что EGL инициализировать не удалось из-за ошибки, а значит, браузер отключает аппаратное ускорение прокрутки страничек, и т.д. Я удалил симлинки в /opt/vc/lib. Теперь нормально стартовало. Как так? Хромиум полез в эту директорию смотреть библиотеки, а Quake не полез? Квейку надо было LD_LIBRARY_PATH указывать...

И всё-таки, почему Хромиум отключает аппаратное ускорение при попытке стартовать с броадкомовским EGL? Почему он не сдружился с ним? Меня напрягает предупреждение libEGL насчёт DRI2. Может нужно снести в /usr/lib/dri месовский драйвер DRI, и положить броадкомовский? Нужна помощь специалиста. А пока я прекращаю эксперименты и возвращаю опенсорсный драйвер Fake KMS

 , ,

ZenitharChampion
()

RSS подписка на новые темы