Eye-tracking, Screen and Event Capturing System for Windows. A web application running on a separate PC allows for real time monitoring of the users actions.
GNU General Public License v3.0
9
stars
1
forks
source link
videvt2ssa no output when gaze event time is larger than the initial video frame end time #106
videvt2ssa.py sometimes fail to output the SSA file when everything else seems to work. In a particular case, I have identified a bug as the follows.
At around line 400 of the file, we have code:
if evt_time >= fstart_time:
if evt_time < fend_time:
event_count += 1
video_frame_events[frame_num].append((
vi, frame_num, fstart_time/1000.0,
e['time'], e[X_COL], e[Y_COL], e['status']))
else:
# garyfeng
if PRINT_VERBOSE:
if(video_frame_events[frame_num]):
printf(" ", video_frame_events[frame_num])
# garyfeng
# if the evt_time is larger than the current fend_time
# we need to FF the frames until they match.
This ensures that evt_time is larger than fstart_time. If evt_time > fend_time, though, the current code will
advance the frame_num by 1, and
move to the next gaze event.
The result of advancing both is that some times you never catch up.
The solution is to advance the frame_num until the fend_time eventually catches up with the evt_time. This is fixed with adding a while() block to advance the frame_num.
while(evt_time > fend_time):
This fixed the problem. Similar problem may have occurred in the past that resulted false missing data. One user reported having recovered significant amount of data after this fix.
videvt2ssa.py
sometimes fail to output theSSA
file when everything else seems to work. In a particular case, I have identified a bug as the follows.At around
line 400
of the file, we have code:This ensures that
evt_time
is larger thanfstart_time
. Ifevt_time > fend_time
, though, the current code willframe_num
by1
, andThe result of advancing both is that some times you never catch up.
The solution is to advance the
frame_num
until thefend_time
eventually catches up with theevt_time
. This is fixed with adding awhile()
block to advance theframe_num
.This fixed the problem. Similar problem may have occurred in the past that resulted false missing data. One user reported having recovered significant amount of data after this fix.