Good day Kristine,
I still have some issues and questions about VPS.
We are trying to get the stream from VMS using VPS integration method.
When I send metadata to VMS they are discarded, because the return stream is 5 seconds old.
We tested vpspasstru, vpsboundingboxes, and vpsjpegencoder.
The differences between VMS stream h264 from IP camera and the stream returned from VPS are:
vpspasstru < 1 second
vpsboundingboxes around 1 second
vpsjpegencoder around 5 seconds and is stable
We investigated the pipeline of vpsjpegencoder with GST SHARK.
It turns out the total proctime is below 1 second for all elements of the pipeline, but latency is around 5 seconds.
We tried to add queue leaky=2 before decodebin and jpegenc that has changed nothing.
We found out that delays are connected to IP camera fps
With 25 fps delay is below 1-2 seconds
With 10 fps delay is around 5 seconds
Questions:
- Do you have any ideas about how it is connected?
- If I take vpsjpegtranscoder pipeline, a plugin that doesn’t touch video (just pushes gstbuffer further), but adds some metadata (like vpsboundingboxes) and I put the plugin before header_inserter I can see video, but no metadata. If I remove header_inserter and finish my pipeline with plugin I will get metadata, but no video (which is fine without header_inserter). The question is why with header_inserter the metadata of plugin just before it doesn’t go to VMS?
- What is a good way to send nothing to VMS from the pipeline? Can I just make a fakesrc as a ghostsrc of the pipeline?
We can provide the images of the pipeline and GST SHARD profiles on demand.
The time difference between VMS and VPS is less than 1s
Hardware:
VMS Professional + 2020 R2
(Windows 10, RAM 8GB, CPU: i5-4310)
VPS
(docker container on Linux RAM: 8 GB, Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz)
Machines are in the same local network