if the same webrtc.html url works in a normal browser tab but oh-video / webframe is black, it is usually the iframe/permissions thing not go2rtc itself.
microphone + webrtc inside a widget is picky:
browser will block mic in a cross-origin iframe unless the iframe allow list has microphone; camera; autoplay
mixed content kills it if main ui is https and the go2rtc link is http (or bad cert)
oh-video sometimes wants a raw stream url, not the full webrtc.html page. try the go2rtc stream endpoint / the embed the widget docs expect, and keep webrtc.html for a webframe only
quick checks:
open browser devtools on the ui page, look for iframe permission / autoplay errors
confirm the widget url is exactly the same origin scheme as the ui (https both sides)
for two way audio you basically need webframe + allow mic, plain oh-video often wont pass microphone through
if webframe still blacks out, paste the exact widget yaml and whether ui and go2rtc are same host or reverse proxied.