Fetching the latest programs, projects, and workspace data.

X Window System and related projects (Mesa, DRI, Wayland, etc.)
Showing 5 of 19 projects. Click any project card for scope, mentors, and proposal studio.
Mentors: Student: Arthur Grillo
This proposal aims to increase code coverage on the DRM core helpers with meaningful tests. Unfortunately, it is impractical to have 100% coverage on all core helpers in such a small time frame, so I will focus on the drm_format_helper.c, which makes the conversion between color formats. Parallel with developing the tests, I will improve the kernel-doc when needed, create blog posts about the process, and study the DRM subsystem. Moreover, with the knowledge gained, I will improve the xfrm functions to work with multi-plane formats.
Mentors: Student: Mohamexiety
YCbCr is a color space used in video and digital systems to express color, where Y is the luma component and CB and CR are the blue-difference and red-difference chroma components respectively. This project aims to add YCbCr support to the Nouveau Vulkan driver (NVK), which opens the way for support for more applications and is also an important step towards Vulkan 1.1 compliance. Work on this project is split into 4 phases; first investigation and reading up the relevant parts of the Vulkan specification and the open-sourced NVIDIA hardware headers, second the actual implementation and coding, and finally the third and fourth stages being verification and review where I verify that the implementation is working and conformant, and fix any issues that pop up. All this would then be followed by a merge request implementing and enabling YCbCr support in the driver.
Mentors: Student: columbarius
Sharing video buffers via PipeWire requires at the moment consumers and producers to provide a common capability set of buffer type, buffer format and in case of hardware buffers drm\_modifier. To mitigate mismatch issues, the goal is creating a PipeWire plugin, similar to the existing audioconvert one, using vulkan as the underlying technology for efficient video format conversions on hardware buffers and optional downloads to system memory. This approach allows producers to focus solely on the most efficient buffer type and format, removing the necessity to provide a fallback to system memory buffers, or its own rendering capabilities, while consumers on the other hand get increased compatibility and don't have to support any possible format. This eases the development of a working PipeWire client, making it possible to implement support for a wider range of formats and more advanced features later.
Mentors: Student: jpy794
Valve CI Infrastructure currently requires to be run on an x86_64 gateway, which raises its deployment and maintenance costs. Single board computers such as Raspberry Pi offer a cheaper and easier to maintain alternative. The goal of the project is to port Valve CI Infrastructure to Raspberry Pis.
Mentors: Student: Rose Hudson
wlroots would benefit from a smarter frame schedule that reduces waiting between client commits and compositing, and between compositing and scanout. By learning how long rendering takes from previous frames, the compositor can adjust its schedule so that so that more user inputs can be collected without missing the render deadline. This project will implement frame scheduling in wlroots and adaptive logic for adjusting the schedule automatically, so that many Wayland compositors can benefit from lower latency.