wav files not playing on nano

I’m trying to play sound files from my nano, but nothing comes out of the speakers except for a faint pop, and then nothing. Here is my code:

#include <TMRpcm.h>
#include <SD.h>

TMRpcm audio; 

void setup() {
  Serial.begin(9600);
  Serial.print(F("\nInitializing SD card..."));
  if (!SD.begin(10)) {
    Serial.println(F("failed!"));
    return;
  }
  Serial.println("done.");

  audio.speakerPin = 9;
  audio.play("sound.wav");
}

void loop() {
  }

This is what my breadboard looks like:

the speaker I’m using:

the SD card reader I’m using:
http://www.ebay.com/itm/1pcs-SD-Card-Module-Slot-Socket-Reader-Read-And-Write-For-Arduino-ARM-MCU-IS-/271423472886?pt=LH_DefaultDomain_0&hash=item3f321984f6

IC I’m using:

tmrpcm library page:

Any ideas on how I can troubleshoot where the problem is? I was mostly following this guy’s tutorial:
http://maxoffsky.com/maxoffsky-blog/how-to-play-wav-audio-files-with-arduino-uno-and-microsd-card/
the serial monitor says the card initialized properly, so what could be the problem?

Did you get a circuit diagram there? I wonder whether you're driving the speaker correctly - I'd have expected to see a capacitor to take out the DC bias.

PeterH: Did you get a circuit diagram there?

circuit diagram of what/where?

Where should I put the capacitor?