The Creative X-FI Titanium card has, for a long time, not worked on Ubuntu … until now. I've gathered what information I could and found a solution to get it working 100% of the time. This doesn't mean it works to 100% of it's potential; some features are still missing such as the Crystalizer and fun features like that. Though it does record audio well, processes extremely well and with my help you'll have it blasting at full 5.1 digital goodness.
Let's get started! Note that these instructions are for Ubuntu 11.04 and not for 11.10. Why not 11.10 nor any other linux? Well, I think Ubuntu 11.10 is a joke and I'm lazy so I use Ubuntu. Though I'm pretty sure you could modify these instructions to your distro.
The problem with the X-FI Titanium card most likely ISN'T that Ubuntu cannot ‘see' the card, it's most likely that it simply does not have the capability to use it (yet). If you go into your audio preferences you won't see it there, but if you do a little bit of command line magic it should show up! Even on a fresh Ubuntu 11.04 install.
Type in this command on the command line:
lspci | grep Audio
For me it output:
~$ lspci | grep Audio
03:00.0 Audio device: Creative Labs X-Fi Titanium series [EMU20k2] (rev 03)
04:00.1 Audio device: ATI Technologies Inc Cypress HDMI Audio [Radeon HD 5800 Series]
So it does actually show! YEY!
If it does not show up there, then this is NOT the tutorial for you. If you see it listed, continue on my friend to salvation!
Step 1) Add the Audio Dev PPA
The audio dev PPA's are the repositories which hold newer compiled version of Alsa and a few other things. The real problem with getting the X-FI card to work is Alsa, not ‘Linux'. The newer drivers available through the Audio Dev have the ‘ctfxi' drivers PROPERLY built right in.
To add the repository for Ubuntu 11.04 type in this command in the terminal:
sudo apt-add-repository ppa:ubuntu-audio-dev/ppa; sudo apt-get update
This will add the repository and update your list. Now all that's left is to install the new alsa!
sudo apt-get install linux-alsa-driver-modules-`uname -r`
This will automatically install the latest version of Alsa from the repository specific for your kernel inside of Ubuntu. This might take a little bit of time depending on your computer speed and internet connection. After all is said and done: Reboot. Though come back because there is more to do!
After your back into linux, it's time to do Step 2!
Step 2) Add the proper alsa configuration and compile the surround sound modules!
It might sound complicated, but it's rather simple. Just follow along and you'll be just fine. Don't miss any steps though.
First, we're going to configure Alsa and PulseAudio.
We need to open up a file named ‘asound.conf' and add some fun stuff into it. Most likely, you don't have it. No worries, we'll create it. From the command line:
gksudo gedit /etc/asound.conf
Type in your admin password when prompted. Now add this to the top of the file:
rate 48000 #required somehow, otherwise nothing happens in PulseAudio
Save and close the file.
Next we're going to build the required digital surround sound module: A52.
This process usually gets complicated by others, so I've simplified it for you. Copy and paste this into your command line / terminal and then press enter. Copy ALL OF IT. not line by line.
cd ~; sudo apt-get build-dep libasound2-plugins; sudo apt-get install libavcodec-dev libavformat-dev; mkdir ~/tmp; cd ~/tmp; apt-get source libasound2-plugins; cd alsa-plugins-*; ./configure; make; cd a52/.libs; sudo cp libasound_module_pcm_a52.la libasound_module_pcm_a52.so /usr/lib/alsa-lib/; sudo alsa reload; killall pulseaudio
That's a lot of work! WOO. No worries. Here's what it does:
- Goes into your home directory
- Gets the source code for the plugin and the extra development files
- Makes a temporary directory
- Gets more source stuff
- Configures the pre-install stuff, then compiles/builds the module
- Then installs it for you
- Resets Alsa and PulseAudio