LINUX.ORG.RU

Wayland 1.10

 ,


0

4

Представлен релиз протокола, механизма межпроцессного взаимодействия и библиотек Wayland 1.10, а также развиваемого параллельно композитного сервера Weston 1.10 и набора расширений wayland-protocols 1.1. Среди основных улучшений:

Wayland

  • В Wayland API обеспечена полная поддержка операций Drag&drop, отсутствие которых было серьёзным препятствием по обеспечению полноценной работы GNOME поверх Wayland. Добавленные вызовы обеспечивают согласование типа контента при его перемещении между источником и местом назначения, а также информируют источник о завершении или отмене операции.
  • Добавлена поддержка группировки событий указателей вместе с кадровыми событиями, что позволяет создавать такие возможности как диагональная прокрутка, в которой объединяются события вертикальной и горизонтальной прокруток. Кроме того, сгруппированные события позволяют более точно отслеживать клики колесом мыши, прекращение прокрутки касанием и процесса генерации событий прокрутки.
  • Добавлена порция пояснений по использованию протоколов и API, упрощающих правильное использование Wayland в окружениях рабочего стола.
  • Добавлена порция патчей от компании Samsung с реализацией сетевой прозрачности для протокола Wayland, позволяющих организовать выполнение клиентских приложений и отрисовку на разных компьютерах. Суть предложенных изменений сводится к пробросу существующего протокола поверх TCP/IP-сокета. Сжатие и техники оптимизации потока пока не реализованы, разработка находится в начальной стадии. При этом, для добавления поддержки сетевой прозрачности в композитный сервер достаточно добавить одну строчку wl_display_add_remote_socket(display, "foo").

Пакет wayland-protocols

  • Пакет включён в число зависимостей Weston.
  • Добавлено два новых протокола: относительные события указателей и их блокировка.

Weston

  • В состав включена реализация интерфейса V4L2 (Video for Linux 2), демонстрирующая способ получения видео с устройств V4L2, таких как dmabuf.
  • В weston.ini добавлена порция новых параметров изменения конфигурации, в том числе «vt-switching» и «allow-zap» для включения/выключения обработки Ctrl-Alt-Fn (переход к виртуальным терминалам) и Ctrl-Alt-Backspace (экстренное завершение работы сервера).
  • Обеспечена возможность использования механизма уведомлений systemd, который, например, может применяться для отслеживания работоспособности Weston и автоматизации перезапуска в случае краха/зависания. Режим активируется через опцию --enable-systemd-notify.

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

★★★★★

Проверено: maxcom ()
Последнее исправление: Psych218 (всего исправлений: 4)

Ответ на: комментарий от anonymous

Как его увидеть?

https://youtu.be/5xkNy9gfKOg

Открываешь на полный экран и смотришь в максимальном качестве. Полоски должны «рваться». Ну, или просто внимательно смотри на окошко, двигая его мышью по экрану.

Пруфцов бы.

https://habrahabr.ru/post/148954/

Раздел про XRender.

Это ужасно.

Чего ж там такого ужасного? Какая разница, вызывать графические примитивы через Xlib/xcb, или запросить буфер и рисовать в него теми же примитивами через cairo?

Ты серьезно?

Серьёзно. Ты его явно не пробовал, и критика твоя из разряда «Одна бабка сказала, что там ничего нового и сетевую прозрачность похерили, кокой ужос!».

Я сегодня не под амбреллой

Можешь выражаться по-русски?

и вообще осуждаю

И потуг на объективную критику больше не будет?

anonymous
()
Ответ на: комментарий от anonymous

https://youtu.be/5xkNy9gfKOg

Недовидюха интел - ничего нет. Так пресловутый вяйленд, тиринг и борьба с ним - это все для видео?

Чего ж там такого ужасного? Какая разница, вызывать графические примитивы через Xlib/xcb, или запросить буфер и рисовать в него теми же примитивами через cairo?

«Это ты самую суть ухватил»(с). Через cairo (да пусть задницу Паккарда разорвет его половой партнер) я рисую в памяти, через xcb шлют команды (передают графические примитивы). Разница огромная, хотя бы в том, что перерисовку можно объединять, не делать ненужного рисования в скрытых частях окон, не говоря про аппаратное ускорение.

