videobox를 이용해서 어느정도는 원하는 위치로 옮길순 있는데 자유자재로 옮기긴 힘든 듯?

gst-launch-1.0 \
   videotestsrc pattern=1 ! \
   video/x-raw,format=AYUV,framerate=\(fraction\)10/1,width=100,height=100 ! \
   videobox border-alpha=0 top=-70 bottom=-70 right=-220 ! \
   videomixer name=mix sink_0::alpha=0.7 sink_1::alpha=0.5 ! \
   videoconvert ! xvimagesink \
   videotestsrc ! \
   video/x-raw,format=AYUV,framerate=\(fraction\)5/1,width=320,height=240 ! mix.

[링크 : https://gstreamer.freedesktop.org/documentation/videomixer/index.html?gi-language=c]

 

bottom 
“bottom” gint
Pixels to box at bottom (<0 = add a border)
Flags : Read / Write
Default value : 0

left 
“left” gint
Pixels to box at left (<0 = add a border)
Flags : Read / Write
Default value : 0

right 
“right” gint
Pixels to box at right (<0 = add a border)
Flags : Read / Write
Default value : 0

top 
“top” gint
Pixels to box at top (<0 = add a border)
Flags : Read / Write
Default value : 0

[링크 : https://gstreamer.freedesktop.org/documentation/videobox/index.html?gi-language=c]

 

ximagesink 에다가 sync=false 하니 프레임이 잘 나온다.

videomixer가 더 앞에 있으니 videomixer에 sync=false를 넣어야 할 줄 알았는데 의외네

$ gst-launch-1.0 v4l2src device=/dev/video2 ! jpegdec ! videomixer name=mix ! videoconvert ! ximagesink sync=false v4l2src device=/dev/video0 ! jpegdec ! mix.

[링크 : https://stackoverflow.com/questions/38392956/gstreamer-videomixer-very-low-framerate]

 

 

$ gst-launch-1.0 \
v4l2src device=/dev/video2 ! jpegdec ! \
videobox top=0 bottom=0 left=-960 ! \
videomixer name=mix sink_0::alpha=1 sink_1::alpha=1 ! \
videoconvert ! \
ximagesink window-width=1920 window-height=1080 sync=false \
v4l2src device=/dev/video0 ! jpegdec ! \
videobox top=0 bottom=0 ! mix.

'프로그램 사용 > gstreamer' 카테고리의 다른 글

nnstreamer  (0) 2023.12.20
gst-device-monitor-1.0  (0) 2023.12.06
gst-inspector.c  (0) 2023.04.06
gstreamer videomixer 반쪽 성공  (0) 2023.03.27
gstreamer videomixer ... 2?  (0) 2023.03.27
Posted by 구차니