A rare moment of accountability

On my way to the office today, a white van barreling down a road that joined mine at a T junction nearly removed my car, and possibly me, from service. Fortunately, disaster was averted by some heavy breaking and staccato tire squealing on my part (no ABS on the 1997 Fiat-TOFAS Tipo).

This in itself is not news. Near-misses in traffic are a million a day here. What made this event special was that the driver pulled over at a suitable spot some 300 meters on, rolled down his window, and poking both arms and his head out of the window gestured toward me for forgiveness.

And it all happened so quickly that I didn’t have a chance to give him a warm huggie to let him know that while I was annoyed at his carelessness I still appreciated his accountability.

P.S. For those of you who thought this entry might have something to do with audio, I have no reason to think that the white van had anything to do with speaker sales.

Le Mepris

That’s French for “Contempt”—as in the 1963 film by Jean-Luc Godard.

I am teaching a film course this term and decided to try to work “Le Mepris”. I just re-viewed the film before my lecture tomorrow. I meant to watch just the first few minutes but ended up watching the whole thing.

The film is so awesomely awesome on so many levels that it always messes me up. It’s revved by brain and my gut into hyper mode. I really should learn to avoid it. And Godard really ought to have made more like it.

What does this have to do with audio? Almost nothing—except maybe that the music for the film is, like much of the rest of the film, awesomely awesome and does a somewhat subtle though effective job of messing with the semiology of conventions.

Ripping thoughts

I got myself a nice new CD today (American Saxophone Music, Alex Mitchell), and this provided me a bit of an excuse to revisit audio ripping on Windows.

Picking codecs

With the wdespread availability of of high-quality lossy and lossless codecs, it makes no sense to rip to WAV files. I use two codecs as my defaults: FLAC for lossless compression and Windows Media for lossy compression. FLAC works about as well as any other lossless codec (apart from things like the generally unsupported Meridian Lossless Packing), and I love the fact that it’s an open source project. In fact, I am a big fan of open source in general. I routinely use open source software when it does what I need it to do–even if it may not be as smooth or efficient as a commercial or other closed alternative. I have even contributed a few open source programs, and not just for use in education. So FLAC floats my boat.

Then why, you are asking, do you use Windows Media as your default lossy codec? Especially when there are things like Ogg Vorbis around? Simple: at lower encoding rates, I find the damage done by WMA less distracting than the damage done by Ogg or MP3 at similar rates. This is a very subjective issue and one that is not the case (for me) for all music, all the time. But in general, WMA works for me. The fact that it’s supported on just about every DAP, media player, etc. also helps. (In all honesty, it’s been a few years since I have done any careful codec comparisons. It would probably be a good idea to re-do some tests to see if Ogg or MP3 encoding have improved.) I don’t really contemplate using aacPlus or other codecs. While aacPlus can do some amazing things at really low bitrates, it just doesn’t have enough support in hardware and software players to make it a viable alternative for general ripping. (However, I do use aacPlus as my default codec for remote steaming of my music collection, but that’s another story.)

Of course this assumes you are using a newer version of the WMA encoder. To do WMA encoding, I use the gratis command-line based Windows Media Encoder 9 Series tools. Many CD rippers incorporate older WMA tools, and these older tools limit the maximum bitrate, don’t give you options for constant/average bitrate, and probably don’t use the latest encoding models. (Microsoft claims, “[WMA 9’s] sound quality is 20 percent better than audio sampled with Windows Media Audio 8 at equivalent data rate.”) I should also mention that I won’t touch Windows Media Player with a ten foot pole. Not only do I find its interface maddening, it also takes control of your media collection by default, changing tags and cover art at will. Sure, you can turn this off, but the whole package just rubs me the wrong way.

Tagging tracks

Apart from encoding the audio data into your desired format, a CD ripper should also let you automatically add tags to ripped tracks. While there are a ton of standalone programs that let you do this, it’s always much better to take care of this from the start. There are two traditional sources of track information used by ripping software: Gracenote and freeDB.org. You can read about the history of the relationship between the two elsewhere, but in summary the technology and database that makes Gracenote got started as an open-source project. Over time, the technolgy was converted to a proprietary, for-profit deal, and that got some people riled up. Thus freeDB.org was born. The quality of data available from Gracenote tends to be better and more comprehensive, but I still prefer freeDB.org because it’s free and for the people and it provides some competition for Gracenote.

