mn Stoner
mn Stoner

Reputation: 77

How can I make dynamic textoverlay on a video feed quicker when the encoding and decoding is done by GPU?

I got a pipeline like the following:

rtspsrc ! queue ! rtph264depay ! h264parse ! vaapidecodebin ! queue flush-on-eos=TRUE ! videorate ! video/x-raw,framerate=5/1 ! textoverlay name=textsrc ! videorate ! vaapih264enc ! rtph264pay

This is being run on an intel GPU with iHD as a driver, and it's working well to make textoverlay on video and stream it back, the problem is that when I have the textoverlay active it causes delays,

after some research I found This which explains a potential issue, encoding/decoding being done on GPU and the textoverlay on CPU (using pango) causes the problem.

I also found about vaapioverlay, which is unlike what it's name indicates is more a video mixer.

I am not sure if it's possible to use vaapioverlay to get the desired result.

Is it possible to get a video feed with just textoverlay on it ? the idea is to overlay it on video stream using vaapioverlay.

Is there a way I can make the textoverlay faster that I am missing?

Upvotes: 1

Views: 190

Answers (0)

Related Questions