While connected to a PC without drivers (such as GNU/Linux) over USB, the GoPro sets itself up as a USB Ethernet card and runs a DHCP server to assign your PC an address. Doesn't mess with my default route, so regular path to the internet still works. In my case the GoPro assigned me 172.23.177.54 and nmap helped me discover the GoPro was on 172.23.177.51. I had to ask the GoPro to start streaming by visiting http://172.23.177.51/gp/gpWebcam/START?res=1080p the result returned JSON with { "status": 2, "error": 0 } After that the gopro starts transmitting video packets over UDP. Can see them in VLC with url udp://@:8554 . There's a way to format the url to only allow incoming UDP from the relevant IP, but I never managed to master that in VLC. A complication is that these are IP broadcast packets and not regular IP/UDP packets with a standard source and dest ip In obs-studio, messing around with the VLC source stuff was not fruitful, but things became awesome once I added a media source, unchecked local file and this allowed me to include a network media source with url udp://172.23.177.255:8554 From what I've read, I can also ditch the USB cable and ask this thing to join a wifi network and get it to start broadcasting UDP packets there hmmm, the gopro hero 9 is very much an internet of things device, what could possibly go wrong