Skip to content

plugins: add vaapioverlay plugin

The vaapioverlay plugin/element is similar to the base compositor element but uses VA-API VPP blend functions to accelerate the overlay/compositing.

NOTE: VA-API VPP blending is supported on iHD, but not i965.

Simple example:

gst-launch-1.0 -vf videotestsrc ! vaapipostproc \
 ! tee name=testsrc ! queue \
 ! vaapioverlay sink_1::xpos=300 sink_1::alpha=0.75 \
 name=overlay ! vaapisink testsrc. ! queue ! overlay.

More complex example:

gst-launch-1.0 -vf videotestsrc ! tee name=testsrc \
 ! queue ! vaapijpegenc quality=10 ! jpegparse ! vaapijpegdec \
 ! textoverlay shaded-background=true text="quality=10" \
 ! vaapioverlay name=overlay \
   sink_0::xpos=0 sink_0::ypos=0 \
   sink_1::xpos=330 sink_1::ypos=0 \
   sink_2::xpos=660 sink_2::ypos=0 \
   sink_3::xpos=990 sink_3::ypos=0 \
   sink_4::xpos=0 sink_4::ypos=250 \
   sink_5::xpos=330 sink_5::ypos=250 \
   sink_6::xpos=660 sink_6::ypos=250 \
   sink_7::xpos=990 sink_7::ypos=250 \
   sink_8::xpos=0 sink_8::ypos=500 \
   sink_9::xpos=330 sink_9::ypos=500 \
 ! vaapisink \
 testsrc. ! queue ! vaapijpegenc quality=20 ! jpegparse ! vaapijpegdec \
  ! textoverlay shaded-background=true text="quality=20" ! overlay. \
 testsrc. ! queue ! vaapijpegenc quality=30 ! jpegparse ! vaapijpegdec \
  ! textoverlay shaded-background=true text="quality=30" ! overlay. \
 testsrc. ! queue ! vaapijpegenc quality=40 ! jpegparse ! vaapijpegdec \
  ! textoverlay shaded-background=true text="quality=40" ! overlay. \
 testsrc. ! queue ! vaapijpegenc quality=50 ! jpegparse ! vaapijpegdec \
  !  textoverlay shaded-background=true text="quality=50" ! overlay. \
 testsrc. ! queue ! vaapijpegenc quality=60 ! jpegparse ! vaapijpegdec \
  ! textoverlay shaded-background=true text="quality=60" ! overlay. \
 testsrc. ! queue ! vaapijpegenc quality=70 ! jpegparse ! vaapijpegdec \
  ! textoverlay shaded-background=true text="quality=70" ! overlay. \
 testsrc. ! queue ! vaapijpegenc quality=80 ! jpegparse ! vaapijpegdec \
  ! textoverlay shaded-background=true text="quality=80" ! overlay. \
 testsrc. ! queue ! vaapijpegenc quality=90 ! jpegparse ! vaapijpegdec \
  ! textoverlay shaded-background=true text="quality=90" ! overlay. \
 testsrc. ! queue ! vaapijpegenc quality=100 ! jpegparse ! vaapijpegdec \
  ! textoverlay shaded-background=true text="quality=100" ! overlay.
Edited by U. Artie Eoff

Merge request reports