Ripper options

So, what this means for me is that my ideal CD ripper will

  • Rip FLAC out-of-the-box
  • Rip fully optioned Windows Media 9 (or better) out-of-the-box
  • Allow the use of external command-line tools for encoding if either of the above are lacking
  • Use freeDB.org for tagging data
  • Be open source

Sadly, such a ripper does not exist. So here is what I am using anyway.

Winamp (v5.52)

Winamp is a great-grand-daddy of media players. As it is asked to do more and more on top of an ageing codebase it’s getting pretty bloated. However, you can remove the bloating additions if you really want. It is my default audio player because it does ASIO via a thrid-party plugin and it has decent media library abilities. And it will play just about anything you can throw at it. The things I don’t like about Winamp are the previously stated bloat, a UI that is a bit maddening and not really attractive (but usable nonetheless), and it’s not open source.

Winamp also does CD ripping. It encodes to FLAC and Windows Media 9.2 out-of-the-box; however the freeware version of the program limits ripping speeds to 8x. It also uses Gracenotes for track data. While there is no facility for linking to external encoders (except perhaps through a third-party plugin) Winamp is professionally maintained–which means frequent updates of the endocers.

Summary: A reliable, configurable workhorse that is undermined by slow encoding. Works well, but not currently my first choice.

CDex (v1.70 beta 2, zip archive version)

I get the feeling that this open source project is floundering a bit. It’s popular alright, but its develpoment seems intermittent. It’s got all the basic features that you want in a ripper, and the interface is ok. The latest beta version does FLAC out-of-the-box, and it also does WMA–but the bitrate is limited to 160bps and you’re given no options other than bitrate, which makes me think they are using an older encoder. It does let you use external encoding tools, but I could not get WMA9 to work. It uses freeDB.org for tagging data.

Summary: Good for ripping FLAC. Ripping with external encoders is available but unreliable. My current choice for FLAC.

BonkEnc (v1.0.6)

This is another open source offering. Like CDex, this project seems a bit stalled, but the (one) developer makes it clear that devleoping this program isn’t a top priority in his life. It does FLAC out-of-the-box, but it supports neither WMA nor external codecs. However, the developer promises a plugin system in a future release that may address both issues. It uses freeDB.org for track data. The interface uses a toolkit I am not too familiar with, and while it’s aesthetically not unappealing, usablilty suffers a bit because the buttons, etc. are so tiny. A promising start that I would love to see mature some more.

Summary: Good for ripping FLAC. Ripping with external encoders is unavailable. Worth keeping an eye on.

Audiograbber (v1.83)

Audiograbber may be the most interesting of the bunch. This is an old shareware title that went freeware in 2004. It does not do FLAC out-of-the-box, and while it has WMA built-in, it is only version 8. However, it’s ability to use external encoders works–at least with Windows Media Encoder 9. (You can download a pdf of the enhanced batch file I am using that does tagging automatically here). It also works with FLAC. It uses freeDB.org for track data. The interface takes a bit of getting used to, but once you adjust to it, it’s quite usable. But if I can get external WMA encoding to work with CDex, I will probably retire this title. I really wish the owner of the code would open it up so that it could be updated because this has proven to be quite a solid workhorse.

Summary: Good for ripping WMA and FLAC via extenal encoder. Internal encoders are mostly obsolete, but support for external encoders is good. My current choice for WMA.


There are a couple possibilites that I have not yet thoroughly explored. First is foobar2000, a gratis audio media player that like Winamp supports ripping and has ASIO support built in. I’ve sometimes considered using foobar2000 instead of Winamp, but the thing that gives it power (i.e., tons of flexibility and configurability) is also its Achilles heel. Doing anything in foobar2000 is an exercise in the non-intuitive. And Winamp’s media library just works much better. I gotta say, using other media players really makes you appreciate how well Winamp’s media library database manager works. It updates very quickly, without the user’s intervention, and doesn’t get in your way when it’s doing so. All other similar things I have tried really blow in comparison. But I digress…

Finally, while this is probably totally in my head, I think Winamp–even in ASIO mode–sounds more correct than foobar2000. I really didn’t want to mention this until I had a chance to do bit-for-bit output comparisons and other testing, but I mentioned it anyway.

