GstInterpipe - Timestamp Synchronization
Open-source project from RidgeRun. |
This page contains a detailed description of the GstInterpipe Timestamp Synchronization feature.
The transferred buffers will go through two (or more) different pipelines. Each pipeline will have its own base time and, hence, the buffer timestamp will have a different meanings in each one. This can induce problems in pipelines where synchronization is required. To solve this problem, the buffer timestamp is compensated taking into account the combination of the base times. The result is an equivalent relative buffer time. This feature, however, can be disabled if desired by setting the stream-sync property. The following table shows the property:
Property | |
---|---|
Element | interpipesrc |
Name | stream-sync |
Description | Adjust buffer timestamps in order to achieve equivalent buffer times |
Description of valid values in the stream-sync property.
stream-sync | |
---|---|
restart-ts | The timestamp is set according to the base time in the interpipesrc element |
passthrough-ts | The timestamp compensation is disabled |
compensate-ts | The buffer's timestamp is compensated according to the base time on the interpipesrc element |
The following image exemplifies the potential synchronization problems.