installing xuggler java libraries in Tomcat on Linux

734 views
Skip to first unread message

Dilip Shah

unread,
Mar 25, 2010, 1:06:26 PM3/25/10
to xuggle...@googlegroups.com
Hi,
 
I've successfully installed Xuggler in Tomcat on Windows XP machine and now I'm trying to install xuggler Java libraries in Tomcat (version 5.5) on fedora-release-7-3
Should I install the binaries available for download on xuggler website or build my own (http://www.xuggle.com/xuggler/downloads/build.jsp)?
 
I took the easy step first and installed the readymade binaries downloaded from http://www.xuggle.com/xuggler/downloads/ in usr/local/xuggler folder on my Linux server.
Does xuggle-xuggler.jar JNI files mean all the jar files in share/java/jars folder? Assuming so, I 
copied the jar files from share/java/jars folder to Tomcat's $CATALINA_HOME/shared/lib directory. These are some 6 .jar files, including xuggle-xuggler.jar.
 
I've set the appropriate environment variables by the following commands:
export XUGGLE_HOME=/usr/local/xuggler
export LD_LIBRARY_PATH=$XUGGLE_HOME/lib:$LD_LIBRARY_PATH
export PATH=$XUGGLE_HOME/bin:$PATH
 
After restarting Tomcat, I'm still getting "java.lang.UnsatisfiedLinkError: no xuggle-xuggler in java.library.path" exception when my Java code attempts to invoke some xuggler method such as the one to find video duration of an flv file.
 
What am I doing wrong? Any help is very much appreciated!
 
Stack trace:
ERROR com.xuggle.ferry.JNILibraryLoader - Could not load library: xuggle-xuggler; version: 3; Visit http://www.xuggle.com/xuggler/faq/ to find common solutions to this problem
[ERROR] http-9080-Processor21 2010-03-25 08:50:53 (StandardWrapperValve.java:invoke:253) - Servlet.service() for servlet ApplicationServlet threw exception
java.lang.UnsatisfiedLinkError: no xuggle-xuggler in java.library.path
 at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1682)
 at java.lang.Runtime.loadLibrary0(Runtime.java:822)
 at java.lang.System.loadLibrary(System.java:993)
 at com.xuggle.ferry.JNILibraryLoader.loadLibrary0(JNILibraryLoader.java:265)
 at com.xuggle.ferry.JNILibraryLoader.loadLibrary(JNILibraryLoader.java:168)
 at com.xuggle.xuggler.XugglerJNI.<clinit>(XugglerJNI.java:19)
 at com.xuggle.xuggler.IContainer.<clinit>(IContainer.java:1457)
 at com.knownomy.bsl.appcommon.util.VideoUtils.getVideoDuration(VideoUtils.java:178)
 at com.knownomy.bsl.appcommon.servlets.ApplicationServlet.service(ApplicationServlet.java:264)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
 at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
 at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
 at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
 at java.lang.Thread.run(Thread.java:595)
 
Dilip

 

Art Clarke

unread,
Mar 26, 2010, 12:59:04 AM3/26/10
to xuggle...@googlegroups.com
1) make sure xuggler's jar is not accidentally also in your webapp/APP/WEB-INF/lib directory
2) make sure your tomcat process at startup has access to the environment variables for Xuggler -- the easiest thing to do may be to modify $CATALINA_HOME/bin/startup.sh

- Art

--
You received this message because you are subscribed to the Google Groups "xuggler-users" group.
To post to this group, send email to xuggle...@googlegroups.com.
To unsubscribe from this group, send email to xuggler-user...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/xuggler-users?hl=en.



