NeVoT Common Problems
- (SGI) Cannot find audio.h
- Appears to be an installation problem. Is there an Irix package
that contains the audio support?
- Multicast support doesn't get compiled in
- gcc defines its own version of
netinet/in.h, without the multicast constants. This can
be avoided by copying the multicast-extended
netinet/in.h to
$HOME/$ARCH/include
or (possibly) updating to an newer version of gcc
- ld: Undefined symbol _g721_decode
- Most likely, you are not using the modified Sun audio library
containing the G.721 and G.723 encoders, as contained in the
Sun-specific library directory.
- "./rtp.h", line xxx: warning: nonportable bit-field type
- Bit-fields are by (ANSI) definition non-portable; ignore.
- ansi_flush undefined
- This occurs if some libraries were compiled with an ANSI C
compiler while others were compiled using the /bin/cc
compiler. Apply the following patch to tk/Makefile to determine which
library needs recompiling with /bin/cc:
*** Makefile Wed Aug 25 08:45:48 1993
--- Makefile.y Wed Aug 25 08:48:27 1993
***************
*** 18,24 ****
$(BINDIR)/nevot.tk: $(LIBDIR)/libgsm.a $(LIBDIR)/libnevot.a \
$(LIBDIR)/libutil.a $(LIBGUIF) main.c
! $(CC) main.c $(LDFLAGS) $(ARCH_CFLAGS) $(LDLIBS) -o $@
audio.c: ../nevot/nevot.h ../include/par.h
touch $@
--- 18,25 ----
$(BINDIR)/nevot.xview: $(LIBDIR)/libgsm.a $(LIBDIR)/libnevot.a \
$(LIBDIR)/libutil.a $(LIBGUIF) main.c
! $(CC) main.c $(LDFLAGS) $(ARCH_CFLAGS) $(LDLIBS) -o $@ \
! -y___ansi_flush
audio.c: ../nevot/nevot.h ../include/par.h
touch $@
- Segmentation violation - core dumped
- This is (almost) always an indication of a NeVoT bug (exception
see below). To fix the bug, it is helpful if you can use a debugger
to get a stack trace. If the program core dumped in the routine
TclBasic, it is likely due to not having used the option
-fwritable-strings
when compiling with gcc.
- Segmentation violation in Tk_SetBackgroundFromBorder
- Tk bug when color map is full. Clear color map and retry.
- (Sun) ld.so: warning: libc.so.1.6 has older revision than
expected 7''
- This message can appear for any library, not just
libc, as shown here. The dynamic loader could not find
the expected revision number of a dynamically loaded library. This
occurs if the program is installed on a system with an earlier
operating system version than the one it was installed on, e.g., if
the run-time kernel was SunOS 4.1.3, but the program was compiled on
SunOS 4.1.1. This error message can be safely ignored.
- (Sun) ld.so: libolgx.so.3: not found
- This message typically
occurs with X-related libraries, such as the example shown here. The
loader cannot find the requested library. Check whether the environment
library LD_LIBRARY_PATH is defined and either define it as the
directory containing that library or add the directory containing the
library to the value of the environment variable. This error is fatal.
- (SGI) rld: Fatal Error: Cannot find soname XXX
- Same cause as previous. Set the environment variable
LD_LIBRARY_PATH to the directory containing the Tcl and
Tk shared libraries.
- No speakers displayed
- Use netstat -M to check whether other sites are part
of the multicast group. Check with ps -aux | fgrep
mrouted whether the mrouted daemon is running. Make sure that
the time-to-live field of audio packets is set appropriately high by
all senders.
- One site appears several times
- This may occur if a remote site crashes and is restarted. One of
the sites should time out after about a minute (depending on the
configuration settings and number of session members) and appear in
gray.
- Host ... is invalid (illegal multicast, own address, ...).
- This message is shown when trying to join an illegal address.
Reasons include:
- joining a multicast group if NeVoT was compiled without
multicast support
- specifying both a multicast address and a unicast address
- specifying the local host address
- specifying an invalid address (such as all zeros)
- the host name was not found
- (SGI) debug timestamps increment in steps
- By default, the clock resolution of the SGI workstations is 10 ms.
The superuser can increase the resolution to 1 ms by the command
ftimer -f on.
- Not compiled for multicast
- On systems where multicast is not a standard part of the operating
system, a multicast-modified file
/usr/include/netinet/in.h must be used instead of the
default one. You may, for example, put the multicast-modified header
file in your ~/include directory.
- UDP_connect:setsockopt(LOOP) (n): Invalid Argument
- Occurs if NeVoT was compiled with multicast support, but the host
or the kernel NeVoT is run on does not support IP multicast.
- UDP_connect:setsockopt(ADD) (n): Cannot assign request
address
- This error occurs when trying to join a multicast group if the
multicast kernel cannot find a default interface for multicast
addresses. As a super-user, execute /usr/etc/route add
224.0.0.0 local 0, where local is replaced by the IP
address of the local host. Also, you may want to run the
mtest program included in the multicast distribution to
check if you can join a group with all-zeroes for the interface, e.g.,
j 224.1.1.1 0.0.0.0.
- This host/kernel does not support IP multicast.
- Same problem as for previous item.
- Warning: selective binding to multicast address not
supported.
- This message indicates that your kernel does not support binding a
socket to a specific multicast address. This message is informational
and does not indicate a problem. (Technical explanation: Newer
versions of the multicast code for SunOS allow to bind to a specific
multicast address rather than just INADDR_ANY. This
makes it possible to have several conferences, distinguished by their
multicast address, use the same port number.)
- Audio doesn't work
- Try playing an audio file from within nevot after
enabling 'monitor' in the 'play' panel. Make sure (for example, using
gaintool or tkaudio) that the audio input
and output devices are properly configured. On Sun workstations, try
cat /usr/demo/SOUND/sounds/sample.au > /dev/audio
Also, on systems that support hardware monitoring (Sun, SGI), enable
it to check if the audio input signal appears on the selected audio
output.
- Frequent record overflows
- Same cause as previous problem. For slow displays, the display of
overflow information (through a verbosity level of two or greater) may
keep the system from catching up with the audio. Setting the
verbosity to zero disables the poll signal handler on Sun systems and
should be used for slow systems such as IPC, SLC, SPARCstation 1, etc.
- G.721/G.723 distorted
- Slower machines such as the Sun IPC or ILC may not be able to keep
up with G.721 and G.723 encoding or decoding. Monitoring CPU
utilization with the perfmeter program should give you a good
indication of the resource utilization. Another indication of
insufficient CPU cycles is a high audio underflow count despite having
set the audio buffer size correctly.
- Speakers displayed, but no sound
- Also, both the session and site listen check-off should be marked
on. If the eighth note of one or more of the sites is going on and
off, audio data is being received. In that case, check local audio by
playing a sound file while the sound file loopback option is checked
in the set-up panel.
- Abort with Could not open audio device
- Most likely, some other application had already opened the audio
device. Also occurs if the workstation does not have an audio device.
- Wrong sampling rate
- On Silicon Graphics workstations, the sampling rate setting
currently has no effect if digital input has been selected. For an
unconnected digital input, the sampling rate is 48 kHz.
- Sampling rate conversion does not work
- Yup. Donations of a good rate-conversion program are gratefully
accepted. (The rate conversion routine within the Sox audio tool set,
for example, suffers from aliasing, since no low-pass filtering is
done.)
- Non-zero 'bad audio' in vat statistics
- This should only occur when sending GSM or LPC audio with multiple
frames per packet to a vat host. Currently, vat does not handle
packets that have fewer than the nominal number of frames per packet;
NeVoT uses short packets at the end of a talkspurt.
- SPARC-10 audio devices (line in, line out) do not work
- This may occur if you compile with gcc 2.4.5 or earlier, since it
uses an out-of-date sun/audioio.h header file. Use the
system version,
/usr/include/sun/audioio.h.
- Excessive playout delay even within a local area network
- This may be due to a number of factors. Enable both hardware
audio monitoring (e.g., by raising the monitor level in
tkaudio) and the software loopback within NeVoT. You should
hear the audio twice, with some reverberation-type delay.
Please include the following information when reporting problems:
- the version number of NeVoT (visible in the title bar of the
base window);
- the system type and operating system version of the machine(s)
used, as reported by uname -a;
- a copy of the debug output, enabled through the verbosity level in
the debugging/tracing setup menu. For audio problems, a
verbosity of 3 is appropriate.
It is helpful if you can reproduce the problem using the
sample.au file from the Sun audio demo directory,
usually /usr/demo/SOUND/sounds.
This is a beta release. Please send all bug reports and suggestions
to the author at schulzrinne@fokus.gmd.de.
New releases and bug fixed will be announced through the nevot mailing
list. To be added to or dropped from this list, send mail to the
author. Major releases will also appear on the rem-conf mailing list
(to join the list, send a request to rem-conf-request@es.net).
I would appreciate if you could let me know how you are using the
software.