Серьёзно. Ты его явно не пробовал, и критика твоя из разряда «Одна бабка сказала, что там ничего нового и сетевую прозрачность похерили, кокой ужос!».

Может и придется им пользоваться, но меня терзают смутные сомнения. И да, самое ужасное в вейланде - его чрезвычайно неясные цели.

И да, насчет той статьи на хабре. «К сожалению, практика показала, что программная растеризация (в силу достаточно неочевидных причин) ничуть не уступает в скорости аппаратной». Тьфу. Я же пруфцов просил, а не бла-бла-бла.

anonymous
()
Ответ на: комментарий от anonymous

Насчет графических примитивов, да, они неудачны, но при этом перенести рисование на клиента и отказаться от 2D-ускорения, кажется спорным решением.

Почему - отказаться от ускорения? клиент же имеет возможность пользоваться стандартными OpenVG/OpenGL/Vulkan/etc, я надеюсь?

Anonymous ★★★★★
()
Ответ на: комментарий от anonymous

Недовидюха интел - ничего нет.

Какой дистрибутив и WM?

тиринг и борьба с ним - это все для видео?

В том числе. А тебе плевать на качество видео? Может, ты и фильмы в камрипе смотришь?

Через cairo я рисую в памяти, через xcb шлют команды

В чём принципиальная разница для программиста между вызовом XDrawArc() и Cairo::Context::arc()? В том, что первый не умеет в антиалиасинг?

перерисовку можно объединять

Куда ты собрался её объединять?

не делать ненужного рисования в скрытых частях окон

Толку-то? Соскучился по таким вот спецэффектам: http://mrdoob.com/lab/javascript/effects/ie6/

Я же пруфцов просил, а не бла-бла-бла.

Если это такое уж бла-бла-бла, ты без труда выкатишь опровержение?

anonymous
()
Ответ на: комментарий от Anonymous

клиент же имеет возможность пользоваться стандартными OpenVG/OpenGL/Vulkan/etc

Естественно, имеет. Просто когда нужно чистое 2D, ими обычно не пользуются.

anonymous
()
Ответ на: комментарий от anonymous

Просто когда нужно чистое 2D

что такое «чистое 2D» и чем для этого пользуются ? просто сколько видел - всем нужны не примитивы для отрисовки а операции типа blit/fill/copy и CSC для видео.

anonymous
()
Ответ на: комментарий от anonymous

Рисование на клиенте связано исключительно с неудачными графическими примитивами X

бгг, какой фееричный бред. Браузеры уже свои оконные системы имеют а ты все про иксы которые уже лет 15 нахер никому не нужны.

anonymous
()
Ответ на: комментарий от anonymous

что такое «чистое 2D»

Это когда нужно рисовать на плоскости и не нужно в [псевдо]объёме.

чем для этого пользуются

В Gtk - cairo, в Qt, afaik, какие-то костыли поверх XRender.

всем нужны

Кому всем?

операции типа blit/fill/copy и CSC для видео

Хочешь сказать, ради этого всего обязательно тянуть OpenGL?

anonymous
()
Ответ на: комментарий от anonymous

Браузеры уже свои оконные системы имеют а ты все про иксы которые уже лет 15 нахер никому не нужны.

Если иксы не нужны, как же тогда браузеры должны отрисовывать свои оконные системы? KMS'ом?

anonymous
()
Ответ на: комментарий от anonymous

Кому всем?

дубинка ты неотесаная - всем значит всем - это базовые операции при отрисовке

anonymous
()
Ответ на: комментарий от anonymous

это базовые операции при отрисовке

Я и не утверждаю, что они не нужны. Просто интересно, ради них эти твои «все» что, OpenGL берут?

anonymous
()
Ответ на: комментарий от anonymous

Просто интересно, ради них эти твои «все» что, OpenGL берут?

нет конечно, но с какой целью интересуешься ?

anonymous
()
Ответ на: комментарий от anonymous

Хочешь сказать, ради этого всего обязательно тянуть OpenGL?

что значит «тянуть»? OpenGL/ES функциональнее и доступен куда шире, чем аппаратное ускорение иксов, и GUI-тулкиты и графические движки, используемые пользовательскими программами(особенно написанные с учётом портирования на телефоны, где 2д ускорение действительно актуально) как правило им и пользуются.
Отдельно функцию включения аппаратного ускорения видел и в OpenOffice, и во Флэше, и в видеопроигрывателях.

