Suggestion required for h265 codec appsink-appsrc pipeline

Nicolas Dufresne nicolas at
Thu Aug 27 20:08:05 UTC 2020

Le jeudi 27 août 2020 à 11:40 -0500, jeyp4 a écrit :
> Hi
> In my C++ applications, I am trying to obtain below pipelines.
>  v4l2src ( I420, fps=25) ! omxh265enc ( iframeinterval=25) ! appsink
> (video/x-h265, stream-format=byte-stream, alignment=au)
> appsrc (video/x-h265, stream-format=byte-stream, alignment=au, fps=25,
> do-timestamp=TRUE, is-live=TRUE) ! nvh265dec ! autovideosink
> Finally, autovideosink shows the stream, but I see ghosting effect in
> presence of movements.
> I suspect it is because of non-uniformly placed in time h265
> packets.(referring below figure). The network carrier is ROS+VPN+4G.
> <> 

You should avoid using do_timestamp=TRUE on the appsrc and reuse the TS
coming out of appsink. Be aware you might need to push a segment event
to align the first TS to time 0 do playback is immediate.

> I find big latency in RTPH server pipelines, that's why I choose ROS method.

Can you define your acronyms ?

> Also, I am thinking to avoid using any queue in receiver pipeline so that I
> can achieve minimum latency target.

Queues don't add significant latency (few micro seconds perhaps).
Queues are only there to buffer ahead of time data and to seperate the
pipeline in more threads.

> Can someone provide any suggestion to improve my results? Note: With every
> packet from transmitter, I also carry extra info. E.g. fps, dts, pts,
> duration, height and width. (Just in case if it can be used to improve
> results)

If you re-implement everything from RTP in term of timing, that would
be ideal. You may just use RTP streaming. You can achieve low latency
with it, though you haven't define the level of latency you are

> --
> Sent from:
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at

More information about the gstreamer-devel mailing list