Atomic I/O letters column #112Originally published 2010, in Atomic: Maximum Power Computing
Reprinted here February 20, 2011 Last modified 28-Apr-2012.
I have been meaning to do a massive backup of my CD music collection, but I recently realised the absolutely poor quality of MP3s. My brand new Sony bass-booster earphones revealed a crackling interference sound in every song that I had, even after attempting to mess with settings over numerous music appliances.
I was wondering what the best audio codec is to maximise quality (as storage is cheeeeeep), and what's the best program to rip my music with?
Because it does this to a 10kHz sine wave!
(Picture courtesy of Practical Devices.)
Whatever your problem is, it's not the codec. There's no MP3 compression artifact that sounds like "crackling interference", and MP3 at high bit rates is almost always indistinguishable from the original lossless audio. The "codec wars" generally have to do with getting high audio quality at lower bit rates (to save storage space and, more importantly, transmission bandwidth), or getting perfect lossless quality with smaller file sizes (using FLAC or Monkey's Audio, for instance).
But none of this has anything to do with your crackling noises.
First, make sure the noise is not simple distortion from turning something up too far.
If you're plugging your headphones straight into the output socket on the back of a standard modern motherboard, then the mobo may not have enough output power to drive decent-sized 'phones to a reasonable volume. Turn the volume way down, listen carefully, and see if the problem goes away.
If it does, that's because you've got one of the many headphone sockets that can't drive larger 'phones very loud. You can solve this problem with a whole new audio adapter that has strong headphone output, or with a headphone amplifier to plug between the computer and the 'phones.
(Similar symptoms can result if somewhere in the internal hardware/software signal path you've got some slider, usually the main volume control, turned all the way up, and another slider, like the old WinXP "Wave", only one notch above zero.)
If this doesn't help, and you ripped the songs yourself, then you may have made a mistake there. Ripping too fast, some other config setting that doesn't work right with the drive you're using (any proper ripping program, like good old CDex, will let you play with a lot of options), or perhaps your optical drive can't rip audio well at any speed, for some reason.
If the files are on a dying hard drive then that could introduce garbage data that makes unpleasant noises. But if all of your music sounds bad, the drive would have to be so sick as to cause very obvious other symptoms.
(The same applies to any data cable that's bad enough to create noticeable effects like audio corruption. Straight bitstream audio connections can occasionally balance on the knife-edge of complete broken-ness, so you still get sound but it's full of noise. But if a general-purpose data connection gets this bad, it should make the computer clearly sick.)
I think the problem is much more likely to lie with some component between the audio data and your headphones. There are lots of sound-driver problems that create pops and crackles, as can half-blown amplifier chips and dodgy electrical contacts on the analogue side. Oh, and probably power-supply problems, too; all sorts of bizarre symptoms can be caused by a sick PSU, though that's definitely not the first place I'd look in this case.
Try copying some of the MP3s to completely different hardware - another computer, a standalone MP3 player, whatever - and see if they're still crackly there. If they are, then it's a data problem of some kind - bad rips, dying hard drive, etc.
If they now sound fine, though, then it's time to start hunting the hardware that's adding the crackles to your perfectly-OK music files.
You can buy little USB "sound cards" on eBay now for only a couple of bucks delivered. They've usually got a description like "3D VIRTUAL 5.1 CHANNEL SURROUND SUPER USB SOUND CARD", but they're all the same USB dongle with two 3.5mm sockets on the end. By their ridiculously low price shall ye know them.
These things don't actually have very good sound quality, but they're a lot better than you'd think for the money, and they work with the standard built-in Windows USB sound drivers. They're great for quickly adding better-than-nothing audio to sound-card-less computers, and for diagnosing problems like this.
If the crackles go away when you're listening through a $2 USB sound dongle, then the problem is probably with your computer's sound hardware. One or another driver update may cure it, or you may need a new sound card.
(If the $2 USB sound doodad sounds good enough to you, then just use that!)
Last week I purchased an 8Gb Corsair Flash Voyager, to replace my aging 1Gb SanDisk Cruzer Micro. All was fine with it for a while, it actually surprised me at how fast it read/wrote. But now I think it is dead.
While I was copying a Uni assignment to it, the drive stopped copying, and the "Delayed Write Failed" error came up. When I tried again, it would not even start to copy. So I removed the drive, only to find when I plugged it back in again that the drive name was back to the original "Removable Disk", it was formatted to some "RAW" filesystem, and it was now read-only.
I tried formatting it by right clicking on the drive in My Computer, and also through Disk Management (in Computer Management), but nothing worked.
I'm not sure what else to do. Should I should keep trying to fix it, or send it back for a replacement?
The world of Flash-RAM storage is in a sad state, I tell you.
When Stephen sent me this, I assumed that the errors meant that he'd bought himself one of the countless fake Flash devices that're on sale on eBay and other flea-markets at any given time. (It's a classic Market For Lemons situation.)
You may know the drill with these things: The sticker says 8Gb or whatever, and that's the size the device reports itself as too. But there's actually only something like 512Mb of memory in it. When you run off the end of the memory that actually exists, it's Horrible Error Time.
And oh boy, do NOT get me started on what happens if you try to get your money back. (You'd do much better to not even try, and read a Franz Kafka book instead.)
As it turned out, though, Stephen had a genuine Corsair USB drive, bought locally, that was simply and honestly broken. He got a warranty replacement, and all was well.
So let's pretend he got scammed. How do you tell if you've got a fake Flash device - thumb drive, memory card or possibly even SSD?
Well, just copying a ton of stuff onto it as soon as you get it will do. Don't wait until you actually need to fill the drive to its sticker capacity - fill it up right away, remember the last files you copied onto it, unplug it and plug it back in again (to reduce the chance that some OS cache will hide a problem, though I've never actually seen that happen), and try to access the last files copied. If they're OK, the device is very probably genuine.
For a more rigorous, automated test, use C't magazine's "H2Testw" (Web-page in German, software bilingual). It's a very handy little utility for this purpose, and also for seeing if that ancient 8Mb thumb drive you dug out of the couch cushions is still functional.
It'll take forever for H2Testw to completely test a fake "8Gb" device, because failed write-and-verify cycles take a lot longer than successful ones. I officially give you permission to abort the test and declare the device fake after only the first few hours of errors.
It's possible to fix the firmware of at least some fake Flash devices so they report their (low) capacity honestly, and work. Here's a blog that talks about this.
The Windows Disk Management interface won't be sufficient for this, though, because neither it nor the command-line Diskpart utility will let you repartition a removable device. A GPartEd liveCD... http://gparted.sourceforge.net/ ...will do the trick. EASEUS Partition Master is supposed to work with removable devices too (with, for some reason, a minimum partition size of 2Gb...), but the free "home" version doesn't install in 64-bit Windows, and when I went to the trouble of installing it both in a 32-bit XP Mode virtual machine on my 64-bit Win7 PC, AND on an old 32-bit WinXP install on another computer, it never saw any removable devices. (This may have changed in the several months between the paper publication of this column and this reprint on the Web.)
I don't know of any other freeware Windows partition-editing options, that'll work with removable devices, and are any easier to use than a GPartEd liveCD.
Is it possible to connect a HD Set Top Box to an LCD monitor through an HDMI connection? And would I get sound if the LCD monitor had inbuilt speakers? I was considering a BenQ E2420HD connected to an Olin HVBT-2000B.
If the STB has an HDMI output and the monitor has an HDMI input, and the monitor can sync to the output resolution (and refresh rate) of the STB - which the spec-sheet for the E2420HD says it can - then it should work. Even with audio!
When HDMI was young, monitors that supported it often didn't support HDTV resolutions, but now that's quite common. (As is proper support for HDCP Copy Control Crap, which used to be another common cause of black screens.)
If you've already got the monitor, you can eliminate doubts if you just tote it to a shop, plug it into a display STB and see what you get. (This sort of thing was less practical when 21-inch monitors weighed 30 kilograms.)
You can also connect a PC monitor to an STB via any analogue outputs and inputs the STB and monitor happen to share, down to mini-DIN "S-Video" and RCA-plug composite video. You won't get even HD-"ish" image quality from anything less than three-wire component video, though.
cat /dev/hd5 | google_translate > /dev/hd10
Do you have any idea how to convert a Windows 7 Striped software RAID on 3 disks to a RAID 5 hardware set with 4 disks?
The problem is I have 4Tb worth of data on there that may be extremely difficult to back up.
I don't know of any utilities that'll convert a stripeset from software RAID to the format any particular hardware RAID controller uses. (Different hardware RAID controllers have different formats.) I wouldn't be at all surprised if there were several ways to, at least, convert the format of a stripeset while keeping the basic disk number and structure the same - heck, you can probably do at least some variants of this job with a very small shell script in Linux. But I, blessedly, have never needed to learn about it. And converting your 3-disk RAID 0 to 4-disk RAID 5 would be... challenging.
Re your 4Tb of important data, I know I keep saying this over and over, but if that data is important to you, it should already BE backed up.
If you've got it on a RAID-0 stripeset (the only kind of "striped" volume available in non-Server versions of Win7), the death of any of the three disks will hose all of your data.
OK, lecture concludes. A possible solution:
Determine whether you have sufficient computer-owning friends that they'd like to buy a total amount of storage adequate to temporarily store all of your data. Like, three "1.5Tb" drives, formatted capacity about 1400 gigabytes each.
Buy those drives, use them as separate devices or as a temporary striped or spanned volume to hold the data while you convert the original software-RAID drives to hardware RAID with one more disk. Then copy the data back onto the new RAID-5 set.
Now pass on the slightly-used drives to your friends, possibly along with a small fee for drive rental.
And then, back up your data properly, because RAID 5 is not a magical guarantee that more than one drive won't be fried by a lightning strike, nobody will break in and steal your computer, you won't confidently instruct your computer to destroy your valuable data, et cetera.