The latest alsa library released for Fedora 7, alsa-lib 1.0.14-3, works with discord without any modification being required. So if you are having the problem of failing format, install alsa-lib 1.0.14-3.
The latest release corrects some slight crackle on binaural amp beats, fixes a long option bug which prevented long options without arguments from being recognized, and adds a new option to allow threading while playing sound. Slightly faster but more fragile; if your cpu is heavily loaded sound might break/go silent periodically. Default is old functionality.
Still backward compatible despite the number. Had some release file naming confusion.
In the step and vary slide versions of chronaural I noticed that pan wasn't working properly. While fixing it, I noticed that split beat also wasn't working properly. Both are now fixed.
The workaround description on the website has been changed to reflect a possible problem with some distributions. If the location of the alsa default configuration files has been changed from /usr/share/alsa the workaround will not work until links to the alsa configuration files are placed there.
This was missed originally because the system the workaround was tested on has been used with alsa updates and they had written these files.
Sure hope they release an official version of a fixed alsa-lib soon.
In alsa-lib 1.0.14 final the format that discord uses internally was disabled as a legitimate format. Thus when discord tries to open the sound device it fails. The latest development snapshot works again. There are instructions on how to install this in such a way as to not upset your packaging system on the web site. The instructions are here: http://discord.sourceforge.net/alsa-1.0.14_workaround.html
I will also add these instructions in text and html form to the download file.
Fedora 7 just upgraded to alsa 1.0.14 and I am unable to run discord. Compilation is OK, but when it runs, it cannot set the format.
I am investigating but thought I would post this in case anyone else has the problem.
I found errors in discord that meant that file output always defaulted to 16 bit flac no matter what options were selected. This has been repaired.
Added the DISCLAIMER and a wav file of the script file good_morning.discord from the tar file. The wav file is strictly binaural so you will need headphones in order to listen to it properly.
My previous NEWS item saying that discord writes direct to hardware is incorrect. It is using the plughw: alsa plugin instead of hw:. In order to use direct to hardware, discord would have needed to be modified to support all possible card format conversions internally. This seemed like a waste of time being as they are all supported by alsa already. Instead, an api call that allows only hardware supported frame rates was used. This means that whatever frame rate is put in by the user, the nearest hardware supported frame rate to it will be used. Thus the main source of inaccuracy in sound production, resampling, is eliminated while still allowing the convenience of using the library format conversions.... read more
The bad sound and failures at high frame rates have been corrected in the latest release. The alsa sound system uses a default plugin called dmix, and this filters all sound to the default device. While useful for the majority of users, it currently runs only at 48000 frames/second and was unsuitable for use with discord. Alsa does provide a way to bypass this, and the new release uses that to correct the problem by going direct to hardware. As part of this fix a new option to provide a hardware plug to use and a configuration file were added.
If you experience terrible sound in the frequency loudness test at high frequencies or are unable to use high frame rates with discord (--rate/-r option above 48000), you should modify your .asoundrc file in $/home to use hw:0,0. Here is an example that works for me using pcm on a pci card.
type plug
slave {
pcm "hw:0,0"
}
}
The .asoundrc is located in your home directory.
By default alsa uses the dmix plugin on all streams now and this seems to interfere with the ability to directly set your card. The above sets the default to be your first card, and uses direct to hardware, bypassing any filters. ... read more