Jump to content
Excelsior Forums
klausbrause

UnsatisfiedLinkError for JMF VFW CaptureDevice

Recommended Posts

Hi,

I am trying to jet-compile a simple JMF application that creates a player for a video capture source. During the test run I get the following error:

------------------------------------------------------------------------

JET-compiled Java program has started.

-------------------------------------

Exception in thread "VFW Request Thread" java.lang.UnsatisfiedLinkError

       at com.sun.media.protocol.vfw.VFWCapture.cacheFieldIDs(Unknown Source)

       at com.sun.media.protocol.vfw.VFWCapture.<clinit>(Unknown Source)

--------------------------------------------------------------------

I compiled other JMF and Java3D applications before without any problem. I apreciate if anyone has an idea how to solve the problem.

klausbrause

Share this post


Link to post
Share on other sites

The error means that some of JMF DLLs are not found. Probably in normal runs these DLLs are found via PATH environment variable. As trial run mimics the behaviour on the target machine where JMF may be not installed, the PATH for it is empty. So, you have to copy the used DLLs from <jmf>/lib to the folder where the executable is located.  

Share this post


Link to post
Share on other sites

mavr, thank you for your fast reply.

I copied all required JMF DLLs to the directory, where the executable is. Unfortunately nothing changed after than. Do I have to create a project file by hand instead to take care on some special issues when using JMF??

Thanks,

klausbrause

Share this post


Link to post
Share on other sites

mhmm, really strange. directory settings are ok. I also checked the DLL dependencies with 'depencywalker` and there are no unresolved symbols in the jmvfw.dll (which I suppose is used for video capture under jmf).

I tried different settings for the compilation (e.g. no dynamic compilation). Than there is a different runtime error, but still it does not work.

I'll get

----------------------------------------------------

Exception in thread "VFW Request Thread" java.lang.UnsatisfiedLinkError

       at com.sun.media.protocol.vfw.VFWCapture.cacheFieldIDs(Unknown Source)

       at com.sun.media.protocol.vfw.VFWCapture.<clinit>(Unknown Source)

---------------------------------------------------------------------

but the symbol for 'cacheFieldIDs' is actually in the jmvfw.dll :

( _Java_com_sun_media_protocol_vfw_VFWCapture_cacheFieldIDs@8 )

... :huh: ??? :huh:  (I could provide the source code.....  :-[)

klausbrause

Share this post


Link to post
Share on other sites

×