Linux Console Version

This describes the installation and startup procedure for the .net5 Console Version of QIRX, called qirxConsole. The Linux distribution used is Debian 11 ("Bullseye"), 64Bit.
The installation procedures described here may be different on other systems.
To see the qirxConsole running in an Ubuntu Virtual Machine, you might have a look at this youtube video, recorded by Herman Wijnants:


  • Step 1: Check PortAudio Availability. PortAudio realizes the audio output.
    In a console, type sudo find / -xdev -name libportaudio.so.2
    The output should contain a line similar to the following one:
  • Step 2: Check the availability of the libffts.so, realizing the Fast Fourier Transform.
    In a console, type sudo find / -xdev -name libffts.*
    The output should contain a line similar to the following one:
  • Step 3: Check the availability of the libfaad, realizing the AAC decoder for DAB+.
    In a console, type sudo find / -xdev -name libfaad.so
    The output should contain a line similar to the following one:
  • Step 4: Check the availability of the C runtime library libc.
    In a console, type sudo find / -xdev -name libc.*
    The output should contain a line similar to:
  • Remark: In all these outputs, the directory prepending the file which was searched for, like
    MUST be in the search path of your Linux where shared libraries are looked for.
  • Remark: In case one or more of the above shared libraries should not be found on your machine, the corresponding binaries of these libraries are contained in the "C++Libs" sub-directory. You can try to copy them into a directory where your Linux searches for shared libraries.
    This however, is not guaranteed to work, as an installation of e.g. PortAudio might need more files.
    In any case, a better alternative is to look in the web for the proper way to install the missing software.
  • Step 5: In the console, go to the directory where you want to install qirxConsole. If not existing, create it with e.g. mkdir mydir.

QIRX Installation

  • Step 6: Copy the downloaded file qirxConsole_xyz_Linux.7z into an arbitrary directory of your choice, e.g. mydir. For your convenience, you might rename it to qirxConsole.7z.
  • Step 7: Unzip the downloaded file qirxConsole.7z. This should create a directory qirxConsole. Its content should look like so:
    The names in the green blocks denote directories.
  • Step 8: To avoid collisions with a possibly existing version of librtlsdr, remove it by typing
    sudo apt-get remove librtlsdr0. This command might be different on non-Ubuntu or non-Debian distributions.
  • Step 9: Run the script "install.sh" by typing
    sh install.sh, requesting you to enter the root password.
    The script does the following:
    • Permissions: All files get "execute" permission.
    • File Copy: The "own" shared libraries
      - Viterbi.so, performing the Forward Error Correction for DAB and DAB+,
      - kjmp2.so, performing the MP2 decoding for DAB,
      - librtlsdr.so, performing the library for the rtl_tcp I/Q server by old-dab,
      are all copied to the directory /usr/lib/x86_64-linux-gnu/.

    The content of the directory now should reflect the changed permissions:

Running qirxConsole

  • Step 10: From within the qirxConsole directory, type (case-sensitive)
    The following should happen:
    Three xterm consoles should have opened:
    - rtl_tcp...: It will get the output from the rtl_tcp I/Q data server.
    - qirx_audio: It will get the output from the qirx_audio program, when DAB has been selected.
    - qirxConsole: From this input/output window you will operate the qirxConsole program.

    Important Remark: In case of the rtl_tcp console not showing up or showing errors, then your RTL-SDR hardware is not recognized properly. You must first repair this situation before proceeding.
    One possible source of such a situation is that often not all USB ports work together with RTL-SDR dongles.
  • Step 11: Example how to make a DAB reception.
    • TCP/IP connection: In the qirxConsole window, type
      QIRX tries to make a TCP/IP connection to receiver #1, with the parameters from the configuration file qirxConsole.config. This file is (on my machine) residing in the directory
      There you find the parameters for three receivers, the default for rx#1 is 1234 (IP Address, Port). These must match the parameters for the rtl_tcp xterm in the script file startMe.sh.
      In case it should be absent, the config file is newly created with default values at startup of the program.

      The output in the rtl_tcp and qirxConsole windows is like the next picture:
    • Select and create a demodulator: type
    • Select an (available!) ensemble: type e.g.
    • Select an available service: type e.g.

      After this step the output should be similar to the following picture:

      After this step, the qirx_audio will output some information, as audio is now generated.
    • Get help
      Entering help or a questionmark will list all possible commands.

A friendly request: For questions, critics, suggestions, discussions and the like, please consider to use the forum having been created for this purpose.

  • Cookies helfen uns bei der Bereitstellung unserer Dienste. Durch die Nutzung unserer Dienste erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen