Friday 29 July 2022

Forcing HDR / Dolby Vision when not supported

 I came across VideoProcessor.org through a thread on AVSForums. From their own description, this sounded like something that might be of use for me to see how far I could push HDR on my venerable JVC X500 projector;

VideoProcessor turns a computer into a 4k HDR capable live video processor by connecting a video capture card to a renderer and taking care of details such as conversion, timing and HDR metadata.

This allows advanced renderers to do things like 3D LUT, HDR tone mapping, scaling, deinterlacing and much more which can significantly improve image quality on most displays and beamers.

It turned into quite the adventure, and when I finally got it working, I thought I'd write up the settings for posterity....

Having had a good read of both the AVS thread and the VideoProcessor.org site, I set about re-purposing a Ryzen 3 based PC I am using for whole house audio to see how far I could get. This has a radeon RX580 video card, and while far from the recommended GPU, I wanted to do this with minimal outlay, so really the only components I needed to purchase were  a HD Fury Arcana and  a Blackmagic Decklink Mini recorder 4K to ingest HDMI into the PC. (careful with this, I initially purchased the Decklink Monitor card which is the output version. Thanks to Amazon's great returns process, I was able to easily correct my error).


The Arcana is required to tell sources that they're connected to a Dolby Vision device (which my JVC projector is not). This tricks source devices (in this case a nVidia Shield) into outputting a normal HDR signal with the Dolby Vision layer encoded into it and which is suitable to the display's outputing, deinterlacing etc. In fact, many of the HDFury devices will work for this purpose. I lucked out by finding one second hand locally, so saved a good bit of cash. Though one of the downsides of the Arcana is that there's very little documentation on how to set it up with VideoProcessor - a lot of the guides focus on more expensive units such as Vertex etc. which have embedded configuration web pages - the Arcana is configured strictly on it's tiny screen using a single fiddly switch.

With the card and software installed, I downloaded VideoPorcessor as well as MadVR, which looks after the processing and rendering of the video.

My main source is an nVidia Shield Pro that runs Netflix, Prime Video and Kodi. My aim was to get HDR and Dolby Vision content out of those applications and onto my projection screen. The hardware chain looks like this;

nVidia Shield -> HDFury Arcana -> Decklink Mini Recorder 4K -> RX580 GPU -> Display

For quite a while, I was playing about with an HDMI splitter between the Shield and the Arcana.  (indeed, I tried several). I thought this was required to bypass HDCP, and I tried several to no avail. I could get HDR to work, but Dolby Vision content always ended up with a strong pink cast and substantial artefacting;

DV Failure as seen in VideoProcessor software 

Following quite a bit of playing about with settings in the Arcana, VideoProcessor, MadVR and various display outputs on the shield, I asked on AVSFroum and was promoted to install the latest 'fast sync' firmware for the Arcana, which should allow me drop the splitter altogether. And that worked!

At the time of writing, the firmware is version .86, but you can always check on HD Fury Discord support channel to get the latest.

So here's how I have everything configured to get HDR and Dolby Vision support from apps on the Shield to an unsupported projector;


nVIDIA SHIELD

One of the restrictions of the Decklink Mini recorder 4K is that it's limited to 4K/30Hz, so it's necessary to set up the shield with this in mind. The alternative  Decklink Quad HDMI will do full 60Hz, but is more expensive, and I'm OK with the 30Hz limit as I don't game. 

Here's my Display configuration;






With the Arcana attached to the Shield output and correctly configured, the Shield will offer a variety of display options that support both Dolby Vision and HDR. I chose YUV 422 12-bit Rec. 2020 as shown in the first image. It's also necessary to enable HDR content as shown in the second and Dolby Vision as shown in the third.

If any of these options don't appear, then there's something wrong later in the chain. Indeed, I went through a stage where I could get HDR enabled, but not Dolby Vision. This was due to having a HDMI splitter with a particular EDID setting in the chain, I believe.


HDFURY Arcana

There's a bunch of info and configuration screens in the Arcana, and it can be a bit daunting at first. Here's the settings I ended up with';

Audio
No change from defaults. Ironically, for an audio-focused device, this is not used in this application

Scaler
While not necessarily required to be set, I ended up with it configured to 4K30 422 12b LLDV. This matches exactly my required resolution, and I got tired of the Shield slipping back to 60Hz as I made various changes. When this happened, I'd lose input to VideoProcessor due to the 30Hz limitation on the Decklink Recorder. I'd need to set up the scaler to 30Hz to get a picture back to allow me reset the Shield display settings, so I just left it on.

eArc
No change from defaults.

HDR
Set to Force 1000 nits. I'm not sure if this is required or not. 

LLDV->HDR
Set to On, with Primaries set to BT2020.

OSD 
No change from defaults. This overlays a handy dandy readout of signal parameters on the image if something changes. Useful for debugging.

With those settings,, here are the readings from the various Arcana info screens when playing, for example, a Netflix Dolby Vision stream;









Video Processor

There's little enough configuration in the Video Processor software itself. It seems to just ingest the stream and pass it along to the renderer, in my case MadVR. There are some settings and fields etc., here's how I have it set up, mainly everything set to 'follow input'. I'm sure as I get more familiar with all of this, I'll be configuring it like a pro, but for now, these are the settings that work.



MadVR

Again, there's a full suite of configuration options in MadVR, accessed via the 'mad  home cinema control' tray icon, (ctrl-s), but apart from playing around with settings when things were not working, I don't really have any changes here beyond default. 

There's a handy overlay you can call up by pressing ctrl-j. Here's what it looks like with the same content referenced above;



As is likely evident from the above, I have a good deal yet to learn about all of this. However, this is the basis of a working solution, and worth documenting.

My next step is to introduce my Marantz AV8805 to the mix and get all this working with multiple sources etc. I also want to leverage the ability in MadVR to manage aspect ratios so I can see if I can have a smoother experience with my constant height scope screen setup and those pesky multi-aspect movies & shows.

I may also seek to put a better video card in the system now that prices are finally starting to come down. So plenty of tweaking ahead.



No comments: