Screen capture. Optimizing performances on my pipeline.
Marianna Smidth Buschle
msb at qtec.com
Thu Jun 9 12:16:50 UTC 2022
What about using 'videocrop'?
Something like:
d3d11screencapturesrc monitor-handle={0} ! d3d11convert ! tee name=t
t. ! queue ! videocrop top=0 left=0 right=0 bottom=-1 !
video/x-raw(memory:SystemMemory),width=3840,height=100 ! d3d11download
t. ! queue ! videocrop top=-1 left=0 right=0 bottom=0 !
video/x-raw(memory:SystemMemory),width=3840,height=100 ! d3d11download
t. ! queue ! videocrop top=0 left=-1 right=0 bottom=0 !
video/x-raw(memory:SystemMemory),width=100,height=2160 ! d3d11download
t. ! queue ! videocrop top=0 left=0 right=-1 bottom=0 !
video/x-raw(memory:SystemMemory),width=100,height=2160 ! d3d11download
This way you will get the 4 areas separately
Best regards
Marianna
On 09.06.2022 14.00, gstreamer-devel-request at lists.freedesktop.org wrote:
> Hi all,
> I have a pipeline this:
>
> d3d11screencapturesrc monitor-handle={0} ! d3d11convert ! d3d11download
>
> using these caps:
>
> video/x-raw(memory:SystemMemory),width=3840,height=2160,sync=false
>
>
> This pipeline captures the screen using Windows DDUPL API thank to the
> gstreamer "d3d11screencapturesrc"
> and then return the captured frame with a callback to my program.
> If I capture in 4K at 60FPS it copies 60 frames per second into memory
> and this is quite heavy.
>
> Is there a way to optimize it?
> I only need to get the color information of some portion of that frames
> (top border, bottom border, right border, left border).
>
> Is there a way to optimize this pipeline?
>
> Thanks
> Davide
--
Best regards / Med venlig hilsen
“Marianna Smidth Buschle”
More information about the gstreamer-devel
mailing list