how can I make my custom metadata synchronize with the video

I use Multi Channel Metadata Provider to send my custom metadata,and I decide to develop a plugin on the XProtect Smart Client to show the metadata.the problem is how can I make my custom metadata synchronize with the live video?

will the milestone server do some synchronization thing to ensue that the Smart Client can receive video and metadata with the same time?

While the Smart Client is in live mode it will not wait. Depending how fast you generate the metadata it might or might not be feasible to have the metadata displayed as overlay or similar.

While in playback mode the synchronization can be done accurately.

so,while in live mode ,if the metadata is faster than the video, I can cache the current metadata util meet with the video that have the same time,then display the metadata?and if the metadata is slower than the video,synchronization is unavailable.Am I right?

Correct.

I my previous answer I assumed that metadata was never faster than the video but that is not necessarily a true assumption. Your statement is correct.