Still foobar2000 has a couple things going for it that make it hard to dismiss it altogether. One of those is that foobar2000’s support for external encoders appears quite good. Another is that the filetype icons are way cooler than Winamp’s.

The second option is Exact Audio Copy, a gratis ripper that claims to do a better job of reading your bits without error than anything else out there. They make a huge deal about this, but I have yet to find that any of the other ripping solutions mentioned here suffer from bit-reading issues of any kind. Maybe if you’ve got a really crappy drive or a marginal disk… Anyhoo, EAC is a bit of a bear to set up, but it seems to be active, so it’s also worth a closer look.

I’ll report back if I have any world-altering experiences with either foobar2000 or EAC.

Getting covered

Of course, once you’ve ripped your CD, you’ll want to put some cover art into the CD’s folder. There are all sorts of software titles to help you with this task, but I just Google around until I find what I’m looking for. In my opinion, anyone who says this isn’t fair use has a really warped view of the concept.

||: salty chocolate :||

A gob of years ago, I was on a school bus on my way to another day of 3rd grade. I was thinking about some song or another that I really liked–“Uncle Albert/Admiral Halsey” by Paul and Linda McCartney possibly–and I wondered what kind of music I would be reacting to in the same way that people of my parents’ generation reacted so negatively against but that I loved so much. I took it for granted that in spite of my best efforts to stay “with it,” the generation gap would slowly slide so that I became the old fogey, complained that all this new music sounds the same, and would you please turn it down.

That day didn’t happen for many, many years.

That was then.

I like a lot of David Bowie’s repertoire, but I don’t think he is/was a musical genius. In spite of this, there is at least one spot in Nicholas Roeg’s “The Man Who Fell to Earth” where someones genius was showing. The spot I have in mind starts with Thomas Newton (Bowie’s character) nuzzled up against a spheroid device listening to some really inane music. We are lead to think that he’s listening to the very linear, scalar, repetitive, oscillator-driven stuff because it reminds him of home–at least until he removes the sphere from the device (stopping the music) and says something like, “I hate this shit that Farnsworth sends me.” It’s genius because of the way it plays on a number of the viewer’s expectations–both about Newton’s character and about what we are “supposed to” think space music/music-of-the-future sounds like.

It’s also genius because that very linear, scalar, repetitive, oscillator-driven, inane shit is what I am now hearing in a lot of places. Case in point: the music in the supermarket I was in yesterday. God, I wanted to run screaming from the place by the time I was done with my shopping. The same moronic thing, over and over and over and over again for 10 or more minutes. In this case it was a disquieting hybrid of a Latin beat and some Germanic melody. It was like salty chocolate, rammed into your mouth over and over again for ten agonizing minutes. Not want.

DIY: PCB layout tools


Update [2012-01-05]: WinQcad hasn’t been updated since May of 2011, and email enquiries to its author (who has always been very responsive to me) are going unanswered. For these reasons, I can no longer recommend it. I really hope the situation is a temporary one.

Because of the situation with WinQcad, I decided a few months ago to adopt KiCad as my primary PCB design tool. My reasons for choosing KiCad include:

  1. It’s free and open source software and enormously popular–meaning that it’s not likely to go away or suffer from midstream licensing changes.
  2. It works well on Linux (my main OS for several years now) as well as Windows. It’s reported to work on OS X as well.

It’s main drawback (for me) is the lack of a really good autorouter. The built-in one isn’t that useful. Many people use the Freerouting.net router, but (a) it hasn’t been updated in quite a while–leaving its future status in doubt and (b) unlike KiCad itself it’s not FOSS (though it is gratis). There is a project underway to build a standalone autorouter that is compatible with KiCad, and I hope this project succeeds.

I am also using gerbv a lot for inspecting Gerber files. gerbv is part of the gEDA initiative.

I am currently working on laying out a printed circuit board for a client that is pretty dense (the board, that is, not the client). I don’t make a living off PCB layout work, so it doesn’t make sense for me to buy a mega-thousand dollar package like those offered by Cadence, Mentor Graphics, Pulsonix and the like. However, the boards I do can be fairly complex and so require pretty decent tools to support the process.

Fortunately, there are a number of low cost and open source tools that can be used to obtain professional results. (Check here for a comprehensive list of cheap and not-so-cheap tools.) A bunch of years ago, I went through a round of evaluating them, and I eventually settled on a little-known package called WinQcad. More recently, I decided to use my current project as an opportunity to re-evaluate some of the latest offerings, and the conclusion that I reached is that still nothing beats WinQcad.

