ChanServ changed the topic of #wayland to: https://wayland.freedesktop.org | Discussion about the Wayland protocol and its implementations, plus libinput
mvlad has quit [Remote host closed the connection]
<swick[m]>
emersion: sorry for kicking off even more discussions on the explicit sync protocol... I'd like to see it land as is but those things crossed my mind when checking the mutter impl.
<Company>
if it makes sense to use the offloading codepath for GdkMemoryTexture
<emersion>
i would say that a compositor is in a better position to make this decision
<Company>
but you'd need to get the memory to the compositor first
<emersion>
via wl_shm, yes
<emersion>
and then the compositor can decide what the best way is to upload this to the GPU
<Company>
right, but that may require copying it into shared memory
<emersion>
cpu decoders can't decode to wl_shm memory directly?
<Company>
which would also be an entirely different codepath more or less
<emersion>
that would surprise me
<Company>
technically they can, but there lots of libraries inbetween
<Company>
GTK basically has 2 code paths atm: either composite it with the GTK rendering engine, or use the graphics offload with dmabufs
flom84 has quit [Quit: Leaving]
<Company>
and video buffers in CPU memory always go through the rendering engine
<Company>
so the question was if it's worthwhile to memcpy them into a (linear) dmabuf and use the offload path
<emersion>
right, what you're saying is that you need to upload to GPU for client-side composition anyways
<emersion>
why linear?
<Company>
because that's the simple way
<emersion>
i don't see why non-linear would be more difficult
<Company>
because that needs the rendering engine
<Company>
and linear can mmap + memcpy
<emersion>
you need a way to allocate DMA-BUFs
<emersion>
that way is probably GBM, no?
<Company>
my goal was to use Vulkan
<Company>
if I was going to do this dmabuf stuff
<emersion>
that's a good plan, i think, except for dma-buf feedback integration
<emersion>
you wouldn't be able to pass the scanout hint
<emersion>
and with Vulkan linear is no more difficult than non-linear
<Company>
I've decided that the scanout hint is not something we're gonna implement
<emersion>
er, the other way around
<emersion>
both are easy
<emersion>
vkMapMemory works on non-linear
<Company>
yeah, I'd need to look into how to plumb that through GTK
<Company>
because we have infra for fds, but no way to attach the VkMemory to it
<emersion>
the good thing about Vulkan is that your "upload to pass DMA-BUF to compositor" code-path is not very different from the "upload for client-side composition" one
<Company>
yeah, that was the reason for Vulkan over gbm
<Company>
because I have code to create dmabuf memory anyway, for sharing with GL
<Company>
GTK has a pixel data object (called GdkTexture) that has implementations for regular memory, for a GL texture and 4.14 will have one for dmabufs (because using GL textures sucks, as it's never clear what state that texture is in wrt mipmaps and parameters and internal format and such)
<Company>
(oh, and because it can't be shared with Vulkan)
<Company>
but I don't have one for Vulkan and I don't want one, because that'd require tracking the Vulkan state - device etc - which in the dmabuf case is all neatly encapsulated in the fd
rv1sr has quit []
<bwidawsk>
does wl_region::substract remove a previously added rectangle, or can it operate on the set of rectangles and modify those to achieve subtraction?
<bwidawsk>
I believe it's the latter
<bwidawsk>
nvm, it's the latter for sure
dogukan has quit [Remote host closed the connection]
sima has quit [Ping timeout: 480 seconds]
bodicceaII has joined #wayland
bodiccea_ has quit [Read error: No route to host]
Leopold___ has quit [Read error: Connection reset by peer]
Leopold_ has joined #wayland
<robertmader[m]>
Meh, can't write here from matrix right?
Leopold_ has quit []
Leopold_ has joined #wayland
<Company>
robertmader[m]: I can read it
<zamundaaa[m]>
robert.mader: as long as you're identified with NickServ you can
<robertmader[m]>
Ah ok, thanks - now we switched to #gtk :)
glennk has quit [Ping timeout: 480 seconds]
gfxstrand has joined #wayland
<Arsen>
is there an XEmbed equivalent?
<Arsen>
or, if not equivalent, something similar (i'd like to embed an arbitrary window into some other window)