Audio and music on Unix - Desktop Customization & Workflow
Users browsing this thread: 4 Guest(s)
|
|||
Hello fellow nixers,
In this thread we'll discuss the general topic of audio, music, and audio manipulation on Unix. We'll try to assess its state and share experiences and problems. NB: This was supposed to be a podcast topic but the podcast has been dead for the past 4-5 weeks. #Configuring the audio Configuring the audio on Unix can be difficult depending on what OS and driver you are using. On Linux Alsa and the legacy OSS (open sound system) are available). Both are kernel driven sound card drivers and thus are loaded by your init system or deamon manager. Consequently, everything that can affect the init system might create a problem with the driver. Alsa can be configured via the asound.conf or asoundrc files where you can specify specific sound card configurations. Testing and manipulating the audio for alsa is done with: ``` Code: alsamixer #volume The advantages of using OSS: You'll have a per-application volume control, some legacy cards have better support, it is cross platform (runs on BSDs and Solaris), has a smaller and easier to use API. The advantages of using ALSA: You'll have better support for USB, bluetooth, HD audio devices, and all other funky hardware you can find. Personal note: Sound output from HDMI caused me troubles in the past the solution was a messy script. For more information consult this link. Configuring the sound on BSD variants differs from distro to distro. I won't enter the subject but for example NetBSD has the `audioctl` commands to set audio configurations and FreeBSD the `sysctl` to set the kernel state. #Pulseaudio Pulseaudio is a sound proxy application that gives and interface to the lower layer to other applications. It can detect the devices and automatically configure them (or we hope so). You can control all the lower layers from pulseaudio. It offers a sound equalizer loaded with: Code: $ pactl load-module module-equalizer-sink It has many frontends. #Codecs Quote:A codec is a device or computer program capable of encoding and/or decoding a digital data stream or signal. Media players need to know how to decode the audio to play it. Audio files have multiple formats and codec libraries are there to give those programs a way to understand them. Some said that one of the reasons they won't use a Linux Libre kernel was that it wouldn't support all codecs. It is partially true, libre kernels offers free versions of most codecs. I'm using a Libre kernel and didn't run into any issues related to codecs so far. #PC BEEP If you're a Unix users you're obviously knowledgeable about beeps. A PC beep is a sound, usually used as warning when the ram isn't in place for example, that comes straight from the motherboard and not the speaker (although it depends on the computer manufacturer and the components). The beep can be muted from multiple places, the audio driver (alsa, oss, and others), from the console (TTY), in the X11 environment, in the kernel, and at boot time. On Linux it's loaded via the pcspkr module Code: rmmod pcspkr A cross platform way, but only in X is `xset -b`. There are programs used to play with the frequency of the beep such as the program `beep`. You can find scripts to play music using the motherboard speaker. If you are even more of a beep amateur you've certainly heard of chiptunes. `sidplay2` is a program that emulates the commodore 64 to play music. Quote:Sidplay is SID-chip emulator for playing Commodore 64 music. #Music Player - Music tagging There are ton of music players. You have the choice between curses interface and gui. Choice between those that have a daemon interfaces and others that play the music directly. mplayer, mpd, xmms2, cmus, cplay, deadbeef, amarok, clementine, are common names. - Music files have metadata about authors, album, etc.. Unix has different tools to edit those information, they go by the name of tageditors:
And if you want to add a party ambiance you can use music visualizers, which are programs that us a fast fourier transform to create amazing shapes and forms that move around with the music. If it's not built in your music player you can use ProjectM or VSXu. #Music/Sound Editing - Converting After my research I was surprised that there was so many programs available for sound editing on Unix. I haven't tried them all but I've read good reviews about some. A list of interesting ones:
Or you could go real hardcore like this dude and create music by writing C programs to generate the sound. For spectrum analysis I'd use sonic visualisers. #TTS - Voice recognition(STT) Text to speech and voice recognition is an area that is poor in the Unix community. However, it's not only the Unix community that is lacking support for those. All the softwares that have a "natural feel" are proprietary and costly. They are sold to mobile operators. I've tried my share of them and will only retain one thing: festival is the best text to speech available on Unix even though it's hard to setup and you have to search for voice files on the web. As far as voice recognition goes I've also tried a few but none of them worked correctly and they were all insanely complex to setup. Sphinx is hell to understand. I hope this covers a general topic on audio and music on Unix. Now it's time for you to share your stories and experiences. |
|||