Last Comment Bug 378155 - Unable to play .WAV-file alert error in nsISound.play (due to no EsounD)
: Unable to play .WAV-file alert error in nsISound.play (due to no EsounD)
Status: RESOLVED DUPLICATE of bug 635918
[see comment #10]
:
Product: Thunderbird
Classification: Client Software
Component: General (show other bugs)
: unspecified
: x86 Linux
: -- normal (vote)
: ---
Assigned To: Nobody; OK to take it and work on it
:
Mentors:
: 453139 529522 (view as bug list)
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2007-04-20 01:47 PDT by Joona Pulliainen
Modified: 2012-01-09 10:49 PST (History)
14 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---


Attachments

Description Joona Pulliainen 2007-04-20 01:47:57 PDT
User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3
Build Identifier: version 2.0.0.0 (20070326)

Any custom alert (.wav-file) does not play. The default system sound doesn't output any sound either.

Reproducible: Always

Steps to Reproduce:
1.
2.
3.
Actual Results:  
No sound output

Expected Results:  
Sound output

Error: uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISound.play]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: chrome://messenger/content/preferences/general.js :: anonymous :: line 141"  data: no]
Comment 1 Wayne Mery (:wsmwk, NI for questions) 2008-08-14 21:43:34 PDT
Joona, do you still see this?

similar to bug 415752, 2.0.0.9, also linux
Comment 2 Steve Simms 2008-09-01 09:36:14 PDT
*** Bug 453139 has been marked as a duplicate of this bug. ***
Comment 3 gary2 2008-09-09 19:02:31 PDT
This problem can be resolved by installing the EsounD package appropriate for your distribution.  Installation of EsounD REALLY REALLY should be specified as a requirement in the release notes, as it seems to be a problem that pops up regularly, and not everyone installs this package by default
Comment 4 Andreas 2008-09-09 21:31:55 PDT
Don`t solve the problem.
Comment 5 Andreas 2008-09-23 08:47:11 PDT
None other ideas?
Comment 6 Joona Pulliainen 2008-09-23 13:01:05 PDT
I think this is solved.
Comment 7 Magnus Melin 2008-09-23 22:55:44 PDT
->INVALID ("FIXED" is used only when known code changes resolved the issue)
Comment 8 Andreas 2008-09-23 23:12:34 PDT
For me it is not fixed. I installed the EsounD-package for my distri an the sound don`t play.
Comment 9 Joona Pulliainen 2008-09-24 10:05:26 PDT
Reopened due to request.
Comment 10 gary2 2008-09-26 13:16:08 PDT
As mentioned previously, I had this EXACT same problem with an upgraded Gentoo build on a laptop. Once I installed the EsounD package, audio alerts started working again with the default binary distribution of Firefox 3.01.  I don't recall making any other changes.  Note that I did not actually have to run the esd daemon for sound to work. 

Here are the files that were installed for the version of EsounD that I installed, v0.2.38-r1. Hopefully this will be of some help if you can compare this to what was installed on your machine.  You might want to run ldd on your EsounD shared libraries to make sure that something is not missing or broken. 



First, the contents of /etc/esd/esd.conf (the esd configuration file).  The file contents are between the dashed lines, but do not include the dashed lines:

-------------------
[esd]
# autospawning is not recommended, since it can't really be done
# right.  If you want your login session to be using a sound daemon,
# you should start it from the session controller, not some random
# app inside.
auto_spawn=0
spawn_options=-terminate -nobeeps -as 2
spawn_wait_ms=100
# default options are used in spawned and non-spawned mode
default_options=


---------------------------

The files that were installed (I have left out startup files, man pages, etc):

  file /usr/bin/esd-config
  file /usr/bin/esdcat
  file /usr/bin/esdctl
  file /usr/bin/esddsp
  file /usr/bin/esdfilt
  file /usr/bin/esdloop
  file /usr/bin/esdmon
  file /usr/bin/esdplay
  file /usr/bin/esdrec
  file /usr/bin/esdsample
  file /usr/bin/esound-esd
  file /usr/include/esd.h
  file /usr/lib/libesd.a
  file /usr/lib/libesd.la
symlink /usr/lib/libesd.so -> libesd.so.0.2.38
symlink /usr/lib/libesd.so.0 -> libesd.so.0.2.38
  file /usr/lib/libesd.so.0.2.38
  file /usr/lib/libesddsp.a
  file /usr/lib/libesddsp.la
symlink /usr/lib/libesddsp.so -> libesddsp.so.0.2.38
symlink /usr/lib/libesddsp.so.0 -> libesddsp.so.0.2.38
  file /usr/lib/libesddsp.so.0.2.38
  file /usr/lib/pkgconfig/esound.pc
