Graphics
Intel® graphics drivers and software, compatibility, troubleshooting, performance, and optimization
20589 Discussions

Windows HDMI Audio Driver - WASAPI PCM 4.0 FL+FR+SL+SR layout support

Krobaruk
Beginner
3,782 Views

This is a re-post as the original thread was closed because it took me too long to provide the Intel SSU information (Which is now attached).

Is there any plan to improve the multichannel PCM support in the Intel Windows HDMI audio driver?

For 4 PCM channels, channel mapping support seems to be as follows:
Quad (FL + FR + SBL +SBR) - Supported
3.1 (FL +FR + C + LFE) - Supported
4.0 (FL +FR + SL +SR) - Unsupported.

Support for 4.0 is becoming more important as increasingly Quad format is not supported by AV receivers.

Tested on Intel 8th Gen Supermicro C246 motherboard (HDMI 1.4 output) and Dell laptop with 10th gen Intel CPU (HDMI 2.0 output) with the same result (WASAPI reports the channel layout is not supported). Other users have confirmed the same issue so this does not seem to be hardware dependant. The layout is supported fine with Intel HDMI output in Linux so seems to be a driver/software problem.

Two Intel based products I own are affected:
Dell Precision 3541 with 10th Gen I5
Intel 8th Gen I3 on a Supermicro X11SCA (SSU Output for this one is attached)

The same issue exists for other hardware which uses the Intel HDMI audio driver as well.

Another possibility is if Intel mapped Quad to FL+FR+SL+SR in the HDMI audio info frame compatibility would greatly improve.

0 Kudos
15 Replies
Alberto_R_Intel
Employee
3,754 Views

Krobaruk, Thank you for posting in the Intel® Communities Support.

 

In reference to your question, "Is there any plan to improve the multichannel PCM support in the Intel Windows HDMI audio driver?", We will do further research on this matter, as soon as I get any updates, I will post all the details on this thread.

 

Any questions, please let me know.

 

Regards,

Albert R.

 

Intel Customer Support Technician

 

0 Kudos
Krobaruk
Beginner
3,738 Views

Thank you. I can provide 4.0 audio samples privately for this which show the issue if needed. The current Foobar 2000 1.6.7 release has suitable WASAPI and channel mapping support when using multi-channel FLAC files.

0 Kudos
Alberto_R_Intel
Employee
3,727 Views

Krobaruk, You are very welcome, thank you very much for your providing that information.

 

According to the information on the SSU, the graphics driver currently installed on your computer is version 30.0.100.9862. 

 

Just to let you know, the Intel® graphics drivers are generic, meaning they might or might not work with your system. We always recommend to install the graphics driver provided by the manufacturer of the computer, since that driver was customized by them to work with your specific platform.

 

I looked in Supermicro's website and the latest graphics driver they have available is version v25.20.100.6326, please try a clean installation of that driver following the instructions in the links below:

https://www.supermicro.com/support/resources/results.cfm

https://www.intel.com/content/www/us/en/support/articles/000057389/graphics.html

 

If the problem persists after that, then try a clean installation, this time of Intel® graphics driver version 30.0.100.9805:

https://www.intel.com/content/www/us/en/download/19344/intel-graphics-windows-10-windows-11-dch-drivers.html

 

Also, we can see that the Windows* version on your machine is 10.0.18363 Build 18363, please get in contact directly with Microsoft support to gather the instructions on how to update the Windows version to the latest one 19043 or 19044:

https://support.microsoft.com/

 

And also we advise to contact Supermicro directly to make sure the latest BIOS version is currently installed or to collect the information on how to do the update to the latest one:

https://www.supermicro.com/en/support

 

Once you get the chance, please let us know the results. " I can provide 4.0 audio samples privately for this which show the issue if needed", if the problem remains then yes, I can send you an email so you can provide those samples privately for us to have a better understanding of the situation.

 

Regards,

Albert R.

 

Intel Customer Support Technician

 

0 Kudos
Krobaruk
Beginner
3,710 Views

Hi Albert,

 

I updated the Supermicro bios from 1.5 to 1.6a today, that did not help. The new bios is dated July 2021 so very recent.

I also did all of the Windows updates and a clean install of the 9805 driver you linked. This did not change the result either (New SSU output attached).

 

 

0 Kudos
Alberto_R_Intel
Employee
3,702 Views

Krobaruk, Thank you very much for sharing those results.

 

We are sorry to hear the issue persists after doing the BIOS, Windows* and driver updates. We will continue with our research on this matter, but just to confirm, did you also try to install Supermiscor's driver version v25.20.100.6326?

https://www.supermicro.com/support/resources/results.cfm

 

Regards,

Albert R.

 

Intel Customer Support Technician

 

0 Kudos
Alberto_R_Intel
Employee
3,661 Views

Hello Krobaruk, I just wanted to check if you saw the information posted previously and if you need further assistance on this matter?


Regards,

Albert R.


Intel Customer Support Technician


0 Kudos
Krobaruk
Beginner
3,641 Views

Hi Albert R,

 

No luck with the older version either.

0 Kudos
Krobaruk
Beginner
3,635 Views

I've not seen any research yet so I will provide my research on this topic.

 

First of all I want to define the exact area of the problem. I'm talking about issue when outputting multi channel PCM over HDMI which has a less common channel layout. Output of Dolby or DTS bitstreams over HDMI are unaffected and not relevant to this bug. The HDMI EDID for modern audio products will provide the supported speaker layout to Windows / the Display/Audio driver. This speakers config information (Which you can see in Windows Device manager) defines which speakers are present it does not define which combinations of speaker are supported for multi-channel PCM output. Nearly all receivers return 7.1 for this regardless of the actual speakers connected to the receiver because they will just downmix if needed. The channel mappings referred to later are here:

In addition to this there is also a Surround Back Centre (SBC) possible which is used by 6.1 speaker configs.

 

Multi channel PCM by default has no definitions to say which channel is which. For Flac, Wav and MKVs a header is added which defines which channels are which in the multichannel PCM:
WAVEFORMATEXTENSIBLE Structure | Microsoft Docs

This header is dealt with by software and not the Intel driver but I'm just describing where these different channel mappings come from. The current stable version of Foobar 2000 properly supports this header and the next major release of Kodi will too. If no header is present the software will pick a default channel layout for the number of channels in the source file.

When using WASAPI the playback software will then request if the supported channel mapping it needs is supported by the WASAPI endpoint/output device. If it is supported then then the software goes ahead and sets up the connection, if it is not supported the software will  request other similar output configurations until it finds one that is supported (Usually defaulting to stereo after a few failed attempts). 

 

Once the WASAPI channel layout is agreed the Display/Audio driver needs to communicate the channel layout to the HDMI receiver. This is done using the AUDIOINFO frame defined in CEA861D specification. This is where the problem with the Intel driver is.

CEA861D defines the following standard channel layouts for HDMI receivers, I include if the Intel driver currently supports the matching WASAPI layout:
FL + FR (Stereo) - Supported
FL + FR + LFE (2.1) - Unsupported
FL + FR + C (3.0) - Unsupported
FL + FR + LFE + C (3.1) - Supported
FL + FR + SL + SR (4.0) - UNSUPPORTED
FL + FR + LFE + SL + SR (4.1) - Unsupported
FL + FR + C + SL + SR (5.0) - Unsupported
FL + FR + SL + SR + SBC - Unsupported
FL + FR + C + SL + SR + SBC (6.0) - Unsupported
FL + FR + LFE + SL + SR + SBC - Unsupported
FL + FR + LFE + C + SL + SR (5.1) - Supported
FL + FR + SL + SR + SBL + SBR - Unsupported
FL + FR + LFE + C + SL + SR + SBC (6.1) - Unsupported
FL + FR + C + SL + SR + SBL + SBR (7.0) - Unsupported
FL + FR + LFE + SL + SR + SBL + SBR - Unsupported
FL + FR + LFE + C + SL + SR + SBL + SBR (7.1) - Supported

