在 Firefox 中使用 Soundcloud、YouTube 等媒体密钥?

Tom*_*rom 30 firefox keyboard youtube

我在 39.0 版中使用 Firefox。我的键盘有媒体键,我想用它们来控制 Soundcloud、Youtube 等网站。

那可能吗?

火狐版

媒体键

har*_*ymc 18

Media Keys 插件在 Firefox 版本 57 中不起作用,因为开发人员已决定将 Firefox 重新制作为 Chrome 克隆。2017 年 11 月,他们宣布打算在 Firefox 57 中放弃其当前的附加格式,现在称为“旧版”,转而支持 WebExtensions,简单的英语与 Google Chrome 扩展程序非常相似。

理论上,这将向 Firefox 用户开放大部分 Chrome 商店,但会使所有(我的意思是所有)当前附加组件无效,这些附加组件的开发人员不会及时转换为 WebExtensions。

通过打开附加组件工具,人们已经可以看到 Firefox 56 中的问题。在版本 57 中无法使用的附加组件标有黄色的 LEGACY 通知:

图片1

我在 Firefox 中有 46 个附加组件,我用它们创建了适合我的环境。除了只有一个之外,所有这些都被标记为遗产。这个问题比你想象的要普遍和广泛得多。

下面列出了一些可能的解决方案:

  • 要求您的附加组件的开发人员努力转换为 WebExtensions。

  • Firefox 57 将包含一个“查找类似扩展”工具,该工具可能有助于查找替代插件。

  • 放弃 Firefox 转而使用 Chrome(我相信很大一部分 Firefox 用户会遵循这条路线)。

  • 关闭更新并永远使用 Firefox 56 - 不是真正的解决方案。在这里还可以使用Firefox Portable

  • 切换到 Firefox ESR,它将在 56 版中继续使用,直到 2018 年 6 月 26 日,希望有人能提出在 Firefox 57 中运行遗留附加组件的解决方案。这与上述解决方案没有太大区别,除了关键更新不会被阻止。

  • 切换到Pale MoonWaterfox,它们都是从 Firefox 分叉出来的,尽管并非所有附加组件都兼容。

这些解决方案都不是完美的,但我目前不知道更好的解决方案。我认为 Firefox 开发人员做出了一个非常愚蠢的决定,这将使他们损失掉已经蚕食的市场份额的很大一部分,但他们并没有征求任何人的意见。


另一种解决方案是在 Firefox 57 中使用 Chrome 扩展。附加组件 Chrome Store Foxified 已经允许这样做。

来自文章 How many Chrome extensions will run in Firefox

Mozilla 的Andy McKay 决定在 2016 年 11 月找出答案。他解析了 Chrome 商店站点地图并从中获取了 100,000 个扩展程序、应用程序和主题,他分析了其中有多少将在 Firefox 中运行。

根据他的发现,大约 76% 的样本大小的 Chrome 扩展将在 Firefox 中运行。其余的扩展要么缺少一个或多个 API、一个或多个权限,或者一个或多个清单。

我找到了 Chrome 扩展 Streamkeys ,据其作者称,它可以满足您的所有要求。但是,没有 Firefox 57,我不知道它是否可以在其中运行。

参考 :


适用于所有浏览器和版本的非常轻量级的解决方案,利用以下观察结果:

  • 某些媒体键由操作系统处理,尤其是音量键
  • 大多数媒体播放器都有与键盘媒体键功能相同的热键

专门针对 youtube,热键列表可以在文章30+ 你需要知道的 YouTube 键盘快捷键 中找到 。与键盘媒体键对应的一些是:

Spacebar- 暂停/播放视频(需要播放器焦点)
K键 - 暂停/播放视频(不需要焦点)
?(向上箭头键) - 调高音量 5%
?(向下箭头键) - 调低音量 5%
Ctrl+ ?- 移至下一个视频(仅在播放列表中)
Ctrl+ ?- 移至上一个视频(仅在播放列表中)

这些键盘的媒体键可以使用AutoHotkey映射到这些键 。AutoHotkey 键名列表可在文章键、鼠标按钮和操纵杆控件列表中找到 。

Youtube 的 AutoHotkey 脚本示例如下:

SetTitleMatchMode, 2        ; match anywhere in window's title
#ifWinActive YouTube        ; only if window title contains YouTube
Media_Next:: Send ^{Right}  ; Next Track - ctrl+right-arrow
Media_Prev:: Send ^{Left}   ; Previous Track - ctrl+left-arrow
Media_Play_Pause::          ; Stop/Start - Spacebar
Media_Stop:: Send {Space}
Run Code Online (Sandbox Code Playgroud)

上面的脚本完全未经测试,因为我的键盘没有这些键。

  • 不要把这归咎于扩展开发人员。由于谷歌(现在是 Mozilla)的荒谬遗漏/缺点/瘫痪,FF57(和 Chrome)中的 API 严重瘫痪。体面:密码管理器、会话管理器、上下文菜单管理器和下载管理器现在是不可能的。Chrome 等价物是对曾经在 FF 上可用的内容的苍白、用户敌对的嘲弄。 (3认同)

Tom*_*rom 16

媒体键

对的,这是可能的!为此,请从addons.mozilla.org下载媒体密钥。此工具为 Firefox 添加了媒体键事件侦听器,并使其可以使用:

  • 播放/暂停
  • 下一个
  • 以前的
  • 停止

在每个受支持的音乐/视频网站上。

问题

出于某种原因,媒体键仅在 Firefox 是活动窗口(在 Windows 10 上发生)时才有效。此外,附加组件目前不适 用于 Firefox 57+


xav*_*rat 6

目前 Firefox命令 API不支持 媒体键全局键

在 Mozilla 修复这些问题之前,您可以将ChromiumStreamkeys 扩展一起使用


Ist*_*115 6

Linux (D-Bus) 解决方案

只是把这个留在这里给下一个会遇到我半小时前情况的人。搜索了一下之后,我发现这个文档链接自 Mozilla bugtracker,事实证明最新版本的 Firefox 支持通过 D-BusMPRIS 接口,这意味着在用 d-feet 搞砸了之后我设法实现了我想要的结果!

在 Arch 下使用 i3,我通过以下方式成功地为 Firefox 设置了硬件键播放暂停:

  1. 在页面上 设置media.hardwaremediakeys.enabledtrueabout:config
  2. 安装playerctl以发送 d-bus 命令 ( sudo pacman -S playerctl)
  3. 将播放暂停键绑定到所需的操作
    ( bindsym XF86AudioPlay exec --no-startup-id playerctl play-pause)

ps.:我也建议增加页面media.mediacontrol.stopcontrol.timer.ms上的值about:config,因为默认情况下你只能在暂停后的60秒内重新开始播放。将其1000000000从默认值增加到毫秒60000将为您提供大约 11.5 天的时间。:P