Adjust System Time

So we have a new pin on filestream nodes to help syncing, but how does it work exactly? Does it nudege in millisceconds or adjust speed…?
I need to do some network sync’s playback so i’m wondering if it will help?
Cheers

Cat

I did a thing like this for a student project in the fall. Basically I used a codec where I can adjust playing speed finely, in my case mjpeg.

I then transmit the time of the “master” video via network to the other. if the current playing position is ahead of the master video I adjust the speed to be a little slower and vice versa if the current playing time is a bit behind.

the inspiration came from [http://en.wikipedia.org/wiki/Network_Time_Protocol|

I transmit the time every 2 seconds. As far as I could figure out it kept the sync within half a frame

It was made in a pretty quick and dirty way so it might be refined quite a bit.

the attached patch shows how it was done there are some pretty quick hacks in there… I cant remember why I set the mainloop as I did… but I did. use if it works for you

sunep

leipzig_video_player.zip (6.7 kB)

and it goes without saying that the length of the videos should be exactly the same throughout

Thanks Sune,
Anything to add devs?

nothing to add. that is the theory.

hey sune, please check your upload, i guess there is something mssing… the patch is only the master and it does not correct any time, but triggers the restart of a video.

as i understood the ‘Adjust System Time’ pin, it can change the position of a video without having the short stutter like when changing the speed pin. but to do so, you have to set the ‘Reference Clock’ in of the FileStream in the Inspektor to ‘System’. The value is an offset and the measure is milliseconds if i remember correctly.

@tonfilm

hmm funny ow ones memory fools you.

the uploaded patch worked fine, and now I remember that it was actually at first the idea that the two videos should run on the same machine with two screens as output.

the patch that synced there is this one.

leipzig-player8.v4p (25.9 kB)