A lot of the missing formats are problematic. 3.0, 4.0, 4.1, 5.0 and 6.1 formats although rare are used in some commercial Bluray releases so adding support for the missing formats would be a good step forward.

The issue with lack of 4.0 support is particularly problematic. WASAPI defines the default layout for 4 channels as FL + FR + SBL + SBR which the Intel Driver maps to the same in the HDMI AUDIOINFO frames but this is not a standard supported layout for HDMI so compatibility is poor. If this was mapped to the standard FL+FR+SL+SR channel layout on the HDMI side it would be a big improvement.

Outputting these rarer formats in a 5.1 layout causes problems when upmixing so is not a good solution. The receiver does not know which  channels in this scenario are fake/silent so you end up with silent channels when applying an upmixer. 

Please could you enquire about adding WASAPI support for the missing standard HDMI channel layouts and either mapping FL+FR+SBL+SBR to FL+FR+SL+SR or at least offering an option to do so.

0 Kudos
Alberto_R_Intel
Employee
3,618 Views

Krobaruk, Thank you very much for sharing those details and the picture.


"No luck with the older version either.", Thank you very much also for providing those results, now we can continue with our research in order to try to provide a possible solution to this matter. As soon as I get further updates I will post them on this thread.


Regards,

Albert R.


Intel Customer Support Technician


0 Kudos
Alberto_R_Intel
Employee
3,594 Views

Hello Krobaruk, I just received an update on this matter.


First of all, we would like to inform you that your feedback has been passed on to the proper team for consideration and for them to be aware of your remarks. However, after reviewing the case, we just wanted to let you know that we cannot commit or promise any particular outcome as these are uncommon layouts and there may be different reasons why they aren't supported (validation costs, implementation, etc). Based on that, we cannot provide any ETA either as we are unsure if this will be picked up for future improvement. Let me apologize for any inconvenience.


Regards,

Albert R.


Intel Customer Support Technician


0 Kudos
Krobaruk
Beginner
3,588 Views

Hi Albert,

 

Thank you for the response.

 

I would be interested in any feedback that is returned, the Linux driver supports all of the channel layouts I mention above so it is odd that the Windows support is so limited.

0 Kudos
Alberto_R_Intel
Employee
3,578 Views

Hi Krobaruk, You are very welcome, thank you very much for your comments.


"I would be interested in any feedback that is returned" sure, I will double-check on your request to confirm if it is possible for us to provide that feedback. As soon as I get more information I will post all the details on this thread.


Regards,

Albert R.


Intel Customer Support Technician


0 Kudos
Alberto_R_Intel
Employee
3,544 Views

Hello Krobaruk, I just received an update on this matter.


For this specific case, it is important to mention that if this scenario is picked up for future improvement we may post an update on the thread. However, there is no ETA, it may take months, so our best recommendation is to keep reviewing the latest updates for his system provided by the manufacturer of it and to keep checking our download center website for the latest drivers:

https://www.intel.com/content/www/us/en/support/detect.html


Regards,

Albert R.


Intel Customer Support Technician


0 Kudos
Krobaruk
Beginner
3,536 Views

Thanks Albert,

 

If an example of current software that supports PCM channel mapping is needed then the last stable release of Foobar2000 is a good example (v1.6.7). The channel mapping can be set on a multi-channel FLAC file using the official metaflac.exe tool and the WAVEFORMATEXTENSIBLE_CHANNEL_MASK header; Foobar2000 will then attempt to output the defined channel mapping (Foobar just needs configuring to use the HDMI WASAPI audio device).

0 Kudos
Alberto_R_Intel
Employee
3,524 Views

Krobaruk, You are very welcome, thank you very much for your response.


Thank you very much also for sharing those details as well, we will definitely take them into consideration as the research on this matter moves forward.


Regards,

Albert R.


Intel Customer Support Technician



0 Kudos
Reply