Page head image

Viewing posts tagged linux

Stereo to 2.1 "upmix" on Linux - part 5

But I want a software mixer. Pulseaudio to the rescue! Apart from the fact that the documentation of remap-sink leaves a bit to desire, this is fairly easy. First, our ~/.asoundrc reduces to

Stereo to 2.1 "upmix" on Linux - part 4

I cannot find any other tool that encodes AC3 to IEC958 than vlc and mplayer. Both are not suitable for the task for different reasons. One idea would be to modify the alsaplay (aplay) ALSA example application to do the encoding. But while researching the topic I asked myself: why couldn't just ALSA do it by itself? It's just wrapping AC3 into a bit stream, and the mplayer code for it looks fairly simple. Let's see how ALSA plugins are working anyway... So I downloaded the alsa-plugins source code and... WAIT, WHAT IS THAT?! There is a directory "a52". It contains exactly the module I was looking for. It does not encode an AC3 stream to an IEC958 transport stream, it creates the whole transport-encoded AC3 data from PCM data and writes it to the SPDIF device of the sound card. That's even more I asked for!

Stereo to 2.1 "upmix" on Linux - part 3

The upmix pipe is nice, but quite complex and limited to applications which have piped output. Maybe we can get the latency down and probably can get sox out of the mix... ALSA can remix channels with the "route" plugin, and it can output to a pipe. Let's put the following in the ~/.asoundrc:

Stereo to 2.1 "upmix" on Linux - part 2

How to construct a 2.1 signal from a stereo signal? We are going to encode it as AC3 ("Dolby Digital"), with the original stereo channels left and right mapped to front left and right, center and rear channels being muted, and bass getting the sum of half of the level of left and right channel. Strictly speaking, we should run the the bass signal through a low pass, but it is not necessary for my speaker system, as the active bass box has a built in low pass with an adjustable cutoff frequency.

Stereo to 2.1 "upmix" on Linux - part 1

I recently upgraded my set of speakers after my old Braun boxes finally reached their end of life. The "surrounds" of the speakers were degraded too far after almost 30 years. Given that the speaker system was from Braun's budget series of speakers (still relatively expensive at the time) it does not make sense to refurbish it. So I replaced the front speakers with a set of Nubert nuJubilee 35 (comparable to nuLine 32) speakers. If you are a fan of the 70th classic music sound like me: give Nubert speaker systems a try. At least the nuLine series is quite close to the sound of medium to large Brauns, though slightly more modern (i.e., more bass.)

Vacation video (pt 2)

I am constantly amazed at how easy it is to accomplish things in Linux once someone works out the process. DVD Authoring is a good example of this.
— Chris Stoddard, Linux Gazette #83

Vacation video done, at last (pt 1)

In case you wondered why I didn't update my LJ for several weeks (and rarely said something on Twitter, either): I was busy editing last year's vacation video. I won't link it here, it is mostly personal stuff and the quality of the footage is rather poor, but it was a nice exercise to learn editing. As Kdenlive still isn't suitable for such a large project (but progressing quite well currently,) I had to resort to a non-free editing solution. Adobe Premiere Elements did the job amazingly well, at least I didn't miss any feature of the professional version. Granted, as a 32 bit application it runs out of memory quite often with such a comparatively large project, but I've seen much worse behaviour of much more expensive software. The movie had more than 700 774 clips on the time line in the end, and runs for 94 minutes.

About eating your own dog food

I've successfully updated my machine located at the data centre from openSUSE 11.0 to 11.1 via a remote SSH connection and "zypper dup" yesterday. Contrary to my previous experiences with online upgrades, only minor obstacles were encountered:

  • Jabberd, the only package from OBS, got rebuilt between downloading the meta data and the package itself

  • Zypper somehow got confused by blank characters in repo locations midway through the update (simply restarting zypper helped)

  • I had to copy back my manually edited postfix configuration as it was replaced by the generic one from the RPM

  • Tomcat6 startup scripts missing JAVA_HOME

Just two hours of work (mainly observing zypper working and checking functionality), no serious breakage, no trip to the data centre, no manual update of half of the packages. I'm truly impressed.