单击鼠标添加声音

时间:2019-10-01 10:50:57

标签: javascript audio gnome gnome-shell-extensions

我正在为主题创建一个辅助GNOME扩展。当单击按钮时,该辅助扩展程序旨在用于添加一些声音,但是,找不到用于显示如何添加声音以及如何调用它们的解决方案(和扩展程序)。

实际上,我发现了一些问题和文章,这些解释了如何添加音频功能的问题和文章,但是大多数都需要HTML。

我尝试使用here中的代码(通过Looking Glass和extension.js文件),它表示不需要HTML内容:

function playSound() {
    var audio = new Audio('/path/to/audio/file');
    audio.play();
}

但是,它为Audio()返回了未知函数错误:

ReferenceError: Audio is not defined

有人可以帮助我吗?谢谢!

1 个答案:

答案 0 :(得分:0)

如果您使用的是GNOME Shell> = 3.32,则可以使用MetaSoundPlayer:

const Gio = imports.gi.Gio;

let player = global.display.get_sound_player();

// Themed sound
player.play_from_theme('phone-incoming-call', 'arbitrary description', null);

// Sound File
let soundFile = Gio.File.new_for_path('/some/path/sound.ogg');
player.play_from_file(soundFile, 'arbitrary description', null);

或者GNOME Shell中有全局函数<= 3.30(old docs):

// Themed sound
global.play_theme_sound(0, 'phone-incoming-call', 'arbitrary description', null);


// File name
global.play_sound_file(0, '/some/path/sound.ogg', 'arbitrary description', null);

有一个gnome-shell提交显示了两个here的示例。