Archive for the ‘music’ Category.

Exploring Modular Audio Synthesis

For pretty much as long as I can remember I’ve been interested in experimenting with sound. While I love great music, sounds themselves are most interesting to me. I remember using the shaft of spinning electric motor pressed against the mic of a cheap cassette recorder to simulate chainsaw sounds, putting my ear against different parts of my sister’s Casio SK-1 (where I also learned about ADSR) as the case vibrated and tone changed, and intently listening to The Downward Spiral picking out samples (puffing a drinking straw, fingers brushing over metal grating).

Over the years I’ve ended up owning, and in many case building, a number of piece of music equipment. This ranged from the Electrix suite of effects, some drum and synth modules (Yamaha TX81Z, Alesis D4), self-built x0xb0xes, some MIDIbox SID-NUXXs (where I learned the basics of PCB layout), but they all seemed too oriented around song composition and didn’t work well when I simply wanted to play with sound.

With some self-built gear sitting around on the shelf and a newfound empty space in my closet, I decided to put much of it back together, but this time acquiring something that’s much more hospitable to experimentation: a eurorack-format modular synthesizer. As of now I’ve mostly settled on a suite of modules, with just enough stuff that I’ve still got loads of learning to do and lots to explore. This setup also allowed me to connect some of my older DIY gear; stuff that I’d been longing to hear for a while. Conveniently I had an old analog oscilloscope and quality multimeter, things which are surprisingly useful when troubleshooting why a patch isn’t doing what was hoped.

All set up, it’s as seen above.

When expanding I started out with the basic (but fantastic) Moog Mother-32 and the cost effective Arturia BeatStep Pro, but soon after realized that for the kind of experimenting I wanted to do a few discrete modules would be really nice. While fairly low end (especially the speakers) it’s a good setup for experimenting and deciding how much further I want to take things. I believe I’m pretty well set up and have a lot to learn before I make any additional significant purchases. This setup gives me option for everything from triggering drums and playing with sequencing music from synths to setting up drones and seeing how sound can be tweaked:

Non-Eurorack:

Eurorack:

Full CD Collection Ripping Workflow

Back in 2003-2004 I ripped ever CD I owned to 192kbps AAC, a very good sounding format which was cost effective to store on disks of the time. This was a great achievement, and for the last 12 years I’ve enjoyed having all of my music in a central digital format. Now that storage is cheaper and I have some time, and before data rot sets in, I wanted to re-rip the collection to archival-quality Apple Lossless format. (This format was chosen for compatibility with my currently preferred software and hardware players, and being lossless can easily be transcoded to other formats as needed.)

My previous ripping operation was performed with a dual CPU PowerMac G5 and iTunes. While iTunes’ eject-after-import feature facilitates disc swapping, the workflow was selecting a stack of CDs, inserting them one at a time, then manually validating tags and artwork. At the time CD metadata providers didn’t have many of the discs, so a great deal of manual cleanup was needed. This was tedious, and something I didn’t want to repeat…

Not to mention there was no good way to assess the accuracy of the resulting rips…

Twelve years later, with better tools available, and finding some time in the form of a holiday break (Christmas Eve to after New Year’s) I began thinking about re-ripping my CD collection. Having recently moved my web hosting (this site, nuxx.net) to Linode, my old server was sitting unused at home and I only needed some modern software and an autoloader to set up a high performance CD ripping workstation. The requisite tools were purchased and I got to work. 411.3 GB later and most all of my physical CDs (1241 albums) have been imported as cleanly as possible, ready for listening on a myriad of devices, hopefully for years to come. (Duplicates were not ripped.)

Since ripping an entire CD collection is a desire of many friends of mine I wanted to share  the general setup and workflow that I used. It went well and was mostly hands-off, with only occasional manual intervention needed when the auto-loader jammed and then tool-assisted cleanup of tags and artwork. By using high quality ripping software which supports AccurateRip I was able to ensure that the vast majority of ripped tracks are affirmed error-free and effectively digital archival quality.

Most Inaccurate tracks were caused by damaged discs; typically reflective layer scratches, cracks, or scuffed polycarbonate.

Success Results:

  • 14069 tracks (92.3%) are Accurate
  • 144 tracks (0.95%) are Inaccurate
  • 1024 tracks (6.7%) were not in the AccurateRip database.
  • 1 track was a hidden track 0 in the pregap, which had to be ripped specially, and thus couldn’t be checked with AccurateRip.

