If you are interested in doing this in golang I wrote a library to avoid needing cgo: https://github.com/kevmo314/go-usb
I use this to access UVC devices correspondingly without cgo: https://github.com/kevmo314/go-uvc