Closed yurikleb closed 4 years ago
I think there is something going fundamentally wrong here. The Floating point exception is just a symptom. My clock frequency correction has the same magnitude over multiple correction. This is not the case for you. 🤔
Hey @papr I think you are correct, I tested with several other webcams, they all seem to be stable and generating the same magnitude over multiple corrections. It seems like the problem lies within that specific camera (a USB microscope). I will reach out to the manufacturer, see if they can help.
@papr just another quick question. which version of libuvc this fork is based on? I just got a response from the camera manufacturer and they claim that in UVC v1.1 and above, this issue should not be occurring as "UVC 1.1 ignores and does not use this dwClockFrequency property"
I'm also seeing this problem. I'm running on Mac OS and libuvc 0.1.0 with three Logitec C920 webcams at the same time.
I get Correcting clock frequency to 0
followed by Floating point exception
every 30 minutes or so.
I haven't noticed the frequency getting smaller and smaller as @yurikleb did but I will check for that next time.
Replacing the cameras is not an option for me. Would it be possible to ignore dwClockFrequency
? Alternatively, I would be happy enough if I could catch this error and reinstantiate the device in my code.
I'm using libuvc together with pyuvc It seems like sometimes libuvc attempts to adjust the clock frequency to 0 which results in a Floating point exception: 8 and causes my app to crash.
here is a log of my app which is capturing a feed from a USB camera:
And another sample output:
Is there any way to fix this? I am also unable to catch this exception in my code or via the debugger either, which results in my app crashing every 5-10 minutes or so.