如何使用 Javascript 检测设备是否可以播放杜比全景声 (Dolby Atmos Sound)

use*_*606 6 javascript dolby dolby-audio-api

我正在寻找一种方法来检测我使用的设备是否支持杜比全景声 (Dolby Atmos) 声音。

经过一番搜索,我发现了这个电话。

https://github.com/w3c/media-capability/blob/main/explainer.md#spatial-audio

navigator.mediaCapabilities.decodingInfo({
    type: 'file';
    audio: {
        // Determine support for Dolby Atmos by checking Dolby Digital Plus and spatial rendering.
        contentType: "audio/mp4; codecs=ec-3",
        spatialRendering: true,
    }
}).then(result => {
    // Do things based on results.
    console.log(result.supported);
    console.log(result.smooth);
    console.log(result.powerEfficient);
});
Run Code Online (Sandbox Code Playgroud)

我想这会检测媒体编码所用的编解码器以及它是否支持空间音频。

检测编解码器并不一定能检测系统是否可以支持杜比全景声(Dolby Atmos),据我了解,系统需要通过具有拱形支持的 HDMI 电缆连接到接收器。

https://www.samsung.com/my/support/tv-audio-video/how-to-use-hdmi-arc-on-samsung-smart-tv/

接收器需要支持多个输出,以通过 HDMI 架构获取从编解码器解析发送的元数据,然后接收器知道哪个说话也发送特定的声音。

像这样的东西。 https://www.richersounds.com/catalog/product/view/id/16007/s/denon-avcx8500h-black/

有什么可靠的方法可以检测您的系统是否真正支持杜比全景声(无论是使用接收器还是符合杜比全景声的条形音箱)。

有什么建议么?

Bra*_*rad 2

检测编解码器并不一定能检测系统是否支持杜比全景声

正确的。

有什么可靠的方法可以检测您的系统是否真正支持杜比全景声(无论是使用接收器还是符合杜比全景声的条形音箱)。

不幸的是,浏览器无法检测到这一点。

浏览器本身甚至操作系统并不总是知道下游是什么。关于这些坏消息我很遗憾!