IHU Manual Page

Version: 0.5.6

Index

1. Introduction
1.1 Some important notes before starting...
1.1.1 Network settings
1.1.2 Audio settings
1.2 Quick start

2. Detailed description
2.1 The main window
2.1.1 The FILE menu
2.1.2 The OPTIONS menu
2.1.3 The HELP menu
2.2 The settings dialog
2.2.1 General settings
2.2.2 Network settings
2.2.3 Sound settings
2.2.4 Encoder settings
2.2.5 Options settings
2.2.6 Security settings

3. Quick launch

4. Final notes


1. Introduction

Welcome to I Hear U (IHU), a Voice over IP (VoIP) application for Linux, that creates an audio stream between two computers easily and with the minimal traffic on the network.

The main features are:
The possibilities of use of IHU are endless, for example you can use it like a phone to talk with your friends all around the world, or at home/work to talk between computers in the LAN (talkback), etc.

1.1 Some important notes before starting...

First of all make sure you have the latest version of IHU (http://ihu.sourceforge.net). Follow the instructions contained in README and INSTALL files to compile the sources (you'll need the QT libraries, the ALSA sound driver, the Speex codec, the Soundtouch library, and the Ogg library). Anyway the automatic configure script will tell you what is missing.
If you want to transmit your voice/audio, then you need a microphone linked to your computer (but it's not necessary to use IHU) and, finally, you need a person to talk with, who has a computer linked to you (through the Internet or LAN) and IHU installed as well (unfortunately IHU it's not so useful alone on your computer, even if I spent hours talking to myself for tests ;-). Finally, I suggest to use headphones, to prevent feedback.
IHU's way to work is similar to a telephone: there is somebody who is waiting for phone calls, and somebody who wants to call this person. In the next paragraphs, the computer that will make the call will be named Caller and the computer that will receive the call will be named Receiver.

Now the next two steps are external to IHU and are necessary before continuing: setting up the network and the audio system.

1.1.1 Network settings

You need to know how your network is organized, and if firewalls are present between you and your IHU partner. The most important thing is:

If you want to receive calls, then your computer must be able to receive incoming connections.

Those situations are possible:
Briefly,
  1. If both computers are accessible from each other's IP address, no problem, both can receive and make calls.
  2. If one computer (or both) computers are behind firewall but you could change the rules as described abow, still no problem.
  3. If one computer is behind firewall and you can't change rules, then on this computer you can't receive calls, but you can still make calls.
  4. If both computers are behind firewalls and it is not possible to change any rules (it seems that you are very unlucky!), then you have no chances to talk to your friend :-(
Tip: You can easily test if everything is fine using the netcat program: Receiver runs "nc -l -p 1793" (or for UDP "nc -u -l -p 1793"), and and Caller runs "nc RECEIVER_IP_ADDRESS 1793" (or for UDP "nc -u RECEIVER_IP_ADDRESS 1793"). If you can see what your partner is typing (and viceversa), then IHU won't have any kind of problems.

1.1.2 Audio Settings

Then you need to set up the audio mixer, selecting the audio source and the optimal volumes. To do this you can open any mixer program (like "kmix" for KDE), paying attention to the recording source, that usually should be set to Microphone if you want to send your voice, and to the recording level (that for ALSA is usually named "Capture"). Also, take note of the playback volume (usually named "PCM", the one that you control also with XMMS, for example), because if it's too low, it will be hard to hear your partner.

Tip: You can easily test the audio settings directly with IHU. You run two instances of IHU and, in the first IHU window you become a silent Receiver clicking on Wait for calls and on Disable audio input, instead in the second window you become a self-Caller typing "localhost" as receiver address (You may need to Disable the audio output on this one). You will now hear yourself and you can check settings. But read the quick start to know how to do this if you have problems calling.

1.2 Quick start

Ok, you are ready to use IHU! Now you just need to know the address (IP or DNS) of the friends to call. Each IHU user who wants to receive calls should give his address to his IHU friends. Personally, I strongly suggest to register to a dynamic DNS service (such as dyndns), where you can register your computer with a fancy DNS address easy to remember (such as myhostname.homelinux.org); then each time you go online, your IP should update and your friends can always call you with that address.
Lets suppose now that your internet address is hostname.org and that you want the receive calls from your friends. Then, first of all, you have to run IHU and press the Wait for calls button. Your friend now will type your address (hostname.org) in the Receiver address field and will press the Call button. Hopefully you will see an inbound call notification and sound and if you want, you can answer by clicking on the Answer button. At this point you should see the TX and RX leds flashing, and you should hear something, now you can finally cry out: "I Hear U!!!" ;-)

2. Detailed description

2.1 The main window

The main window (see screenshot) is composed by :
2.1.1 The FILE menu (ALT+F)

The FILE menu offers these simple functions:
2.1.2 The OPTIONS menu (ALT+P)

The OPTIONS menu offers some interesting functions:
2.1.3 The HELP menu (ALT+E)

There are not so many things to say here, the only help available is what you are reading now! ;-)

2.2 The settings dialog

You can access the setting dialog from the Settings button in the main window or from the option menu (ALT+S or CTRL+S). The settings dialog allows you to change all the parameters and options of IHU. It is organized in several tabs (please note that the default button will set the default parameters only for the current tab):
2.2.1 General settings
2.2.2 Network settings
This tab is divided into two parts. The first is about your IHU as Receiver (when you receive calls), the second is about your IHU as Caller (when you make calls):
2.2.3 Sound settings
2.2.4 Encoder settings
Here you can change the settings of your Speex encoder (so only for your outgoing stream). Those settings are very important to determine the sound quality of your voice and the use of network, so adjust them very carefully (please refer to the Speex website for more details).
2.2.5 Options settings
Here you find some settings about the Audio Delay Reduction (ADR) option:
You find also some settings about the Automatic Gain Control (ADR) option:
2.2.6 Security settings
Here you can find some settings about security and cryptography:

3. Quick launch

If you are a command-line lover, you have the possibility to launch IHU with some quick launch options. Here is the list of available options (which you can get by starting with "--help"):
USAGE
ihu [OPTIONS]
OPTIONS
--wait Wait for incoming calls
--call HOST Call HOST (DNS or IP address)
--file FILE Play a IHU FILE
--encrypt Encrypt the outgoing stream
--noinput Disable audio INPUT
--nooutput Disable audio OUTPUT
--nogui Start without GUI (no interaction)
As you can see there is one option (--nogui), which allows you to run IHU without GUI. This is useful when you don't have the possibility to use a X server or when you want to launch IHU on remote computers, but then you don't have any possibility to interact with the program. I strongly suggest to use this option only for special cases, please use the GUI instead, which offers a better interface (please note that when using --nogui you have to change settings directly from qt config file, usually "$HOME/.qt/ihurc").

4. Final notes

Please use the Tracker at IHU sourceforge page to report bugs, patch, support requests. For any other kind of informations, suggestions, flames (ouch!), just mail the author. Now enjoy IHU!!


Copyright (C) 2003-2006 Matteo Trotta <mtrotta@users.sourceforge.net>

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License.