Anonymous ★★★★★
()
Ответ на: комментарий от Anonymous

GUI-тулкиты и графические движки, используемые пользовательскими программами(особенно написанные с учётом портирования на телефоны, где 2д ускорение действительно актуально) как правило им и пользуются.

Ну и хорошо. Мне всё равно, по большому счёту. Примитивы в иксах я всё равно считаю бесполезными, а в вяленом клиент может юзать, что захочет. Думаю, вопрос исчерпан.

anonymous
()
Ответ на: комментарий от hobbit

Сейчас я могу нарисовать оконное приложение для *nix-систем, не привлекая никаких тяжеловесных тулкитов (имеющих обыкновение ломаться от версии к версии), используя СТАНДАРТНЫЕ иксы и xlib/xcb. И оно будет работать на любой *nix-системе с иксами.

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

ckotinko ☆☆☆
()
Ответ на: комментарий от anonymous

В современных дистрибутивах есть чисто 2D либы, OpenGL для 2D излишен именно поэтому.

если она не может использовать аппаратное ускорение - говно это полное а не либа

http://cairographics.org/backends/

anonymous
()
Ответ на: комментарий от anonymous

с какой целью интересуешься

Интересно, чему вас на информатике учат.

anonymous
()

Работу осуществляю на сервере, вначале по локалке использовал Х, работает(по ощущениям) приятнее чем vnc, но удалённо из дома пропросить Х не получилось, а vnc работает хорошо, задержка есть, но жить можно. Сейчас и по локалке использую vnc, т.к. при обрыве соединения, проброшенные Х окошки виснут и все данные в них теряются, с vnc такого само собой нет. Так что передача изображений по сети нужна, но не такая как в Х. Таков мой опыт.

flyshoot
()
Ответ на: комментарий от anonymous

Ну так аппаратное ускорение они всё равно делают через OpenGL, OpenVG почему-то не взлетел, да и часто бывает, что маленькую картинку быстрее посчитать на процессоре со всякими векторными инструкциями, чем в видяху лезть. Надеюсь с Вулканом и это станет проще и быстрее.

Gorthauer ★★★★★
()
Ответ на: комментарий от anonymous

если она не может использовать аппаратное ускорение - говно это полное а не либа

«Ьожет использовать» и «использует» - это разные утверждения. Обычно её собирают с иксовым бэкендом, а по поводу аппаратного 2D-ускорения в иксах я уже кидал ссылку. Не согласен - выкатывай пруфы. Или хотя бы расскажи, в каких дистрибутивах на PC-шном линуксе собирают cairo с OpenGL-бэкендом.

anonymous
()
Ответ на: комментарий от Gorthauer

Ну так я об этом и толкую. Ты, видать, не тому анону ответил. Впрочем, тут немудрено ошибиться.

anonymous
()
Ответ на: комментарий от anonymous

хотя бы расскажи, в каких дистрибутивах на PC-шном линуксе собирают cairo с OpenGL-бэкендом

PC с Linux меня интересует как инструмент и какой бэкенд Cairo использует не знаю. На втсраиваемых системах - все собирают с GLES если конечно это не какой-то говенный процессор как на PC :)

anonymous
()
Ответ на: комментарий от anonymous

Графическое ускорение рисования иксовых примитивов, лал.

anonymous
()

Некоторые тут пишут wayland работает тем более xwayland. Хде??? Запустил GNOME c wayland автоматическая переключалка раскладок не работает, запустил assaultcube так в нем при любом движении мышью ландшафт просто начинает бешено вращаться. Это у вас считается нормально?

anonymous
()
Ответ на: комментарий от anonymous

автоматическая переключалка раскладок не работает

учи английский

ландшафт просто начинает бешено вращаться

графическое ускорение работает отлично

anonymous
()
Ответ на: комментарий от anonymous

Это шутка? Учи что такое автоматическая переключалка раскладок.

графическое ускорение работает отлично

Ага)) особенно когда крутишь влево, а в итоге смотришь в потолок. И fps в два раза меньше чем без вяленда.

anonymous
()