Hardware / Software Used:

  • HP ML110 G7 w/ 24GB RAM, 64GB SSD, 3x 1TB HDD, USB 3.0 Card, AMD Radeon HD 5450 (Needs to be a sufficient computer to handle ripping, encoding, and displaying Aero graphics with ease. Built-in video card was not sufficient.)
  • Dell 2005FPW Monitor (1680×1050)
  • Acronova Nimbie USB Plus NB21-DVD
  • HP SATA DVD Drive (Internal, identifies as hp DVD-RAM GH80N.)
  • Samsung USB DVD Drive (External, identifies as TSSTcorp CDDVDW SE-218CB.)
  • Epson Perfection 3170 Scanner
  • Windows 7 Professional
  • dBpoweramp and PerfectTUNES (w/dBpoweramp Batch Ripper and Nimbie Batch Ripper Driver)
  • Mp3tag (Incredibly useful tagging tool with powerful scripting.)
  • CD cases organized into numbered boxes of 30-50 discs.

Workflow:

  1. Use dBpoweramp Batch Ripper to rip all CDs. Label output folders by the box numbers containing each CD; this will make manual metadata validation/cleanup easier.
  2. For each disc that is rejected, use dBpoweramp CD Ripper to rip the entire disc. This is likely a metadata issue as CD Ripper has access to more metadata providers than Batch Ripper. Or it may be the drive failing to recognize the disc.
  3. Use AccurateRip from PerfectTUNES to scan the entire directory structure, then use the built-in information tool to get a text file listing all “InAccurate” tracks.
  4. For each disc with “InAccurate” listings:
    1. Delete entire disc. (I opted to do this instead of re-ripping just the InAccurate tracks, as metadata differences between CD Ripper and Batch Ripper could lead to file names that are clumsy to fix.)
    2. Look disc over and clean if necessary. This, coupled with using a different drive, seems to resolve about 50% of ripping issues. Be sure to use proper technique: soft/clean/low dust cloth, wiping from inside to out (not circularly).
    3. Re-rip discs using dBpoweramp CD Ripper in fast mode.
    4. Re-rip individual tracks with secure mode as needed. Note that re-reading of bad frames can take hours per track, and that some tracks just won’t match AccurateRip or even rip securely. (Some of my discs are sufficiently damaged that I was not able to rip certain tracks.)
    5. Some discs may need to be ripped with Defective by Design settings, particularly in case of copy protection.
    6. Make a separate list of discs which have been accepted issues.
  5. Run AccurateRip (part of PerfectTUNES suite) to confirm all tracks and check against list of accepted issues. Repeat #4 as needed.
  6. Run the Fix Albums tool within Album Art (part of PerfectTUNES suite) to attempt automatic acquisition of artwork for all albums.
  7. Start with the PerfectTUNES suite components to fix artwork and metadata:
    1. In ID Tags go through a series of directories at a time sanity-checking metadata. Compare each CD case to the tags as needed, confirming that artwork looks sane. Keep a document listing artwork to later review.
    2. Use the Album Art tool to attempt bulk fix of art on all albums.
    3. One box at a time add artwork using a scanner and online resources. Then fix Low Resolution artwork.
      1. An Epson Perfection 3170 scanner connected and configured in automatic mode, clicking … next to an album then Acquire (from Scanner) will automatically scan, rotate, and crop artwork from a scanner. This seems to fail on thick-case (Digipak, clamshell) albums and is inconsistent on mostly-white artwork.
      2. Decent artwork can be obtained from Discogs.
      3. Add observed metadata errors to a document for later review.
  8. Use Mp3tag to clean up tags. Useful filters and suggestions include:
    1. (albumartist MISSING) AND (compilation MISSING) – Find tracks that are not part of compilations but did not get Album Artist set.
    2. %_covers% IS "" – Find tracks without artwork.
    3. compilation IS 0 – Find tracks with Compilation set to No. This can be removed using the Extended Tags editor.
    4. "$len(%year%)" GREATER 4 – Find tracks with Year fields longer than four digits (some metadata includes month and day).
    5. (totaldiscs IS 1) AND (discnumber GREATER 1) – Find disc numbers higher than 1 when the total number of discs in the album is 1.
    6. Selecting all tracks, exporting to CSV, then reviewing in a spreadsheet program can help find misspellings, duplicates, etc. For example, look at unique values in the Artist column to find misspellings like “Dabyre” vs. “Dabrye” or “X Marks The Pedwalk” vs. “X-Marks The Pedwalk”.
    7. NOT %ACCURATERIPRESULT% HAS ": Accurate" – Show all tracks that do not contain the AccurateRip header indicating an accurate rip.
  9. Fix any noted errors using a combination of ID Tags, Album Art, and Mp3tag.
  10. Prepare for archiving by renaming all files using Mp3tag:
    1. The following Format string for the ConvertTag – Filename renamer will move files to e:\final_move with the following formats, without most invalid characters for Windows filesystems, truncating the artist, album, and track lengths to 64 characters: e:\final_move\$if(%albumartist%,$validate($replace(%albumartist%,\,_),_),Various Artists)\$validate($replace(%album%,\,_),_)\$if(%albumartist%,$replace($validate($left(%artist%,64)-$left(%album%,64)-%discnumber%_$num(%track%,2)-$left(%title%,64),-),\,_),$replace($validate($left(%album%,64)-%discnumber%_$num(%track%,2)-$left(%artist%,64)-$left(%title%,64),-),\,_))
      1. Tracks with Album Artist set: ...\Artist\Album\Artist-Album-Disc#_Track#-Title.ext
      2. Tracks without Album Artist set (compilations): ...\Various Artists\Album\Album-Disc#_Track#-Artist-Title.ext
  11. Make a backup. Make many backups…
  12. Import into your preferred music player. In my case, iTunes on OS X:
    1. Album or artist at a time, delete the old, MPEG-4 versions and import the Apple Lossless tracks.

