Project DiaStar Server - Troubleshooting

From ProjectDiaStar

Jump to: navigation, search

Here are some common problems/pitfalls that might occur in getting a DiaStar server installed, running and working with a client.

Contents

Installation of DiaStar Media Engine fails, but CentOS is OK

  • Check the system date/time. RPM install may fail if system date and time is incorrect.

License activation fails

For a trial license, check the license file to make sure the expiration date for the license has not passed
  • For a license bound to a system's MAC address, check the license file to make sure that the HOSTID=xxxxxxxxxxxx parameter matches the MAC address assigned to device eth0. It must be device eth0, not eth1 or eth2.
  • If a system has a DNI board, the license must be bound to an ID that that was generated using the board's serial number. The 2nd HOSTID parameter will look like this: HOSTID=HEB=xxxxxxxxxxxxxxxx. If it does not have this, and is bound to MAC address only, the license will not activate.
  • If a DNI board is removed, the license based on its serial number will not work. A new MAC-based license must be obtained.
  • An older version of the GNU C++ library is needed on CentOS for DiaStar Media Engine licensing. It may be installed with:
# yum install compat-libstdc++-33-3.2.3-61
  • Make sure that there is a mapping in /etc/hosts between the system name and a valid IP address for the system. This is needed for the DiaStar license manager. Without this mapping, DiaStar licensing will fail. Two examples of /etc/hosts for a system named "diastar":
127.0.0.1       localhost.localdomain localhost
192.168.1.177   diastar
::1             localhost6.localdomain6 localhost6

or

127.0.0.1       diastar localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6

DiaStar Media Engine will not start

  • There is not enough memory in the system to accommodate the devices support by the license. Either add more memory or get a smaller license. The absolute lowest amount of memory for even a 4 port IP test system should be 1-2GB.
  • An error similar to this is seen: "2010-03-16 20:21:24.376011 ERROR Woomera::Server::CreateSocket() failed to bind to port: 42420 Address already in use" The Woomera protocol used in DiaStar is sent over TCP/IP port 42420. Most likely, another instance of the DiaStar server is running on the system. Or, another process may be using this port. Either way, make sure port 42420 is not in use.

DiaStar takes SIP calls, media appears to be playing, but no RTP streams leave the system

On newer hardware, the Real Tine clock (RTC) is emulated in software using a High Performance Event Timer (HPET), but the emulation on Linux is buggy and frequently does not generate interrupts on /dev/rtc.

This error will be seen in /var/log/messages:

Dec 17 01:33:59 localhost ssp_x86Linux_boot: ERROR: The RTC clock is not ticking.  To correct 
this specify, "hpet=disable" (32-bit system) or "nohpet" (64-bit system) on the kernel boot line.

In addition, to check for RTC vs. HPET use, you can stop the DiaStar Media Engine and run and a simple diagnostic:

#  dlstop
# /usr/dialogic/bin/rtc_irq_test
RTC_IRQ_TEST: Test Passed

This indicates that RTC is in use. Failing the test would indicate HPET. Note that this not 100% reliable on all systems.

To solve this, the system must be instructed not to use HPET. Change the machine’s /boot/grub/grub.conf file to add hpet=disable:

title CentOS (2.6.18-164.el5)
       root (hd0,0)
       kernel /vmlinuz-2.6.18-164.el5 ro hpet=disable root=LABEL=/
       initrd /initrd-2.6.18-164.el5.img

On 64-bit versions of CentOS, use nohpet instead of hpet=disable.

Reboot the system when grub.conf has been modfied.

Using the verification license, an inbound SIP call "hangs" before connecting and no media is seen/heard

The verification license does not allow for transcoding. Media streams between DiaStar and it client (on the initial verification a python script, usually Asterisk or FREEswitch) are set by default to H.264. If the call requests H.263 or MPEG4, transcoding has to take place, but the license doesn’t allow it.

The DiaStar log (usually found in /var/log/diastar will show the following when the call hangs:

2010-12-13 05:02:06.815547 INFO   IpmDevice::startMedia() no remote rtp media for device: ipmB1C2

The installation page on the wiki has a warning about this and details how to change streaming media codecs between DiaStar and a client.

Initial Startup of DiaStar fails

Error seen in log is:

2010-12-17 03:15:50.497486 ERROR  DialogicChannelManager::openIptDevice() Unable to create dti device, 
no free vox device available

The maxcalls parameter in diastar.conf was incorrectly calculated and is set to too high a value. Make sure it is set no higher than the number of multimedia devices specified in the file.

Personal tools