Like most PCB development tools, WinQcad has a pretty steep learning curve, but it makes the entire process of schematic capture through generating production files at least as simple as any of the other solutions. However, the real deal-clincher for WinQcad is that it has hands-down the best autorouter of the bunch. Most of the autorouters I have tried fail to route even fairly simple boards, and when they succeed, they often make some very “interesting” routing decisions. In contrast, I have yet to encounter a design that WinQcad’s autorouter couldn’t handle and do a good job of as well. I can’t begin to tell you how much time and stress WinQcad’s autorouter has saved me.

You can download a free pin-limited version for small projects or evaluation purposes, and a 1000 pin license costs only $300. Highly recommended.

While WinQcad has a large library of parts and land patterns, in many cases you may still need to develop your own. To help you with this, the IPC and PCB Libraries, Inc. offer a free program that contains full specifications for standard IPC-7351A land patterns. This program is part of a larger suite sold by PCB Libraries that has all sorts of other things to help you develop land patterns; but if you are patient and are working with standard packages, this freebie will serve you well. PCB Libraries makes another subset of the suite available for free as well to help you with non-standard land patterns.

Another tool you will need if you plan to have your boards professionally made is a Gerber file viewer. Never, ever send Gerber files off for manufacturing unless you have used a viewer to confirm that they are ok. I recommend ViewMate from Pentalogix and GC-Prevue from GraphiCode. The user interfaces of these programs can be obtuse, but they get the job done.



I have more than a little sympathy for DIY loudspeaker builders, because that is how I got my start. I think I was about 10 when I built my first speaker with some scrap plywood and a 5-1/4″ driver that my brother gave me. How time flies…

The hobby itself can be quite seductive, especially if you have some woodworking skill. It seems like it’s a pretty straight-forward matter to build a box, buy some drivers, mount them along with a crossover or something, and then have a system that looks great and costs less than the commercial equivalent. However, once you start you will realize that good speaker design is actually a very complex affair. It only seems easy because of the relatively few parts that are involved. But I will let you discover all that for yourself–it’s part of the fun. If you do decide to go down the DIY path, you will do yourself a favor to have modest expectations at the start, and be prepared to get sucked into something that can take over your life if you let it.

Here are a few resources I recommend for the DIYer. Most of these will be known to experienced builders, but if you are new to the area you may not know all of them.

Drivers and other parts

Madisound Speaker Components is one of the best sources of drivers and other parts (capacitors, inductors, etc.) for both the DIYer and for small manufacturers. They have consistently been my first choice for supplying Biro’s own needs. Their service is top-notch, personal, and has never let me down.

Parts Express is another good source of drivers and parts. Professional service and good parts selection. It may be a small thing, but their selection of cabinet ports is quite good.

I have experience with Solen Electronique and MCM as well and cannot complain about either.


If you don’t like the idea of making lots of sawdust, Parts Express’ finished cabinets are really hard to beat. I have used these for some prototype projects, and the workmanship and finishes that I have seen have been really good. Madisound has a similar line of cabinets. While I expect that they are of similar quality, I have not actually seen any of these so I cannot say so with any certainty. (Madisound also sells a line of cabinets made by Woodstyle in California that some people really like, but the link shows nothing at the moment. I don’t know if that means they have been discontinued or if it’s just a bug in the website.)

Design information

If you are looking for information to help you decide what driver to use in your next project, Zapf Audio has a wealth of information to help you. John “Zaph” Krutke’s attention to detail in his measurement and methodology is admirable, as is his enthusiasm for sharing his findings. In addition to driver measurements, John has published a number of complete designs at his site. I have not heard any of them; however, they appear to have been thoughtfully and competently designed. While I don’t agree with the prioritization of all his evaluation criteria (perhaps the subject of a later post), I do have a ton of respect for his opinions, and they have enhanced my outlook. I have never met or exchanged email with John; in spite of this I feel comfortable saying that he is one of the few voices that are really worth listening to in the DIY speaker hobby realm.

Design software

You will need design software. And not just for cabinet design. You can’t really build a good system without software to help you with measurement and crossover design. While everyone seems to have their favorite in this area, I think LspCAD from IJData is just fine.


