SRT Pipeline with Video and Metadata is stopping because of H264 keyframes

Hello,

i am implementing an application with video Stream using the SRT Video-Streaming protocol. The SRT Stream is using mpegts to transport a H.264 video stream and klv metadata, that contains information for every frame. It works, but in some cases the pipeline just stops and i get some H.264 errors, that indicate that the decoder is waiting for the next keyframe. But then before the next keyframe arrives the pipeline stops somehow. It’s my first project using gstreamer and i am using python and GStreamer 1.16. I appreciate any help / advice.

I discovered that when i put both appsinks to async=False, that it works a lot more reliable, but i need the metadata and picture with correct association to each other, which is not anymore the case when i put async to false.

This is the pipeline-graph:

This is the H264 Error:

[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] no frame!
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] no frame!
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] non-existing PPS 0 referenced
[h264 @ 0x55656d522f80] decode_slice_header error
[h264 @ 0x55656d522f80] no frame!

Gstreamer Version:
GStreamer 1.16.3

Full log with GST_DEBUG=4