Issues:

  • Autoloader would occasionally jam. Seemed to be caused by:
    • Discs sticking together; ensuring they are gently placed in the loader seems to help.
    • Some discs are particularly thin or thick; these would often fail to load properly. Manually rip these.
  • Autoloader only supports standard size CDs, so mini or artistically cut CDs must be ripped in a normal drive. The USB drive is a laptop-type with a snap-lock spindle, which is better for artistically cut CDs.
  • Off-balance artistically cut CDs must be ripped at 1x to mitigate vibration. This can be problematic during initial spinup.
  • Some discs didn’t read well in one drive or another. If a rip would not be error-free in one drive, it’d frequently be fine in another.
  • Some discs are not present in AccurateRip.
  • Dirty discs caused more problems than I’d anticipated. Discs seemed to be scratched or dirty for a number of reasons:
    • Previous poor storage techniques (DJ or CaseLogic-style slip cases).
    • Outgassing of liner notes caused cloudy white buildup on some discs; could be removed with alcohol.
    • Discs lacking paint over the reflective layer are more susceptible to damage; particularly if stored in slip cases.
  • I suspect that less-common discs may have invalid information in AccurateRip. (Tip: The number after the Accurate Rip CRC indicates how many other users the rip matched with.)
  • In order to use either dBpoweramp CD Ripper or Batch Ripper via Remote Desktop, the following group policy must be enabled: Local Computer Policy → Computer Configuration → Administrative Templates → System → Removable Storage Access → All Removable Storage: Allow direct access in remote sessions. This setting is detailed in this article from Microsoft.
  • PerfectTunes Album Art will lump together albums with differing versions specified with parenthesis. For example, “Pearl’s Girl (Tin There)” and “Pearl’s Girl (Carp Dreams…Koi)” will both show up simply as “Pearl’s Girl”. This can make artwork assignment challenging. To work around this I’d name albums something like “Pearl’s GirlTin There)” until artwork is assigned, then change the name afterward.
  • PerfectTunes ID Tags will occasionally fail to set the Compilation tag when it is the only attribute being edited. Work around this by using Mp3tag and editing the extended tag COMPILATION to 0 or 1.
  • PerfectTunes Album Art will not always show missing art. Work around this by using Mp3tag with filter %_covers% IS "" to find specific tracks without art assigned.
  • Mp3tag had issues renaming the artist “Meanwhile, Back In Communist Russia…” due to the ellipses at the end. By replacing the three dots format (…) with precomposed ellipses (…) the issue was resolved.

Cost:

  • Time: Hard to fully quantify, but overall process took about four weeks of spare time. Most time was spent waiting for the autoloader on initial rips and then manually cleaning up artwork and metadata issues. I was typically able to run 3-4 boxes of discs through the autoloader per day, then spent some lengthy evenings working on tagging and artwork. The use of the autoloader then PerfectTUNES and Mp3tag made the process feel very efficient.
  • Hardware:
    • Acronova Nimbie USB Plus NB21-DVD: $569.00
    • USB 3.0 Card: $19.99
    • Internal Power Cable: $1.99
    • AMD Radeon HD 5450: $31.76
  • Software:
    • dbPoweramp and PerfectTUNES bundle: $58

