我正在设计这个Java Web Applet来通过RTSP从视频服务器流式传输视频。为了渲染这个视频,将使用Xuggler 5.4库 (xuggle-xuggler.jar
)。目前,在Windows XP和Ubuntu 10.04机器上运行时,视频可以正常渲染。然而,当我尝试在Windows 7上运行它时,出现以下错误:
10:10:13.370 [Thread-13] WARN com.xuggle.ferry.JNILibrary - Failure: library load of library: xuggle; url: C:\Users\Justin\AppData\Local\Temp\xuggle\xuggle8376027568348573783.dll; error: java.lang.UnsatisfiedLinkError: C:\Users\Justin\AppData\Local\Temp\xuggle\xuggle8376027568348573783.dll: Can't find dependent libraries
10:10:13.448 [Thread-13] ERROR com.xuggle.ferry.JNILibraryLoader - Could not load library: xuggle; version: 5; Visit http://www.xuggle.com/xuggler/faq/ to find common solutions to this problem
Exception in thread "Thread-13" java.lang.UnsatisfiedLinkError: no xuggle 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:268)
at com.xuggle.ferry.JNILibraryLoader.loadLibrary(JNILibraryLoader.java:171)
at com.xuggle.ferry.JNILibrary.load(JNILibrary.java:161)
at com.xuggle.ferry.FerryJNI.<clinit>(FerryJNI.java:16)
at com.xuggle.ferry.Ferry.<clinit>(Ferry.java:25)
at com.xuggle.xuggler.XugglerJNI.<clinit>(XugglerJNI.java:19)
at com.xuggle.xuggler.ICodec$ID.<clinit>(ICodec.java:760)
at com.ioindustries.videoserver.RtpSession.run(RtpSession.java:86)
at java.lang.Thread.run(Unknown Source)
我曾尝试提取
xuggle-5.dll
文件并将其放置在我的web
目录中,然后将其链接到Windows的%PATH%和Windows的%CLASSPATH%,但是当我这样做时视频仍无法渲染,并且错误消失了(此时,我不确定正在发生什么)。我还尝试通过依赖项查找器运行xuggle-5.dll,尽管如下截图所示,我只得到了与IESHIM.dll相关的错误:![enter image description here](https://istack.dev59.com/qVpvn.webp)
我还在用于启动Web Applet的HTML文档中的
<applet>
标签下引用了xuggle-xuggler.jar文件。目前,我真的不知道为什么Xuggler不能在我用于开发的Windows 7(32位)机器上运行。对此事的任何帮助都将不胜感激。
需要注意的是,我正在尝试运行Xuggle 5.4的GPL版本(与之前的版本不同,它不需要安装),该版本可在Xuggle网站上获得。
以下是我的HTML文档片段:
<div id="applet_box" class="applet box">
<applet id="applet" code="com.videoserver.ClientApplet"
archive="VideoServerClient.jar, xuggle-xuggler-5.4.jar, slf4j-api-1.6.4.jar, logback-classic-1.0.0.jar, logback-core-1.0.0.jar" MAYSCRIPT>
</applet>
</div>
deployJava.js
部署小程序(有关详细信息,请参见小程序信息页面)。 2) 由于它具有本地文件,因此请使用 JWS / JNLP 进行部署。这使得将本地文件放在类路径上变得简单。以下是一个示例,它使用 JNLP 部署 Xuggle 本地文件和 API。