求浏览器扩展,怎么才能只在当前激活的页面发出声音?

众所周知,Chrome系浏览器播放视频音频时,标签页有一个小喇叭图标,点击喇叭可以快速静音。
但是这个功能不够智能,有的时候我需要只让前台页面发声,当我切换到其他页面时,自动静音。
然后我在edge商店、Chrome商店都找了一个扩展,但是我发现没有效果。

无论图标显示on还是off,都没有产生自动静音的效果。
是我不会用嘛?或者有没有类似的扩展?没有的话可能又得自己搓了…


最后自己搓了, 理论上不会更新 GitHub - tumuyan/Auto-Mute: 一个能自动静音后台标签页的Chrome/Edge浏览器扩展

mute.1

1 Like

实在受不了了,花了些时间自己搓出来了。
还是希望能用上别人在维护的成品。

现在代码就这么几行:

var tabNow = -1;
chrome.tabs.onSelectionChanged.addListener(function(tabId,  selectInfo) {
    console.log("onSelectionChanged: " + tabNow + "->" +tabId );
    try{
        chrome.tabs.update(tabNow, {muted: true});
    }catch(e){
        console.log("Error-Mute-Tab-"+tabNow+"\n"+e);
    }

    chrome.tabs.update(tabId, {muted: false});
    tabNow = tabId;
});
 

啊厉害了。但是怎么用?

随便找个扩展当壳子,把代码粘贴到background.js,就完事了.
还是希望找到别人做好的能用的完善的工具…

mute other tabs搜了一下,于是就找到一个恰好就叫这个名字的扩展:

mute other tabs

很奇怪 我已经重启过edge浏览器了 扩展的开关也切换过 但是没有产生自动静音的效果。

Firefox 可以打开 about:config 做如下配置:
media.block-autoplay-until-in-foregroundtrue

已经上架edge商店了,有需要的朋友可以安装。

https://microsoftedge.microsoft.com/addons/detail/ahnjeefliifcofmjceffghigncgoigmj

上商店其实也就两个意义:打开浏览器时不会弹窗警告;直接搜索就能安装不需要下载解压载入一通操作。
有意愿上传Chrome web store的朋友可以帮上下Chrome,代码在这里