Workaround for Acronova Nimbie USB Plus, QQGetTray, and OS X 10.11 (El Capitan) Failure with USB 3.0 Cable

I recently acquired an Acronova Nimbie USB Plus NB21-DVD to automate portions of some CD and DVD projects I’ve been working on. This has worked great on Windows 7, but on OS X 10.11 (El Capitan) I was unable to get QQGetTray to work. This software faciliates programs which support action-on-insert and eject-on-completion to work with the Nimbie autoloaders by detecting ejections (via tray opening) and triggering disc changes. Thus, it’s pretty important…

So, how does one make this work? Use a USB 2.0 cable instead of the provided USB 3.0 cable.

How did I find this workaround? After a bunch of searching and digging it just happened to be buried in a response from Acronova in the Customer Questions and Answers on the NB21-DVD’s Amazon page:

The new OS X El captain has changed the way it handles USB 3. In the meantime, instead of using the included blue USB 3 cable, use a USB 2 cable to operate Nimbie under USB 2.0 mode.
By Acronova on December 1, 2015

While writing this post I received a reply to a support ticket I opened with Acronova saying the same thing, and further messages indicated that the QQGetTray developers are still working on the issue.

Frustrating, and surprising, but it works. This workaround is not mentioned anywhere on the product’s site or knowledge base, nor is there any info listed about a fix for QQGetTray. While this keeps the drive from being able to rip at full USB 3.0 speeds, I can deal with this compromise in order to get a toolchain working to avoid manually swapping discs.

The symptoms are that OS X successfully sees the optical drive via a USB 3.0 SATA bridge, was also seeing a USB 2.0 device called NT21, yet QQGetTray would report “Status: No devices found” and fail to actuate the loader mechanism. This was on a Late 2014 iMac with Retina display, model ID iMac15,1, running Mac OS X 10.11.2. When connected via a USB 2.0 cable (instead of the provided blue USB 3.0 cable) the optical drive is then seen as hanging off the internal USB 2.0 hub along with the NT21 device. It all then runs as USB 2.0, and QQGetTray works properly.

The Worst CD Case Ever Made

Back in the late 1990s some electronic/industrial labels were fond of using nice looking metal boxes instead of the typical jewel case. These cases look great (photos: closed, open), but their design resulted in almost every disc they contained breaking.

In this case design the disc was pressed on to a crimped metal protrusion in the center of the case. Due to the tight fit this caused almost every CD in these cases to crack on removal, or sometimes simply when being stored. As shown above, radial crack running out from the center was the result. Sometimes this would result in what was effectively a very scratched disc, other times it’d cause the entire disc to split in half. It’s a terrible, terrible design.

Home Taping Is Killing U2

Last night while taking the trash out I found a couple of cassette tapes sitting on top of the trash pile. One was a Maxell XL II containing both U2‘s Achtung Baby and War, featuring such hits as Mesterious Ways [SIC].

iPod Battery Replaced

Roughly six years after buying my black fifth generation iPod I finally replaced the battery. After years of working well it was starting to fail, providing me with only a few hours of music listening while at work, way down from the original 10-15 that I was getting when it was new.

The replacement battery was part number BIPOD550MV30 from OWC, a very reliable online Apple reseller who has been around for years, and cost just over $20 shipped. While I could have purchased a cheaper battery via eBayI wanted to be sure to get one from a reliable place, so if I had problems with it there wouldn’t be an issue returning it.

The battery is now installed and charging, so hopefully by morning it’ll be full and ready to go.

Peter ‘Sleazy’ Christopherson, 1955 – 2010

This morning I woke to read on MetaFilter that Peter ‘Sleazy’ Christopherson died yesterday (November 24, 2010) in his sleep in Krung Thep (กรุงเทพฯ / Bangkok), Thailand.

As he himself stated a few months ago:

“…remember we are all only temporary curators of our present bodies, which will all decay, sooner or later. In a hundred years or so ALL the humans currently alive will have died. I take great comfort in knowing, with certainty, that thing that makes us special, able to enrich our own lives and those of others, will not cease when our bodies do, but will be just starting and new (and hopefully even better) adventure…

(The photo above was taken this past summer and borrowed from Chris Carter’s Photostream.)

Skinny Puppy at Royal Oak Music Theater

Soft Spoken Change Is Nothing; A View So Cruel

