Re: GStreamer and Linux, screen recording works well on Xorg but not on Wayland.

Davide Perini via gstreamer-devel <[email protected]>
Newsgroups gmane.comp.video.gstreamer.devel
Message-ID <[email protected]>
Thanks for the answer, I really appreciate it.

Is it possible to run a command to check if everything works?
I mean can I test it with a command like this before developing my 
integration in my software?

Isn't this command the right one to use?

gst-launch-1.0 pipewiresrc ! fd=%d path=%u ! videoconvert ! xvimagesink

If yes, how can retrieve the right fd and path variable to use using CLI?

I want to test it via CLI before developing a software for it if possible.

Thanks!!!
Davide



Il 13/07/2023 15:58, Nicolas Dufresne via gstreamer-devel ha scritto:
> Hi Davide,
>
> Le mardi 11 juillet 2023 à 23:45 +0200, Davide Perini via 
> gstreamer-devel a écrit :
>> Hi all,
>> I'm trying to use GStreamer on Wayland and it seems to have some 
>> problems...
>>
>> This pipeline:
>> gst-launch-1.0 ximagesrc startx=1 endx=3839 starty=0 endy=2159 ! 
>> video/x-raw,framerate=30/1 ! videoscale method=0 ! ximagesink
>>
>> works well on Xorg, but not on Wayland.
>
> ximagesrc will have very little use anyway on Wayland, as wayland have 
> built-in privacy security. Please consider using the appropriate 
> portal and pipewire streams for this purpose. The following link is an 
> example on how to do this in your own application.
>
> https://gitlab.gnome.org/-/snippets/19
>
> Nicolas
>
>>
>> On wayland I have this error:
>> Setting pipeline to PAUSED ... Pipeline is live and does not need 
>> PREROLL ... Pipeline is PREROLLED ... Setting pipeline to PLAYING ... 
>> New clock: GstSystemClock Redistribute latency... WARNING: from 
>> element /GstPipeline:pipeline0/GstXImageSink:ximagesink0: Pipeline 
>> construction is invalid, please add queues. Additional debug info: 
>> ../gstreamer/subprojects/gstreamer/libs/gst/base/gstbasesink.c(1249): 
>> gst_base_sink_query_latency (): 
>> /GstPipeline:pipeline0/GstXImageSink:ximagesink0: Not enough 
>> buffering available for the processing deadline of 0:00:00.015000000, 
>> add enough queues to buffer 0:00:00.015000000 additional data. 
>> Shortening processing latency to 0:00:00.000000000. WARNING: from 
>> element /GstPipeline:pipeline0/GstXImageSink:ximagesink0: Pipeline 
>> construction is invalid, please add queues. Additional debug info: 
>> ../gstreamer/subprojects/gstreamer/libs/gst/base/gstbasesink.c(1249): 
>> gst_base_sink_query_latency (): 
>> /GstPipeline:pipeline0/GstXImageSink:ximagesink0: Not enough 
>> buffering available for the processing deadline of 0:00:00.015000000, 
>> add enough queues to buffer 0:00:00.015000000 additional data. 
>> Shortening processing latency to 0:00:00.000000000. X Error of failed 
>> request: BadMatch (invalid parameter attributes) Major opcode of 
>> failed request: 73 (X_GetImage) Serial number of failed request: 52 
>> Current serial number in output stream: 52 Is there any fix for this 
>> since Xorg is going to be deprecated everywhere? :) Thanks Davide
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.