Reducing the time between pushing data by our app to appsource and receiving this data by the appsource source pad !
I have this pipeline : appsource -> h264encoder -> appsink. The latter is
implemented on c++ and it works well. I am interested in the latency of the
entire pipeline and in reducing it. So I calculate the time in many points
of my code :
1) Time after pushing buffers to appsrc in the push-buffer callback
2) Time when receiving data by the appsource src pad.
3) Time when receiving data by the encoder sink pad.
4) Time when receiving data by the encoder src pad.
5) Time when receiving data by the appsink sink pad.
and then the duration between these different points.
I find that the elapsed time between pushing data by using in the callback
function and the time when appsource's source pad receives this data is very
large. This duration represents 70% of the total duration of the pipeline
(between pushing data in the callback function and retrieving data by
Can someone help me to know how to reduce this latency ? And which property
of appsource we should use to reduce it ?