Rather last minute I decided to head out to the Royal Oak Music Theater to see Skinny Puppy perform. Despite Ogre having a 103°F (39.4°C) fever thus cutting the encore a bit short, and the backing video and costumes lacking the religious and political imagery which marked previous shows, I’m glad I went. Unlike years past I also brought earplugs, which were wonderful as I could hear properly both during and after the show.

As expected, the show was almost like a small reunion of Detroit-area industrial folks. While (obviously) not inclusive, I saw a good number of people whom I hadn’t seen for a few years and managed to say hello to most of them. I also ran into a coworker there, which wasn’t wholly unexpected as I’d previously seen him at an Apoptygma Berzerk show, and known his like for VNV Nation.

Due to life being fairly busy recently I made a last minute decision to go to the show, but it worked out well. As I was about to purchase my ticket someone was asking the queue if anyone needed a ticket, as he had a spare. While he was asking $15, I only had $20 bills, but I gladly handed one over in exchange for the ticket, as the result was still $10 less than door price, and no one in the process technically being shortchanged.

Here’s one more image, taken just after the show illustrating most of the stage setup, including the blood sprayed acrylic and metal box where Ogre spent much of the show.

Tarkan Akdam’s iFlash iPod Compact Flash Adapter (mk II)

I use my iPod daily, both in the car and at work for listening to music. I’d also recently come across a nice little PCB made by Tarkan Akdam called the iFlash iPod Compact Flash Adapter (mk II) which allows one to replace the 1.8″ hard drive in their iPod with a CompactFlash card. This card is a very nice, basic design, and can be purchased for a very reasonable price directly from the person who came up with it.

Since the hard drive in my iPod will eventually fail, I wanted to replace with flash before this happened and sell the working disk on eBay. A few months back I’d purchased one of Tarkan’s adapters for £14.50 (US$24.45, at the time) and kept it sitting on the shelf, waiting for a good time to do the replacement. Seeing that a 32GB Kingston CompactFlash card could be purchased for roughly $76.25 from Newegg I figured that now was the time, cashed in some change at a Coinstar machine, and ordered the card. (I was originally going to purchase it with an fee-less Amazon gift card from Coinstar, but the machine couldn’t issue one and thus did fee-less change counting. I then made the purchase from Newegg, who had faster free shipping.)

I’d also considered replacing the battery at the same time, but as I still get great battery life out of my iPod, I couldn’t see the need. Opening the iPod is easy enough, so when the time comes to replace that, I’ll do so.

The 32GB CF card arrived yesterday, and since I’m home watching Danielle as she recovers from having her wisdom teeth removed, I set to work today installing it. Opening the iPod was easily accomplished using one of Danielle’s guitar picks, and after disconnecting the flexible PCB cables and removing two little gray plastic spacers, the compact flash adapter was placed in the iPod frame, where the foam rubber cusions made for a nicely snug fit. After closing the iPod it presented me with a screen indicating that it needed to be connected to a computer for restoration, which puts the OS back on it. After doing so, the flash conversion was complete.

Since there is no longer a need to wait for the disk to spin up, the UI is much more responsive now. Battery life should also be improved greatly, as flash takes less power to run. The only current downside is that the iPod now feels off balance. Previously it’d felt very evenly weighted; solid and firm, but not overly heavy. Now the top of the device, where the battery is, feels a bit heavier than the bottom. Thankfully this shouldn’t matter for me, as most of the time my iPod is sitting on a desk or in a car mount.

Later tonight I’ll post an eBay auction for the old hard drive from the iPod, a Toshiba MK3008GAL 1.8″ 30GB hard disk. I hope that it’ll fetch $20 or $30, to offset the cost of the flash adapter and card. Now, here’s to hoping this iPod has another three years of life left in the rest of it.

CDs In Storage

A few months back I emptied my CD rack, boxed up the CDs, and removed the rack from the wall. Tonight I finally got around to moving the CD boxes into storage in the basement, placing them on 2x4s beneath the stairs. This both gave me a chance to straighten up that closet and finally got the living room / dining area cleaned out, as it’s where the boxes had been stacked.

As can be seen above, there’s quite a few boxes of CDs stored there now. Part of me wishes they weren’t in storage, but I know that having them out taking up wall space wasn’t particularly useful. Now this space is used by a bookshelf that is accessed much more frequently, as can be seen in this photograph taken a few minutes ago. Also, if you’re interested, here’s a photo of the closet and stacked CD boxes with stuff put back in around them.