Motive assigning incorrect time stamps to data
Posted: Wed Feb 24, 2016 9:17 am
Hello,
I am using Motive 1.7.5 on a 64bit system. I have 3 Flex13 cameras and the OptiHub 2.
I want to externally trigger the OptiTrack cameras, and to do this I have an external signal generator which generates pulses of 3V at frequencies between 20 and 40 Hz. I connect the signal generator to the External Sync In on the OptiHub, set the Synchronisation within Motive to "Custom Synchronisation", the Source to "Sync in", and the Input Trigger to "Rising Edge". If I change the frequency of my signal generator I can see the FPS of the camera changing accordingly, as expected, also while recording.
Now, here are a number of strange behaviours, which all seem to be connected:
1) Using my signal generator at either 20 or 40 Hz, when I start recording, the increasing time in the Timeline pane is clearly not in real time - the "seconds" tick by much slower than a real second, and the "seconds" are different lengths for different frequencies (lower freq = longer seconds). If I switch to a "Free run" in the Synchronisation pane (i.e. not using the external trigger) the "seconds" are correct again. (note that I have also noticed that the milliseconds never seem to get to 1000, they only reach something just over 100, whether I am using the external trigger or not.)
2) If I export the tracking data then the time stamps seem to be correct: the final time is what I expect, as is the time between the stamps. The final time stamp is different to what I observe in the Timeline in Motive.
3) I am interested in changing the frequency of the motion tracking during a take. To test this I start a take using the external trigger with a frequency of 20Hz, after 5 seconds (real seconds measured by another clock) I change the frequency to 40 Hz, and after another 5 seconds (real seconds) I stop the take. Firstly, I can clearly see that the speed of the "seconds" in the Timeline speed up after I change the frequency. Secondly, I analyse the exported .csv file and find that the time stamps are all equally spaced throughout the data with 50ms between them (I had expected the first 5 seconds of data to have a period of 50ms and the second 5 seconds to have a period of 25ms). I can also see that the last time stamp is around 15 seconds (instead of 10 seconds, which is how long I recorded for).
4) I observe similar behaviour if I do not use the external trigger, and I manually change the camera FPS during the take. The displayed "seconds" in the Timeline are always 1 second long (which is a different behaviour to point (3) above), but the time stamps in the exported csv file are all the same, which is not correct.
This is very unfortunate behaviour. I had expected that the recorded time stamps are in real time, but they seem to be set according to the frequency at the beginning of the take.
Is this a bug, or a feature? Is it possible to tell Motive to use the real time relative to the start of the take, for each measurement, in the exported data file?
Many thanks!
I am using Motive 1.7.5 on a 64bit system. I have 3 Flex13 cameras and the OptiHub 2.
I want to externally trigger the OptiTrack cameras, and to do this I have an external signal generator which generates pulses of 3V at frequencies between 20 and 40 Hz. I connect the signal generator to the External Sync In on the OptiHub, set the Synchronisation within Motive to "Custom Synchronisation", the Source to "Sync in", and the Input Trigger to "Rising Edge". If I change the frequency of my signal generator I can see the FPS of the camera changing accordingly, as expected, also while recording.
Now, here are a number of strange behaviours, which all seem to be connected:
1) Using my signal generator at either 20 or 40 Hz, when I start recording, the increasing time in the Timeline pane is clearly not in real time - the "seconds" tick by much slower than a real second, and the "seconds" are different lengths for different frequencies (lower freq = longer seconds). If I switch to a "Free run" in the Synchronisation pane (i.e. not using the external trigger) the "seconds" are correct again. (note that I have also noticed that the milliseconds never seem to get to 1000, they only reach something just over 100, whether I am using the external trigger or not.)
2) If I export the tracking data then the time stamps seem to be correct: the final time is what I expect, as is the time between the stamps. The final time stamp is different to what I observe in the Timeline in Motive.
3) I am interested in changing the frequency of the motion tracking during a take. To test this I start a take using the external trigger with a frequency of 20Hz, after 5 seconds (real seconds measured by another clock) I change the frequency to 40 Hz, and after another 5 seconds (real seconds) I stop the take. Firstly, I can clearly see that the speed of the "seconds" in the Timeline speed up after I change the frequency. Secondly, I analyse the exported .csv file and find that the time stamps are all equally spaced throughout the data with 50ms between them (I had expected the first 5 seconds of data to have a period of 50ms and the second 5 seconds to have a period of 25ms). I can also see that the last time stamp is around 15 seconds (instead of 10 seconds, which is how long I recorded for).
4) I observe similar behaviour if I do not use the external trigger, and I manually change the camera FPS during the take. The displayed "seconds" in the Timeline are always 1 second long (which is a different behaviour to point (3) above), but the time stamps in the exported csv file are all the same, which is not correct.
This is very unfortunate behaviour. I had expected that the recorded time stamps are in real time, but they seem to be set according to the frequency at the beginning of the take.
Is this a bug, or a feature? Is it possible to tell Motive to use the real time relative to the start of the take, for each measurement, in the exported data file?
Many thanks!