Show HDMI-IN on Screen

Hello Dan,

I have seen on the market some TV BOX HDMI IN. Some digital signage solutions have included the option of HDMI-IN display. This case is being used to show Open TV. interesting feature.

1 Like

Launch a local VNC server and stream it on localhost as RTSP?

Is there an idiots guide available to achieve what @Guru_Evi is suggesting?

There is one. It gives you at least a starting recipe with ffmpeg/VLC but it may require some experimentation to get a full app. I don’t have any such devices so I can’t really test it.

Alternatively get an external HDMI-to-RTSP box, they’re relatively cheap.

I saw several devices on the market with HDMI, some other digital signage solutions have the option to display the HDMI road, nothing complex, just reported that the HDMI in which region and ready.

I think it would be a good resource for Xibo.
Enter the Timeline inform HDMI Input and the system starts playing this entry in the region.


You install the player “Unreal Media Server” and “Unreal Live Server”

You must connect this device to the player “” then set with “Unreal …” both

In the CMS should have a
"HTML to Embed" ==>
"<! DOCTYPE HTML PUBLIC" - // W3C // DTD HTML 4.0 Transitional // EN ">

test.avi Unreal Player

// Global player object
var po;

Play function (player)
InitPlayer (player);

var o = document.getElementById (player);

o.UseTCP ();
o.UseMediaServer ( “localhost: 5119”);
o.UseLiveAlias ??( “TV-RCAsrv”);
//o.ViewHalfSize ();
o.AdjustVolume (0);
o.ViewDoubleSize ();
//o.ViewFullScreenSize ();

o.Play ();
window.status = “Connecting …”;

catch (e)
var code = “Play (” “+ player +” \ “)”;
setTimeout (code 1000);

// Specify Which events we want to subscribe to
InitPlayer function (player)
pobj var = new PlayerObject (player);
pobj.object = document.getElementById (player);

pobj.eventHandler.OnStart = OnStart;
pobj.eventHandler.OnStop = OnStop;
pobj.eventHandler.OnPause = OnPause;
pobj.eventHandler.OnResize = OnResize;
pobj.initPlayer ();


function OnLoad ()
Play ( “player”);

OnStart function ()
window.status = “Playing”;

OnStop function (toBeContinued)
window.status = “Stopped”;
if (! toBeContinued)
var o = document.getElementById ( “player”);
o.width = 989;
o.height = 720;

OnPause function (state)
if (state == 0)
window.status = “Paused”;
else if (state == 1)
window.status = “Buffering …”;
else if (state == 2)
window.status = “Seeking …”;

OnResize function (width, height)
var o = document.getElementById ( “player”);
o.width = 989;
o.height = 720;
window.resizeTo (width, height);

</ Script>
</ Head>

// Create player with width = 400, height = 223, and id = "player".
po = new PlayerObject ( "player");
po.createPlayer (989, 720);

</ Script>
</ Body>

</ Html>

This works with a .JS (umediaplayer7.js) file to send to the player through “Assign Files”, the CMS assigns an ID and the ID is the one that should be placed in the HTML code ( “5927.js”) in my case.

Each player where you want to capture video .JS must send the file through direct assignment, so you know that the file is in the folder media player.

Excuse me, I’m using Google Transalte

We have tested it on windows player and works very well.

The problem is that most of these type of device’s capabilities are processor and platform specific. Some require re-encoding to get something useful, some will output a usable stream, some will output MPEG2-TS, others h.264 or h.265. I’ve seen several of these devices in my career, affordable “TV-to-computer” interfaces have existed for well over 3 decades and every generation is different.

Putting a specific device in ‘core Xibo’ seems like a waste of developers resources. Xibo is IMHO a platform, not a complete solution. You usually need an experienced systems administrator and/or developer to do things beyond showing some pics and videos (device set up, remote management, updates, servers, etc).

Setting up VLC/FFmpeg is a relatively simple and universal way without hacking the core to fit a specific device, which is why I suggested it. FFmpeg/VLC are libraries specifically focusing on supporting different sources of media whenever a new generation comes out.

Yes, it will involve getting your hands dirty to build a complete solution for your customers. If you’d like to send me a box, I’ll be glad to take a look and give you a pointer on a complete® solution.