[jitsi-dev] problems with libjitsi


#1

Hi everyone,
I noticed that the libjitsi library is out in a fully functional
version so I checked it out and I am trying to get it working but
unfortunately with little success. I would really appreciate if you
could help me to solve the problems.
I am using Windows 7 64 bit, Eclipse IDE and JDK 1.6.0.33
First problem is that the jnawtrenderer.dll cannot be loaded. I am
getting the following error:
java.lang.UnsatisfiedLinkError:
D:\workspace\libjitsi\lib\native\windows-64\jnawtrenderer.dll: Invalid
access to memory location
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
  at java.lang.ClassLoader.loadLibrary0(Unknown Source)
  at java.lang.ClassLoader.loadLibrary(Unknown Source)
  at java.lang.Runtime.loadLibrary0(Unknown Source)
  at java.lang.System.loadLibrary(Unknown Source)
  at net.java.sip.communicator.impl.neomedia.jmfext.media.renderer.video.JAWTRenderer.<clinit>(Unknown
Source)
  at java.lang.Class.forName0(Native Method)
  at java.lang.Class.forName(Unknown Source)
  at org.jitsi.impl.neomedia.device.DeviceConfiguration.registerCustomRenderers(Unknown
Source)
  at org.jitsi.impl.neomedia.device.DeviceConfiguration.<init>(Unknown Source)
  at org.jitsi.impl.neomedia.MediaServiceImpl.<init>(Unknown Source)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
  at java.lang.reflect.Constructor.newInstance(Unknown Source)
  at java.lang.Class.newInstance0(Unknown Source)
  at java.lang.Class.newInstance(Unknown Source)
  at org.jitsi.impl.libjitsi.LibJitsiImpl.getService(Unknown Source)
  at org.jitsi.service.libjitsi.LibJitsi.invokeGetServiceOnImpl(Unknown Source)
  at org.jitsi.service.libjitsi.LibJitsi.getMediaService(Unknown Source)
  at test.TestApplet.main(TestApplet.java:30)
I have set the java.library.path using the -Djava.library.path
argument and it points to the directory containing all the dlls but
the dll cannot be loaded. I searched the Internet and tried lots of
solutions such as changing locale, reinstalling JRE and JDK,
installing new JDK (Java 7) with no success. I tried to run the code
in my virtual machine with 32b Windows XP but I got the same error.

The other error is related to the Configuration service. All calls to
LibJitsi.getConfigurationService() end with the following exception:
java.lang.ClassNotFoundException:
org.jitsi.impl.configuration.ConfigurationServiceImpl
When I checked the code I could not find the implementing class of the
ConfigurationService. I guess that it was only not commited. I tried
to use the ConfigurationServiceImpl (and related classes) from jitsi
itself but I was not able to fix all the errors I got when I tried
that.

Regardless all these errors I am able to run at least some sample
codes like listing all audio and video devices which is great and
means that the code is working. I guess that as soon as I fix the
aforementioned problems I will be able to use it.

I will really appreciate any hints how to solve these issues. Also, if
there is something I can do about this please let me know, I will do
my best to help you to get it working.

Thanks and cheers
Martin


#2

Hi, Martin!

Thank you very much for your feedback!

На 28.06.12 16:26, Martin Zukal написа:

First problem is that the jnawtrenderer.dll cannot be loaded. I am
getting the following error:
java.lang.UnsatisfiedLinkError:
D:\workspace\libjitsi\lib\native\windows-64\jnawtrenderer.dll: Invalid
access to memory location

We're currently looking into it so a solution should be available very soon.

The other error is related to the Configuration service. All calls to
LibJitsi.getConfigurationService() end with the following exception:
java.lang.ClassNotFoundException:
org.jitsi.impl.configuration.ConfigurationServiceImpl
When I checked the code I could not find the implementing class of the
ConfigurationService. I guess that it was only not commited.

The ConfigurationService implementation is used but not mandated by libjitsi. It is only necessary if you need to change the default values. Anyway, we'll try to ease the implementation of the ConfigurationService interface.

Regards,
Lyubomir


#3

One more note:

Hi everyone,
I noticed that the libjitsi library is out in a fully functional
version so I checked it out and I am trying to get it working but
unfortunately with little success.

It is indeed available but it would probably be another week before we
actually announce it as ready for use.

We are still working on refactoring Jitsi to use it. We are also
preparing a couple of examples to get you easily started.

Cheers,
Emil

···

On 28.06.12 16:26, Martin Zukal wrote:

I would really appreciate if you
could help me to solve the problems.
I am using Windows 7 64 bit, Eclipse IDE and JDK 1.6.0.33
First problem is that the jnawtrenderer.dll cannot be loaded. I am
getting the following error:
java.lang.UnsatisfiedLinkError:
D:\workspace\libjitsi\lib\native\windows-64\jnawtrenderer.dll: Invalid
access to memory location
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
  at java.lang.ClassLoader.loadLibrary0(Unknown Source)
  at java.lang.ClassLoader.loadLibrary(Unknown Source)
  at java.lang.Runtime.loadLibrary0(Unknown Source)
  at java.lang.System.loadLibrary(Unknown Source)
  at net.java.sip.communicator.impl.neomedia.jmfext.media.renderer.video.JAWTRenderer.<clinit>(Unknown
Source)
  at java.lang.Class.forName0(Native Method)
  at java.lang.Class.forName(Unknown Source)
  at org.jitsi.impl.neomedia.device.DeviceConfiguration.registerCustomRenderers(Unknown
Source)
  at org.jitsi.impl.neomedia.device.DeviceConfiguration.<init>(Unknown Source)
  at org.jitsi.impl.neomedia.MediaServiceImpl.<init>(Unknown Source)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
  at java.lang.reflect.Constructor.newInstance(Unknown Source)
  at java.lang.Class.newInstance0(Unknown Source)
  at java.lang.Class.newInstance(Unknown Source)
  at org.jitsi.impl.libjitsi.LibJitsiImpl.getService(Unknown Source)
  at org.jitsi.service.libjitsi.LibJitsi.invokeGetServiceOnImpl(Unknown Source)
  at org.jitsi.service.libjitsi.LibJitsi.getMediaService(Unknown Source)
  at test.TestApplet.main(TestApplet.java:30)
I have set the java.library.path using the -Djava.library.path
argument and it points to the directory containing all the dlls but
the dll cannot be loaded. I searched the Internet and tried lots of
solutions such as changing locale, reinstalling JRE and JDK,
installing new JDK (Java 7) with no success. I tried to run the code
in my virtual machine with 32b Windows XP but I got the same error.

The other error is related to the Configuration service. All calls to
LibJitsi.getConfigurationService() end with the following exception:
java.lang.ClassNotFoundException:
org.jitsi.impl.configuration.ConfigurationServiceImpl
When I checked the code I could not find the implementing class of the
ConfigurationService. I guess that it was only not commited. I tried
to use the ConfigurationServiceImpl (and related classes) from jitsi
itself but I was not able to fix all the errors I got when I tried
that.

Regardless all these errors I am able to run at least some sample
codes like listing all audio and video devices which is great and
means that the code is working. I guess that as soon as I fix the
aforementioned problems I will be able to use it.

I will really appreciate any hints how to solve these issues. Also, if
there is something I can do about this please let me know, I will do
my best to help you to get it working.

Thanks and cheers
Martin

--
Emil Ivov, Ph.D. 67000 Strasbourg,
Project Lead France
Jitsi
emcho@jitsi.org PHONE: +33.1.77.62.43.30
http://jitsi.org FAX: +33.1.77.62.47.31


#4

Hi Lyubomir and Emil,
I thought that this was the final version. In that case I will
probably wait until there will be the final version available. The
examples would be great! It is a lot of code and it is not easy to
understand everything, however, I think that a lot can be understood
from the code of jitsi.
Thanks for info.
Regards
Martin

···

2012/6/28 Lyubomir Marinov <lubo@jitsi.org>:

Hi, Martin!

Thank you very much for your feedback!

На 28.06.12 16:26, Martin Zukal написа:

First problem is that the jnawtrenderer.dll cannot be loaded. I am
getting the following error:
java.lang.UnsatisfiedLinkError:
D:\workspace\libjitsi\lib\native\windows-64\jnawtrenderer.dll: Invalid
access to memory location

We're currently looking into it so a solution should be available very soon.

The other error is related to the Configuration service. All calls to
LibJitsi.getConfigurationService() end with the following exception:
java.lang.ClassNotFoundException:
org.jitsi.impl.configuration.ConfigurationServiceImpl
When I checked the code I could not find the implementing class of the
ConfigurationService. I guess that it was only not commited.

The ConfigurationService implementation is used but not mandated by
libjitsi. It is only necessary if you need to change the default values.
Anyway, we'll try to ease the implementation of the ConfigurationService
interface.

Regards,
Lyubomir