16-bit vs. 24-bit audio

February 24th, 2011

Or, “Why 24-bit audio is a load of shit”

I read yesterday that Apple is planning to start selling 24-bit songs on iTunes, and this made me angry. iTunes currently sells 16-bit 256 kb/s AAC files, and will start selling 24-bit 256 kb/s AAC files.

Nobody will be able to tell the difference. Not a single person.

I say this as an audiophile whose entire music collection is stored in lossless FLAC files, because I claim to be able to tell the difference between FLACs and 320 kb/s MP3s. 24-bit is not going to make any difference.

So, let me back up my pessimism with some theory first.

Let’s say you have a 24-bit audio signal. Every sample in the signal is a value between 0 and 2^24 which represents the amplitude of the signal at that point in time. If you were to convert the entire signal to 16-bit, the lowest 8 bits of every sample would be lost — rounded, truncated, whatever. Whatever the true value in the original 24-bit signal was, the 16-bit converted sample will be no more than 2^8 off from the true sample — the difference between the true value and the downsampled value can be no greater than 2^8. This difference of 2^8 represents, at most, 1/65536th of the value of the original sample (2^24 / 2^8 = 2^16, or 65536). This is a difference of about 48 decibels. To put that into perspective, if you played a 16-bit signal at an equivalent volume to rainfall, the lost information in that signal would have the volume of the softest sound your ears could hear if there were complete silence otherwise.

So, that was the theory. Let me also back up my claim with an experiment.

Here is a 5-second clip from a 24-bit FLAC song that I happen to have in my collection. (The song is Progenies of the Great Apocalypse by Dimmu Borgir.)

24-bit Original

Here is the same 5-second clip, but downsampled to 16-bit using Audacity. (Spoiler, it sounds the same).

16-bit downsampled version

I loaded both of them up in Audacity, and subtracted the 16-bit clip from the 24-bit clip to get the difference. This represents the actual loss.

Lost signal

You aren’t supposed to hear anything.

Here is that same clip, except amplified by 48 decibels — that same rainfall-to-practically-silent conversion I mentioned earlier. As another way to look at it, if you play the 16-bit song as loud as a rock concert (~115 decibels according to my earlier link), then this is what you’d be missing.

Lost signal (amplified by 48 decibels)

Aside from the fact that it’s still pretty quiet, I also make the observation that it isn’t particularly interesting — it doesn’t match up to the song.

In conclusion, I think this is a crappy marketing stunt by Apple and nothing more. In the best case, people will end up with 50% larger files that sound no different, and in the worst case people might pay to replace their old 16-bit songs, essentially paying twice for what amounts to the same thing. On top of all that, 24-bit files aren’t supported by many devices. Apple would do far better to start selling higher bitrate (or lossless!) files, rather than 24-bit files.

John vs Dave 2010 — Thoughts

March 28th, 2010

2010-03-30 update: HD footage of the event
http://vimeo.com/10558068

2010-04-02 update: Gameplay-only footage (both screens)
http://www.youtube.com/user/InstantAwesome

There are too many people to thank to fit in one tweet, so here we go.

Thank you Nick Garner and Stephen Swift for providing color commentary, and extra thanks to Nick for reserving the spot in advance and making sure that the PAX dudes were cool with it. Thank you Joseph Canadas for doing player interviews throughout the match and for bringing in a second copy of Mega Man 2 from home so that we actually had two to use. Thank you Daniel Danger, whom I didn’t even ask for help, but showed up anyway with an HD camcorder and took some amazing footage of the event, and thank you Rob DeVita for also taking video on your camera, not knowing that some dude was wandering around with an HD camcorder. Thank you Casey Malone (whom you might have seen on the Harmonix panel at 10am on Sunday) for both live-tweeting the event and doing pre-game player interviews, which are available here — with me and with John.

