I believe any device that has a DirectShow capable driver can be used with OBS.
Webcams usually grab a generic driver off Windows Update, or you install the vendors official drivers.
DSLR's dont usually need the feature to send video to any other device other than its own memory card.
There are a few programs which can tap into the sensors Liveview, but be warned the CMOS sensors of DSLR's are large, complex, designed for many megapixels of high quality photography, and get hot over use. Many DSLR's wont record over 20 minutes of video.
I don't own a GoPro but seeing as they are video orientated they should be fine. There are a few tutorials on how to use a GoPro as a webcam.
Also to note: Not every device may come with a 64-bit driver, and will only work with OBS-32bit