Monday, February 6, 2012

Debian squeeze, sox w/ mp3 support

So went about getting mp3 support on my soX since it is a "non-free" codec...found this link...but it was slightly outdated but was corrected in the comments section.

So basically this is putting the steps all in one ;D ...

note: I recommend doing this as root instead of sudo'ing everything...

1: Follow the steps and add the Debian Multimedia to your apt sources and install everything it says for your distro...in this case Squeeze. I'd get these as well just in case...some might not be needed but these helped me compile it better:
apt-get install libavcodec-dev liba52-0.7.4-dev libdc1394-22-dev libdirac-dev libfaac-dev libfaad-dev libschroedinger-dev liborc-0.4-dev libtheora-dev libx264-dev libxvidcore4-dev

2: Make sure you have sox already installed.
apt-get install sox libmp3lame0 libmp3lame-dev

3: cd /usr/src

4: get all dependencies.
apt-get build-dep sox

5: get the source file
apt-get source sox

6: (replace 'z' with your version #) extract source file.
dpkg-source -x sox_14.z.z.dsc

7: cd sox-14.z.z

8: Use vi or whatever editor you wish.
vi debian/rules

9: "DEB_CONFIGURE_EXTRA_FLAGS := --without-lame ..."
change the "without" to "with"
"DEB_CONFIGURE_EXTRA_FLAGS := --with-lame ..."
the "..." won't actually be there...I just didn't want to type out the whole line.

10: Build the package.
dpkg-buildpackage -b

11: go back up a folder cd .. then install all the shiny new files you just created.
dpkg -i *.deb

12: test er out...just showing "sox -h" won't really work since before I had mp3 support it already showed it in the list. so do a test (e.g sox -n out.mp3 synth 5 90) if it doesn't complain then [edit] voila [end edit]! you're good to go.

cheers.

4 comments:

  1. I spent all night trying to get sox installed on my Dreamhost VPS. Finally landed on this post which perfectly solved my problem. Thanks for posting!

    ReplyDelete
  2. You're welcome! Glad the post helped.

    ReplyDelete
  3. Thank you Sam. That worked a treat.

    BTW, I think the word you are looking for is "voila"!

    All the best,
    Chris

    ReplyDelete