--
http://www.xuggle.com/
xu‧ggle (zŭ' gl) v. To freely encode, decode, and experience audio and video.

Use Xuggle to get the power of FFmpeg in Java.

Dilip Shah

unread,
Mar 26, 2010, 3:54:00 PM3/26/10
to xuggle...@googlegroups.com
1. Except for a version of slf4j.jar (slf4j-api-1.5.2.jar), I don't have any other files from xuggler's share/java/jars folder in my applications WEB-INF/lib folder
 
2. As per your suggestion, I added the following to my Tomcat's startup.sh file:
echo "setting Xuggler env variables..."
export XUGGLE_HOME=/usr/local/xuggler
echo "XUGGLE_HOME=$XUGGLE_HOME"
export LD_LIBRARY_PATH=$XUGGLE_HOME/lib:$LD_LIBRARY_PATH
echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
export PATH=$XUGGLE_HOME/bin:$PATH
echo "PATH=$PATH"
 
Here is relevant part of the output from console:
setting Xuggler env variables...
XUGGLE_HOME=/usr/local/xuggler
LD_LIBRARY_PATH=/usr/local/xuggler/lib:/usr/local/xuggler/lib:
PATH=/usr/local/xuggler/bin:/usr/local/xuggler/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
Using CATALINA_BASE:   /usr/java/tomcat-5.5
Using CATALINA_HOME:   /usr/java/tomcat-5.5
Using CATALINA_TMPDIR: /usr/java/tomcat-5.5/temp
Using JRE_HOME:       /usr/java/jdk/jre
 
Now the exception message has changed... here is the stack trace:
 
2010-03-26 12:18:45,092 [http-9080-Processor23] ERROR com.xuggle.ferry.JNILibraryLoader - Could not load library: xuggle-xuggler; version: 3; Visit http://www.xuggle.com/xuggler/faq/ to find common solutions to this problem
[ERROR] http-9080-Processor23 2010-03-26 12:18:45 (StandardWrapperValve.java:invoke:253) - Servlet.service() for servlet ApplicationServlet threw exception
java.lang.UnsatisfiedLinkError: /usr/local/xuggler/lib/libxuggle-xuggler.so.3.4.1012: /lib/libc.so.6: version `GLIBC_2.7' not found (required by /usr/local/xuggler/lib/libavformat.so.52)
 at java.lang.ClassLoader$NativeLibrary.load(Native Method)
 at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
 at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676)

 at java.lang.Runtime.loadLibrary0(Runtime.java:822)
 at java.lang.System.loadLibrary(System.java:993)
 at com.xuggle.ferry.JNILibraryLoader.loadLibrary0(JNILibraryLoader.java:265)
 at com.xuggle.ferry.JNILibraryLoader.loadLibrary(JNILibraryLoader.java:168)
 at com.xuggle.xuggler.XugglerJNI.<clinit>(XugglerJNI.java:19)
 at com.xuggle.xuggler.IContainer.<clinit>(IContainer.java:1457)
 at com.knownomy.bsl.appcommon.util.VideoUtils.getVideoDuration(VideoUtils.java:178)
 at com.knownomy.bsl.appcommon.servlets.ApplicationServlet.service(ApplicationServlet.java:265)

 at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
 at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
 at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
 at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
 at java.lang.Thread.run(Thread.java:595)
 
Further assistance is very much appreciated.
 
Dilip

Dilip Shah

unread,
Mar 26, 2010, 4:54:07 PM3/26/10
to xuggle...@googlegroups.com
I should add one more thing here...
 
The installation folder (/usr/local/xuggler) and all of its subdirectories and files' ownership is user 1000 as well as group 1000 where as tomcat is run as tomcat user. Does it matter?
 
Dilip

Art Clarke

unread,
Mar 26, 2010, 6:00:09 PM3/26/10
to xuggle...@googlegroups.com
You should build Xuggler from source on your machine -- the binaries you installed do not match the version of libc on your machine.

- Art

Dilip Shah

unread,
Apr 13, 2010, 10:51:46 AM4/13/10
to xuggle...@googlegroups.com
Hi Art,
 
I'm trying to build xuggler on my Linux server from the source. (email trail has details on our earlier communication on this topic)
 
I downloaded source yesterday (April 12) around 5 pm using the following command:
svn checkout http://xuggle.googlecode.com/svn/trunk/java/xuggle-xuggler xuggle-xuggler
 
I downloaded the source on my Windows machine and then FTPed it to the Linux server.
 
From xuggle-xuggler directory on the Linux server, I executed the following command:
ant run-tests
 
but the build failed... here is the tail of the screen output:
     [exec]   Installation paths:
     [exec]
     [exec]     libtheora: ................... /usr/local/xuggler/lib
     [exec]     C header files: .............. /usr/local/xuggler/include/theora
     [exec]     Documentation: ............... /usr/local/xuggler/share/doc/libtheora
     [exec]
     [exec]   Building:
     [exec]
     [exec]     Type 'make' to compile libtheora.
     [exec]
     [exec]     Type 'make install' to install libtheora.
     [exec]
     [exec]     Type 'make check' to run test suite (Valgrind testing not enabled)
     [exec]
     [exec]   Example programs will be built but not installed.
     [exec] ------------------------------------------------------------------------
     [exec]
     [exec] Incarcerated package configured: ../../../../../captive/libtheora
     [exec] Incarcerating package ../../../../../captive/libtheora to fake DESTDIR=/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive
     [exec] make[3]: Entering directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora/csrc'
     [exec] /usr/bin/make  all-recursive
     [exec] make[4]: Entering directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora/csrc'
     [exec] Making all in lib
     [exec] make[4]: *** [all-recursive] Error 1
     [exec] make[4]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora/csrc'
     [exec] make[3]: *** [all] Error 2
     [exec] make[3]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora/csrc'
     [exec] Out of date files; re-running make
     [exec] make[3]: Entering directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora/csrc'
     [exec] /usr/bin/make  all-recursive
     [exec] make[4]: Entering directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora/csrc'
     [exec] Making all in lib
     [exec] make[5]: Entering directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora/csrc/lib'
     [exec] /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/../../../../captive/libtheora/csrc/lib -I.. -I/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/../../../../captive/libtheora/csrc/include  -I/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/usr/local/xuggler/include   -Wall -Wno-parentheses -O3 -fforce-addr -fomit-frame-pointer -finline-functions -funroll-loops  -I/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/usr/local/xuggler/include -c -o apiwrapper.lo `test -f '/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/../../../../captive/libtheora/csrc/lib/apiwrapper.c' || echo '/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/../../../../captive/libtheora/csrc/lib/'`/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/../../../../captive/libtheora/csrc/lib/apiwrapper.c
     [exec] ../libtool: line 399:
     [exec] : command not found../libtool: line 402:
     [exec] : command not found../libtool: line 406:
     [exec] : command not found../libtool: line 427:
     [exec] : command not found../libtool: line 470:
     [exec] : command not found../libtool: line 476:
     [exec] : command not found../libtool: line 486: syntax error near unexpected token `newline'
     [exec] ../libtool: line 486: `  case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
     [exec] 'make[5]: *** [apiwrapper.lo] Error 2
     [exec] make[5]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora/csrc/lib'
     [exec] make[4]: *** [all-recursive] Error 1
     [exec] make[4]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora/csrc'
     [exec] make[3]: *** [all] Error 2
     [exec] make[3]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora/csrc'
     [exec] make[2]: *** [all-local] Error 2
     [exec] make[2]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive/libtheora'
     [exec] make[1]: *** [all-recursive] Error 1
     [exec] make[1]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/captive'
     [exec] make: *** [all-recursive] Error 1
 
BUILD FAILED
/home/dilipvshah/xuggle-xuggler/mk/buildtools/buildhelper.xml:1143: exec returned: 2
 
Total time: 3 minutes 23 seconds
 
Any suggestions on where to go from here?
 
Thanks,

Art Clarke

unread,
Apr 13, 2010, 2:51:34 PM4/13/10
to xuggle...@googlegroups.com
You likely have a Windows line-ending issue from doing the SVN download on windows.  Do the SVN download on a linux machine.

- Art

Dilip Shah

unread,
Apr 13, 2010, 3:54:05 PM4/13/10
to xuggle...@googlegroups.com
Thanks Art, I'll install SVN on the Linux server and download the code directly to it.
 
One more question... do I need to worry about the following that also showed up during the same 'ant run-tests' execution:
[exec] : command not found../libtool: line 402:
Thanks again,

Art Clarke

unread,
Apr 13, 2010, 11:19:52 PM4/13/10
to xuggle...@googlegroups.com
That will likely be fixed from downloading it on Linux.

- Art

Dilip Shah

unread,
Apr 14, 2010, 12:01:07 AM4/14/10
to xuggle...@googlegroups.com
Fetching the source directly to the Linux server did take care of the message "command not found../libtool". The build was successful but a couple of tests failed:
- Test com.xuggle.mediatool.MediaToolTest FAILED (crashed)
- Test com.xuggle.mediatool.MediaWriterTest FAILED (crashed)

 
Here is the tail-end of the build messages:
 
     [exec] Running 3 tests...OK!
     [exec] PASS: xugglerTestStreamCoderX264
     [exec] Running 1 test.OK!
     [exec] PASS: xugglerTestStreamCoderSpeex
     [exec] Running 2 tests..OK!
     [exec] PASS: xugglerTestStreamCoderFaac
     [exec] Running 1 test.OK!
     [exec] PASS: xugglerTestStream
     [exec] Running 4 tests....OK!
     [exec] PASS: xugglerTestTimeValue
     [exec] Running 1 test.OK!
     [exec] PASS: xugglerTestError
     [exec] Running 7 tests.......OK!
     [exec] PASS: xugglerTestVideoResampler
     [exec] ===================
     [exec] All 24 tests passed
     [exec] ===================
     [exec] make[6]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc/com/xuggle/xuggler'
     [exec] make[5]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc/com/xuggle/xuggler'
     [exec] make[4]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc/com/xuggle/xuggler'
     [exec] make[4]: Entering directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc/com/xuggle'
     [exec] make[4]: Nothing to be done for `check-am'.
     [exec] make[4]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc/com/xuggle'
     [exec] make[3]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc/com/xuggle'
     [exec] make[3]: Entering directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc/com'
     [exec] make[3]: Nothing to be done for `check-am'.
     [exec] make[3]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc/com'
     [exec] make[2]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc/com'
     [exec] make[2]: Entering directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc'
     [exec] make[2]: Nothing to be done for `check-am'.
     [exec] make[2]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc'
     [exec] make[1]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu/test/csrc'
     [exec] make[1]: Entering directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu'
     [exec] make[1]: Nothing to be done for `check-am'.
     [exec] make[1]: Leaving directory `/home/dilipvshah/xuggle-xuggler/build/native/i686-pc-linux-gnu'
 
run-tests-native:
 
compile-tests-java:
 
ivy-init:
 
ivy-retrieve:
     [echo] ivy.settings.name: test
:: loading settings :: file = /home/dilipvshah/xuggle-xuggler/mk/buildtools/ivysettings.xml
[ivy:resolve] :: resolving dependencies :: xuggle#xuggle-xuggler;wor...@ip-208-109-28-58.ip.secureserver.net
[ivy:resolve]   confs: [test]
[ivy:resolve]   found red5#slf4j-api;1.5.6 in googlecode
[ivy:resolve]   found red5#logback-core;0.9.14 in googlecode
[ivy:resolve]   found red5#logback-classic;0.9.14 in googlecode
[ivy:resolve]   found apache#commons-cli;1.1 in mavenrepo
[ivy:resolve]   found junit#junit;4.5 in googlecode
[ivy:resolve]   found xuggle#xuggle-utils;1.21.888.200908201439 in xugglecode
[ivy:resolve]   [1.21.888.200908201439] xuggle#xuggle-utils;latest.integration
[ivy:resolve] downloading http://red5.googlecode.com/svn/repository/junit-4.5.jar ...
[ivy:resolve] .....................
[ivy:resolve] .............................
[ivy:resolve] ................ (194kB)
[ivy:resolve]   [SUCCESSFUL ] junit#junit;4.5!junit.jar (4317ms)
[ivy:resolve] downloading http://xuggle.googlecode.com/svn/trunk/repo/share/java/xuggle/xuggle-utils/1.21.888.200908201439/xuggle-utils-1.21.888.200908201439.jar ...
[ivy:resolve] ................. (56kB)
[ivy:resolve] .. (0kB)
[ivy:resolve]   [SUCCESSFUL ] xuggle#xuggle-utils;1.21.888.200908201439!xuggle-utils.jar (1678ms)
[ivy:resolve] :: resolution report :: resolve 3944ms :: artifacts dl 6012ms
        ---------------------------------------------------------------------
        |                  |            modules            ||   artifacts   |
        |       conf       | number| search|dwnlded|evicted|| number|dwnlded|
        ---------------------------------------------------------------------
        |       test       |   6   |   2   |   0   |   0   ||   6   |   2   |
        ---------------------------------------------------------------------
[ivy:retrieve] :: retrieving :: xuggle#xuggle-xuggler
[ivy:retrieve]  confs: [test]
[ivy:retrieve]  6 artifacts copied, 0 already retrieved (685kB/42ms)
    [javac] /home/dilipvshah/xuggle-xuggler/mk/buildtools/buildhelper.xml:747: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 57 source files to /home/dilipvshah/xuggle-xuggler/build/test
     [copy] Copying 1 file to /home/dilipvshah/xuggle-xuggler/build/test
      [jar] Building jar: /home/dilipvshah/xuggle-xuggler/dist/lib/xuggle-xuggler-test.jar
 
run-tests-java:
   [delete] Deleting directory /home/dilipvshah/xuggle-xuggler/build/test/output
 
windows-init:
 
mac-init:
 
unix-init:
 
os-init:
 
java6.check:
     [echo] Java: java.home is /usr/java/jdk1.5.0_15/jre and the target version is 1.5
     [echo] Ant: ant.home is /usr/local/ant and the target version is Apache Ant version 1.8.0 compiled on February 1 2010
 
ivy-init:
 
revision:
   [delete] Deleting: /home/dilipvshah/xuggle-xuggler/build/OS.properties
     [echo] Building for OS: i686-pc-linux-gnu
     [echo] Building Library Version: 4.0.1026
 
init:
    [mkdir] Created dir: /home/dilipvshah/xuggle-xuggler/build/test/output
    [mkdir] Created dir: /home/dilipvshah/xuggle-xuggler/build/test/output/fixtures
     [echo] Installing to /usr/local/xuggler (a.k.a. /usr/local/xuggler)
 
fixtures-java:
     [copy] Copying 17 files to /home/dilipvshah/xuggle-xuggler/build/test/output/fixtures
     [echo] Java: java.home is /usr/java/jdk1.5.0_15/jre and the target version is 1.5
     [echo] java.library.path=/home/dilipvshah/xuggle-xuggler/dist/stage/usr/local/xuggler/lib:/usr/local/xuggler/lib
     [echo] env.LD_LIBRARY_PATH=/home/dilipvshah/xuggle-xuggler/dist/stage/usr/local/xuggler/lib:/usr/local/xuggler/lib
     [echo] test.jvm.properties=-client -Dcom.xuggle.Testing=true
    [junit] Running com.xuggle.ferry.AtomicIntegerTest
    [junit] Tests run: 7, Failures: 0, Errors: 0, Time elapsed: 0.455 sec
    [junit] Running com.xuggle.ferry.BufferTest
    [junit] Tests run: 17, Failures: 0, Errors: 0, Time elapsed: 2.618 sec
    [junit] Running com.xuggle.ferry.JNILibraryLoaderTest
    [junit] Tests run: 4, Failures: 0, Errors: 0, Time elapsed: 1.511 sec
    [junit] Running com.xuggle.ferry.JNIMemoryAllocatorTest
    [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.768 sec
    [junit] Running com.xuggle.ferry.LoggerTest
    [junit] Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 4.426 sec
    [junit] Running com.xuggle.ferry.MutexTest
    [junit] Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 1.866 sec
    [junit] Running com.xuggle.ferry.NativeLoggerTest
    [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.144 sec
    [junit] Running com.xuggle.ferry.RefCountedTest
    [junit] Tests run: 35, Failures: 0, Errors: 1, Time elapsed: 107.995 sec
    [junit] Test com.xuggle.ferry.RefCountedTest FAILED
    [junit] Running com.xuggle.mediatool.MediaReaderTest
    [junit] Tests run: 4, Failures: 0, Errors: 0, Time elapsed: 15.919 sec
    [junit] Running com.xuggle.mediatool.MediaToolTest
    [junit] #
    [junit] # An unexpected error has been detected by HotSpot Virtual Machine:
    [junit] #
    [junit] #  SIGSEGV (0xb) at pc=0xb1647c85, pid=27586, tid=3086219472
    [junit] #
    [junit] # Java VM: Java HotSpot(TM) Client VM (1.5.0_15-b04 mixed mode, sharing)
    [junit] # Problematic frame:
    [junit] # C  [libavcodec.so.52+0x3c5c85]  ff_fdct_sse2+0xb5
    [junit] #
    [junit] # An error report file with more information is saved as hs_err_pid27586.log
    [junit] #
    [junit] # If you would like to submit a bug report, please visit:
    [junit] #   http://java.sun.com/webapps/bugreport/crash.jsp
    [junit] #
    [junit] Running com.xuggle.mediatool.MediaToolTest
    [junit] Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0 sec
    [junit] Test com.xuggle.mediatool.MediaToolTest FAILED (crashed)
    [junit] Running com.xuggle.mediatool.MediaViewerTest
    [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 17.032 sec
    [junit] Running com.xuggle.mediatool.MediaWriterTest
    [junit] #
    [junit] # An unexpected error has been detected by HotSpot Virtual Machine:
    [junit] #
    [junit] #  SIGSEGV (0xb) at pc=0xb16a8c85, pid=27612, tid=3086616784
    [junit] #
    [junit] # Java VM: Java HotSpot(TM) Client VM (1.5.0_15-b04 mixed mode, sharing)
    [junit] # Problematic frame:
    [junit] # C  [libavcodec.so.52+0x3c5c85]  ff_fdct_sse2+0xb5
    [junit] #
    [junit] # An error report file with more information is saved as hs_err_pid27612.log
    [junit] #
    [junit] # If you would like to submit a bug report, please visit:
    [junit] #   http://java.sun.com/webapps/bugreport/crash.jsp
    [junit] #
    [junit] Running com.xuggle.mediatool.MediaWriterTest
    [junit] Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0 sec
    [junit] Test com.xuggle.mediatool.MediaWriterTest FAILED (crashed)
    [junit] Running com.xuggle.xuggler.AudioSamplesTest
    [junit] Tests run: 5, Failures: 0, Errors: 0, Time elapsed: 9.255 sec
    [junit] Running com.xuggle.xuggler.CodecTest
    [junit] Tests run: 5, Failures: 0, Errors: 0, Time elapsed: 0.323 sec
    [junit] Running com.xuggle.xuggler.ConfigurationTest
    [junit] Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 0.93 sec
    [junit] Running com.xuggle.xuggler.ContainerFormatTest
    [junit] Tests run: 14, Failures: 0, Errors: 0, Time elapsed: 1.028 sec
    [junit] Running com.xuggle.xuggler.ContainerTest
    [junit] Tests run: 27, Failures: 0, Errors: 0, Time elapsed: 2.814 sec
    [junit] Running com.xuggle.xuggler.ConverterTest
    [junit] Tests run: 7, Failures: 0, Errors: 0, Time elapsed: 81.123 sec
    [junit] Running com.xuggle.xuggler.ErrorTest
    [junit] Tests run: 7, Failures: 0, Errors: 0, Time elapsed: 0.913 sec
    [junit] Running com.xuggle.xuggler.IMediaDataTest
    [junit] Tests run: 10, Failures: 0, Errors: 0, Time elapsed: 1.024 sec
    [junit] Running com.xuggle.xuggler.IndexEntryTest
    [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 1.313 sec
    [junit] Running com.xuggle.xuggler.MediaDataWrapperTest
    [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0.89 sec
    [junit] Running com.xuggle.xuggler.MetaDataTest
    [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0.968 sec
    [junit] Running com.xuggle.xuggler.MuxerTest
    [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 47.106 sec
    [junit] Running com.xuggle.xuggler.PacketTest
    [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 1.053 sec
    [junit] Running com.xuggle.xuggler.RationalTest
    [junit] Tests run: 9, Failures: 0, Errors: 0, Time elapsed: 0.276 sec
    [junit] Running com.xuggle.xuggler.SimpleMediaFileTest
    [junit] Tests run: 22, Failures: 0, Errors: 0, Time elapsed: 1.109 sec
    [junit] Running com.xuggle.xuggler.StreamCoderRegressionTest
    [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 2.871 sec
    [junit] Running com.xuggle.xuggler.StreamCoderTest
    [junit] Tests run: 13, Failures: 0, Errors: 0, Time elapsed: 0.807 sec
    [junit] Running com.xuggle.xuggler.StreamTest
    [junit] Tests run: 13, Failures: 0, Errors: 0, Time elapsed: 0.537 sec
    [junit] Running com.xuggle.xuggler.UtilsTest
    [junit] Tests run: 15, Failures: 0, Errors: 0, Time elapsed: 17.688 sec
    [junit] Running com.xuggle.xuggler.VideoPictureTest
    [junit] Tests run: 7, Failures: 0, Errors: 0, Time elapsed: 10.924 sec
    [junit] Running com.xuggle.xuggler.VideoResamplerTest
    [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.912 sec
    [junit] Running com.xuggle.xuggler.io.FileProtocolHandlerTest
    [junit] Tests run: 9, Failures: 0, Errors: 0, Time elapsed: 1.555 sec
    [junit] Running com.xuggle.xuggler.io.NullProtocolHandlerTest
    [junit] Tests run: 6, Failures: 0, Errors: 0, Time elapsed: 1.162 sec
    [junit] Running com.xuggle.xuggler.io.URLProtocolHandlerTest
    [junit] Tests run: 6, Failures: 0, Errors: 0, Time elapsed: 0.142 sec
    [junit] Running com.xuggle.xuggler.io.XugglerIOTest
    [junit] Tests run: 13, Failures: 0, Errors: 0, Time elapsed: 2.664 sec
    [junit] Running com.xuggle.xuggler.video.ConverterFactoryTest
    [junit] Tests run: 27, Failures: 0, Errors: 0, Time elapsed: 1.151 sec
[junitreport] Processing /home/dilipvshah/xuggle-xuggler/build/test/TESTS-TestSuites.xml to /tmp/null1701512189
[junitreport] Loading stylesheet jar:file:/usr/local/ant/lib/ant-junit.jar!/org/apache/tools/ant/taskdefs/optional/junit/xsl/junit-frames.xsl
[junitreport] Transform time: 4168ms
[junitreport] Deleting: /tmp/null1701512189
     [echo] View test results in browser: doc/test/index.html
     [echo] Test Result: !!!!!! NOT ALL TESTS PASSED !!!!
 
run-tests:
 
BUILD SUCCESSFUL
Total time: 38 minutes 30 seconds
Any comments on the failed tests?
 
Thanks,
 
Dilip

Art Clarke

unread,
Apr 14, 2010, 12:30:02 AM4/14/10
to xuggle...@googlegroups.com
Make sure you don't have another version of FFMpeg installed in your path before the XUGGLE_HOME/lib versions.

- Art

Dilip Shah

unread,
Apr 14, 2010, 2:16:24 PM4/14/10
to xuggle...@googlegroups.com
I don't have any other FFMpeg installation on that server.
 
Since the tests failed, did the build fail and deployment not useful?
 
Just to test the deployment, I proceeded and did "sudo ant install" and that went fine.
 
To access xuggler from Tomcat, I copied content of
XUGGLE_HOME/lib
to
CATALINA_HOME/shared/lib
 
Now when I try to invoke xuggler functions, I get
[ERROR] http-9080-Processor21 2010-04-14 10:20:46 (StandardWrapperValve.java:invoke:253) - Servlet.service() for servlet ApplicationServlet threw exception
java.lang.NoClassDefFoundError: com/xuggle/mediatool/IMediaListener
	at com.knownomy.bsl.appcommon.servlets.ApplicationServlet.service(ApplicationServlet.java:267)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
	at java.lang.Thread.run(Thread.java:595)
As I mentioned earlier, I've copied the JNI files to CATALINA_HOME/shared/lib. Do I need to copy any xuggler jar files to any of the Tomcat or application's lib directories?

Dilip Shah

unread,
Apr 14, 2010, 3:01:10 PM4/14/10
to xuggle...@googlegroups.com
I copied jar files from
XUGGLE_HOME/share/java/jars
to
CATALINA_HOME/common/lib
 
and that took care of NoClassDefFoundError exception.
 
Please let me know if that's expected / best practice.
 
Thanks,
 
Dilip
 

Art Clarke

unread,
Apr 14, 2010, 10:41:14 PM4/14/10
to xuggle...@googlegroups.com
It's a "best practice" and mentioned on our FAQ.
Reply all
Reply to author
Forward
0 new messages