Search code examples
javaappletscreen-capturexugglexuggler

Using xuggle without installing for a java web application


I have created a Screencast applet for WIndows OS. The applet uses xuggle to encode and decode videos. It gives the following error when xuggle is not installed on the system as it tries to load some native code:

2012-07-29 12:40:28,452 [AWT-EventQueue-2] ERROR com.xuggle.ferry.JNILibraryLoader - 
  Could not          load library: xuggle-ferry; version: 3; 
  Visit http://www.xuggle.com/xuggler/faq/ to find common solutions to this problem

Exception in thread "AWT-EventQueue-2" java.lang.UnsatisfiedLinkError: no xuggle-ferry in java.library.path
    at java.lang.ClassLoader.loadLibrary(Unknown Source)
    at java.lang.Runtime.loadLibrary0(Unknown Source)
    at java.lang.System.loadLibrary(Unknown Source)
    at com.xuggle.ferry.JNILibraryLoader.loadLibrary0(JNILibraryLoader.java:265)
    at com.xuggle.ferry.JNILibraryLoader.loadLibrary(JNILibraryLoader.java:168)
    at com.xuggle.ferry.FerryJNI.<clinit>(FerryJNI.java:14)
    at com.xuggle.ferry.JNIMemoryManager.<clinit>(JNIMemoryManager.java:871)
    at com.xuggle.mediatool.MediaWriter.<clinit>(MediaWriter.java:119)
    at com.xuggle.mediatool.ToolFactory.makeWriter(ToolFactory.java:149)

How can the installation be eliminated. So that the applet runs directly on any system.


Solution

  • Use a newer Xuggler version. Starting from 5.4 it does not require installation anymore, native libraries are loaded from the jar file itself.