Creative X-FI Titanium 5.1 Digital Surround on Ubuntu

Piotr Krzyzek —  October 28, 2011 — 10 Comments

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:

For me it output:

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:

This will add the repository and update your list. Now all that’s left is to install the new alsa!

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:

Type in your admin password when prompted. Now add this to the top of the file:

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.

That’s a lot of work! WOO. No worries. Here’s what it does:

  1. Goes into your home directory
  2. Gets the source code for the plugin and the extra development files
  3. Makes a temporary directory
  4. Gets more source stuff
  5. Configures the pre-install stuff, then compiles/builds the module
  6. Then installs it for you
  7. Resets Alsa and PulseAudio
All that’s left is for you to go into the audio preferences and select your new awesome X-Fi Titanium card! Don’t forget to set the output profile to be “Digital Surround 5.1 (IE958/AC3/ Output” (or one of the similar ones) to get pure digital audio goodness.

Piotr Krzyzek

Posts Twitter Facebook Google+

Piotr Krzyzek is one of those rare people who can say he's a consultant, author, entrepreneur and programmer and mean it. His consulting firm, Chykalophia Group, has attracted international startups, Department Of Defense contractors, local mom-and-pop shops and many others from all around the world. He is a bonafide computer nerd with a passion for business, networking and business development.

10 responses to Creative X-FI Titanium 5.1 Digital Surround on Ubuntu

  1. Thank you very much, this worked for the Sound Blaster X-fi surround 5.1 Pro external sound card aswell.
    Even though lspci | grep Audio didn’t show my card.

    And again thanks for an easy guide!

  2. How do you get the rear headphone jack to work? The one on the card itself, next to the optical output. I have a PCI-E Auzentech Forte 7.1 (that’s X-FI Titanium series).

    • It all ‘mostly’ worked after compiling the new alsa and kernel header modules. To get the other ports to all work nicely, I’d recommend also making sure you did the A52 module step plus the .asoundrc file thing. Though, I’m not sure if your Auzentech card has any ‘extra’ or different specifications than the non-branded X-FI … not sure.

      I’m also using an external speaker system through the optical out port … so I never really tried the other ports. THOUGH, before I went optical, I did used the 6-channel passthrough through the front, back and sub-woofer/bass ports on the card and those worked well.

      My suggestion would be to try to see if the card works fine, and especially that rear port, in Windows. If it doesn’t, then the card is broken. If it works, then maybe the port is muted in Linux?

      Though with the new compiled modules + A52 + the .rc file it should all show in the control panel and ‘should’ work :-/

  3. Thanks ! My X-Fi Fatal1ty now gives sound in Ubuntu 11.10 ! Finally something that did work !

  4. on Ubuntu 10.10 (Creative Labs X-Fi Titanium series [EMU20k2] (rev 04) )
    don’t works. No one method I could find. And this one don’t work also.

    • Hey Kage,

      Sorry to hear that this didn’t work out for you. Did you receive any error message? What went wrong in the process? Though on a side note, this article plus the other one I wrote were for Ubuntu 11.04 and Ubuntu 11.10. Contact me directly and I’ll try to help you out.

      — Peter

  5. Hi, Piotr!
    Thanks for quick reply.
    How can I contact you directly?

    There is something in MAKE process – modules libasound_module_pcm_a52.la and libasound_module_pcm_a52.so are not generated..

    me@mypc:~/tmp/alsa-plugins-1.0.23/a52/.libs$ sudo cp libasound_module_pcm_a52.la libasound_module_pcm_a52.so /usr/lib/alsa-lib/
    cp: cannot stat libasound_module_pcm_a52.la': No such file or directory
    cp: cannot stat
    libasound_module_pcm_a52.so': No such file or directory

    me@mypc:~$ aptitude search avcodec
    i libavcodec-dev – development files for libavcodec
    i libavcodec-extra-52 – ffmpeg codec library
    p libavcodec-unstripped-52 – ffmpeg utility library – transitional package
    c libavcodec52 – ffmpeg codec library
    p xmms2-plugin-avcodec – XMMS2 – avcodec decoder

    me@mypc:~$ lspci | grep Audio
    02:00.1 Audio device: nVidia Corporation High Definition Audio Controller (rev a1)
    05:00.0 Audio device: Creative Labs X-Fi Titanium series [EMU20k2] (rev 04)

    me@mypc:~$ uname -a
    Linux omb.org.ua 2.6.35-32-server #66-Ubuntu SMP Mon Feb 13 21:21:41 UTC 2012 x86_64 GNU/Linux

  6. Thanks for this, it is great!

    However, I am finding that when it does work, I can only select 2 channel digital audio under “hardware” and often this crashes and I have to reset pulse audio.

    I have X-fi titanium

  7. i’ve noticed that only the IEC958 shows up and no AC3.

Leave a Reply

*

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax

Text formatting is available via select HTML.

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">