A very special thank you to the PAX East Enforcers, particularly the dude with the shaved head and skirt whose name I’m sorry I didn’t get, who not only gave us the go ahead to have the event and bring in our own PA equipment, but also helped us set up the games and surrounding area. You guys embodied the DIY spirit of the gaming community and helped us do something that was both unsanctioned and awesome, and probably bent the rules a little for us.

Thank you, all my friends and coworkers, who showed up to cheer at my victories and gasp at my mistakes.

Thank you John Emhoff for getting wrecked by me at Mega Man 2, and for coming up with the idea to do this in the first place.

And, as always, Thank you for playing!

Who Would Win in a Fight? (Followup)

September 8th, 2009

Over four years ago, I noticed a very striking similarity between The Incredibles and The Fantastic Four.

Looks like collegehumor.com just picked up on it.

Four years too late, guys.

DA Bomb Products (exerpt)

July 16th, 2009

Jacob303: speaking of the guy in regulate
Jacob303: http://www.bombblunts.com/
^Daverd: hahaha
^Daverd: amazing
Jacob303: what i really like is their mission statement, it had to be written by a suit/tie marketting guy
Jacob303: “Not only are the names catchy, they also have your mouth watering in anticipation of firing em up. As an added benefit our unique inner packaging forms a double seal keeping our precious wraps fresh long after the competition is all dry and cracked up.”
^Daverd: wait a minute, the front page says they have 22 flavors
^Daverd: but the flavors page says 20
^Daverd: i’m being robbed of 2 flavors
Jacob303: well, thats the thugg lyfe, son.
^Daverd: true dat.

Pidgin-Microblog

June 22nd, 2009

For anyone who’s been having the same problem with the Ubuntu package pidgin-microblog:

I’ve been using a plugin for Pidgin called pidgin-microblog that allows me to receive twitter updates via a pidgin tab, and post to twitter in that same conversation. It’s pretty sweet. Anyway, recently (possibly since I upgraded to jaunty,) it has been sending me the same messages over and over every 15 seconds or so, to the point where I had to disable the plugin because it was annoying and occasionally crashing pidgin.

The solution was to apt-get purge pidgin-microblog and then reinstall it. The reinstall wasn’t entirely straightforward — I had been using a custom repository in my /etc/apt/sources.list which the upgrade to jaunty automatically commented out for me, which I had to uncomment for the reinstall to work. As an aside, all of my other custom repositories were also commented out from the upgrade (just FYI).

Nethack Twitter

May 15th, 2009

Our nethack server now has its own twitter feed: http://twitter.com/JerkNethack

Unlike the RSS feed, which has a 1-2 hour delay, this will give you near-INSTANTANEOUS updates on the deaths of other players. Also unlike the RSS feed, twitter is not state-based, so it could conceivably let you know about bones files. (Expect that functionality in a day or two.)

Update: The feed now lets you know about bones files.

Nethack RSS Feed

April 27th, 2009

I wrote an RSS feed for our nethack server, which will keep you informed about player deaths and their scores. (Thanks Nick for the brilliant idea). The source is also available.

It does not tell you about deaths by quitting, so feel free to continue spamming new wizards/priests to get that spellbook of identify.

UPDATE: I changed the feed link from http://209.6.168.183:81/nethack_rss.xml to http://sadowl.com/nethack_rss.xml, which is now the preferred location, because the other one is impossible to remember. Both still get updated every hour, so if you’ve already added the former to your feed, you don’t need to change anything. Also, Swifty has already noticed this post and joined our server. RSS for the win!

COPPA

December 24th, 2008

Today I got a very interesting email. The email originated from one of my own websites. The email content begins thusly:

Welcome to BrawlStages.com Forums

In compliance with the COPPA act your account is currently inactive.

At first I thought that for some strange reason my website (BrawlStages.com) had been shut down by The Man for violation of some obscure law. Reading further, I pieced together that I was being forwarded an email from one of the forum’s users that had been sent to him by my website. The forwarded email continued:

Please print this message out and have your parent or guardian sign and date it. Then fax it to:

By this point in the email I was thinking that there was some sort of scam going on. My next move was to google “COPPA act”, which apparently stands for “Children’s Online Privacy Protection Act act”, and is a real thing. By this point I’m very confused, because my forum does not enforce COPPA.

As it turns out, yes it does.

The forum I use is a prepackaged thing that I downloaded, and the first question it asks you when you try to sign up for an account on the forum is whether or not you are at least thirteen years old. I had never really paid attention to this question, nor explored what happens if you say you are not thirteen or older. As you can probably guess by now, it gives you a form that you are supposed to have your parents fill out so you can email or fax back to the site admin.

The email continued. (I’ve changed the names and other personal data before posting it here).

—————————— CUT HERE ——————————
Permission to Participate at BrawlStages.com

Username: Ralph23
Password: asdf1234
Email: ralph23@hotmail.com

I HAVE REVIEWED THE INFORMATION PROVIDED BY MY CHILD AND HEREBY GRANT PERMISSION TO BrawlStages.com TO STORE THIS INFORMATION.
I UNDERSTAND THIS INFORMATION CAN BE CHANGED AT ANY TIME BY ENTERING A PASSWORD.
I UNDERSTAND THAT I MAY REQUEST FOR THIS INFORMATION TO BE REMOVED FROM BrawlStages.com AT ANY TIME.

Parent or Guardian (print your name here): __hank___________________

(sign here): ______________ralph____

Date: ______wed 24 dec 2008_________

—————————— CUT HERE ————–i dont understand this part—————-

Once the administrator has received the above form via fax or regular mail your account will be activated.

Logging into the admin panel on my website, I indeed found this user with an inactive account. I activated it.

But a few things got me about this whole thing.

Firstly, BrawlStages.com has been up and running for almost a year now, and this is the first time I’ve ever gotten one of these emails. Every other kid who’s signed up in the last nine months has either gotten to the parental content form and decided it wasn’t worth it, or has (smartly) lied and said he’s thirteen. The fact that this kid actually went to the trouble of getting his parents to sign and email me the consent form is kind of amazing.

Secondly, I have no proof that the email actually did come from his parents. I changed the names but left the first-names-only quality and capitalization intact, and it does kind of look like a half-assed forgery. I have to assume that it is genuine, because if the kid was going to go through all the trouble of forging a parental content form, why wouldn’t he just say he was thirteen? Nevertheless, the underlying ineffectiveness of COPPA shines through.

Finally, this whole process has been contradictory to COPPA’s stated intent to protect children. When I told a coworker about this transaction, the first thing he said was “String him along. I have no evidence your parents gave you permission to visit this website. Please have them fax a signed note to….” Even ignoring the fact that I accidentally gave away the kid’s name and email address when I pasted the email to my coworker, it would arguably be a cakewalk to string him along — he’s under thirteen and apparently gullible enough to think I’m going to check into whether all my new forum users are really how old they say they are, neither of which I would have known if he had just lied about his age like the rest of the internet. And then he would have been safe among the faceless crowd, instead of the one 12-year-old who made me activate his account by hand. I’m about a million times more likely to fuck with him now than if he hadn’t sent in that consent form — all he’s done is made himself a target.

Go COPPA.

Yes on 1

October 13th, 2008

There is a ballot question in the upcoming state election to eliminate the state income tax. I did some research into the arguments for and against this question, and found that they all make the same incorrect assumption — that the budget would have to take the loss of the income tax and not make up for it in any other way. In fact, the full text of the question only specifies the elimination of the income tax as a binding measure, not any sort of reduction of the budget. I can think of several reasons why it would be a good idea to eliminate the state income tax and replace its portion of the state budget with increases in property taxes, something New Hampshire and several other states have been doing for years.

1. It would be more efficient for the state government.