Comment 11 Wayne Mery (:wsmwk, NI for questions) 2009-06-28 07:43:46 PDT
so back to comment 7, this is not a thunderbird bug?  i.e. invalid
Comment 12 adam.bruce 2010-08-11 01:52:31 PDT
Still having the same problem since upgrading to Fedora13 & Thunderbird 3.1.1
Comment 13 Ludovic Hirlimann [:Usul] 2010-08-11 03:21:21 PDT
(In reply to comment #12)
> Still having the same problem since upgrading to Fedora13 & Thunderbird 3.1.1

That should be fixed in 3.1.2 that was just released.
Comment 14 Michael Duelli 2010-10-18 00:59:45 PDT
A similar problem occurred to me on a gentoo system as well.

As noted in bug 529522, lightning did not want to play an alarm sound without esound installed.

This also happens with Thunderbird 3.1.4! So this might not be fully resolved yet.
Comment 15 Vincent (caméléon) 2010-11-25 09:38:08 PST
The problem is still there on Ubuntu with Thunderbird 3.1.6 and TB3.3a1. No default sound system can be heard, so I believe that the bug should be reopened.
Comment 16 Frédéric Buclin 2011-06-11 06:18:15 PDT
I use KDE 4.6.3 and Mageia 1, and there is no Esound module available. Pidgin uses ALSA to play sounds, and Pulseaudio is also very popular. Thunderbird should use them when available. From what I know, Esound is obsolete.

Should this bug be reopened, or is there another bug filed to use ALSA/Pulseaudio in Thunderbird?
Comment 17 Michael Duelli 2011-06-11 09:15:28 PDT
In principle, it would be great if lightning would not depend on any sound framework on Linux.

Maybe it is somehow possible to simply hand over the alarm WAV file to Thunderbird's basis (Gecko, right?) which then takes care of it?

I am not a Mozilla expert, but a search on the Internet makes me believe it could be possible:
- https://developer.mozilla.org/en/nsISound
- http://www.geckofx.org/viewtopic.php?id=435

Also vote for REOPENING or filing a new bug
Comment 18 Mike Conley (:mconley) - (Needinfo me!) 2011-06-16 06:32:52 PDT
> In principle, it would be great if lightning would not depend on any sound 
> framework on Linux.
>
> Maybe it is somehow possible to simply hand over the alarm WAV file to
> Thunderbird's basis (Gecko, right?) which then takes care of it?

So I took a quick peek at the Lightning alarm code, and it looks like it's making use of the nsISound component interface already:

http://mxr.mozilla.org/comm-central/source/calendar/base/src/calAlarmMonitor.js#143

I also took a look at the Linux implementation of nsISound:  http://mxr.mozilla.org/comm-central/source/mozilla/widget/src/gtk2/nsSound.cpp#132

It seems that the implementation tries to connect to libesd, libasound, and libcanberra.  Whichever one it finds, it uses.

> In principle, it would be great if lightning would not depend on any sound 
> framework on Linux.

So, from the looks of it, Lightning just relies on nsISound.  It's Gecko that's relying on either libesd, libasound or libcanberra.
Comment 19 Felix Möller 2011-09-22 08:10:38 PDT
I had to install libesd0 on Ubuntu 10.10 to get it working although libcanberra is installed too...
Comment 20 Frédéric Buclin 2011-09-22 08:26:58 PDT
Reopening per my comment 16. Installing EsounD is a workaround (which doesn't work e.g. in Mageia 1 as there is no such module), not a fix. All other applications I have which need to play sounds, including Songbird, Pidgin, Firefox, etc..., are able to play sound correctly. Thunderbird should be able to use the current active audio method, being PulseAudio, ALSA, or anything else installed on the system and shouldn't rely on one specific method. This problem still exists with Thunderbird 6.0.2.

Comment 18 says that if EsounD cannot be found, Thunderbird should try with ALSA, but this is clearly not the case. If the bug is in Gecko, this bug should be moved to the appropriate component in the Core product, or be marked as depending on such a bug if it already exists.
Comment 21 Martin Schröder [:mschroeder] 2011-11-04 14:48:39 PDT
*** Bug 529522 has been marked as a duplicate of this bug. ***
Comment 22 Siddharth Agarwal [:sid0] (inactive) 2012-01-04 09:36:33 PST
We should just use HTML5 audio to play sounds.
Comment 23 Nirbheek Chauhan 2012-01-09 10:43:25 PST
It seems this bug is identical to bug 635918 which has patches to use libcanberra for nsISound::Play.
Comment 24 Siddharth Agarwal [:sid0] (inactive) 2012-01-09 10:49:33 PST

*** This bug has been marked as a duplicate of bug 635918 ***

Note You need to log in before you can comment on or make changes to this bug.