Dynamic conversion of HDR10+ SEI to DV P8 NAL

Thanks, the flickering is gone and the dark areas are much more detailed than if I played the movie in HDR10 :slightly_smiling_face:

1 Like

I get it, the HDR10+ conversion to P81 feature works for MP4 and MKV, not for ISO and M2TS. Great thanks.

1 Like

That explains why my copy of Sakra and Alien don’t work. I’ll remux to MKV and test.

@cpm, if you enable the dynamic conversion for HDR10+ to DV and a mkv file has both DV and HDR10+, I am assuming that the software will default to using the native DV stream instead of converting HDR10+ to DV? Is that correct?

Also, what is the recommended setting for the HDR10+ conversion - “Peak Brightness Source” the default being “histogram”?

Thank you again for all of the work you do.

1 Like

I tested my copy of Alien and Sakra which are currently the only HDR10+ movies I have. All settings were left on default apart from me selecting Display Led (DV-Std) and enabling dynamic conversation of HDR10+, colorimetry was left disabled. I’m using an LG G4.

It looks to be working correctly to my eye and a notably improvement over HDR10. Alien looks stunning as expected but Sakra really blew me away it really makes a big difference especially when they start using magic in the movie. There were points it felt overly bright even on Filmmaker mode but as I’ve not seen the HDR10+ original I can’t know if that’s the fault of the mastering or even whether it’s the max luminance setting?

Either way, this is fantastic work and I can’t wait for this to be a mainline feature!

1 Like

I can understand why ISO/M2TS that are DTDL would not work - if there is HDR10+ present - as would go through an alternative route in the BitstreamConverter (which does DTDL → STDL conversion, that does not do the HDR10+ conversion), but DTDL is only really relevant for DV, so not something would want HDR10+ > DV conversion for anyway.

But for other ISO/M2TS not sure why it would not use the same route as MKV - but then again not looked too closely at it - I am sure it could be done for that flow as well - maybe if there is an HDR10+ sample created, some developer can take a look, it is possible I could find some time in the coming weeks if it is something people want to test.

1 Like

Yes correct, if DV is already present and the video stream marked as DV by kodi/ffmpeg then it will not convert from the HDR10+ metadata if both are present and will always take the existing DV in preference, I did think about making this a user choice but a little too complex at present as kodi/ffmpeg does not “natively” understand HDR10+.

When kodi/ffmpeg eventually does have the ability to understand HDR10+ then another setting will likely be needed for the user to choose which processing they want, ideally I would see 4 potential settings for the curious and depending on system capability:

  • DV
  • HDR10+
  • HDR10 (fallback)
  • HDR10 (fallback) processed through VS10

histogram is the default for dovi_tool - so default here as well, I added the choice in as not baking into a file and can check for any difference more easily - see more here dovi_tool

2 Likes

Thanks for the feedback - good to hear people getting something out of it straight away.

Whilst I do not know the ins and outs in depth - the conversion from HDR10+ to DV is relatively basic - likely more opportunity to get a better result if more details are know on the HDR10+ implementation:

For me I have reached a conclusion on what I wanted to do and for my usage - the foundations have been proven possible (not there was much doubt) for others to take/re-arrange and build on - I see a variation on this potentially being folded into the kodi stack itself across multiple platforms- though they really need to sort out HDR10+ identification (likely a change in the codec init to expose the first HDR10+ SEI in the extradata, and should also expose the first RPU for (F)EL vs (M)EL differentiation there as well whilst at it!)

On a related note - ultimately I think it is possible we could see loading of DV RPU from another file whilst playing, rather like subtitles - as apposed to the current baking in the alternative RPU in HYBRID files.

2 Likes

@cpm Just updated with the T6 version, I couldn’t see the lldv option in type . I see only player led hdr and vs10 only . Since I use a jvc projector which dont support DV , I am using hdfury to force Edid . So what should be my setting now or I am mssing anything to setup properly. Any recommended payload for jvc projector config ? Thanks

Should mean your EDID does not have a compatible [Player Led DV-LL] Dolby VSVDB in it, maybe check your hdfury setup?, or alternatively take the hdfury out of the chain and use Player Led HDR.

If using Player Led HDR you can configure the Dolby VSVDB via the colour and min and max luminance in the UI directly - according to your JVC projectors abilities.

Maybe something on here will help for the values if you don’t know your projectors spec: https://github.com/xnappo/ez_dv_edid_fw/archive/refs/heads/main.zip

Also can ask @OCEFDA to opine on if better to set any HDR InfoFrame payload as well, otherwise will be PQ/0.

2 Likes

The Peak Brightness Source options are not really explained in the GitHub link either, there is only a mention that they exist.

@quietvoid Could you explain the differences between the various PBS options (histogram, histogram99, max-scl, max-scl-luminance)?

FYI, The code has some more comments:

1 Like

This is the Dolby VSVDB value that has been entered in the CE UI “ 4903685698A953 “ , so if I understand correctly the value which I have here is the reason that is not compatible to set the player led LLDV ? So have to change this by checking the github link ? I have min luminance set at PQ0 and max set at PQ2900.

Thanks again .

Something interesting i noticed with my Philips 808.

I don’t use refresh rate below 60hz or 50hz and watch everything on these modes. Anyone having lip sync issues should try doing this btw.

Anyway, this causes either a black screen with my tv saying the video format not supported or picture completely freezes, only rebooting the tv fixes it. I can’t use cable tv, built in apps etc. Seems like decoder or something crashes on the tv.

These don’t happen with native files or files with 25fps like Clarkson’s Farm which gets played at 50hz.

Edit: Actually, this happens with all conversions to DV, not just HDR10+. I haven’t been able to keep up with Cpm’s builds and I have no idea when this has started happening. It could even be the tv update.

@jkatchy2 , I do not have a JVC projector but from what I understand it takes into consideration the HDR InfoFrame Metadata, so besides the VSVDB settings you can also set the HDR InfoFrame Metadata Payload to see improvements on the image. Start with the same values as the VSVDB block (the ones that overlap) and then you can adjust to personal taste.

Use the spreadsheet below to generate the HDR InfoFrame Metadata to insert into the Payload field.

dolby_vsvdb_calc_MOD_6.xlsm (59.3 KB)

@cpm , thank you again for all of the fantastic work on this new functionality.

As a curiosity, you mentioned that - “L5 Metadata currently is not being adjusted - should not be relevant to tv-led but interesting if any real negative impact seen in player-led.” Is that something that was left out because it cannot be technically done with the current tools or because you did not have the time to do it?

Thank you again!

Awesome work again, thanks!
My tv support the hdr10+ too, but after the dv conversion activated, the hdr10plus movie looks more better for my taste.

1 Like

In the case of HDR10+ / DV hybrid files, what takes precedence?

I am hoping that it will utilize the native DV in the file and HDR10+ → P8 conversion on HDR10+ only files

Ideally, the picture should look identical.

Not had time, I use DV-Std so not a priority for me, also think would be interesting if people actually see any issue in the letterboxing black bars.

1 Like