If you want good results, you must measure the performance of the drivers you have chosen in the cabinets that you will use them in. Because of the varying diffraction effects from different cabinets, you cannot use the measurements from some other source in your design. And you should never trust manufacturer data. Sometimes published curves are from preproduction prototypes, sometimes they are outright lies, and very rarely is enough information given about test conditions to let you extract useful information.

To measure your drivers you will need a microphone with a very flat and/or calibrated frequency response. Some DIYers build their own using Panasonic omnidirectional electret elements–some of which are incredibly flat. The only problem with this approach is that while the flattest of the Panasonic omni elements are quite flat, when all is said and done you may still be left with as much as 3dB error in the audio band. In my opinion, that’s not good enough. A few people make and sell complete mics using these elements and provide you with calibration data as well. This is the approach I recommend. The ones made by Kim Girardin at Wadenhome Sound are very good and very affordable. I’ve known Kim for several years as a result of our association with the Upper Midwest Chapter of the AES. He has real enthusiasm for the field and is one of the nicest people you are likely to encounter in the audio world. You may be able to plug one of Kim’s mics directly into the Mic input of your computer soundcard, but for the best results you will want a preamp with a controlled polarizing voltage. If this is the case, the Mitey-Mic II (or MM2) is a classic.

Most mics based on the Panasonic elements have simple two-conductor outputs and are meant to be interfaced to soundcard “mic” inputs or something like the Mitey-Mic II. If you want an instrumentation mic with a more conventional balanced output (and using +48V phantom power), the Behringer ECM8000 looks interesting. I have never seen one of these in real life, so it may actually be utterly poopy. But the specs and price look decent.

Laptop issues

While the soundcards in desktop PCs are usually good enough for making usable speaker measurements, laptop soundcards tend to, er, suck. I have been using Behringer’s tiny and cheap UCA202 USB soundcard with my laptop when I need to make measurements with it, and the results have been just fine. It uses decent 16-bit TI/Burr-Brown converters, and the headphone output is particularly useful for making impedance measurements and is the main reason I use it rather than similar USB devices. (Look here for some test results.) Don’t mess around with the packaged ASIO driver–just plug it into your WinXP machine and let it use WinXP’s built-in USB audio drivers. If you absolutely, positively have to have ASIO with this guy, I recommend ASIO4ALL.

In closing

I regret that I don’t have time to respond directly to DIY questions. If I don’t reply to your inquiries or address your question here, please don’t be offended. With this post I really just wanted to offer what little support to hobbyists that I can. And as time allows, I will try to post other tips and suggestions.

Hi-Fi reactionism and RoHS


One of the things that studying the hi-fi world from a design perspective (for the last three years) rather than from an engineering perspective (for fifteen years before that) has shown me is that hi-fi is an incredibly conservative field.

In all likelihood this has its roots in the solid-state disasters of the 1970’s, and it certainly wasn’t helped by the CD disasters of the 1980’s. Today, we are in a position where there is a loud and influential group of audiophiles who seem to feel that anything “old” (directly heated triodes, point-to-point wiring, horn-loaded fullrange loudspeakers, etc.) is good, and anything “new” (digital crossovers, solid-state anything) is “bad”. Well, the bad news for them is that there is another “new” being introduced into the industry, but this “new” doesn’t have its roots in technological advancement. Rather it has its roots in ecological concerns and public health.

I am talking about the RoHS (Restriction of Hazardous Substances) directive that the EU adopted in 2003. In short, it “restricts the use of six hazardous materials in the manufacture of various types of electronic and electrical equipment”[1]. The result of this directive is that it is becoming increasingly impossible to build equipment anywhere that uses parts and/or solder containing lead. Because the EU is such a big market, and because manufacturers usually don’t want to set up different manufacturing processes for different markets, the use of lead is being phased out everywhere. Parts manufacturers are phasing out the use of lead tinning in their parts, and this means that assemblers need to use lead-free processes as well.

So, what I see happening soon is talk in the hi-fi industry of “leaded” vs. “unleaded” products–with the idea that the “leaded” form of a product being more desirable. Of course, this idea will receive resistance from the silver-solder crowd, and it will be interesting to see how that plays out as well. Maybe this particular form of insanity has already started. If you know of any examples, I would love it if you’d let me know.

[1] Restriction of Hazardous Substances Directive. Wikipedia, the free encyclopedia. Accessed 13 May 2007.