UnsatisfiedLinkError - 处理中的GSvideo库

时间:2013-01-14 12:24:45

标签: processing

我们目前正在开展一个艺术项目,我们正在使用GSvideo库录制视频,并与VLC同时显示另一个视频。我们的项目在我们尝试的三台Windows 7计算机上运行良好,但我们可用于展览会出现以下错误:

  

线程“动画线程”中的异常java.lang.UnsatisfiedLinkError:   无法加载库gio-2.0(gio-2.0 | libgio-2.0 | libgio-2.0-0)   -Djna.library.path = //桌面/ media_art_installation / sktetch /库/ GSVideo /库\ gstreamer的\ windows64。   上一个错误:java.lang.UnsatisfiedLinkError:无法加载库   'gio-2.0':找不到指定的模块。

我们注意到路径包含“/”和“\”。我们知道我们学校的计算机使用的是Java 1.6。我们或我们的老师或技术支持都无法找到我们问题的答案。那么,为什么它不适用于学校的计算机呢?

在我们的代码中给出错误的行如下:

 movieMaker = new GSMovieMaker(this, 640, 480, "data/" + getCurrentFileName(), GSMovieMaker.THEORA, GSMovieMaker.MEDIUM, fps);

1 个答案:

答案 0 :(得分:0)

现在让我们假设库路径的拼写不是问题......

如果你解析你提到的错误,你会发现找不到该模块。它列出了一个库路径,在用于展览的机器上必须是不正确的。 Win 7机器是32位还是64位?什么类型的机器用于展览? (Win XP?Macs?32位64位)。测试和展览机器之间的任何差异都将是一个危险信号。

另外,你是如何指向这个图书馆的?谷歌搜索了一下后,我想出了以下内容:

  • sourceforce上的thread建议使用GSVideo.localGStreamerPath指向gstreamer库。

  • 另一位thread注意到使用System.loadLibrary解决了问题(线程中的倒数第二位)。


所以第二个建议对你来说可能是这样的:

System.loadLibrary("/Desktop/media_art_installation/sketch/libraries/GSVideo/library/gstreamer/windows64");