Viewing posts from 2011
My latest purchases, each highly recommended:
Yesterday, my TV asked me:
For quality and improvement purposes, your usage statistics about the TV system and remote will be sent to the Sony server. It will exclude personal and individually identifiable information. Would you like to enable this setting?
After being a loyal reader more than 20 years I finally canceled my subscription of the renowned weekly newspaper Die Zeit today. It's not that it has so much changed from the times Gerd Bucerius and Marion Dönhoff were in charge, or lacking distinguished authors nowadays. Granted, it is quite expensive just for the three or four articles per issue that I actually read, and only one that is really interesting to me. Sure, some authors are really annoying, but that's the whole point of this publication: start public debates. Yes, my generation is writing there now, but I know how we, as a generation, think. There is not much to learn for me. A lot of topics are repeating themselves over the years. But that's still not the reason.
Most people these days call it Post Rock, but when I was young, we called it Kraut Rock. Or perhaps Progressive Rock. And besides, the music of the Japanese band Mono recently has evolved beyond this.
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
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!
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:
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.