From: Vivek Kasireddy
We need to determine if the client is new enough to support multiple
codecs -- which might include any of the Gstreamer based ones.
v2: (suggestions and fixups from Frediano)
- Add is_gl_client() method to DisplayChannelClient instead of a
dcc_is_gl_client() function.
- A
add dmabuf encoding if `drm/drm_fourcc.h` is present and
gstreamer is at least 1.24 due to
`gst_video_dma_drm_fourcc_to_format()`.
Signed-off-by: Michael Scherle
---
meson.build| 10 +-
server/gstreamer-encoder.c | 34 +++---
2 files changed
Oh I made a mistake and send this to the wrong mailing list, I'm
so sorry, I wanted to send it to the spice devel.
On 27.02.25 12:03, Michael Scherle wrote:
> This merge request is based on Vivek Kasireddy's
> [PATCH v8 0/6] dcc: Create a stream for non-gl/remote clients th
From: Vivek Kasireddy
For remote (or non-gl) clients, if a valid gl_draw stream exists,
then we first extract the dmabuf fd associated with the scanout and
share it with the encoder along with other key parameters such as
stride, width and height. Once the encoder finishes creating an
encoded buf
This brings in the following changes:
common: Add a udev helper to identify GPU Vendor
build: Avoid Meson warning
Drop Python 2 from m4/spice-deps.m4
Stop using Python six package
codegen: Use context manager when opening files
Signed-off-by: Michael Scherle
Prevent a freeze that occurs if the video stream is stopped while a
gl draw is in progress (e.g., when the client requests a new codec).
Ensure proper cleanup of the ongoing gl draw.
Signed-off-by: Michael Scherle
---
server/dcc-send.cpp | 4
1 file changed, 4 insertions(+)
diff --git a
From: Vivek Kasireddy
Once it is determined that an Intel GPU is available/active (after
looking into udev's database), we try to see if there is a h/w
based encoder (element) available (in Gstreamer's registry cache)
for the user selected video codec. In other words, if we find that
the Intel Me
ver/display-channel.cpp:2074:display_channel_create_surface:
condition `!display->priv->surfaces[surface_id]' failed
Rebase all patches on master
v2:
Update all patches to address review comments from Frediano
Tested this series with msdkh264enc/dec plugins that will be added
in anothe
From: Vivek Kasireddy
This patch adds a new function to enable the creation of Gst memory with
the dmabuf fd as the source by using a dmabuf allocator. And, it also
adds a mechanism to register and invoke any callbacks once the Gst memory
object is no longer used by the pipeline.
This patch also
From: Vivek Kasireddy
For non-gl/remote clients, if there is no stream associated with
the DisplayChannel, then we create a new stream. Otherwise, we
just update the current stream's timestamp.
v2: (suggestions and fixups from Frediano)
- Moved the gl_draw_stream object from DCC to DC
- Moved th
From: Vivek Kasireddy
We need to convert the scanout's drm format to the correct Gstreamer
format while configuring the pipeline. This can be done using
gst_video_dma_drm_fourcc_to_format() API, which will take the drm
fourcc value and return the appropriate Gst format.
Signed-off-by: Vivek Kasi
From: Vivek Kasireddy
We do not want to stop a stream associated with gl_draw as a result
of timeout because we may not get another opportunity to create a
new stream if the current one gets stopped. However, when the
stream does get stopped for other reasons, we need to clear the
gl_draw_stream
12 matches
Mail list logo