mattkhan
Distinguished Member
I've decided to get back into the HTPC game after getting fed up on general flakiness and (non techy) user unfriendliness. I thought it might be interesting to write up my plans and progress as there are some aspects of this that I don't know whether it will work or not in the way I intend. Only one way to find out
Overall Plan
Rebuild my rack mount server (which is in a cheap and cheerful codegen 4U case) as a Xen on debian server. Use this to host 3 (domU) VMs which will provide;
Server Hardware
Mobo: ASRock Z87 Extreme6
CPU: Intel Core i5-4570 (Haswell)
RAM: single 8GB stick from Corsair
SSD for main host OS and image storage: 120G Samsung 840 EVO
HDDs for Unraid: 1 2TB WD Red (more to be added)
PSU: Thermaltake SP-550M Modular
BD Drive: LG BH16NS40.AUAU10B 16x
One reason for the mobo is that is has 2 HDD controllers that present as separate pci devices which means I can pass one through to the unraid vm.
I also intend to passthrough the Haswell iGPU through to the jriver vm.
I may need to add another soundcard so I can retire a squeezebox duet and use squeezelite instead but not decided on that yet.
Why JRiver on Windows 8?
My previous HTPC have run linux & I was originally intending to go with xbmc on debian but it just looks like it will still be a massive time sink to get everything working. The ecosystem around windows for media playback just looks much more comprehensive and easier to actually use. This is a good reason (for me) but not a compelling one, the compelling one is that a modern PC has a load more horsepower than all but the most highend processors so it should be possible to get absolutely top notch performance out of it. On this score I've been somewhat inspired by Nyal Mellor from Acoustic Frontiers who has been posting about their high end HTPC build.
Audio Processing
I'm intending to use acourate to deal with room correction and bass management. The filters calculated by acourate will be loaded into the jriver convolution engine and jriver will be then be configured to send LCPM over HDMI to a processor running in direct mode, thereby effectively treating my processor (a Marantz AV7005) as a multichannel DAC.
This should give a pretty massive uptick in the quality of the room correction available to me over the audyssey multeq xt on my processor. The advantage of running it in jriver is that jriver should then deal with audio sync correctly as it understands the latency cost of the convolution engine (which, in acourate's case, is reportedly adding about 1s of processing time )
Picture Processing
JRiver makes use of MadVR for its Red October HQ mode so I intend to use this. MadVR has recently added support for 3D LUTs (e.g. described here and here) which, if I can get it to work, will enable my projector to deliver a much more accurate picture as my PJ (JVC X3) has no onboard CMS at all. I will probably try and do this myself at first to be sure it works and is stable before getting Gordon from ConvergentAV in to do a proper calibration.
The open question here is whether I'm going to need to buy a discrete GPU to power it, I haven't yet found any comments on how much horsepower is required to use a 3D LUT so this might be just be a case of trying it out and seeing if it works.
The other reason to get a discrete GPU is to exploit the high quality scaling algorithms provided by madvr however the vast majority of my viewing is BD so this isn't a critical concern.
The elephant in the room on this point is whether or not madvr even works in a vm with a passed through gpu. If not then that would be quite a spanner in the works. I can't find anything that says it won't (and it looks like it should) but I can't find anyone positively asserting it will either.
Remote Control
I currently have an RTi remote (as all the kit is under the stairs) but I'll probably just get another Nexus7 to run Gizmo to control jriver with a backup of a bluetooth keyboard with trackpad built in.
Current Status
The dom0 Xen setup was completed the other week but then the mobo spontaneously died so I'm waiting for the replacement to arrive. This should turn up this week so, time permitting, I'll have the raw VMs up and running in the next week.
Overall Plan
Rebuild my rack mount server (which is in a cheap and cheerful codegen 4U case) as a Xen on debian server. Use this to host 3 (domU) VMs which will provide;
- unraid to store music (flac) & bd/dvd rips
- logitech media (squeezebox) server on debian for streaming music to the rest of the house
- jriver media centre on windows 8 to drive the main room
Server Hardware
Mobo: ASRock Z87 Extreme6
CPU: Intel Core i5-4570 (Haswell)
RAM: single 8GB stick from Corsair
SSD for main host OS and image storage: 120G Samsung 840 EVO
HDDs for Unraid: 1 2TB WD Red (more to be added)
PSU: Thermaltake SP-550M Modular
BD Drive: LG BH16NS40.AUAU10B 16x
One reason for the mobo is that is has 2 HDD controllers that present as separate pci devices which means I can pass one through to the unraid vm.
I also intend to passthrough the Haswell iGPU through to the jriver vm.
I may need to add another soundcard so I can retire a squeezebox duet and use squeezelite instead but not decided on that yet.
Why JRiver on Windows 8?
My previous HTPC have run linux & I was originally intending to go with xbmc on debian but it just looks like it will still be a massive time sink to get everything working. The ecosystem around windows for media playback just looks much more comprehensive and easier to actually use. This is a good reason (for me) but not a compelling one, the compelling one is that a modern PC has a load more horsepower than all but the most highend processors so it should be possible to get absolutely top notch performance out of it. On this score I've been somewhat inspired by Nyal Mellor from Acoustic Frontiers who has been posting about their high end HTPC build.
Audio Processing
I'm intending to use acourate to deal with room correction and bass management. The filters calculated by acourate will be loaded into the jriver convolution engine and jriver will be then be configured to send LCPM over HDMI to a processor running in direct mode, thereby effectively treating my processor (a Marantz AV7005) as a multichannel DAC.
This should give a pretty massive uptick in the quality of the room correction available to me over the audyssey multeq xt on my processor. The advantage of running it in jriver is that jriver should then deal with audio sync correctly as it understands the latency cost of the convolution engine (which, in acourate's case, is reportedly adding about 1s of processing time )
Picture Processing
JRiver makes use of MadVR for its Red October HQ mode so I intend to use this. MadVR has recently added support for 3D LUTs (e.g. described here and here) which, if I can get it to work, will enable my projector to deliver a much more accurate picture as my PJ (JVC X3) has no onboard CMS at all. I will probably try and do this myself at first to be sure it works and is stable before getting Gordon from ConvergentAV in to do a proper calibration.
The open question here is whether I'm going to need to buy a discrete GPU to power it, I haven't yet found any comments on how much horsepower is required to use a 3D LUT so this might be just be a case of trying it out and seeing if it works.
The other reason to get a discrete GPU is to exploit the high quality scaling algorithms provided by madvr however the vast majority of my viewing is BD so this isn't a critical concern.
The elephant in the room on this point is whether or not madvr even works in a vm with a passed through gpu. If not then that would be quite a spanner in the works. I can't find anything that says it won't (and it looks like it should) but I can't find anyone positively asserting it will either.
Remote Control
I currently have an RTi remote (as all the kit is under the stairs) but I'll probably just get another Nexus7 to run Gizmo to control jriver with a backup of a bluetooth keyboard with trackpad built in.
Current Status
The dom0 Xen setup was completed the other week but then the mobo spontaneously died so I'm waiting for the replacement to arrive. This should turn up this week so, time permitting, I'll have the raw VMs up and running in the next week.