我已经使用Xuggler 5.4制作了Screen Recorder和Player应用程序。我已经开发了Windows 8 64位环境。我已经使其成为WebStart项目并在MAC 10.8 64 bit中启动(.jnlp)。当我运行它时,Recorder可以正常工作,但是当我在播放机中打开它时,它将引发异常
Exception in thread "stopThread" java.lang.RuntimeException : Unhandled and unknown native exception
at com.xuggle.xuggler.XugglerJNI.IContainer_open__SWIG_0( Native Method )
at com.xuggle.xuggler.IContainer.open(IContainer.java:597 )
就Windows而言并非如此。
对于Xuggler来说,我是一个非常新的人。我不知道此异常的含义。这是我获得此异常的代码行。
if (container1.open( fileName, IContainer.Type.READ, container1.getContainerFormat()) < 0) {
throw new IllegalArgumentException("could not open file: " + fileName);
}
提前致谢。
附言:我使用的是Java(1.7.0_65)和Oracle的相同版本。
最佳答案
我知道了
我已经更改了打开容器的方法。
以前的方法:
if (container1.open( fileName, IContainer.Type.READ, container1.getContainerFormat()) < 0) {
throw new IllegalArgumentException("could not open file: " + fileName);
}
新方法:
InputStream inputStream = null ;
try {
inputStream = new FileInputStream(new File("fileName"));
} catch (FileNotFoundException e2) {
logger.error("File not found ");
}
IContainerFormat format = IContainerFormat.make();
format.setInputFormat("flv");
container1 = IContainer.make();
if (container1.open( inputStream , format) < 0) {
throw new IllegalArgumentException("could not open file: " + fileName);
}
这适用于MAC OS。
奇怪但真实
关于java - MAC OS的Xuggler问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25140684/