LinuxMCE Forums

General => Users => Topic started by: Esperanto on March 12, 2013, 08:26:24 am

Title: multihead setups
Post by: Esperanto on March 12, 2013, 08:26:24 am
I wonder if there is any info available to configure a multiheaded setup where the second screen can function as a separate MD or just a separate orbiter
Title: Re: multihead setups
Post by: posde on March 12, 2013, 12:16:06 pm
Somewhere in the forum someone tried it once.
Title: Re: multihead setups
Post by: Esperanto on March 16, 2013, 01:15:10 pm
not very hopeful

I guess this is a nice feature for most people (I suppose not many live in a 2000+ square feet house). this could save on quite some hardware and electricity and even improve performance by being able to use a bit better hardware and divide it over multiple MD's.
Title: Re: multihead setups
Post by: l3mce on March 16, 2013, 03:49:42 pm
In order for an MD to be able to run two orbiters at once, it is going to need more hw/electricity than two ion nettops imo.

I could split a single output to multiple rooms. Running a separate orbiter would be a trick. Entertainment areas would need some serious thinking/coding to be able to run double duty from a single machine with multiple outputs. What you want could be done, but I reject on premise that it would be more cost effective.
Title: Re: multihead setups
Post by: iberium on March 17, 2013, 11:19:12 pm
it would definitely be cheaper on power and hardware to have several media directors instead of one big machine splitting it out.  The media directors could be asleep when not in use, but with one large machine, anytime one thing is needed, then that machine has to wake up every room.  Plus, you can use the follow me feature, if desired. 
Title: Re: multihead setups
Post by: l3mce on March 19, 2013, 06:50:41 pm
I am not sure I understand what you are saying.

If you have two outputs on your GPU, and you are wanting one to be for one room and one to be for the other... that is not currently possible, and while it was my intent to eventually do this... the next step would be figuring out how to detect and differentiate between outputs, drop that indent info into the database, build a new X window, lock down its state, designate a separate entertainment area for those idents which do not exist... and figure out what to do about avwizard.

It is a lot of work I discovered for a feature almost nobody would take advantage of and is handled more efficiently with separate MDs.
Title: Re: multihead setups
Post by: Esperanto on April 01, 2013, 10:14:10 am
That is exactly what I mean. There are several posibilities and I think that there are many use cases.

HDMI cables can be pretty long so I guess a lot of hybrid users could add an additional MD without requiring any additional hardware & power usage.

USB cable has its limitations but adding a touchscreen usb monitor and use it as a fixed orbiter would be a great feature that many might be able to use.

On a separate MD I agree that the electrical power difference would depend on the usage. However by adding a bit faster cpu the electrical power difference when running would not increase much but the performance increase would be very welcome.
Title: Re: multihead setups
Post by: Armor Gnome on April 01, 2013, 11:43:21 pm
I used a setup you could call a multihead for quite a while at my old address, I agree with l3mce that for the effort and with current limitations that adding another MD is a better solution.  What seems at first to be a simple configuration of xorg turns out to be much much more involved when you take into account the other elements mentioned in this thread such as AVwizard, where orbiter is drawn etc.  Remember also that unless you are able to continually support your custom configuration that the lmce community can not and should not assist you with issues that may come up.  Not being one to discourage experimenting, as I have several way-less-than supported MDs I will offer these suggestions.

*nVidia TwinView: It is easy to add duplicate display outputs on a second GPU 'after' avwizard has configured your primary display.  The elements to remember here is that the primary display must be on during any reboots or avwizard and possibly myth/xine will want to change your settings.  I used this for my bedroom/office with primary display (1080p) going to a desktop monitor via DVI-DVI cable and secondary (mirrored) display going to a TV at the foot of my bed via DVI-HDMI.  There was no smart home control of the second display because it was effectively hidden from LMCE, I just had to power off the desktop monitor and manually change the TV to that input.

*Current supported setup: I would need to get out my kill-a-watt to compare energy usage but I am willing to bet I could add 2-3 Acer Revos before I matched the power consumption of a similarly featured PC with a 450-650w PSU.  With separate physical hardware things such as bluetooth detection, standby, independent reboots, etc are all possible.  Things connected to either PC are assigned properly as are things such as lights and climate, under a combined PC I would not easily be able to define which lights that "showtime" should dim when a movie is placed into a single DVD rom.