А почему под вантузом есть punto switcher и захватчики экрана тоже есть, а под wayland их не будет? Типа пользователям линукса нужно доверять меньше чем пользователям вантуза. Или вирусов под виндой меньше? Или просто вэйланд в десять раз хуже графического стэка под виндой. Фуфло какое-то пытаются подсунуть.

anonymous
()
Ответ на: комментарий от anonymous

Это шутка?

нет - через 10 лет все должны говорить на английском

fps в два раза меньше чем без вяленда

на LCD подоных экранах 30 FPS - это потолок после которого ты разницы уже не заметишь. Конечно если ты не собачка или пчела.

anonymous
()

Программки наподобие synapse тоже не работают, естественно. Забудьте о них. Ну, остальное кроме игр вроде работает - вяленд (версия 1.9) рулит.

anonymous
()
Ответ на: комментарий от anonymous

на LCD подоных экранах 30 FPS - это потолок после которого ты разницы уже не заметишь. Конечно если ты не собачка или пчела.

Ага, однако если игруха тяжелая там будет уже не 30, а 10 fps. речь о том что производительность графическая у вэйланда гораздо ниже чем у xorg.

anonymous
()
Ответ на: комментарий от anonymous

производительность графическая у вэйланда гораздо ниже чем у xorg

А ты уверен, что твоя игра не через xwayland работала?

anonymous
()
Ответ на: комментарий от anonymous

Тогда я бы сказал тебе, что xwayland работает гораздо хуже xorg. И что из этого, выкинуть все программы под иксы на помойку?

anonymous
()
Ответ на: комментарий от anonymous

Или нет лучше так. Переходный период растянется лет на 50, а до этого мы будем вынуждены играть на 10 fps. За это время сам линукс умрет. Так что Wayland не нужен.

anonymous
()
Ответ на: комментарий от anonymous

мы будем вынуждены играть на 10 fps

Ты драматизируешь. Я тестил OpenMW и osu! на sway WM, там просадка fps процентов 25 максимум. А glxgears вообще на вяленом внезапно выдал почти в два раза больший fps. И это плюс к тому, что тиринг лечится даже для приложений под xwayland (тоже не ожидал). А вот с захватом курсора проблемы, да. И вот таких проблем полно, откровенно говоря. Впрочем, год назад было значительно хуже. Так что, если экстраполировать, через год-два уже будет юзабельно.

Так что Wayland не нужен.

Не, истерички-хэйтеры не нужны.

anonymous
()
Ответ на: комментарий от anonymous

Посмотри тесты Novell-ch на Gears on Gallium. Производительность в Xwayland практически идентична таковой на иксах. Так что проблема в другом.

Sunderland93 ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Разница огромная, хотя бы в том, что перерисовку можно объединять, не делать ненужного рисования в скрытых частях окон,

Только вот при наличии композитного wm X не знает, какие части окон скрыты, а какие нет. А композитные wm - большая часть десктопов. Так что окна рисуются целиком. Что ты там собирался объединять тоже не ясно.

не говоря про аппаратное ускорение.

Вот и не говори. Оно доступно всем. В том числе и клиентам.

Ivan_qrt ★★★★★
()
Ответ на: комментарий от zink

у Intel «швабодка» официальная и вяленд уже умеет

лучше бы эти уроды допили безбаговую поддержку дуал монитор схем для своих видеокарт/графических чипов.

argin ★★★★★
()

Хотелось бы у знатоков вейленда спросить:

  1. вот weston рисует через opengl es, т.е. ему так или иначе нужно из shm файлов грузить пиксели в gl текстуру? Значит копирование таки происходит?
  2. Есть ли какая-нибудь черная магия при выводе opengl приложений без копирования?
anonymous
()

Кто тут на отсутствие сетевой прозрачности жаловался?

CYB3R ★★★★★
()
Ответ на: комментарий от anonymous

weston рисует через opengl es

С чего ты взял? Вообще, через EGL, но, AFAIK, теоретически может через что угодно.

ему так или иначе нужно из shm файлов грузить пиксели в gl текстуру

Необязательно, он умеет расшаривать память GPU, а клиент тогда прям туда рисует через OpenGL.

https://en.wikipedia.org/wiki/Wayland_(display_server_protocol)#Rendering_model

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.