标签: dolby-audio-api

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

我正在寻找一种方法来检测我使用的设备是否支持杜比全景声 (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/

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

有什么建议么?

javascript dolby dolby-audio-api

6
推荐指数
1
解决办法
817
查看次数

如何在Android应用程序上以编程方式检测Dolby系统是否处于活动状态

我的Android应用程序有问题,当我在7英寸的点火器上运行时,杜比有效,声音有一个缺陷,但是当禁用此选项时,问题就会消失.

我正在使用MediaPlayer播放长音频文件,我不能使用AudioPool因为这些是背景音,我已经在使用SoundPool来播放效果了.

有一种方法可以在Android应用程序上以编程方式检测Dolby系统是否处于活动状态?

有一种方法可以让MediaPlayer接受多渠道吗?

抱歉我的英语不好:p


我找到了一种以编程方式设置属性"dolby.ds.state"的方法,但这导致了一个很大的问题,所以不要这样做!

这种方式是:

System.setProperty("dolby.ds.state", "off");
Run Code Online (Sandbox Code Playgroud)

当我这样做时,该属性已应用但仅在重新启动设备时,在完成后我通常通过设备更改菜单选项仍然保持以编程方式设置值.

如果你做了同样愚蠢的事情,我找到了解决它的方法,运行以下代码并重置设备:

Properties sysProps = System.getProperties();
sysProps.remove("dolby.ds.state");
System.clearProperty("dolby.ds.state");
Run Code Online (Sandbox Code Playgroud)

audio android android-mediaplayer kindle-fire dolby-audio-api

2
推荐指数
1
解决办法
1990
查看次数