Video artifacts on a receiver side after re-creating of its pipeline

Tim Müller tim at centricular.com
Wed Jan 10 13:47:33 UTC 2018


On Wed, 2018-01-10 at 16:23 +0300, Denis Shienkov wrote:

Hi,

> I use two own applications: producer & consumer.
> A producer generates the video stream and sends to the UDP sink.
> A consumer receives this stream and displays a video content.
> 
> When the consumer started before the producer, then I did not get any
> video artifacts on an consumer.
> 
> But, when I try to do stop/start the consumer (when the producer
> already running), then I see many video artifacts on the consumer.
> 
> A possible workaround it is try to restart the producer (in this case
> the consumer receives good video content).

Do the artefacts disappear after a few seconds (when the producer
generates a new keyframe)?

If yes, then all you need to do is force the encoder on the producer
side to generate a new keyframe whenever you add a client. You can do
that with gst_video_event_new_upstream_force_key_unit() for example.

Cheers
-Tim

-- 
Tim Müller, Centricular Ltd - http://www.centricular.com


More information about the gstreamer-devel mailing list