We already have a system in place for collecting property taxes. Increasing the property tax rate would not require any more infrastructure than we already have. Eliminating the income tax would allow us to shed an entire department of the state government, saving the taxpayers money.

2. It would be cheaper and easier for taxpayers.

Every year I pay H&R Block something like 30 bucks to process my state income tax form. The fact that there’s an entire private industry that revolves around a specific type of tax should be a warning sign that said tax is too complicated. Nobody has to pay a 3rd party company anything to handle their property or sales taxes. Eliminating the income tax would save time and money for anyone who works in Massachusetts.

3. Taxes are a disincentive.

Taxes, while bringing in revenue, also dissuade certain behaviors. Cigarettes, for example, are heavily taxed. Sales taxes dissuade consumption and encourage saving. Property taxes encourage living efficiently. With the income tax, we should be asking ourselves: what are we trying to disincentivize? Productivity? Making a living? Eliminating the income tax would eliminate an undesirable disincentive.

For these reasons, I will be voting Yes on 1 in November, and I hope you do the same.

Mob Mentality: Part 2

September 19th, 2008

We recently got to play Mafia with some of the changes proposed in my previous Mafia post.

The Changes
Specifically, we discarded the Detective entirely and played with two “Elders” on the side of the Civilians. (Elders are what we ended up calling the character type that my previous post called the Police). We used my previous post’s Method 1; during the pre-game phase, the Elders got to see who all the Elders were, and that was the extent of their powers. Additionally, we put a constraint on the Elders that they were a new victory condition for the Mafia — if all the Elders die, the Mafia win. This was designed to prevent the Elders from announcing themselves publicly.

We also introduced an entirely new mechanic to the game — we allowed private note passing. In theory, there was nothing stopping anyone from doing this in our previous games, we just made it an officially condoned part of the game.

Thoughts
I liked the way the Elders replaced the role of the Detective. Traditionally the Detective would start a game knowing that one other person was a Civilian. In our game, two people started the game with this information, making turn one at least slightly more interesting1. Removing the swing mechanic that the Detective brings to the game was also a positive change.

I really liked the note-passing mechanic. As expected, there were a lot of unnecessary/joke notes flying around, but this was arguably a good thing — it made passing real notes much less noticeable among the noise of the joke notes. As an Elder, I managed to use the note-passing mechanic to my advantage2. Mike also speculates that note-passing would make the Mafia much more interesting if there were two or more of them in a game — I agree.

I still kind of felt like the “turn one problem” still existed, if in a slightly reduced form. At this point, I’m not sure how to solve it entirely. Adding more information to the game on turn one at this point seems too powerful. In the past, we’ve relied on noise-making as a catalyst for accusation-making — people seem to either be getting stealthier or deafer, and there were no such accusations during our two games. Maybe a solution to the turn one problem involves forcing the Mafia to do something more complicated during the night, like ask the moderator if a certain person is an Elder or not. This would not only make the Mafia potentially louder during the night, it would also give them a reason to speak up during turn one, since they would have more specific targets in mind.

We encountered a problem that at some points in the game, it was statistically favorable for the Elders to come straight out and declare their Elderhood. I felt like this was a lame conclusion to the game and so I didn’t do it, but that temptation is a problem. It would definitely be lame to come right out and declare it, but how lame is it to declare it privately to one person in a note? (I ended up doing this.) If that isn’t lame, would it be lame to send that note to another person, or two? Where do you draw the line?

Footnotes
1. I played one game as an Elder, and fired out a foundless accusation at Matt on turn one (Matt turned out to be a regular Civilian). I felt like this foundless accusation was a good move because it started up a conversation and it reduced the random turn-one-lynching from a full pool of 7 to an Elderless pool of 5 (assuming people went with my accusation).
2. At a point in the game when I felt like I could trust that Jessica was a Civilian, I sent her a note declaring that I was an Elder. I sent another note to my Elder-companion Culver telling him what I had just told Jessica. That way, if I died during the night, he would be able to avenge me.