我一直在使用 python-libevdev 并注意到事件时间戳似乎会环绕。例如,当我运行以下脚本时:
import libevdev as ev
with open('/dev/input/by-path/my-event-kbd', 'rb') as fd:
device = ev.Device(fd)
device.grab()
for e in device.events():
if e.matches(ev.EV_KEY):
if e.value == 0:
print('release', e.usec)
elif e.value == 1:
print('press ', e.usec)
我得到了:
press 285047
release 898527
press 383116
release 828000
press 164149
release 295935
press 929637
release 65158
press 593924
release 750227
press 81770
release 210363
press 533884
release 652184
press 949230
release 81242
等等。 InputEvent.usec
的
docs只是说:
时间戳,微秒
任何人都可以解释为什么/如何这些值环绕?我如何使用这些值来计算按键被按下和释放之间经过的时间?