*Possible middle ground: I have not used it under lmce but I know of several users who have had success with MD via virtualbox.  For this I recommend using the latest Virtualbox from Oracle and not the Virtualbox-OSE as it supports things such as USB 2.0 and PXE booting which could make or break this type of setup.  You would still have issues with things like bluetooth detection but seperate configurable devices could be combined into a central chassis.  You would need to 'in my opinion' build a PC with 2.5 X the resources as a standard MD as the host OS will most likely have an xorg and other resource consuming installtions.  While the GPUs are able to be split things such as drives, network cards, sound cards etc would need to be physically duplicated. 

Host Board
4core cpu
4gb ram
onboard video using side-memory
dual output GPU via PCIe
dual gig network card via PCIe
add on soundcard via PCIe or PCI
one DVD Rom (or blueray, though not sure if that is supported yet)

Host runs as a file server with its HDD(s) using lmce file structure - onboard network, video, one usb port reserved for file uploads to host
vboxMD using 1.5gig ram and 1 cpu core - assigned 1 of the add on ethernet ports, half the usb ports, config for NAT addressing using DHCP and PXE booting (output cables to a less used area)
vboxMD using 2.0gig ram and 2 cpu cores - assigned all of the above but add disk drive for easy access (the entire box for the above will go where this output is intended to go)

Full screen the vboxMD and locate near the display for a high use AV room.  The experience will be that of a local machine controlling that display/receiver/etc as disks inserted will be autorun on that drive since it 'belongs' to that vbox child.  Operations called for the smaller resource MD will be executed in the background and output will be remotely displayed along with 'owned' USB ports etc.

Living Room         |       Den
                TV    |   TV
          Chassis    |
Final note on the above setup.  I am not sure if a vbox child can 'own' a drive that does not contain media.  I believe an empty port first belongs to the host and only after something hits it can it be released and taken over by a vbox child.  That would need to be experimented on.  Good Luck

Title: Re: multihead setups
Post by: khonshu on May 26, 2013, 04:27:24 am
I've worked on a similar solution some years ago on an early build of 8.10 using KVM virtualization.  I was really interested in a single system supporting multiple TV's back then.  I had a motherboard with 3 PCI-x slots and put 3 cards in it and done VGA passthrough to 3 VM's.  Each of these I PXE booted MD's on.  I had some trouble getting the graphics to work, but I was able to get UI1 working pretty easily and had some success with UI2 masking before I got to busy and let this project lay dormant.

IMHO this would be my strongest opinion of how to build such a very unsupported configuration.  I was working with existing hardware I had.  I believe with enough experimentation to get the right motherboard one could get as many as 6 different VM MD's running this way.  You'd still need quite a bit of umff to handle this.  I was running on an single processor system.  My plan was, in the event this worked well, was to put this on a motherboard with dual Xeon's or dual i7's now, with 6 or so PCI-x slots.

I'd really like to be able to do passthrough of each HDMI/DVI output independent of the card.  This would let me have 2 or 3 MD's per card.  In this case one might have between 12 and 18 MD's on a single system.  And with LMCE core running on the metal, and installing the KVM kernel and parts one might build out a fairly large deployment on a single system.

In my use case, the LMCE core remained on an independent server, with only my test VM MD's on this virtualized box.

I would love love love to see LMCE embrace KVM or Xen.  Run each of the pieces of the core, Asterisk, DCE, etc in independent VM's.  This could do such things as allow each MD box to be a member of a cluster, and the core services could migrate between the least busy MD boxes.  I had this dream of trying to build out LMCE with MD's on my OpenStack cluster, but have never had time to really test this type of deployment.

All that to say, I work for a cloud service provider, working with virtualization everyday, it would be a huge, huge undertaking to re-architect LMCE to work this way fundamentally.  It would also require systems that had the VM bits in hardware, VTd VTx, etc, would require much different hardware than the light weight stuff we are all striving for, etc.

If someone really wants to support multiple MD's off of a single box however, this might be the most approachable solution.  Considering that the core runs pretty well as a VM now.