четверг, 16 апреля 2009 г.

Нет звука в расширениях Firefox (Iceweasel). Молчание ледовых горностаев.

Вы уж простите за флуд, но не могу удержаться. Что значит iceweasel? Ледовый, или может быть снежный? Горностай, или может ласка?

Что касается звука... Его отсутствие я вообще не сразу осознал. Во флешовых роликах он играл без проблем. А вот когда поставил расширение, от которого я ожидал получить звуковые уведомления, то этих самых уведомлений я как раз и не услышал.

Сначала как всегда подумал на расширение. Но пять писем разработчику показали, что эту проблему он вряд ли решит, и не факт что он вообще виноват. Пришлось осваивать азы плагиностроения и отладки расширений в фоксе. Последнее, кстати, реализовано не ахти как, и в конечном счете пришлось прибегнуть к старым недобрым отладочным выводам, постоянно перезапуская не то фокса, не то горностая.

В конце концов осознав, что сам огнеснежный зверь не воспроизводит звук, порылся основательно в инете и нашел баг о том, что разработчики Debian намеренно отключили звук в firefox.

У них там, видите ли, что-то работало нестабильно, и они решили таким образом избавить пользователя от проблем :) Впрочем, было это давно, и имеется ли такая проблема сейчас - я понятия не имею. Может файл просто остался с тех времен. А может даже я сам отключил, потому что достали назойливые звуки веб-страниц! :)

Исправить очень легко: в файле /etc/iceweasel/iceweaselrc заменить ICEWEASEL_DSP="none" на ICEWEASEL_DSP="auto"

Быстро проверить звук можно открыв Инструменты / Консоль ошибок, и введя там вот такое:

var sound = Components.classes["@mozilla.org/sound;1"].createInstance(Components.interfaces.nsISound); sound.playSystemSound('/usr/share/sounds/KDE_Notify.wav');

, указав в качестве звукового файла такой, который имеется в вашей системе.

2 комментария:

  1. Спасибо. А то я тоже недавно наткнулся и недоумевал, куда оно пропало, уже сам искать собрался,а тут -- ответ :)

    ОтветитьУдалить
  2. Просто авторы обьелись мороженным - icedove и iceweacel. :)_

    ОтветитьУдалить