Hi everyone! I’ve been doing some sleuthing and it seems chroma siting has an effect on whether Infuse recognizes a 10-bit HLG file as HDR or not. I’ve seen that HLG files ripped from BBC iPlayer or Sky’s Broadcast (not NOW TV for some reason though) use “topleft” chroma siting and “bt2020-10” as color transfer that, in my admittedly amateurish opinion, makes Infuse not recognize that it’s an HDR file. Not just Infuse, even Android phones fail to recognize it as HDR and continue playing as SDR. The only device that’s managed to play it as HDR is the Kodi app on my Android TCL TV. I wanted to reach out here to the devs to see if there’s been any precedent to this or not.
I noticed this when trying to create a DV Profile 8.4 file from an RPU from a lower-bitrate DV release and a higher-bitrate HLG release. And then I noticed that Infuse doesn’t recognize it as HDR, let alone DV. Here’s what FFProbe shows for info for a file that isn’t recognized:
streams": [
{
“index”: 0,
“codec_name”: “hevc”,
“codec_long_name”: “H.265 / HEVC (High Efficiency Video Coding)”,
“profile”: “Main 10”,
“codec_type”: “video”,
“codec_tag_string”: “[0][0][0][0]”,
“codec_tag”: “0x0000”,
“width”: 3840,
“height”: 2160,
“coded_width”: 3840,
“coded_height”: 2160,
“has_b_frames”: 2,
“sample_aspect_ratio”: “1:1”,
“display_aspect_ratio”: “16:9”,
“pix_fmt”: “yuv420p10le”,
“level”: 153,
“color_range”: “tv”,
“color_space”: “bt2020nc”,
“color_transfer”: “bt2020-10”,
“color_primaries”: “bt2020”,
“chroma_location”: “topleft”,
“refs”: 1,
“view_ids_available”: “”,
“view_pos_available”: “”,
“r_frame_rate”: “24000/1001”,
“avg_frame_rate”: “24000/1001”,
“time_base”: “1/1000”,
“start_pts”: 0,
“start_time”: “0.000000”,
“extradata_size”: 128,
“disposition”: {
“default”: 1,
“dub”: 0,
“original”: 0,
“comment”: 0,
“lyrics”: 0,
“karaoke”: 0,
“forced”: 0,
“hearing_impaired”: 0,
“visual_impaired”: 0,
“clean_effects”: 0,
“attached_pic”: 0,
“timed_thumbnails”: 0,
“non_diegetic”: 0,
“captions”: 0,
“descriptions”: 0,
“metadata”: 0,
“dependent”: 0,
“still_image”: 0,
“multilayer”: 0
},
“tags”: {
“BPS”: “17757779”,
“DURATION”: “00:53:38.007000000”,
“NUMBER_OF_FRAMES”: “77155”,
“NUMBER_OF_BYTES”: “7143082455”,
“_STATISTICS_WRITING_APP”: “mkvmerge v91.0 (‘Signs’) 64-bit”,
“_STATISTICS_WRITING_DATE_UTC”: “2025-03-31 05:16:48”,
“_STATISTICS_TAGS”: “BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES”
},
“side_data_list”: [
{
“side_data_type”: “DOVI configuration record”,
“dv_version_major”: 1,
“dv_version_minor”: 0,
“dv_profile”: 8,
“dv_level”: 1,
“rpu_present_flag”: 1,
“el_present_flag”: 0,
“bl_present_flag”: 1,
“dv_bl_signal_compatibility_id”: 4,
“dv_md_compression”: “none”
}
]
}
Here’s the FFProbe output for a file that is recognized as HDR by Infuse and by other devices:
streams": [
{
“index”: 0,
“codec_name”: “hevc”,
“codec_long_name”: “H.265 / HEVC (High Efficiency Video Coding)”,
“profile”: “Main 10”,
“codec_type”: “video”,
“codec_tag_string”: “[0][0][0][0]”,
“codec_tag”: “0x0000”,
“width”: 3840,
“height”: 2160,
“coded_width”: 3840,
“coded_height”: 2160,
“has_b_frames”: 1,
“sample_aspect_ratio”: “1:1”,
“display_aspect_ratio”: “16:9”,
“pix_fmt”: “yuv420p10le”,
“level”: 150,
“color_range”: “tv”,
“color_space”: “bt2020nc”,
“color_transfer”: “arib-std-b67”,
“color_primaries”: “bt2020”,
“chroma_location”: “left”,
“refs”: 1,
“view_ids_available”: “”,
“view_pos_available”: “”,
“r_frame_rate”: “25/1”,
“avg_frame_rate”: “25/1”,
“time_base”: “1/1000”,
“start_pts”: 0,
“start_time”: “0.000000”,
“extradata_size”: 138,
“disposition”: {
“default”: 1,
“dub”: 0,
“original”: 0,
“comment”: 0,
“lyrics”: 0,
“karaoke”: 0,
“forced”: 0,
“hearing_impaired”: 0,
“visual_impaired”: 0,
“clean_effects”: 0,
“attached_pic”: 0,
“timed_thumbnails”: 0,
“non_diegetic”: 0,
“captions”: 0,
“descriptions”: 0,
“metadata”: 0,
“dependent”: 0,
“still_image”: 0,
“multilayer”: 0
},
“tags”: {
“BPS”: “14664899”,
“DURATION”: “00:48:37.280000000”,
“NUMBER_OF_FRAMES”: “72932”,
“NUMBER_OF_BYTES”: “5347702101”,
“_STATISTICS_WRITING_APP”: “mkvmerge v81.0 (‘Milliontown’) 64-bit”,
“_STATISTICS_WRITING_DATE_UTC”: “2025-03-20 09:23:09”,
“_STATISTICS_TAGS”: “BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES”
}
}
Even DV Profile 8.4 files recorded by iPhones use “left” chroma_location and “arib-std-b67” color_transfer. So, is there any discourse on if this could be the issue that causes it to not be recognized as HDR or if there’s something else at play? I’ve read that bt2020-10 and arib-std-b67 are mathematically equivalent (don’t quote me on that), so maybe this won’t require too much engineering to implement?