redocneXk released - Realtime 5.1 ac3 Encoder

Discussion in 'General Discussion' started by Tril, Nov 17, 2005.

  1. Tril

    Tril Triple screen racing ftw

    This is a realtime AC3 encoder that allows you to use spdif passthru with sound from any source.

    It encodes to AC3 what you send it by using ASIO. ASIO is used to transfer audio from the sound card to the cpu. The cpu encodes the sound to AC3 and send it out of the computer by using the sound card digital passthru. You can easily do this to every sound played in windows with this program. It works with Creative cards on the kX drivers and the Creative drivers.

    The latest version is 1.10.

    Link : here for 1.10
    Hosting provided by me

    Link : here for 1.08 and previous
    Hosting nicely provided by

    As of 1.05, there are three modes handled by the -m switch that take care of selecting the correct inputs and mixing in software, if necessary, for the card and the audio drivers used. There is an auto-detection and it should work in most cases, so you will only need to use the -m switch if the detection is incorrect.

    Link :
    This is a tool I wrote to see information about ASIO and access the ASIO control panel.

    Instructions for setting the DSP if using the kX drivers :

    In the DSP, connect the first 6 pins of Surrounder+ to the pins asio0 to asio5 on epilog and activate passthru in the mixer (check 'Digital Output Only' and select "SPDIF 0" for 'Toggle AC-3 Passthru mode'). Then double-click redocneXk.exe.

    It's that simple. You can change some options by using switches. Look in the readme for explanations.

    Below are some pics to help set the Mixer, the DSP, the Surrounder+ and the ASIO Control Panel. This is provided to help the users that never touched ASIO or the DSP. Other settings can be used.
    ASIO Control Panel

    NOTE on the encoder :

    The encoding is done by the avcodec library. This library is licensed under the LGPL. A copy of the license is included in the zip file and the location where you can find the source code of ffmpeg is written in the readme. The dll is dynamically loaded at runtime. That means that you can recompile the dll and use it instead of the dll I provided. I haven't changed the code of the library. I used msys and mingw32 to compile the dll. The library avcodec is part of ffmpeg.

    I also made another version of the tool with a GUI. It contains a mixer and a few more options.
    Go to the thread here : redocneXk (GUI version) released - Realtime 5.1 ac3 Encoder
    WARNING: this program usually causes a BSOD with games using OpenAL. The reason is unknown. It's recommended to avoid using it with games using OpenAL.
    Use this thread for feedback, help and reporting bugs of redocneXk.
    Last edited: Nov 23, 2008
  2. Wejgomi

    Wejgomi New Member


    first I must say this was the project I'v been looking for years, it was really lame not being able to experience your sound cards features in music and games, as I don't have more than a 2-stereo and a digital input on my home theater.

    second, it does the job perfectly, especially when your listening to music, Iv been trying to make a 2-stereo sound to surround using Pro-Logic effects on home theater, but now I see its no match to a real surround done in kX DSP. :)

    it doesn't really have a latency issue, and you won't even notice a thing while playing non-fps games, the ac3 encoded sound is there and it matches the game perfectly, but in fps games, especially the multiplayer ones, you cant even withstand a 50ms delay as you have to react as soon as possible, but yet the latency is satisfying :bleh:

    to conclude, this project takes you out of a cable chaos while you still enjoy a 5.1 true surround experience on your system, great work :D
  3. Maddogg6

    Maddogg6 Tail Razer

    I would have named it 'trill-code' or 'Trill X kode' (something more selfish).. lol

    Ay See 3 4 ME

    AC3PO (PO = Prologic output) Ok not selfish, but sorta funny...


    I know - where was I when you were looking for names... lol

    Under any name - its SWEEET

    Kudos Trill.
  4. thomasabarnes

    thomasabarnes Long Time ***** Friend

    Is it really as simple as the 1st post says. Where does the avcodec.dll go? And do we have to place a check mark in any of the SPDIF Options on the kX Mixer?

    Can someone explain how to really get this to work?
  5. Tril

    Tril Triple screen racing ftw

    You can leave the dll in the same folder as the exe. I can't comment on the settings of the mixer because my card does not support passthru and I never tested passthru myself.

    I'll add an explanation of how to set-up the mixer in the first post once someone replies with the procedure in this thread.
    My guess is that you have to choose SPDIF 0, SPDIF 1 or SPDIF 2 instead of Off on the bottom where it's written AC3. I don't know if you have to check "Toggle Digital Output Only Mode" or "Toggle SPDIF Bypass Mode".
  6. thomasabarnes

    thomasabarnes Long Time ***** Friend

    Thanks for the reply, I'll wait to someone explains it here.
  7. dj_stick

    dj_stick Apple Fanboy? Staff Member

    mmm i was planning to hook my pc up to my home theatre eventually, this little program will really help with that :)
  8. Wejgomi

    Wejgomi New Member

    You only have to check "SPDIF/Digital Out Only" mode on, and select "SPDIF 0" for bypass mode on kX mixer..

    The rest is done with kX DSP, and is written clearly in readme file..
    (aLL outputs from Surrounder+ to ASIO1 through ASIO6, you only need to connect a pin, program does the others automatically) :duh:
  9. =MO=MaTriX

    =MO=MaTriX New Member


    here this program works perfectly! really nice one!!
    I've tested F.E.A.R, a first person shooter and it was great. bullets from all directions :duh: :D
    also latency looks quite alright because voices and shots were synchronously, imo

    but maybe you can compile the program with sse and sse2 flags, so the latency is getting less?
    (dont know if this works because im not a programmer :rolleyes: )
  10. thomasabarnes

    thomasabarnes Long Time ***** Friend

    Say does one need digital speakers for this to work? Can anybody say how the kX Mixer is suppose to be set up for this to work. I think I'm doing something wrong. When I double click on the redocneXk.exe one of the lines in the window that pops up says:

    Error Message: No ASIO Driver error

    But then at the bottom it says:

    ASIO driver started successfully.

    I never tried using any SPDIF setting before. Sorry for my ignorance, but what am I doing wrong?
    Last edited: Nov 17, 2005
  11. Maddogg6

    Maddogg6 Tail Razer


    Yes - you need either 5.1 digital speakers OR an external decoder, like a home theater receiver.

    If you use only analog outs, this encoder will be of little use to you.
  12. thomasabarnes

    thomasabarnes Long Time ***** Friend

    LOL OK I C, thx!
  13. Russ

    Russ New Member

    I could be wrong but I think that is just a message indicating that there was no error.

    ErrorMessage: "No ASIO Driver Error"
    as opposed to:
    ErrorMessage: "No ASIO Driver"
  14. Tril

    Tril Triple screen racing ftw

    I've changed the zip file. The first 8 lines about indexes are not supposed to appear. They were only for testings purposes. You can redownload the zip if you want.

    Notice the "No" word. It means no errors.

    If passthru is not activated, you will hear the sound you send to the asio pins0 to asio5 decoded by kX after the AC3 icon pops up.

    There's something everyone should know. The plugin works with a buffer of 1536 samples. It needs to full that buffer before encoding.

    1536/5=307.2 NOT USABLE
    1536/7=219.4 NOT USABLE
    1536/9=170.7 NOT USABLE
    1536/10=153.6 NOT USABLE
    1536/11=139.6 NOT USABLE
    1536/13=118.2 NOT USABLE
    1536/14=109.7 NOT USABLE
    1536/15=102.4 NOT USABLE

    From that you see that you get the numbers 32, 48, 64, 96, 128, 192, 256, 384, 512, 768 and 1536. You will get the lowest latency with redocneXk if you use one of those numbers as the number of samples for the ASIO buffer. You will get the same latency if you chose any of those numbers because it takes the same time to fill the buffer of 1536 samples.

    What this means is don't choose 1024 or any number higher than 1536 for the ASIO latency in the ASIO Control Panel if you want the lowest latency.
  15. thomasabarnes

    thomasabarnes Long Time ***** Friend

    OK Tril, roger. Thanks for clearing that up for me/us.:)
  16. Tril

    Tril Triple screen racing ftw

    BTW, redocneXk comes from kXencoder reversed. :) Calling it kXencoder would have been too boring.
  17. thomasabarnes

    thomasabarnes Long Time ***** Friend

    LOL That's cool man. I just noticed that!
  18. dj_stick

    dj_stick Apple Fanboy? Staff Member

    took me a little while to notice as well, i was confused by the name before that lol
  19. Maddogg6

    Maddogg6 Tail Razer

    I thought it was Klingon or
  20. SynthDude2001

    SynthDude2001 New Member

    Hi, I have a few questions about this program. I'm in the process of upgrading from an Athlon XP and nForce2 motherboard with SoundStorm, to a newer dual-core Opteron system with an Audigy 2. So, I have been in search of a way to encode 5.1 game audio to Dolby Digital in real-time in software for the times when I hook my computer up to a receiver (since my old motherboard could do it) - and it looks like I may have just found my answer.

    I apologize in advance if these questions are a bit stupid, but I want to make sure that I understand correctly how to use this program. Am I to install the Audigy 2 drivers from Creative's website as I normally would? Or the kX drivers that I'm starting to read about here? Then, how exactly would I go about setting up this program to encode all my audio into AC3/DD and send it out over the card's digital output? I didn't quite understand the references to ASIO and Surrounder+ in the readme file.

    Any help will be much appreciated. :)
    Last edited: Nov 21, 2005

Share This Page