Embed video player in OSC

Hello, is it possible to embed an IFrame of a video player on OBS on a public server?

There's an iframe widget that can be used to embed any webpage on the network. I don't know about making obs serve the video this way though.

I want to embed an OBS Ninja live stream on my OSC page on a public network, but the frame widget only works on a local network. Is there a way to bypass the «local network only»?

This restriction has been removed since v1.0.0

I did the test, the stream works perfectly on http://127.0.0.1:8080/, but it doesn't want to load on http://192.168.0.186:8080 and on a web server. Is there something I need to add in the frame widget?

Which version are you using ? Does "http://192.168.0.186:8080" work in a regular browser tab ?

Im using the v1.6.1, and yes, "http://192.168.0.186:8080" work in a regular browser tab

Can you check for errors in the browser's console (f12) ?
Can you confirm it occurs with the latest version too ?

Its ok, I found another way to integrate my stream.
Other question: How can I open a web page using an URL with a button? I tried using html, put it doesnt work.

I tried using html, put it doesnt work.

The <a> element works in the html property however it can't be linked to the buttons action (and you might need some css to control where/how it appears).

I really don't understand the sanitizeHTML, there is no other way to open a web page?

You can either create a simple html link using the html property, something like

<a href="http://some.link">Click here</a>

and style it using the css property, or you can create a custom module that opens the system's browser when an osc message is sent out:

var spawn = nativeRequire('child_process').spawn

var platform = 'linux'
var command = {darwin: 'open', win32: 'explorer.exe', linux: 'xdg-open'}[platform]


module.exports = {

    oscOutFilter: function(data){

        if (data.address === '/open_browser') {
            var url = data.args[0].value
            spawn(command, [url])
            return
        }

        return data
    }
    
}

Or you could use a frame widget to display the page directly in a widget.

Edit: in next release, it'll be possible to call openUrl() from a widget's script property.

Thank you very much!